From casegraph-plugin
Use when the user wants multi-step work managed through CaseGraph instead of ad hoc chat state. Trigger on phrases like "manage this in cg", "drive this from the case", "record evidence for compaction", "resume from cg", "verify before close", or whenever durable checkpoints, verification, and guarded closure are needed for implementation, docs, investigation, or review work.
How this skill is triggered — by the user, by Claude, or both
Slash command
/casegraph-plugin:cg-workflow-driverThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use CaseGraph as the durable task backbone for multi-step delivery, verification, resume, and close. Build only the graph needed to expose sequencing and blockers, record evidence before context can be lost, and treat `cg case close` as an explicit end-state check rather than a synonym for "the conversation sounds done".
Use CaseGraph as the durable task backbone for multi-step delivery, verification, resume, and close. Build only the graph needed to expose sequencing and blockers, record evidence before context can be lost, and treat cg case close as an explicit end-state check rather than a synonym for "the conversation sounds done".
Use this skill for workflow orchestration through the cg CLI. For direct workspace reading use casegraph. For AI-authored graph changes use casegraph-patch. For importers, workers, sync, or storage recovery use casegraph-integrate.
Resolve a working launcher before using the commands below. Use cg --version as the existence check — it prints a single line and is the canonical way to confirm the CLI is installed.
cg --version works, use cg.pnpm exec cg --version or npx cg --version.pnpm install and pnpm build, then use pnpm cg --version.@caphtech/casegraph-cli and use either global cg or project-local pnpm exec cg.In the rest of this skill, cg ... means "use the launcher that succeeded here."
In a fresh workspace (no .casegraph/ directory yet), run cg init once before the first cg case new — otherwise cg case new will fail with a missing-workspace error.
Use this skill when:
cgcgWhen GitHub mirroring is required, read github-projection.md before adding the first task node.
Skip it for tiny one-pass edits that do not need a durable case.
depends_on for hard sequencing, waits_for for external blockers, and contributes_to from work nodes to the goal.cg frontier --case <id> --format json.decision decide when an option is chosen and that choice constrains future work.decision node whose body holds the rationale and the rejected alternative. Do not bury the pivot reason inside evidence.description — evidence records what was observed or produced, not why the course changed. A pivot without a decision node is not a recorded pivot.event record only after creating an event node, and only for milestone or external-world facts worth preserving.--description to every node that is not a one-line atomic action: capture what "done" means, what was considered, and any inputs the next agent needs. Descriptions exist for compaction resilience and resume, not only for GitHub projection.cg case close, the goal itself must be in the done state. Use cg task done <goal_id> (it works on kind:goal too) or cg node update --id <goal_id> --state done after every contributing task is done and evidence is attached. Do not invent an evidence node just to "mark a goal done".cg case close refuses, read cg validate --format json first, fix the reported blocker (usually: a task not yet done, or the goal not yet done), then retry. Do not force close or paper over with fabricated evidence.Every cg invocation and its output become a tool_use + tool_result in the session history, which the next API call re-sends in full. For long workflows, call volume — not single-command size — drives context growth.
cg case show, cg validate). Reach for --format json only when the agent will actually parse a field. cg frontier is the exception: agents typically need node_id values, so json is the right default there.cg frontier between every task unless a prior step can plausibly have changed the ready set (new node added, edge added, dependency unblocked). After task done alone, the next frontier is predictable from the graph you already built.This is the happy-path set only. For any verb, flag, enum, or jq pattern beyond what is shown here, read cg-cli-cheatsheet.md before running cg <verb> --help — it is compact and covers the whole Phase 0+ surface (node update, task wait/cancel/fail, analyze, patch, sync, worker, migrate, enums). Fall back to --help only when the cheatsheet lacks what you need.
cg case new --id <case_id> --title "<title>"
cg node add --case <case_id> --id goal_<name> --kind goal --title "<goal>" --description "<what done looks like, constraints, out-of-scope>"
cg node add --case <case_id> --id task_<name> --kind task --title "<task>" --description "<acceptance criteria, inputs, expected artifact>"
cg edge add --case <case_id> --id edge_<name> --type contributes_to --from task_<name> --to goal_<name>
cg frontier --case <case_id> --format json
cg task start --case <case_id> task_<name>
cg evidence add --case <case_id> --id evidence_<name> --title "<title>" --target task_<name> --description "<summary>"
cg task done --case <case_id> task_<name>
# After every contributing task is done, mark the goal done too:
cg task done --case <case_id> goal_<name>
cg validate --case <case_id> --format json
cg case close --case <case_id>
When resuming after compaction or handoff:
cg case show --case <id> --format jsoncg frontier --case <id> --format jsonGraphPatch changes: casegraph-patchnpx claudepluginhub caphtech/casegraph --plugin casegraph-pluginCreates bite-sized, testable implementation plans from specs or requirements, with file structure and task decomposition. Activates before coding multi-step tasks.