Skip to content
Loadout

Fix

Windsurf rules and AGENTS.md

Answer

Windsurf Cascade reads workspace rules from .devin/rules/*.md when that folder exists, otherwise .windsurf/rules/*.md. The legacy root file .windsurfrules is still read. Root AGENTS.md is always on. A nested AGENTS.md is treated as a glob for that directory. Global rules are ~/.codeium/windsurf/memories/global_rules.md, capped at 6,000 characters; each workspace rule file is capped at 12,000.

  • Scope Tool-agnostic. Written against Cursor project rules (.mdc), Claude Code CLAUDE.md, AGENTS.md, and GitHub Copilot repository instructions as documented on 2026-10-15.

Last verified 2026-10-15

The Vibe Coder Starter pack ships AGENTS.md at the project root. Windsurf Cascade processes AGENTS.md through the same Rules engine as its own rule files. A root AGENTS.md is always on. A subdirectory AGENTS.md is auto-globbed for that directory. Its pinned scope is: Tool-agnostic. Written against Cursor project rules (.mdc), Claude Code CLAUDE.md, AGENTS.md, and GitHub Copilot repository instructions as documented on 2026-10-15. Cursor rule files are /fixes/cursor-rule-sources-and-precedence. Claude Code is /fixes/claude-code-claude-md-vs-agents-md.

Workspace rules belong in .devin/rules/*.md. That path is preferred and takes precedence. .windsurf/rules/*.md remains a fallback for older projects. The single-file .windsurfrules at the workspace root is still read, but new rules should go under .devin/rules. Each workspace rule file may set a trigger frontmatter value: always_on, model_decision, glob, or manual. Glob rules also set globs. Global rules live in ~/.codeium/windsurf/memories/global_rules.md and are always on, with a 6,000-character cap. Workspace rule files are capped at 12,000 characters. Checked against https://docs.devinenterprise.com/desktop/cascade/memories and https://docs.devin.ai/windsurf/plugins/cascade/memories.

Cascade memories are auto-generated and local to the machine. They are not a substitute for a committed rule or AGENTS.md. The public Windsurf memories page still documents .windsurf/rules and does not list .devin/rules; the Devin Desktop memories page is the one that names .devin/rules as preferred. Loadout free zips do not ship .devin/rules, .windsurf/rules, or .windsurfrules. They ship AGENTS.md, which Cascade loads as always-on at the root.

Every Loadout free zip includes AGENTS.md at the project root, plus CLAUDE.md, .cursor/rules/<slug>.mdc, and .github/copilot-instructions.md. The packs are /packs/vibe-coder-starter, /packs/nextjs-supabase, /packs/unity-6, and /packs/godot-4. Copy AGENTS.md to the repository root for Windsurf Cascade and for Codex. Add .devin/rules only when you need a Windsurf-only trigger such as glob or manual. Keep shared guidance in AGENTS.md so Cursor, Claude Code, Codex, and Copilot stay aligned.

Last verified 2026-10-15. doc-verified.

Pro

Unity 6, Godot 4, and Next.js Pro rules, $1+

$1+ · pay what you want

Advanced rules for the same stacks as the free packs: Unity 6 Pro (Netcode, URP, Addressables, tests), Godot 4 Pro (multiplayer, GDExtension and C#, saves, export), and Next.js 16 + Supabase Pro (RLS, getClaims, Stripe webhooks, caching). Each pack is AGENTS.md, CLAUDE.md, Cursor .mdc, and Copilot instructions. The Phaser 4, three.js, and FastAPI packs stay on the Gumroad download as a bonus. 12 months of free updates.

Each pack ships as AGENTS.md, CLAUDE.md, Cursor .mdc, and Copilot instructions, with 12 months of free updates.

From the Unity 6 Pro rules

Mark an RPC with `[Rpc(SendTo.Server)]` and end the method name in `Rpc`. A missing `Rpc` suffix is an error. Do not write new `[ServerRpc]` or `[ClientRpc]` methods.
A client asks the server with `SendTo.Server`. The server talks to observers with `SendTo.NotServer`, or `SendTo.ClientsAndHost` when a host must run the method too. There is no direct client-to-client connection. The server forwards it.
Keep shared state on a `NetworkVariable<T>` and use `.Value`. It is sent to clients already connected and to a client that joins later. An RPC is not. Write `.Value` from the server when write permission is `NetworkVariableWritePermission.Server`.
Put a `NetworkObject` on the networked prefab and spawn it on the server. Do not use the removed UNet types `NetworkIdentity`, `[Command]`, or `UnityEngine.Networking`.
Unity 6, Godot 4, and Next.js Pro rules, $1+

Vibe Coder Starter pack — Safe defaults for any AI coding agent, in any stack.

doc-verified

Sources in the pack

Docs

Questions

Where does Windsurf Cascade look for project rules?
Windsurf Cascade reads workspace rules from .devin/rules/*.md when that folder exists, otherwise .windsurf/rules/*.md. The legacy root file .windsurfrules is still read. Root AGENTS.md is always on. A nested AGENTS.md is treated as a glob for that directory. Global rules are ~/.codeium/windsurf/memories/global_rules.md, capped at 6,000 characters; each workspace rule file is capped at 12,000.
Does Windsurf read AGENTS.md?
Yes. Cascade processes AGENTS.md with the same Rules engine. A root AGENTS.md is always on and does not use trigger frontmatter. A nested AGENTS.md is auto-globbed for that directory. Memories are separate, local, and not committed.
Do Loadout free packs ship Windsurf or Devin rule files?
No. They do not include .devin/rules, .windsurf/rules, or .windsurfrules. Every free zip includes AGENTS.md at the project root, which Cascade loads as always-on. The packs are /packs/vibe-coder-starter, /packs/nextjs-supabase, /packs/unity-6, and /packs/godot-4.
When was this Windsurf rules and AGENTS.md rule last checked?
Last verified 2026-10-15. doc-verified.