Skip to content

Skills

Leopold ships a family of Claude Code skills, installed to ~/.claude/skills/. They are authored in the gstack-compatible format (frontmatter + markdown body). The core skills are documented below.

flowchart LR
    B["/leopold-brief<br/><small>Phase 1</small>"] --> R["/leopold-run<br/><small>Phase 2 · loop</small>"]
    B --> W["/leopold-workflow<br/><small>Phase 2 · workflow</small>"]
    R --> S["/leopold-status<br/><small>watch</small>"]
    R --> X["/leopold-stop<br/><small>take back</small>"]
    R --> L["/leopold-learn<br/><small>charter learns</small>"]
    W --> L
    T["/leopold-triage<br/><small>backlog → plan</small>"] --> B

/leopold-brief

Phase 1. A structured debate that captures the mission and your decision-making, then writes the brief (MISSION, CHARTER, GUARDRAILS, PLAN) to .leopold/.

  • Use it to start a mission, or to revise an existing brief.
  • Output the four artifacts plus an empty DECISIONS.md.

/leopold-run

Phase 2. Activates the run (writes state.json with active:true) and begins the turn loop. The Stop hook carries it forward; the guard hook locks git.

  • Preflight aborts if the brief is missing — run /leopold-brief first.
  • Behavior adopts spawned-session mode so gstack skills auto-decide.

/leopold-workflow

Phase 2, the workflow way. Compiles the same brief into a dynamic workflow — a JavaScript harness Claude Code's runtime executes in the background — and runs it. The plan lives in code instead of one context window, so a long run doesn't drift into agentic laziness, self-preferential bias, or goal drift; each item gets an independent adversarial review.

  • Compiles PLAN.md into dependency-ordered waves and risk-classifies each item (effort + critical + sensitive) with the driver's keyword rules, then launches the canonical script (reference/leopold-run.workflow.js) via the Workflow tool.
  • Preflight needs Dynamic workflows enabled (/config) and an existing brief.
  • Git stays locked for free — a workflow can't commit; it stages, you commit.
  • Resumable and visible in /workflows; saving the compiled script to .claude/workflows/leopold-run.js makes the brief a re-runnable harness.
  • When to reach for it vs /leopold-run: large or parallelizable plans → workflow; short or interactive plans → the loop.

/leopold-learn

The self-improving charter. Mines the decision log (DECISIONS.md + archived runs), this project's session transcripts, and git history with three miners over disjoint sources; clusters the recurring signals (a pattern surfacing in more than one independent source is the strongest); puts a kill-biased skeptic on every candidate; and distills the survivors into .leopold/CHARTER-amendments.md.

  • Hard boundary: it never edits CHARTER.md itself — the charter is the user's identity. The human reviews the proposal and applies what sounds like them.
  • Cadence: after each substantial run, or whenever you notice yourself repeating the same correction. Each pass compounds: a sharper charter means fewer escalations and fewer wrong-direction decisions next run.
  • Requires Dynamic workflows enabled.

/leopold-triage

Backlog triage as a workflow, with the quarantine pattern: the agents that read untrusted item content (issue bodies) have no repo access and only emit structured classifications; the agents that touch the repo (fix planners) see only those structured fields. A prompt injection in an issue can distort at most its own item's classification.

  • Input: GitHub issues (gh issue list), a file/directory of reports, or pasted content; dedupes against open PRs and PLAN.md.
  • Output: a severity-ranked actionable list, duplicate groups, already-tracked items, and (in fix mode) grounded fix plans for quick wins — which can become PLAN.md items for a /leopold-workflow run.
  • Continuous: pair with /loop (e.g. every 6h) for a standing queue.

/leopold-status

Read-only dashboard: active or not, plan progress, decisions logged, recent events. Never mutates anything.

/leopold-stop

Clean shutdown. Flips the run inactive so the Stop hook allows the session to halt at the next turn boundary. The blunt alternative is touch .leopold/STOP.

Frontmatter shape

Each skill declares name, version, description, allowed-tools, and triggers, so Claude Code can route to it by intent.