Run the full gauntlet — Practitioner
run_gauntletOne runner for an entire SHPBL repository audit and repair: survey, opening library comparison, evaluation, repair, the batched harvest, closing library comparison, the branded HTML report, and the write-back path. STRICT SEQUENCE: call it once with no step for the run card, then step: 1, step: 2, one step per turn, in order. Do the returned step, report one line to the person, then call the next. Never call two steps in one turn, never attempt the whole run at once, and never infer a finding you were not handed. From step: 2 on you must pass ledger_digest; every 3 steps (adjustable with checkpoint_interval, max 10, only when the person asks for fewer pauses) the run pauses and you must ask the person before continuing, then pass continue_ack: "continue". The final step hands over the report template and the write-back path. Your own model does all reading and writing. This full conductor requires a Practitioner key (7-day free trial). The free lane provides repository evaluation, not a partial or full gauntlet.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | Your SHPBL Practitioner subscription key (shpbl_mcp_…). Optional if your client sends it as the `Authorization: Bearer …` request header. | |
| repo | Yes | A GitHub repository: `owner/repo`, a URL, or `owner/repo#branch`. | |
| step | No | 0 to 2000. 0 (default) returns the run card and the plan with no source. 1…N walk the harvest batches, one per turn and in order. N+1 closes the run with the report template and the write-back path. Do not skip ahead. | |
| budget | No | Characters per harvest step — a whole number from 10,000 to 120,000. Defaults to a moderate 45,000 so each step stays readable and cheap; raise it toward 90,000 only if the person asks for fewer, heavier steps. | |
| include | No | Optional path filter — only paths containing this text are in scope for the whole run. | |
| fold_token | No | The `fold_token` returned by the previous step, passed back verbatim. Required from `step: 2` onward: it is signed by this server and carries the previous step's number and the hash of the ledger you held then, so a step cannot be skipped and a ledger cannot be truncated or replaced. Never edit it, never write one yourself. | |
| own_library | No | Your own previously harvested capabilities, read out of your repository's `.shpbl/` library and passed back in. Optional. When present, this run checks your concerns against your own library first and tells you which ones you already solved. It is held in memory for this call only — never stored, never added to SHPBL's library. | |
| continue_ack | No | The person's approval to continue past a checkpoint. Every 3 harvest steps this run pauses: report to the person, ask whether to continue, and only when they say yes call the next step with `continue_ack: "continue"`. Never send it without asking. | |
| github_token | No | Optional GitHub token (Contents: read) for a private repository. Not needed if the SHPBL GitHub App is connected to this key. | |
| protocol_ack | No | Set true to say this session already holds the SHPBL protocol. The discipline, the ten meta capabilities, the hands-off list and the return shapes are then not printed on step 0 or step 1 — they are unchanged and they still bind the run. Use it when you have already called `method_protocol` or run a staged tool in this session; it saves tens of thousands of characters of repetition. | |
| ledger_digest | No | The ledger folded so far, one line per capability, **each line carrying the file path it came from** (for example `src/lib/queue.ts — retry with backoff`). Required from `step: 2` onward — it is the proof that you actually folded the previous step — and required on the closing step so the closing library comparison runs against what you harvested. The server checks shape as well as length: a ledger that names no paths, or is padded out around one, is refused (and not charged). | |
| checkpoint_interval | No | How many harvest steps between check-ins with the person. Defaults to 3; raise it (up to 10) only when the person has asked for fewer pauses. Never set it silently — the check-ins are how the person stays in the loop. Once set it rides inside the run's `fold_token`, so passing it again on later steps is not required; if you ever start a fresh chain, set it again or the run returns to 3. |