Files
claude-engineering-plugin/plugins/compound-engineering/CLAUDE.md
Matt Van Horn 3e99c11c0b refactor(skills): migrate commands to skills directory structure
Move all 27 command .md files from commands/ to skills/*/SKILL.md
format. Claude Code 2.1.3+ merged commands and skills - both create
slash commands and work identically. Skills add optional features
like supporting files and automatic context loading.

- commands/ce/*.md -> skills/ce-*/SKILL.md
- commands/workflows/*.md -> skills/workflows-*/SKILL.md
- commands/*.md -> skills/*/SKILL.md
- Update plugin.json and marketplace.json descriptions
- Update CLAUDE.md directory structure docs
- Update deploy-docs and generate_command references

Fixes #116

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-11 11:35:46 -07:00

98 lines
3.9 KiB
Markdown

# Compounding Engineering Plugin Development
## Versioning Requirements
**IMPORTANT**: Every change to this plugin MUST include updates to all three files:
1. **`.claude-plugin/plugin.json`** - Bump version using semver
2. **`CHANGELOG.md`** - Document changes using Keep a Changelog format
3. **`README.md`** - Verify/update component counts and tables
### Version Bumping Rules
- **MAJOR** (1.0.0 → 2.0.0): Breaking changes, major reorganization
- **MINOR** (1.0.0 → 1.1.0): New agents, commands, or skills
- **PATCH** (1.0.0 → 1.0.1): Bug fixes, doc updates, minor improvements
### Pre-Commit Checklist
Before committing ANY changes:
- [ ] Version bumped in `.claude-plugin/plugin.json`
- [ ] CHANGELOG.md updated with changes
- [ ] README.md component counts verified
- [ ] README.md tables accurate (agents, commands, skills)
- [ ] plugin.json description matches current counts
### Directory Structure
```
agents/
├── review/ # Code review agents
├── research/ # Research and analysis agents
├── design/ # Design and UI agents
├── workflow/ # Workflow automation agents
└── docs/ # Documentation agents
skills/
├── ce-*/ # Core workflow skills (ce:plan, ce:review, etc.)
├── workflows-*/ # Deprecated aliases for ce:* skills
└── */ # All other skills
```
> **Note:** Commands were migrated to skills in v2.39.0. All former
> `/command-name` slash commands now live under `skills/command-name/SKILL.md`
> and work identically (Claude Code 2.1.3+ merged the two formats).
## Command Naming Convention
**Workflow commands** use `ce:` prefix to unambiguously identify them as compound-engineering commands:
- `/ce:plan` - Create implementation plans
- `/ce:review` - Run comprehensive code reviews
- `/ce:work` - Execute work items systematically
- `/ce:compound` - Document solved problems
- `/ce:brainstorm` - Explore requirements and approaches before planning
**Why `ce:`?** Claude Code has built-in `/plan` and `/review` commands. The `ce:` namespace (short for compound-engineering) makes it immediately clear these commands belong to this plugin. The legacy `workflows:` prefix is still supported as deprecated aliases that forward to the `ce:*` equivalents.
## Skill Compliance Checklist
When adding or modifying skills, verify compliance with skill-creator spec:
### YAML Frontmatter (Required)
- [ ] `name:` present and matches directory name (lowercase-with-hyphens)
- [ ] `description:` present and describes **what it does and when to use it** (per official spec: "Explains code with diagrams. Use when exploring how code works.")
### Reference Links (Required if references/ exists)
- [ ] All files in `references/` are linked as `[filename.md](./references/filename.md)`
- [ ] All files in `assets/` are linked as `[filename](./assets/filename)`
- [ ] All files in `scripts/` are linked as `[filename](./scripts/filename)`
- [ ] No bare backtick references like `` `references/file.md` `` - use proper markdown links
### Writing Style
- [ ] Use imperative/infinitive form (verb-first instructions)
- [ ] Avoid second person ("you should") - use objective language ("To accomplish X, do Y")
### AskUserQuestion Usage
- [ ] If the skill uses `AskUserQuestion`, it must include an "Interaction Method" preamble explaining the numbered-list fallback for non-Claude environments
- [ ] Prefer avoiding `AskUserQuestion` entirely (see `brainstorming/SKILL.md` pattern) for skills intended to run cross-platform
### Quick Validation Command
```bash
# Check for unlinked references in a skill
grep -E '`(references|assets|scripts)/[^`]+`' skills/*/SKILL.md
# Should return nothing if all refs are properly linked
# Check description format - should describe what + when
grep -E '^description:' skills/*/SKILL.md
```
## Documentation
See `docs/solutions/plugin-versioning-requirements.md` for detailed versioning workflow.