Skip to content
Agents tracked: 258 Downloads (7d): 219M up 6.1% GitHub stars: 5.5M VS Code installs: 148M Releases (7d): 327 Agent status: 1 with issues Updated Oct 7, 2026

Windsurf (Devin Desktop): .windsurf/rules/*.md location, format and template

Where Windsurf (Devin Desktop) reads project instructions, whether it reads AGENTS.md, and what the format allows. From the official documentation, checked Oct 7, 2026. See also Devin Desktop: pricing, popularity and alternatives.

Project files

  • .devin/rules/*.md (preferred now) or .windsurf/rules/*.md
  • .windsurfrules at the root (legacy, still read)
  • AGENTS.md: at the root it is always on, in a subfolder it applies to that folder

Global (all projects)

  • ~/.codeium/windsurf/memories/global_rules.md (one file, always on)

AGENTS.md

✓ Yes.

Format and limits

  • Front matter trigger: always_on, model_decision (uses description), glob (uses globs) or manual (@rule-name).
  • Limits: 6,000 characters for the global file, 12,000 per workspace rule.
  • Windsurf's docs now live under Devin Desktop (docs.devin.ai).

Sources: docs.devin.ai/desktop/cascade/memories

Templates

Windsurf rule for test files.windsurf/rules/tests.md
---
trigger: glob
globs: "**/*.test.ts"
---

- Use the helpers in `tests/utils/`; don't build fixtures by hand.
- Each test checks one behaviour.
AGENTS.md for a TypeScript projectAGENTS.md
# AGENTS.md

## Project
One paragraph: what this repository does and who uses it.

## Commands
- Install: `pnpm install`
- Dev server: `pnpm dev`
- Tests: `pnpm test` (run before you finish)
- Lint and types: `pnpm lint && pnpm typecheck`

## Layout
- `src/app/`: routes and pages
- `src/lib/`: shared logic, no UI code
- `tests/`: mirrors `src/`

## Conventions
- TypeScript strict mode; avoid `any`.
- Follow the patterns already in `src/` before adding new ones.
- Small, focused functions; name things for what they do.

## Boundaries
- Never read or edit `.env*` files or commit secrets.
- Ask before adding a dependency or changing a public API.

## Done means
Tests pass, lint is clean, and the change is explained in the PR description.

Written by AgentGid as a starting point; swap in your own commands and folders.

Other agents

All agents and the one-file setup →