| description | Develop and review the local skillset compiler from a Claude-oriented workflow. |
| metadata | {"generated":"skillset@0.1.0","version":"0.1.0"} |
| name | skillset-claude-development |
Skillset Claude Development
Use this skill when working on the local skillset compiler from a Claude-oriented workflow.
Working Context
- The compiler repo is
/path/to/skillset.
skillset/, skillset.yaml, and skillset/changes/ are source truth/state for this repo's own generated skills and plugin.
.skillset/, plugins-claude/, plugins-codex/, .claude/skills, and .agents/skills are generated or operational outputs when self-building this repo.
- Do not publish, globally install, symlink, or mutate user-level Claude/Codex config as part of normal development.
Development Loop
- Read
AGENTS.md, README.md, docs/layout.md, and docs/schema-contracts.md before making a compiler contract change.
- For source contract changes, update
packages/schema/src/contracts.ts and packages/schema/src/validate.ts before compiler or Workbench consumers, regenerate artifacts with bun run schema:generate, and verify with bun run schema:check.
- Keep source edits in
skillset/, skillset.yaml, skillset/changes/, or compiler implementation files, not in generated outputs.
- After source changes, run
bun run skillset:build.
- Verify with
bun run skillset:check, bun run skillset:verify, bun run skillset:lint, and bun run check.
- If generated output is stale, rebuild from source and inspect the generated diff before committing.
Review Focus
- Schema and resolver behavior should reject ambiguous source contracts, and shared structural validation should live in
@skillset/schema rather than parallel compiler or Workbench field lists.
- Configured generated destination roots should never delete or write outside the repo or inside
skillset/, skillset/changes/, .skillset/cache/, or .skillset/snapshots/. Skillset-owned operational output may live under .skillset/cache/, and recovery backups may live under .skillset/snapshots/.
- Claude-specific dynamic context should not leak into Codex-enabled skills without an explicit fallback.
- Generated skill frontmatter should stay light:
metadata.version and metadata.generated.