* feat(cursor): add Cursor CLI as target provider
Add converter, writer, types, and tests for converting Claude Code
plugins to Cursor-compatible format (.mdc rules, commands, skills,
mcp.json). Agents become Agent Requested rules (alwaysApply: false),
commands are plain markdown, skills copy directly, MCP is 1:1 JSON.
* docs: add Cursor spec and update README with cursor target
* chore: bump CLI version to 0.5.0 for cursor target
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs: note Cursor IDE + CLI compatibility in README
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* feat(commands): add /compound-engineering-setup for configurable agents
Adds a new setup command that allows users to configure which review
agents to use instead of hardcoding them in workflows. This enables:
- Multi-step onboarding with AskUserQuestion for easy setup
- Auto-detection of project type (Rails, Python, TypeScript, etc.)
- Three setup modes: Quick (smart defaults), Advanced, and Minimal
- Configuration stored in .claude/compound-engineering.json
- Support for both global (~/.claude/) and project-specific config
Updated workflows to read from config:
- /workflows:review - reads reviewAgents from config
- /plan_review - reads planReviewAgents from config
- /workflows:work - references config for reviewer agents
- /workflows:compound - references config for specialized agents
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat: auto-trigger setup when no config exists
Workflows now detect missing config and offer inline quick setup:
- "Quick Setup" - auto-detect project type, create config, continue
- "Full Setup" - run /compound-engineering-setup for customization
- "Skip" - use defaults just this once
This ensures users get onboarded automatically when running any
workflow for the first time, without needing to know about the
setup command beforehand.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat(review): wire all conditionalAgents categories
Extended /workflows:review to invoke conditional agents for:
- migrations (existing)
- frontend (new): JS/TS/Stimulus changes
- architecture (new): structural changes, 10+ files
- data (new): model/ActiveRecord changes
Each category reads from conditionalAgents.* config key and
runs appropriate specialized agents when file patterns match.
Resolves: todos/001-ready-p2-conditional-agents-not-invoked.md
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* chore: mark todo #001 as complete
* feat(setup): add custom agent discovery and modify flow
- Auto-detect custom agents in .claude/agents/ and ~/.claude/agents/
- Add modify existing config flow (add/remove agents, view config)
- Include guide for creating custom review agents
- Add customAgents mapping in config to track agent file paths
- Update changelog with new config schema including customAgents
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* chore: remove completed todos directory
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* [2.29.1] Improve /workflows:brainstorm question flow
- Add "Ask more questions" option at handoff phase
- Clarify that Claude should ask the user questions (not wait for user)
- Require resolving ALL open questions before offering to proceed
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* Simplify plugin settings: replace 486-line wizard with .local.md pattern
- Rewrite setup.md (486 → 95 lines): detect project type, create
.claude/compound-engineering.local.md with smart defaults
- Make review.md and work.md config-aware: read agents from .local.md
frontmatter, fall back to auto-detected defaults
- Wire schema-drift-detector into review.md migrations conditional block
- Delete technical_review.md (duplicated /plan_review)
- Add disable-model-invocation to setup.md
- Bump to v2.32.0
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Rewrite .claude/ paths for OpenCode/Codex targets, add npm publish workflow
- Converters now rewrite .claude/ → .opencode/ (OpenCode) and .codex/ (Codex)
in command bodies and agent bodies so .local.md settings work cross-platform
- Apply transformContentForCodex to agent bodies (was only commands before)
- Add GitHub Action to auto-publish to npm on version bump merge to main
- Bump to v0.4.0
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat(workflows-work): require post-deploy monitoring section
Add a mandatory Post-Deploy Monitoring & Validation section to the /workflows:work PR template, include no-impact fallback guidance, and enforce it in the quality checklist.
* Add learnings-researcher to review workflow, fix docs site counts
- Add learnings-researcher as parallel agent #14 in /workflows:review
so past solutions from docs/solutions/ are surfaced during code review
- Make /release-docs command invocable (remove disable-model-invocation)
- Fix stale counts across docs site (agents 28→29, commands 19→24,
skills 15→18, MCP servers 2→1)
- Bump version to 2.32.1
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Move /release-docs to local .claude/commands/, bump to 2.32.2
Repo maintenance command doesn't need to be distributed to plugin users.
Update command count 24 → 23 across plugin.json, marketplace.json, and docs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Move settings to project root: compound-engineering.local.md
Tool-agnostic location — works for Claude, Codex, OpenCode without
path rewriting. No global fallback, just project root.
Update commands (setup, review, work) and converter tests.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Make /compound-engineering-setup interactive with auto-detect fast path
Two paths: "Auto-configure" (one click, smart defaults) or "Customize"
(pick stack, focus areas, review depth). Uses AskUserQuestion throughout.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Replace /compound-engineering-setup command with setup skill
Setup is now a skill invoked on-demand when compound-engineering.local.md
doesn't exist. Review and work commands just say "invoke the setup skill"
instead of inlining the full setup flow.
- Remove commands/setup.md (command)
- Add skills/setup/SKILL.md (skill with interactive AskUserQuestion flow)
- Simplify review.md and work.md to reference the skill
- Counts: 29 agents, 22 commands, 19 skills
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Prepare v2.33.0 release: setup skill, configurable review agents
- Bump version to 2.33.0
- Consolidate CHANGELOG entries for this branch
- Fix README: update counts (29/22/19), add setup + resolve-pr-parallel skills
- Remove stale /compound-engineering-setup command reference
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Adds a new 'droid' target to the converter that outputs Claude Code plugins
in Factory Droid's format:
- Commands flattened to ~/.factory/commands/ (strips namespace prefixes)
- Agents converted to droids in ~/.factory/droids/ with proper frontmatter
- Skills copied to ~/.factory/skills/
- Content transforms: Task calls, slash commands, and @agent references
adapted to Droid conventions
This resolves the manual workaround described in issue #31 by automating
the conversion from Claude Code plugin format to Factory Droid's expected
directory structure.
Includes 13 tests covering converter logic and file writer behavior.
Co-authored-by: adamprime <adamprime@hey.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* Update create-agent-skills to match 2026 official docs, add /triage-prs command
- Rewrite SKILL.md to document that commands and skills are now merged
- Add new frontmatter fields: disable-model-invocation, user-invocable, context, agent
- Add invocation control table and dynamic context injection docs
- Fix skill-structure.md: was incorrectly recommending XML tags over markdown headings
- Update official-spec.md with complete 2026 specification
- Add local /triage-prs command for PR triage workflow
- Add PR triage plan document
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* [2.31.0] Reduce context token usage by 79%, include recent community contributions
The plugin was consuming 316% of Claude Code's description character budget
(~50,500 chars vs 16,000 limit), causing components to be silently excluded.
Now at 65% (~10,400 chars) with all components visible.
Changes:
- Trim all 29 agent descriptions (move examples to body)
- Add disable-model-invocation to 18 manual commands
- Add disable-model-invocation to 6 manual skills
- Include recent community contributions in changelog
- Fix component counts (29 agents, 24 commands, 18 skills)
Contributors: @trevin, @terryli, @robertomello, @zacwilliams,
@aarnikoskela, @samxie, @davidalley
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Fix: keep disable-model-invocation off commands called by /lfg, rename xcode-test
- Remove disable-model-invocation from test-browser, feature-video,
resolve_todo_parallel — these are called programmatically by /lfg and /slfg
- Rename xcode-test to test-xcode to match test-browser naming convention
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Fix: keep git-worktree skill auto-invocable (used by /workflows:work)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat(converter): support disable-model-invocation frontmatter
Parse disable-model-invocation from command and skill frontmatter.
Commands/skills with this flag are excluded from OpenCode command maps
and Codex prompt/skill generation, matching Claude Code behavior where
these components are user-only invocable.
Bump converter version to 0.3.0.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Before writing config.toml (Codex) or opencode.json (OpenCode), the CLI
attempts to create a timestamped backup of any existing config file.
This prevents accidental data loss when users have customized configs.
Backup is best-effort - if it fails (e.g., unusual permissions), the
install continues without blocking.
Backup files are named: config.toml.bak.2026-01-23T21-16-40-065Z
Adds comprehensive content transformation for Codex compatibility:
1. Task agent calls: `Task agent-name(args)` → `Use the $agent-name skill to: args`
2. Slash commands: `/command-name` → `/prompts:command-name`
3. Agent references: `@agent-name` → `$agent-name skill`
This bridges the syntax gap between Claude Code and Codex:
- Claude Code uses Task tool with subagent_types
- Codex uses skills and /prompts: namespace
Transformations are applied to both skill and prompt files during conversion.
Tested with Codex CLI 0.89.0 - all transformations working correctly.
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
The OpenCode installer was writing to ~/.opencode but OpenCode expects
global configuration at ~/.config/opencode per XDG Base Directory spec.
Fixes:
- src/commands/install.ts: Change default output from ~/.opencode to
~/.config/opencode
- src/targets/opencode.ts: Recognize "opencode" basename (not just
".opencode") for direct writes without nesting
Closes#114🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude <noreply@anthropic.com>