throughput
Use when the user asks to open/show the CCC throughput (token) dashboard, or asks how many tokens they've used — overall/so far,…
Use right before cutting a release — it spawns ONE fresh sibling session via CCC that audits only the JUDGMENT gates a release script cannot check (does the changelog actually describe the diff, does the version bump match semver for what changed, do the docs mention the new
$ npx -y skills add amirfish1/claude-command-center --skill release-audit --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/release-auditContext preview
The summary Claude sees to decide when to auto-load this skill.
Use right before cutting a release — it spawns ONE fresh sibling session via CCC that audits only the JUDGMENT gates a release script cannot check (does the changelog actually describe the diff, does the version bump match semver for what changed, do the docs mention the new
name: release-audit description: Use right before cutting a release — it spawns ONE fresh sibling session via CCC that audits only the JUDGMENT gates a release script cannot check (does the changelog actually describe the diff, does the version bump match semver for what changed, do the docs mention the new user-visible feature, is anything uncommitted or half-shipped) and returns a GO / NO-GO with blockers. Advisory only; it never touches the release. allowed-tools: Bash
Release-audit spawns a single fresh CCC session that reviews whether a pending release is *ready* — but only on the gates that need judgment, not the ones a script already enforces. The deterministic mechanics (version bump in lockstep, tag, build, notarize, appcast, brew formula) belong to `scripts/cut-release.sh` and should stay there; adding a session to re-run them just adds nondeterminism to the one place you want none. What a script can't judge is whether the changelog honestly describes the diff, whether the bump is the right *kind* of bump, and whether the docs caught up. That's this skill. It builds on the spawn/report_to mechanics in the `ccc-orchestration` skill — read that first for the full Spawn/Inject/Ask API.
**1 spawned session.** Each spawn is a real billed session on the user's kanban — tell the user the count before spawning. This is a pre-release gate, not a per-commit check — run it once when you're about to cut `vX.Y.Z`, not on every push.
The auditor is **read-only and advisory**. It returns a report; it changes nothing. Say this in the prompt explicitly, because a helpful session will otherwise try to "just fix it":
`CHANGELOG.md`, create tags, push, or build artifacts.
not already exist, does the build pass) are the **script's** job — the auditor only flags them if it happens to notice, it does not own them.
The judgment gates it DOES own:
release notes) actually cover the user-visible changes in the diff since the last tag? Anything shipped but undocumented, or documented but not shipped?
changes? A new `/api/*` field is a minor; a renamed/removed field or changed CLI contract is a major; bugfixes are a patch. A patch bump hiding a breaking change is a NO-GO.
features and flags introduced since the last tag?
the diff, a `TODO`/`FIXME` on a shipping path, debug code left in.
CCC_URL="$(cat ~/.claude/command-center/port.txt 2>/dev/null || echo "${CCC_URL:-http://127.0.0.1:8090}")"
curl -sf --max-time 2 "$CCC_URL/api/version" >/dev/null 2>&1 || CCC_URL="http://127.0.0.1:8090"
curl -sf --max-time 2 "$CCC_URL/api/version" >/dev/null 2>&1 || CCC_DOWN=1sandbox blocks loopback and fails spuriously even when CCC is up.
`*.jsonl` under `~/.claude/projects/<slugified-cwd>/` (see `ccc-orchestration`).
the auditor diffs `<last-tag>..HEAD` to see what's shipping.
snippets roll into `CHANGELOG.md`; version bumps in lockstep in `pyproject.toml` and `server.py`. Point the auditor at these so it checks the right files.
this repo, `/api/*` responses and `run.sh` / env-var flags.
curl -s -X POST "$CCC_URL/api/sessions/spawn" -H "Content-Type: application/json" -d @- <<'JSON'
{
"prompt": "Audit release readiness. You are READ-ONLY and ADVISORY: do NOT run any release script, do NOT bump versions, edit changelogs, tag, push, or build — return a report only. LAST TAG: <vX.Y.(Z-1)>. PROPOSED VERSION: <vX.Y.Z>. Diff the range <last-tag>..HEAD and audit ONLY these judgment gates: 1) CHANGELOG FIDELITY — list the user-visible changes in the diff, then check the changelog snippets (<changelog location>) cover them; flag anything shipped-but-undocumented or documented-but-not-shipped. 2) SEMVER — decide the bump the diff actually warrants (patch = bugfix only; minor = additive feature or new API field; major = renamed/removed API field, changed response shape, or changed CLI/env contract on <API surface>) and compare to the PROPOSED version; a bump smaller than the change requires is a blocker. 3) DOCS CAUGHT UP — do the README / public docs mention new user-visible features and flags from the diff? 4) NOTHING HALF-SHIPPED — uncommitted changes, a feature only partly in the diff, debug code or TODO/FIXME on a shipping path. For each gate report PASS or a specific finding with file:line evidence and the exact fix the human must make. Do NOT audit the deterministic mechanics (version-string lockstep, tag collision, build/notarize) — those are the release script's job. Finish with a verdict: GO (all judgment gates pass) or NO-GO with the ordered blocker list.",
"repo_path": "/abs/path/to/repo",
"report_to": "<your-session-id>"
}
JSONOmit `"model"` and `"reasoning_effort"`: the server spawn defaults (Settings → Spawn defaults) apply. Pass either explicitly to keep cost down, with `"engine"` alongside it, since both are validated per engine (see `ccc-orchestration` § 2 for the per-engine effort
Your coding agents outgrew your terminal. CCC puts every session on one local board and tells you which one needs you. Not affiliated with Anthropic. Start the next while Claude builds the first. A real share card from one of the maintainer's machines.
Use when the user asks to open/show the CCC throughput (token) dashboard, or asks how many tokens they've used — overall/so far,…
Use when you want a marketing-copy A/B — spawns two writer sibling sessions via CCC that draft the SAME message architecture in…
Use when a bug has already survived at least one debugging attempt and you have 2-3 genuinely distinct root-cause hypotheses —…
Spawn, inject into, and ask questions of persistent sibling sessions via Claude Command Center (CCC).
Use to catch documentation that has silently gone stale — it spawns ONE fresh sibling session via CCC that extracts every…
Use for docs QA — it spawns ONE fresh sibling session via CCC that has never seen the feature, has it follow the README /…