Files
holocron/docs/adr/0001-skills-in-agents-dir.md
Defame1297 05bb9d6e9f docs(adr): triage, rewrite, and renumber ADRs for clean slate
Complete ADR refactoring for issue #15:

## Changes

1. **Triage archival** — deleted chunk-era ADRs (0001–0003, 0006–0011, 0013); kept active decisions (0004, 0005, 0012, 0014+)
2. **ADR-0004 rewrite** — now reflects plugin-based skill distribution (`plugins/<name>/skills/` + `claude plugin install`) instead of monolithic `.agents/skills/` deployment
3. **Renumber to 0001–0009** — sequential clean slate after archival; all cross-references updated
4. **Content audit** — verified all 9 remaining ADRs for alignment with plugin model, removed stale chunk/deployment language

Kept ADRs: 0001–0009
- 0001: Skills distributed via plugins
- 0002: Two-tier CLAUDE.md (always-on + on-demand)
- 0003: AGENTS.md as provider-agnostic entry point
- 0004: INFO finding level in skill-audit
- 0005: agent-author dual provider scaffold
- 0006: Plugin version parity (version in both manifests)
- 0007: Gitea as exclusive issue tracker
- 0008: agent-audit single-file invocation
- 0009: agent-audit field inventory reference

All decisions are active and aligned with current repository state (marketplace/plugin model).

Closes #15 (ADR section of acceptance criteria)
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-04 17:18:04 +00:00

1.5 KiB

Skills are distributed via plugins, not monolithic repo deployment

Skills (slash commands) are authored and distributed as part of plugins — each plugin contains its own skills/ directory alongside agents and other artifacts. Plugins are installed via claude plugin install <name>@holocron rather than deployed from the repo's local tree. This decision decouples skill authoring cadence from core provider deployments and allows independent versioning per plugin.

Context

Initially, skills were stored in a single .agents/skills/ directory and deployed universally via install.sh. This created a coupling problem: shipping a new skill required shipping an entire repo release, and skill updates were pinned to provider version releases. As the skill library grew, independent skill shipping became essential.

Consequences

  • Skills are now co-located with their associated agents and infrastructure in plugins/<name>/. Logically related skills ship together; independent skills can ship on independent cadences.
  • claude plugin install handles installation, versioning, and updates — no need for shell deployment logic in install.sh.
  • Repositories that use skills from this project declare plugin dependencies in their claude.plugin.json manifest or install via the CLI.
  • Providers that do not natively understand claude plugin install (hypothetically) would need a custom adapter to fetch from the Holocron marketplace — deferred concern, not yet needed.
  • A skill in one plugin does not block a breaking change in another plugin.