AGENTS.md · git:20260714.5b62dd1 · 2026-07-14 · sha256 4c444f9fb12e3dda
AGENTS.md git:20260714.5b62dd1A
Immutable. This exact content is served forever at /api/v1/blob/4c444f9fb12e3dda.
# AGENTS.md <!-- mapped 2026-07-14 @ f7ff09b · regenerate with /map refresh --> ## What this is A collection of Claude Code skills (`.claude/skills/<name>/SKILL.md`) for research, daily work, and a coding loop. No application code, no build system — every skill is a markdown file with YAML frontmatter that Claude Code loads. Entry point for a reader is `README.md`; entry point for a user is any skill's slash command (e.g. `/pulse`). ## Build, test, run There is nothing to compile and no test suite — this is a docs-only repo. Validation is by inspection: - **Validate before committing:** `python3 scripts/validate-skills.py` — frontmatter (`name` = folder, no clash with harness built-ins, `description` present, hard 1024-char limit with a soft WARN above 950), marketplace coverage both ways, README rows, references/ integrity. `--descriptions` dumps the model-visible trigger surface (skills with `disable-model-invocation: true` excluded) for the eval below. - **Reworded a description? Re-run the trigger eval** per `evals/README.md` (fresh judge sub-agent over `evals/triggers.json`); the authoring lint is §3 of that file. A description is a skill's only trigger surface. - **Install** (from `README.md`): `/plugin marketplace add duthaho/skillhub` (plugins defined in `.claude-plugin/marketplace.json` — a new skill must be added to a plugin's `skills` list there too), or `cp -r`/symlink the folders. - **Run** a skill by typing its command in Claude Code; skills lean on Claude Code's sub-agents and web tools, no external services. ## Architecture - **Each skill is self-contained** in `.claude/skills/<name>/`. A user may copy one folder alone, so cross-skill conventions (date via `date +%F`, `out/` creation, keyless degradation) are **duplicated by design** — don't try to factor them into a shared file. - **Progressive disclosure via `references/`:** heavy output templates and design briefs live in `.claude/skills/<name>/references/*.md`, loaded only when the skill reaches that step (blueprint, jobfit, pulse, refactor, scout, verdict). The `SKILL.md` body loads on every trigger, so keep it lean. - **State model:** skills write to `out/<skill>/` in whatever project they run in (`out/dev/` for the coding loop; shipped change folders move to `out/dev/archive/`). See `README.md` "How the memory works". - **The coding loop composes:** `map` → `feature`/`bugfix`/`refactor` → `done`, with `autopilot` wrapping the whole loop, `scout` feeding it candidates, and `blueprint` as map's human-facing sibling. ## Conventions & gotchas - **Adding a skill touches three places** plus the eval: create the folder, add one row to the skills table in `README.md`, list it in a plugin's `skills` array in `.claude-plugin/marketplace.json`, and add trigger cases to `evals/triggers.json` (cases first, TDD-style). Counts and command lists were deliberately removed so nothing else drifts. - **autopilot is user-invoked-only** (`disable-model-invocation: true`): its description is human-facing and exempt from trigger evals — don't "fix" it by adding trigger phrases back, and don't expect the model to route to it (other skills suggest the *user* run `/autopilot`). - **`out/` is commit-optional**, but `out/jobfit/`, `out/daybrief/`, and `out/tune/` stay gitignored — they hold personal data (`.gitignore`). - **Guardrail voice:** rules are stated once in the body with a short "why", not repeated in a MUST-heavy Guardrails block. Keep rationale that changes behavior; cut rationale that only restates. - **Git workflow:** feature branch → PR → merge; history carries both merge commits and squashes. Commit messages carry **no AI attribution**; adapted techniques credit their source repo + license in the commit body. ## Landmarks - `README.md` — the front door; failure-mode narrative + skills table. - `scripts/validate-skills.py` + `evals/` — the whole test story. - `.claude/skills/map/SKILL.md` — the skill that generates this file. - `.claude/skills/autopilot/SKILL.md` — the most complex skill (full pipeline). - `.claude/skills/*/references/` — the progressive-disclosure templates. - `out/scout/tracker.md` — adoption verdicts + WATCH triggers (if committed). - `LICENSE` — MIT.