spaget vs writing cursor rules by hand
Should you write .cursor/rules files manually or use spaget? A practical comparison for Cursor users looking to configure their AI assistant.
How cursor rules work today
Cursor uses .cursor/rules/*.mdc files (or the older .cursorrules format) to customize how its AI assistant behaves in your project. These files contain markdown with frontmatter that defines rules, context, and instructions.
A typical setup looks like this:
.cursor/ rules/ general.mdc # Overall project conventions typescript.mdc # TypeScript-specific rules testing.mdc # Testing patterns components.mdc # Component architectureEach file has YAML frontmatter specifying when the rule applies, plus markdown content with the actual instructions. It’s flexible and powerful — once you know how to use it.
The learning curve
Cursor rules have a few friction points:
MDC format quirks
The .mdc format isn’t standard markdown. It has specific frontmatter fields (description, globs, alwaysApply) and particular formatting expectations. Getting these wrong means your rules silently don’t apply.
No feedback loop
Write a rule, save the file, start coding, and… did it work? There’s no validation, no preview, no way to test a rule before you commit it. If your glob pattern is wrong or your instructions are ambiguous, you won’t know until you see bad AI output.
Starting from zero
What rules should you write? What makes a good rule? How granular should they be? The Cursor docs give examples but don’t provide ready-to-use templates for common setups. You’re building from scratch.
One platform only
Everything you build for Cursor stays in Cursor. If you also use Claude Code or GitHub Copilot, you’re rewriting your instructions in a completely different format.
How spaget compares
| Cursor Rules (Manual) | spaget | |
|---|---|---|
| Learning curve | MDC format, frontmatter fields, glob patterns | Visual interface, no syntax to learn |
| Setup time | 15-30 min per rule file | 5 minutes for full config |
| Validation | None — errors are silent | Real-time validation |
| Templates | None built-in | Community template library |
| Cross-platform | Cursor only | Claude Code + Cursor + GitHub Copilot |
| Collaboration | Share files via git | Built-in sharing (coming soon) |
| Cost | Free (part of Cursor) | Free |
Building rules visually
In spaget, you configure your agent through a visual interface. Define your project context, add skills (like “follow TypeScript conventions” or “write tests for all functions”), and configure behaviors. No YAML frontmatter to memorize.
When you’re ready, hit export and spaget generates properly formatted .cursor/rules/*.mdc files. Every glob pattern is correct. Every frontmatter field is valid.
Multi-platform export
This is the key differentiator. The same agent configuration in spaget exports to:
- Cursor —
.cursor/rules/*.mdcfiles with correct MDC format - Claude Code —
CLAUDE.mdwith proper structure - GitHub Copilot —
.github/copilot-instructions.md
Use Cursor at work and Claude Code at home? One spaget config covers both.
Community templates
Instead of writing rules from scratch, browse templates created by other developers. Find one for your stack (React, Next.js, Python, etc.), customize it, and export. You get well-structured rules without the research.
When to write cursor rules by hand
Manual cursor rules are the right choice when:
- You only use Cursor and don’t need cross-platform support.
- You want maximum control over every MDC frontmatter field and glob pattern.
- You’re a Cursor power user who already knows the format and can write rules quickly.
- Your rules need dynamic behavior tied to specific Cursor features not yet supported by spaget.
When spaget is the better fit
spaget makes more sense when:
- You’re new to Cursor rules and want to get started quickly without learning MDC format.
- You use multiple AI tools and want consistent behavior across all of them.
- You’re setting up a team and want everyone using the same agent configuration.
- You want templates instead of building from scratch.
- You value validation and want to catch config issues before they affect your workflow.
Getting started
You can try spaget right now — no account required. Open the app, build your agent configuration visually, and export Cursor-ready .mdc files in minutes.
Already have cursor rules? You can use them as a reference while building your spaget config, then export back to Cursor format once you’re happy with the result.
Related
- How to set up cursor rules: the complete guide — a step-by-step walkthrough of
.cursor/rulesconfiguration - AI agent configuration best practices for 2026 — advice that applies across all platforms
- spaget vs CLAUDE.md — if you also use Claude Code
- spaget vs Copilot instructions — if you also use GitHub Copilot