You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🐛 Fix agent descriptions for Claude Code YAML parser compatibility (#8)
* 🐛 Fix agent descriptions to work with Claude Code's YAML parser
Claude Code's agent discovery system doesn't parse YAML block scalars or multi-line
descriptions correctly. Prettier also wraps long lines across different repos with
varying configs, breaking agent registration.
Solution: Keep all agent descriptions under 88 characters on a single line.
Changes:
- Rewrote all agent descriptions to be concise (<88 chars) and LLM-focused
- Added CLAUDE.md files documenting the 88-char constraint and best practices
- Removed unnecessary 'tools' and 'model' frontmatter fields for cleaner config
- Descriptions now focus on WHEN to invoke agents (trigger conditions)
- Tested with prettier to verify no wrapping occurs
This ensures agents work reliably across all installations regardless of prettier config.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
* 🐛 Fix prettier wrapping - actual limit is 75 chars not 88
Cursor Bug Bot caught this: prettier was still wrapping descriptions that exceeded 88
chars when including the "description: " prefix (13 chars). The actual limit for the
description VALUE is 75 characters, not 88.
Changes:
- Shortened all agent descriptions to under 75 chars
- Updated all 4 CLAUDE.md files with correct 75-char limit
- Verified with prettier - all files stay single-line now
Math: description: (13) + "value" (75) = 88 total line length (prettier's limit)
Thanks to Cursor Bug Bot for catching this immediately!
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
* 📝 Run prettier on entire directory
* 📝 Format markdown prose with prettier
* 📝 Remove anti-patterns from CLAUDE.md per prompt-engineering.mdc
Claude's review correctly noted that showing 'What does NOT work' violates our own
prompt-engineering.mdc guidelines about avoiding anti-patterns.
Changes:
- Replaced negative examples with positive 'Valid formats' section
- Changed emoji markers (✅❌) to text markers (Good:/Too long:)
- Fixed inconsistency: now shows quotes in all examples
Aligns with prompt-engineering.mdc: 'Minimal bad examples - LLMs encode patterns
regardless of labels like wrong or dont do this.'
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
* 🔄 Trigger CI checks
---------
Co-authored-by: Nick Sullivan <nick@technick.ai>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
- Show where new rules will be added vs merged </existing-config-detection>
83
85
84
86
<project-understanding>
85
87
Detect project type and framework specifics. Django differs from FastAPI. React differs from Next.js. Look for existing configurations to avoid duplicates. Understand the project's purpose - API server, web app, CLI tool.
@@ -145,15 +147,15 @@ Use AskUserQuestion to confirm skill selection, showing recommended pre-selected
145
147
<file-installation>
146
148
Copy selected configurations intelligently, respecting existing customizations. Compare files with diff when they exist. For conflicts, use AskUserQuestion to offer choices (overwrite, skip, show diff, or custom action). Never silently overwrite.
-`.cursor/rules/` is a real directory (not a symlink)
194
197
-`rules/` at root doesn't exist OR symlinks to `.cursor/rules/`
195
198
-`CLAUDE.md` is a real file (not a symlink)
196
199
- No `AGENTS.md` at project root
197
200
198
201
Current architecture (v2 - Cross-tool):
202
+
199
203
-`rules/` at project root is the canonical directory
200
204
-`.cursor/rules/` symlinks to `../rules/`
201
205
-`AGENTS.md` at project root is canonical
@@ -204,27 +208,29 @@ Current architecture (v2 - Cross-tool):
204
208
Detection: `test -L .cursor/rules && test -L CLAUDE.md && test -f AGENTS.md`
205
209
206
210
If legacy architecture detected:
211
+
207
212
1. Explain the architecture change clearly:
208
-
- "Your project uses the older Cursor-first structure. There's a newer cross-tool architecture that works better with Claude Code, Cursor, Windsurf, Aider, and other AI coding tools."
209
-
- "The key change: `rules/` becomes the canonical location at project root, with `.cursor/rules/` symlinked to it. This follows the emerging AGENTS.md standard (20,000+ GitHub repos)."
213
+
- "Your project uses the older Cursor-first structure. There's a newer cross-tool
214
+
architecture that works better with Claude Code, Cursor, Windsurf, Aider, and other
215
+
AI coding tools."
216
+
- "The key change: `rules/` becomes the canonical location at project root, with
217
+
`.cursor/rules/` symlinked to it. This follows the emerging AGENTS.md standard
218
+
(20,000+ GitHub repos)."
210
219
211
220
2. Use AskUserQuestion to offer migration:
212
221
- "Migrate to cross-tool architecture (Recommended)" - Performs full migration
213
222
- "Skip migration, just update configs" - Updates within current structure
214
223
- "Show me what would change" - Explains changes in detail
215
224
216
-
3. If migration accepted:
217
-
a. Create backup: `cp -r .cursor/rules rules-backup`
218
-
b. Move rules: `mv .cursor/rules rules`
219
-
c. Create symlink: `ln -s ../rules .cursor/rules`
220
-
d. Create AGENTS.md (copy from CLAUDE.md if exists, or create new)
221
-
e. Replace CLAUDE.md: `rm CLAUDE.md && ln -s AGENTS.md CLAUDE.md`
222
-
f. Update @ references in AGENTS.md from `.cursor/rules/` to `rules/`
223
-
g. Rename load-cursor-rules symlink to load-rules if exists
224
-
h. Report migration complete, then continue with normal update
225
-
226
-
4. If migration skipped, continue updating within legacy structure (but warn that some new features may not work correctly)
227
-
</architecture-check>
225
+
3. If migration accepted: a. Create backup: `cp -r .cursor/rules rules-backup` b. Move
226
+
rules: `mv .cursor/rules rules` c. Create symlink: `ln -s ../rules .cursor/rules` d.
227
+
Create AGENTS.md (copy from CLAUDE.md if exists, or create new) e. Replace CLAUDE.md:
228
+
`rm CLAUDE.md && ln -s AGENTS.md CLAUDE.md` f. Update @ references in AGENTS.md from
229
+
`.cursor/rules/` to `rules/` g. Rename load-cursor-rules symlink to load-rules if
230
+
exists h. Report migration complete, then continue with normal update
231
+
232
+
4. If migration skipped, continue updating within legacy structure (but warn that some
233
+
new features may not work correctly) </architecture-check>
0 commit comments