diff --git a/README.md b/README.md index 15dcda25..601f6e0d 100644 --- a/README.md +++ b/README.md @@ -494,7 +494,7 @@ The Agency works natively with Claude Code, and ships conversion + install scrip - **[Antigravity](https://github.com/google-gemini/antigravity)** — `SKILL.md` per agent → `~/.gemini/antigravity/skills/` - **[Gemini CLI](https://github.com/google-gemini/gemini-cli)** — extension + `SKILL.md` files → `~/.gemini/extensions/agency-agents/` - **[OpenCode](https://opencode.ai)** — `.md` agent files → `.opencode/agents/` -- **[Cursor](https://cursor.sh)** — `.mdc` rule files → `.cursor/rules/` +- **[Cursor](https://cursor.sh)** — `SKILL.md` skill files → `.agents/skills/` - **[Aider](https://aider.chat)** — single `CONVENTIONS.md` → `./CONVENTIONS.md` - **[Windsurf](https://codeium.com/windsurf)** — single `.windsurfrules` → `./.windsurfrules` - **[OpenClaw](https://github.com/openclaw/openclaw)** — `SOUL.md` + `AGENTS.md` + `IDENTITY.md` per agent @@ -529,7 +529,7 @@ The installer scans your system for installed tools, shows a checkbox UI, and le [ ] 4) [ ] Gemini CLI (gemini extension) [ ] 5) [ ] OpenCode (opencode.ai) [ ] 6) [ ] OpenClaw (~/.openclaw) - [x] 7) [*] Cursor (.cursor/rules) + [x] 7) [*] Cursor (.agents/skills) [ ] 8) [ ] Aider (CONVENTIONS.md) [ ] 9) [ ] Windsurf (.windsurfrules) [ ] 10) [ ] Qwen Code (~/.qwen/agents) @@ -647,7 +647,7 @@ See [integrations/opencode/README.md](integrations/opencode/README.md) for detai
Cursor -Each agent becomes a `.mdc` rule file in `.cursor/rules/` of your project. +Each agent becomes a `SKILL.md` skill file in `.agents/skills//` of your project. ```bash cd /your/project diff --git a/integrations/cursor/README.md b/integrations/cursor/README.md deleted file mode 100644 index 679e3f96..00000000 --- a/integrations/cursor/README.md +++ /dev/null @@ -1,38 +0,0 @@ -# Cursor Integration - -Converts all 61 Agency agents into Cursor `.mdc` rule files. Rules are -**project-scoped** — install them from your project root. - -## Install - -```bash -# Run from your project root -cd /your/project -/path/to/agency-agents/scripts/install.sh --tool cursor -``` - -This creates `.cursor/rules/.mdc` files in your project. - -## Activate a Rule - -In Cursor, reference an agent in your prompt: - -``` -@frontend-developer Review this React component for performance issues. -``` - -Or enable a rule as always-on by editing its frontmatter: - -```yaml ---- -description: Expert frontend developer... -globs: "**/*.tsx,**/*.ts" -alwaysApply: true ---- -``` - -## Regenerate - -```bash -./scripts/convert.sh --tool cursor -``` diff --git a/scripts/convert.sh b/scripts/convert.sh index 22aa46e5..c673da82 100755 --- a/scripts/convert.sh +++ b/scripts/convert.sh @@ -13,7 +13,7 @@ # antigravity — Antigravity skill files (~/.gemini/antigravity/skills/) # gemini-cli — Gemini CLI extension (skills/ + gemini-extension.json) # opencode — OpenCode agent files (.opencode/agent/*.md) -# cursor — Cursor rule files (.cursor/rules/*.mdc) +# cursor — Cursor rule files (.agents/skills/*/SKILL.md) # aider — Single CONVENTIONS.md for Aider # windsurf — Single .windsurfrules for Windsurf # openclaw — OpenClaw SOUL.md files (openclaw_workspace//SOUL.md) @@ -208,15 +208,14 @@ convert_cursor() { slug="$(slugify "$name")" body="$(get_body "$file")" - outfile="$OUT_DIR/cursor/rules/${slug}.mdc" - mkdir -p "$OUT_DIR/cursor/rules" + outfile="$OUT_DIR/cursor/skills/${slug}/SKILL.md" + mkdir -p "$OUT_DIR/cursor/skills/${slug}" - # Cursor .mdc format: description + globs + alwaysApply frontmatter + # Cursor skills format: description + name frontmatter cat > "$outfile" </dev/null 2>&1 || [[ -d "${HOME}/.github" || -d "${HOME}/.copilot" ]]; } detect_antigravity() { [[ -d "${HOME}/.gemini/antigravity/skills" ]]; } detect_gemini_cli() { command -v gemini >/dev/null 2>&1 || [[ -d "${HOME}/.gemini" ]]; } -detect_cursor() { command -v cursor >/dev/null 2>&1 || [[ -d "${HOME}/.cursor" ]]; } +detect_cursor() { command -v cursor >/dev/null 2>&1 || [[ -d "${PWD}/.agents/skills" || -d "${PWD}/.cursor" ]]; } detect_opencode() { command -v opencode >/dev/null 2>&1 || [[ -d "${HOME}/.config/opencode" ]]; } detect_aider() { command -v aider >/dev/null 2>&1; } detect_openclaw() { command -v openclaw >/dev/null 2>&1 || [[ -d "${HOME}/.openclaw" ]]; } @@ -144,7 +144,7 @@ tool_label() { gemini-cli) printf "%-14s %s" "Gemini CLI" "(gemini extension)" ;; opencode) printf "%-14s %s" "OpenCode" "(opencode.ai)" ;; openclaw) printf "%-14s %s" "OpenClaw" "(~/.openclaw)" ;; - cursor) printf "%-14s %s" "Cursor" "(.cursor/rules)" ;; + cursor) printf "%-14s %s" "Cursor" "(.agents/skills)" ;; aider) printf "%-14s %s" "Aider" "(CONVENTIONS.md)" ;; windsurf) printf "%-14s %s" "Windsurf" "(.windsurfrules)" ;; qwen) printf "%-14s %s" "Qwen Code" "(~/.qwen/agents)" ;; @@ -385,16 +385,19 @@ install_openclaw() { } install_cursor() { - local src="$INTEGRATIONS/cursor/rules" - local dest="${PWD}/.cursor/rules" + local src="$INTEGRATIONS/cursor/skills" + local dest="${PWD}/.agents/skills" local count=0 [[ -d "$src" ]] || { err "integrations/cursor missing. Run convert.sh first."; return 1; } mkdir -p "$dest" - local f - while IFS= read -r -d '' f; do - cp "$f" "$dest/"; (( count++ )) || true - done < <(find "$src" -maxdepth 1 -name "*.mdc" -print0) - ok "Cursor: $count rules -> $dest" + local d + while IFS= read -r -d '' d; do + local name; name="$(basename "$d")" + mkdir -p "$dest/$name" + cp "$d/SKILL.md" "$dest/$name/SKILL.md" + (( count++ )) || true + done < <(find "$src" -mindepth 1 -maxdepth 1 -type d -print0) + ok "Cursor: $count skills -> $dest" warn "Cursor: project-scoped. Run from your project root to install there." }