Skip to content

Rules, skills, and commands: the muscle memory written once

Those reflexes are about you. The next layer is muscle memory you write into the project so you stop re-typing it. You built all three earlier in the week:

  • Rules (.cursor/rules/*.mdc and AGENTS.md) - the standing facts the agent reads every session. On budgetcli: money is integer cents, never float; the category taxonomy; dates stored in UTC. Written once, applied every time.
  • Skills - a packaged procedure the agent invokes on its own. The per-bank CSV import - a different shape for every bank, the same steps every time - is the canonical one.
  • Commands (.cursor/commands/[command].md) - markdown templates for the chores you re-type. The monthly-report draft, the same “scan the importers for the date-parse pattern” sweep.

Each layer reads from a known place: project rules live in .cursor/rules as version-controlled .mdc files and AGENTS.md is supported natively as a simpler alternative; glob-based rules auto-attach when a matching file is in context. A skill is a folder containing a SKILL.md file (Skills shipped in Cursor 2.4). Commands are stored as .cursor/commands/[command].md. Check the current docs for migration helpers and exact discovery paths because these surfaces evolve.

The reflex is the trigger for writing one: when you catch yourself typing the same convention into a third prompt, it belongs in a rule, not the prompt. When you run the same multi-step chore a third time, it belongs in a command or a skill. You don’t write these up front - you write them the moment the repetition makes itself felt, because only then do you know which chores actually repeat.

One caveat to carry: rules don’t fire as reliably as you’d hope. A glob-scoped rule only attaches when the matching file enters the agent’s context, so treat globbed rules as strong defaults, not hard guarantees, and keep load-bearing facts in an always-on layer - an Always rule or a line in AGENTS.md - stated plainly. Cursor now also has a formal Plugins surface that can bundle skills, subagents, MCP servers, hooks, and rules; use it when you want distribution, but verify the current manifest and Marketplace behavior before depending on it. (Cursor 2.5 changelog) Rules, skills, commands, and plugins absorb what repeats. What’s left over is the part that is different every time - the one prompt you write for the task in front of you. Next: briefing the agent well.