mirror of
https://github.com/duthaho/claudekit.git
synced 2026-07-14 02:55:18 +03:00
feat: run validate-plugin in CI; document the check in README and AGENTS.md
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
name: validate
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
validate:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Validate skill anatomy + version sync
|
||||
run: node scripts/validate-plugin.cjs
|
||||
@@ -0,0 +1,54 @@
|
||||
# AGENTS.md
|
||||
<!-- mapped 2026-07-12 @ 52e2cd6 · regenerate with /map refresh -->
|
||||
|
||||
## What this is
|
||||
claudekit — a Claude Code **plugin** (not an app): 15 skills, 8 agents, 5 output
|
||||
styles, and 3 hook scripts, distributed via a plugin marketplace. Almost everything
|
||||
is markdown consumed by Claude Code at runtime; the only buildable code is the
|
||||
docs website (`website/`, Astro Starlight). The only repo-level check is
|
||||
`scripts/validate-plugin.cjs` (skill anatomy + version sync).
|
||||
|
||||
## Build, test, run
|
||||
- Plugin: nothing to build. Lint before committing: `node scripts/validate-plugin.cjs`
|
||||
— validates every SKILL.md against the 8-section anatomy and plugin/marketplace
|
||||
version sync (also runs in CI, `.github/workflows/validate.yml`).
|
||||
- Test by installing locally:
|
||||
`/plugin marketplace add <path-or-repo>` → `/plugin install claudekit` → `/claudekit:init`
|
||||
- Website (`cd website/`): `npm install`, `npm run dev`, `npm run build`,
|
||||
`npm run preview`. Deployed to Cloudflare via `wrangler.jsonc` (assets from `./dist`).
|
||||
|
||||
## Architecture
|
||||
- `.claude-plugin/plugin.json` — plugin manifest; `.claude-plugin/marketplace.json`
|
||||
— marketplace listing. **Version lives in both files; bump them together.**
|
||||
- `skills/<name>/SKILL.md` — one dir per skill. Only `skills/init/` has extras:
|
||||
`templates/` (hooks.json, mcp-servers.json, rules/*.md) that init scaffolds into
|
||||
a user's `.claude/` dir.
|
||||
- `agents/<name>.md` — YAML frontmatter (`name`, `description` with embedded
|
||||
`<example>` blocks as an escaped single-line string, `tools`, `memory: project`)
|
||||
+ system prompt body. See `agents/tester.md`.
|
||||
- `output-styles/<name>.md` — frontmatter must keep `keep-coding-instructions: true`.
|
||||
- `scripts/*.cjs` — Node hook scripts (PostToolUse etc.); they **fail open** —
|
||||
errors are swallowed by design (see `scripts/auto-format.cjs`).
|
||||
- `website/src/content/docs/` — docs pages; `reference/{skills,agents,output-styles,mcp-servers}.md`
|
||||
mirror the plugin contents.
|
||||
|
||||
## Conventions & gotchas
|
||||
- Every skill follows a fixed 8-section anatomy (frontmatter, Overview, When to
|
||||
Use / NOT, Process, **Rationalizations table**, **Evidence Requirements**, Red
|
||||
Flags, References) — documented in README.md "Skill anatomy". New skills must match.
|
||||
- Counts and tables ("15 skills", "8 agents", workflow chains) are restated in
|
||||
`README.md`, `CHANGELOG.md`, and `website/src/content/docs/reference/*` — adding
|
||||
or removing a skill/agent means updating all three.
|
||||
- Skill frontmatter descriptions carry trigger keywords ("Use when…", "Activate
|
||||
for…") — they are load-bearing for skill dispatch, not doc prose.
|
||||
- `CHANGELOG.md` follows Keep a Changelog + SemVer; releases go through the
|
||||
repo's own `skills/release-and-changelog/SKILL.md` discipline.
|
||||
- House style: evidence-first, no marketing voice (README.md "No founder voice") —
|
||||
keep that tone in any skill/agent/doc text.
|
||||
|
||||
## Landmarks
|
||||
- `README.md` — canonical overview: 5-phase spine, agent roster, workflow chains
|
||||
- `.claude-plugin/plugin.json` — manifest / version
|
||||
- `skills/init/SKILL.md` — the setup wizard; templates in `skills/init/templates/`
|
||||
- `agents/tester.md` — reference example of agent file format
|
||||
- `website/astro.config.mjs` — docs site config
|
||||
@@ -158,6 +158,16 @@ For library/plugin authors before tagging. The audit catches stale deps and unac
|
||||
|
||||
In practice, devs skip steps for trivial work. The chains show the full discipline; use what the task earns.
|
||||
|
||||
## Development
|
||||
|
||||
CI (`.github/workflows/validate.yml`) lints every skill against the 8-section
|
||||
anatomy above and checks `plugin.json`/`marketplace.json` version sync. Run
|
||||
locally before committing:
|
||||
|
||||
```
|
||||
node scripts/validate-plugin.cjs
|
||||
```
|
||||
|
||||
## Requirements
|
||||
|
||||
- Claude Code 1.0+
|
||||
|
||||
Reference in New Issue
Block a user