AGENTS.md · git:20260920.e6cecb1 · 2026-09-20 · sha256 28f46e1c19e7c95c
AGENTS.md git:20260920.e6cecb1A
Immutable. This exact content is served forever at /api/v1/blob/28f46e1c19e7c95c.
# Claude Plugins Repository
Collection of Claude Code plugins: skills, agents, hooks, and scripts. Issues and PRs live in `DmitriyYukhanov/claude-plugins`.
## Repository hygiene
- `docs/superpowers/` and `.serena/` are local-only and gitignored. Never commit them.
- Stage with explicit paths (`git add <path>`), never `git add -A` or `git add .`.
- Before committing, run `git diff --cached --name-only`; anything under those two directories gets `git restore --staged <path>`.
## Plugin versioning
Any change under `plugins/<name>/` bumps `"version"` in `plugins/<name>/.claude-plugin/plugin.json` and the matching entry in `.claude-plugin/marketplace.json`. The pre-commit hook rejects a commit where either is missing or the two disagree.
Semantic Versioning:
- PATCH (x.y.Z): bug fixes, typos, minor documentation tweaks
- MINOR (x.Y.0): new features, skill improvements, prompt changes, non-breaking additions
- MAJOR (X.0.0): breaking changes to skill behavior, major restructuring, removed functionality
## Changelog
Every version bump adds an entry to `plugins/<name>/CHANGELOG.md` in [Keep a Changelog](https://keepachangelog.com/) format (Added, Changed, Deprecated, Removed, Fixed, Security). The pre-commit hook rejects a bump without one.
Entry rules:
- One short sentence per entry, imperative mood, describing the user-facing outcome: "Add search skill", not "Added search skill".
- No implementation details (step numbers, file names, tool names) and no vague filler ("various improvements").
- Group sub-changes by user-visible outcome. Internal-only changes are not documented.
- Every version header carries an ISO 8601 date: `## [1.2.0] - 2026-04-03`.
- Write the entry as you make the change, not at release time.
Good: "Cross-validation step: each model verifies the other's findings before presenting to user"
Bad: "Cross-validation step (Step 5): after initial triage, each model's findings are verified by the other model before presenting to user, using CONFIRM/REJECT/REFINE verdicts from validation-format.md"
Template for a new plugin:
```markdown
# Changelog
All notable changes to the **<plugin-name>** plugin will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/),
and this project adheres to [Semantic Versioning](https://semver.org/).
## [1.0.0] - YYYY-MM-DD
### Added
- Initial release description
```
Releases are automatic: a push to `main` that touches `plugins/**` assembles the updated changelogs into a GitHub Release. Never create a release by hand.
## New plugin checklist
A new `plugins/<name>/` directory needs all four, and the pre-commit hook checks each:
1. `plugins/<name>/.claude-plugin/plugin.json`: manifest with name, version, description (the only location Claude Code reads)
2. `plugins/<name>/CHANGELOG.md`: initial `[1.0.0]` entry
3. `.claude-plugin/marketplace.json`: entry with matching version, description, author, source, category, homepage
4. `README.md`: install command and a `### <plugin-name>` section, in alphabetical position
## Git hooks
Tracked hooks live in `.githooks/`. After cloning, run `git config core.hooksPath .githooks`.
## Skill writing
Skill authoring guidance (frontmatter, SKILL.md structure, scripts, subagents, validation) lives in [`docs/skill-creation.md`](docs/skill-creation.md).
## Repository structure
```
plugins/
<plugin-name>/
.claude-plugin/
plugin.json # Plugin manifest (the only location Claude Code reads)
CHANGELOG.md # Per-plugin changelog
skills/ # Skill definitions (SKILL.md files)
hooks/ # Plugin hooks
agents/ # Agent definitions (.md files)
commands/ # Slash commands (legacy; new plugins ship skills instead)
scripts/ # Shell scripts
skills/
claude.ai/ # Binary .skill files for the Claude.ai web interface, not Claude Code
.claude-plugin/
marketplace.json # Marketplace listing (versions must match plugin.json)
.github/workflows/ # Plugin tests and the auto-release on push to main
.githooks/ # Tracked git hooks (pre-commit enforcement)
docs/
skill-creation.md # Skill authoring best practices
agents/ # Per-repo config the engineering skills read
```
## Agent skills
### Issue tracker
Issues live as GitHub issues in `DmitriyYukhanov/claude-plugins`, driven through the `gh` CLI. See `docs/agents/issue-tracker.md`.
### Triage labels
The five canonical roles, each label string equal to its name. See `docs/agents/triage-labels.md`.
### Domain docs
Single-context: one `CONTEXT.md` and one `docs/adr/` at the repo root. See `docs/agents/domain.md`.