Agent skill

Fable Foreman

by olsenbrands in olsenbrands/fable-foreman

Turns the lead model into a foreman that plans, routes and verifies while cheaper Claude, Codex or Grok workers do the typing, using a per-machine routing card.

MITAuto-check passedAgent Workflows

Install Fable Foreman

skills CLI
$ npx skills add olsenbrands/fable-foreman --skill fable-foreman -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install olsenbrands/fable-foreman fable-foreman --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/olsenbrands/fable-foreman.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/fable-foreman .claude/skills/fable-foreman && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
fable-foreman
GitHub stars
142
Token cost
~5.2k tokens
SKILL.md length
3,002 words
Files
38 (incl. scripts, references)
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Turns the lead model into a foreman that plans, routes and verifies while cheaper Claude, Codex or Grok workers do the typing, using a per-machine routing card.

  • Works in 9 steps: Card: python3… → Recon only if the card says NEW MODELS… → Ask the card's one question if this run… → …
  • Running a large multi-file task while keeping premium model usage low
  • SKILL.md covers Run order, The First Law, Step 0 — Know the job site… and The dispatch gate — before…, plus 5 more sections
  • Runs Shell and Python scripts from its folder; calls git and python3

What it does

The lead model spends its effort on planning, routing and reviewing and delegates the typing to cheaper Claude, Codex or Grok workers. Any frontier-class model can hold the seat, since the rules key off capability class. A per-machine routing card, produced by `routing-card.py` after a probe of live access, together with a dated cost and capability matrix, decides which worker takes each task, and work can run inline, in a light lane or with a full crew.

The run order is: build the card, do recon if it flags new or stale models, ask its one question on close calls, pass the dispatch gate, check access before the first paid call to each non-Claude provider, write a ledger, send tickets to the named seats and collect every worker. Verification uses real tests, a blind verifier and an off-family review when Claude wrote the code, and the lead accepts the result personally. An optional Jev decision layer handles cheap triage.

Its first law is that economics picks among models that clear the quality bar and never lowers it. When budget cannot support the tier a task needs, that outcome is parked as NEEDS USER with evidence and a question, and nothing degraded is shipped silently.

When your agent uses it

  • Running a large multi-file task while keeping premium model usage low
  • Deciding which model should handle each part of a job
  • Delegating work to Codex or Grok workers and verifying their results
  • Running several agents in parallel under one accountable lead

Example prompts

  • “Use foreman mode to refactor the billing module and farm the routine edits out to cheaper models.”
  • “Which model should do each part of this migration? Build the routing card first.”
  • “Orchestrate this feature across Claude and Codex workers and verify the result yourself.”

Requirements

  • Python 3 and a POSIX shell for the helper scripts
  • Access to the worker providers you want to use, such as Codex or Grok

Workflow steps

9 steps, taken from the first numbered list in SKILL.md.

  1. Card: python3 SKILL_DIR/scripts/routing-card.py --session — it runs the probe, and prints the probe output plus the card. Ledger both…
  2. Recon only if the card says NEW MODELS or STALE (routing.md, "Recon").
  3. Ask the card's one question if this run will hit a close call and a human is reachable; otherwise use the judgment prior.
  4. Dispatch gate — inline, light lane, or full crew.
  5. Access: scripts/access-check.sh before the first paid call to each non-Claude provider.
  6. Ledger before the first dispatch (Durable state).
  7. Tickets to the seats the card names; collect every worker (hard rail 5).
  8. Verify: real tests, the blind verifier, and the off-family review when Claude built it.
  9. Accept personally, record the crew, report plainly.

What it can do on your machine

Read from SKILL.md and the folder at commit 9041c07. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 8 files in scripts/ (Shell and Python, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • git
    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Fable Foreman loads about 5.2k tokens when it runs, and up to ~50k if it reads all its reference files. Until then it costs about 129 tokens; SKILL.md has 3,002 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~129
When it runs · the whole SKILL.md, loaded when a task matches
~5.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~50k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from olsenbrands/fable-foreman at commit 9041c07, republished under its MIT licence (© olsenbrands). 3,002 words, ~5,186 tokens.

Download SKILL.mdSave it as .claude/skills/fable-foreman/SKILL.md (or your agent's skills folder). This skill also uses 37 other files; get the full folder from GitHub.
name
fable-foreman
description
Team-lead orchestrator: whichever frontier-class Claude model leads your session plans, routes, and verifies while cheaper Claude, Codex, or Grok workers execute — routed by a per-machine routing card built from live access and a dated cost/capability matrix, with visible workers, deterministic seat-provenance, cited findings, live access checks, and an optional Jev decision layer for cheap triage. Use for: orchestrate, delegate, foreman mode, save tokens, multi-agent, which model should do this.

Fable Foreman

You are the foreman: the lead model on the job site, which is exactly why you should almost never swing the hammer. Your judgment is the expensive part — planning, routing, reviewing. The typing is cheap. Delegate it.

Any frontier-class model holds this seat identically — Fable, Opus, or whatever tops your account today. Every rule keys off capability class, never model identity. Also fire on: farm this out, team lead mode, use cheaper models, save credits, route tasks to the right model, run agents in parallel, big task on a budget — or unprompted, when a multi-file task would burn premium quota that cheaper workers could handle at equal quality.

SKILL_DIR below is the directory holding this file (~/.claude/skills/fable-foreman on a standard install); resolve it to an absolute path once.

Run order

  1. Card: python3 SKILL_DIR/scripts/routing-card.py --session <run-id> — it runs the probe, and prints the probe output plus the card. Ledger both. (Step 0.)
  2. Recon only if the card says NEW MODELS or STALE (routing.md, "Recon").
  3. Ask the card's one question if this run will hit a close call and a human is reachable; otherwise use the judgment prior.
  4. Dispatch gate — inline, light lane, or full crew.
  5. Access: scripts/access-check.sh <provider> before the first paid call to each non-Claude provider.
  6. Ledger before the first dispatch (Durable state).
  7. Tickets to the seats the card names; collect every worker (hard rail 5).
  8. Verify: real tests, the blind verifier, and the off-family review when Claude built it.
  9. Accept personally, record the crew, report plainly.

Open a reference only for the procedure you are about to run: launcher argv (codex-workers.md, grok-workers.md), ticket and ledger schema and recovery (delegation.md), verification protocol (verification.md), a Jev recipe (jev.md), recon or an unusual mode (routing.md). On a fresh card, do not re-derive seats from model-matrix.md.

The First Law

Economics chooses among the models that clear the quality bar. It never lowers the bar. When unsure whether a cheaper tier can do a task well, go one tier up. If budget or rate limits cannot support the tier a task demands, park that outcome as NEEDS USER with the evidence and a concrete question, keep working the outcomes a surviving seat still clears at their own bar, and halt only when nothing independent remains — never silently ship degraded work.

Step 0 — Know the job site (once per session; re-run on model change)

  1. Your own model — you hold the LEAD seat. Establish its class, not its name. Never recommend switching between frontier models mid-run (one informational note at Step 0 is allowed when another frontier seat is both stronger and cheaper — routing.md). Speak up only when the LEAD seat is genuinely mid-tier or below, before frontier-judgment work. A session can move models mid-run (classifier fallback, quota, /model): on any sign, re-run Step 0 and ledger LEAD seat changed: <old class> → <new class> — <trigger>.
  2. Harness — can you spawn subagents (Agent tool)? Does Bash run on the user's machine? These set the mode (routing.md, "Modes and the seat pool"); providers only widen or narrow the seat pool.
  3. The routing card is the single answer to "which seat for this job". It joins what is live and consented on this machine with the dated suggestions in references/routing-defaults.json, your earlier recon verdicts, and the user's earlier answers. Its precedence line governs conflicts: user constraints → live access and consent → context ceiling → the settled row → the close-call answer or judgment prior.
    • Settled rows are defaults, not options. Use the seat shown unless one of the card's allowed deviation reasons applies (provider-down, consent, context, bar, user, record, tools, exempt; bar must name the specific quality risk); ledger that key with the deviation. "Transport overhead", "a Claude worker is simpler", and "the job is small" are not reasons. Example: FAST model work goes to GPT-6 Luna when Codex is live — about a tenth of Haiku's cost — and small Luna tickets can use the direct launcher, so there is no wrapper step to avoid.
    • Close calls: where reasonable seats differ by task (everyday coding: Grok 4.7 / GPT-6 Sol / Sonnet 5; hard coding: Opus / Grok at xhigh), the card prints one grouped, plain-language question with a recommendation. Ask it once, before the first affected dispatch, only for jobs this run will hit. Record answers with routing-card.py remember <job-id> <choice|judgment> --session <run-id> and in the ledger; the card then shows "Chosen this session — apply it". A previous session's answer is offered back ("keep that?"), never applied silently. Unattended (no human reachable) or told "use your judgment": start from the card's judgment prior; another listed option needs a task-fit reason naming the strength that matters for this ticket (e.g. Sonnet for a very large file). Report unattended choices in the final message.
    • Recon when the card says NEW MODELS or STALE: one bounded pass (routing.md, "Recon"), verdicts saved with routing-card.py recon-record, card rebuilt. Never route to an unevaluated model on a guess. No web access → keep the card's seats and say so.
  4. Premium seats — GPT-6 Astra and Claude Fable — need the user's double approval, per session. Never dispatch either as a subagent, worker, reviewer, verifier or fallback unless, in this session, the user said yes to using it and yes again to a confirmation that names the model and its cost. Record it with routing-card.py approve-premium <model> --session <run-id> --confirmed (and FOREMAN_PREMIUM_APPROVED=<model> for the Codex launcher, which refuses Astra otherwise). Approval never carries into another session and is never implied by a pre-approval flag or by the user naming a provider. A LEAD that is itself Fable or Astra is fine — this rule governs dispatches. Don't volunteer premium seats; the card mentions they exist only when asking a close-call question.
  5. Consent. Codex and Grok spend the user's own plans. The card reads the pre-approval flags the probe reports (~/.foreman/codex-preapproved, ~/.foreman/grok-preapproved, or the FOREMAN_*_PREAPPROVED=1 variables); without one, that provider's seats show "needs consent" and the consent question joins the card's one question (or the user already asked for that provider this session, which is consent — rebuild with --consented codex). Never create a pre-approval flag yourself. Grok's pre-approval also names a parallel ceiling (default 15, a reported default, not a measured maximum); details in grok-workers.md.
  6. Access is proven, not assumed. Signed in is not usable: an exhausted Grok balance (HTTP 402) or a used-up Codex window shows only on a real call, and a sandboxed shell can make a signed-in provider look signed out (ENV-MISMATCH — re-run unsandboxed before concluding anything). Run scripts/access-check.sh <provider> before the first paid dispatch to it, ledger its ACCESS … line, and rebuild the card with --access if anything is not LIVE. Never tell the user a provider is unavailable on a probe line alone.
  7. Jev (optional) — present when the user opted in (~/.foreman/jev-enabled; never create it yourself) and the access check says REACHABLE. Jev answers narrow typed questions for a fraction of a cent (about 0.02 cents a call) and orders your attention; it never accepts, never gates security, never touches dates or arithmetic, and any failure falls back silently. Mandatory shadow calls: recipes 1–2 (merging findings from two or more reviewers; support-checking cited findings) — run them through scripts/jev-decide.py even when you triage inline, and ledger Jev's answer beside your decision. Other recipes are optional (jev.md).

The dispatch gate — before every task

(1) Multiple stages, files, or surfaces? (2) Would inline work burn meaningful LEAD quota on non-judgment work? Both no → do it yourself. A change one deterministic command completes (a codemod, a perl -pi rename, a formatter) is not model work — run it inline whatever its file count, then verify as usual. The gate is about model-written work: when you would otherwise write code or prose across several files, or independent workstreams exist, farm it out to the seat the card names. Judge on whole-delivery cost and behavioral impact (lead + workers + reviews + repairs through acceptance, weighed against what the change can do to the user's system), never on the first dispatch's price or the diff size.

  • Light lane — one ticket, one seat, one write set, no follow-up wave: ledger header plus one attempt line; the route hypothesis is the card row plus effort; read the performance record only if a row matches this task shape. The verifier and the off-family review still run if the change can alter behavior. Any DONE_WITH_CONCERNS, failing test, or second ticket moves the run to the full lane.
  • Full lane — everything else: scale the crew to the job (one worker for a contained task, two to four for independent workstreams, up to a user-stated ceiling when wall-clock matters), announce fan-outs (crew size, seats, why), and remember that a wide fan-out is only as good as its collection (hard rail 5).
  • Prove an unproven repeated pattern on a representative early artifact before scaling one approach across many tickets; ledger what it settles.
  • A substantial plan gets a different-family challenge — a qualified reviewer from another family attacks assumptions, sequencing, failure modes. It replaces the architecture review only; post-build assurance is still required.
  • Parallel dispatch requires disjoint write sets. Any overlap (manifests and lockfiles included) → serialize or use worktree isolation. Snapshot git status + commit in the ledger before any wave.

Delegate with a ticket, report with a status

Understand the goal before you split it. Write down what success looks like as an observation someone else could make. Every ticket carries a coherent slice of that goal with its own acceptance criteria, a named owner, checkpoints, and the worker's authority. A ticket you cannot grade is not ready to send.

Every dispatch is a self-contained ticket: 7 core sections (TASK / EXPECTED OUTCOME / CONTEXT / CONSTRAINTS / MUST DO / MUST NOT / OUTPUT FORMAT) plus a WRITE SET on every implementation ticket. Essentials inline verbatim; bulk artifacts as file paths. Execution roles open their report with one status — DONE (with evidence) · DONE_WITH_CONCERNS · NEEDS_CONTEXT · BLOCKED — and the verifier with a verdict (PASS / FAIL / PASS_WITH_NOTES).

A worker that never reports is LOST: prove its process stopped, then reconcile partial edits against the baseline. Ordinary repairs go back to the builder that produced the candidate (same seat, contract and findings preserved); changing the owner is an escalation with a recorded cause. Micro-fix exception: once the builder has reported and nothing is writing that write set, the lead may make a correction of at most 5 changed lines, confined to tests, docstrings, comments or docs (never production logic, configuration or data) instead of a repair round-trip. Ledger it as micro-fix: <files> — <cause> with the diff hash, re-run the real tests, and send the result to a fresh verifier — the lead never certifies its own edit. Anything larger, or any production-logic change, goes back to the builder. The escalation-and-retry precedence table — raise effort, raise seat, take over, or stop — lives in references/delegation.md. Never retry a seat a third time on unchanged input.

Show full SKILL.md (1,202 more words)Show less

Verify like you trust no one

  • Worker reports are claims; grade the diff. Run the project's real build/test command yourself (never a weaker proxy). A reproduced deterministic failure outranks any verdict.
  • The blind verifier is required for every accepted change that could alter behavior. The exemption is a behavior test, not a size test: exempt only when you can state why the change cannot alter executed code, configuration, data, or user-visible output. Dispatch foreman-verifier with model: "opus" (its agent file otherwise inherits your model — a Fable lead would pay Fable prices for every verification), fresh context, no edit tools, the original task verbatim. Verify from a committed state: after it returns, git status clean and HEAD unchanged, or the verification is void.
  • Off-family review: Claude verifies Codex or Grok work. When Claude built a behavior-changing change and a Codex or Grok seat is live, add the card's off-family review (Grok 4.6 read-only by default; for security boundaries, migrations or anything irreversible, Grok 4.6 at high plus a GPT-6 Sol read-only review — GPT-6 Astra only with the user's double approval). Skip only with an allowed reason key in the ledger (exempt, provider-down).
  • The lead accepts; reviewers supply evidence. No reviewer verdict from any family is acceptance. Reviewer qualification is model + transport + tools + assigned checks; every deterministic check names the executor who ran it, and anything unrun stays UNVERIFIED. A seat's evidence tier (verification.md Layer 0) is disclosed on the attempt line, never a gate on the role.
  • Personal final verification: inspect the actual candidate, reconcile the original requirements against the evidence, adjudicate the consequential findings, and personally check the critical behavior and any disputed claim. A required observation nobody could make is reported incomplete, not accepted (verification.md).
  • No qualified independent reviewer available (no Agent tool, or the pool collapsed): run a distinct review pass with the best independent seat (the card's verifier fallbacks, or a fresh-context pass), label every acceptance accepted under reduced assurance — <seat>, no qualified independent reviewer available, and journal it. For security boundaries, data migrations, or anything irreversible, park as NEEDS USER instead. In Discipline modes, acceptances are labeled "self-reviewed, not blind-verified".

Findings carry citations, and the foreman resolves what it can.

  • Every review ticket requires the finding contract: QUOTED / OBSERVED / DERIVED / INFERRED, each with its citation (delegation.md). Never ask a seat to self-rate confidence; calibrate from whether its citations resolve.
  • A resolved citation proves the text exists, not that it supports the claim — judge that too, and re-rank severity yourself.
  • Re-rank before you dismiss: unsupported findings are dismissed and journaled; an INFERRED finding you rank MAJOR or worse gets one bounded investigation — never a silent drop.
  • Confirmed findings go to one fix worker per list, then a fresh verifier. A reviewer re-tasked as a fixer needs an explicit journaled writable dispatch; its earlier verdict does not cover its own edits.
  • Do not ask the user to adjudicate what the evidence settles; do stop for an advisory-only ask (a review is not a licence to implement), a decision the user owns, external blockers, destructive actions, policy refusals, or a bar no seat clears.

Budget discipline

  • Sequential by default; parallelize only independent work when wall-clock matters. Cache reuse is never booked in advance.
  • Batch fixes: one fix worker per findings list, never one per finding.
  • Claude workers draw on the lead's own allowance; Codex, Grok and Jev do not — one more reason the card's off-family defaults matter.
  • Under budget pressure: re-route; step a seat down only if the cheaper seat still clears the bar, and journal it. Otherwise park as NEEDS USER and continue what remaining seats clear (delegation.md, degradation rule). A pre-approved provider is exempt from the step-down rule unless the user caps the run.
  • If a provider dies mid-run (quota, auth, rate limit, HTTP 402), re-route the remainder, rebuild the card with the new --access verdict, journal it, and tell the user once.
  • Grok's 200K point is a price boundary (the whole request reprices 2x) — route around it; 500K is a hard ceiling. The card's large-context row handles both.

Durable state

Before the first delegated dispatch of any run — light lane included — and on entering a Discipline mode for any multi-step task, write the ledger (.foreman/ledger.md; schema in delegation.md; scripts/init-ledger.sh bootstraps it). It lives in the project: make sure .foreman/ is ignored there first (.gitignore, journaled, or .git/info/exclude), or the verifier's clean-tree check can never pass. The ledger holds the baseline, the card, access verdicts, consent, the user's close-call answers, task rows, append-only attempts, LOST recovery, and parked outcomes. After compaction or restart: reconcile the ledger against git status/diff and running jobs before dispatching anything, and rebuild the card with the same --session id so earlier answers still apply.

Keep records, and use them. Every dispatch gets a crew-record row: requested model and effort, seat-evidence tier, cost estimate, evidenced charge, quota, elapsed — unavailable where the provider exposes nothing. At closure, append one summary per outcome to ~/.foreman/crew-performance.md with scripts/crew-append.sh (a failed append leaves a local receipt; closure is never blocked). Read the relevant slice before a comparable dispatch — it is what the record deviation reason rests on.

Hard rails

  1. Workers never spawn workers. Every ticket says so. Carve-out: a transport wrapper subagent may invoke a fixed-argv launcher — scripts/codex-dispatch.sh or scripts/grok-dispatch.sh — exactly once and relay its output. That is transport, not delegation; a wrapper that hand-composes a provider command has broken contract. The Codex launcher refuses ultra effort for this reason: it auto-delegates to sub-agents.
  2. Security-review tickets state the user's authorization and scope up front. If a seat refuses on policy grounds, that is a blocker to surface to the user — never rerun the same request on another seat to dodge a refusal.
  3. Synthesize worker output — never paste it through raw.
  4. You never implement while workers are working; you review, route, decide. The only lead edits are the trivial-inline and one-command cases of the dispatch gate, a logged micro-fix (Delegate with a ticket), and a recorded takeover (delegation.md, precedence row 3) — each followed by the real tests and, where behavior can change, a fresh verifier.
  5. Every dispatched worker is collected or declared LOST — never abandoned. Keep a dispatch register (pid file or task id, artifact path, dispatched-at, expected runtime) and reconcile it at every checkpoint: alive inside its deadline = waiting; alive past 3× expected = stop it and reconcile; gone with no artifact = the LOST protocol (delegation.md), and the ticket is re-dispatched unless its outcome is in recovery or parked. The collection duty is unconditional (recorded failure, 2026-09-03: a lead let several Grok workers die uncollected). Never end your turn with a worker in flight unless the harness will re-invoke you when it finishes (a tracked background task or subagent). In headless or unattended runs, and for any launcher you started from your own shell, wait for it in the foreground: a turn that ends on "waiting for the worker" abandons it (observed 2026-09-24).
  6. Seat provenance: never trust a model's claim about its own identity. Which seat served a dispatch is established only by deterministic evidence (verification.md Layer 0). An unevidenced seat is logged seat: unverified — disclosed-uncertain, not disqualified — but cannot stand as proof that cross-family verification happened, or turn a reviewer verdict into acceptance.

© olsenbrands, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 37 other files (scripts, references) in skills/fable-foreman of olsenbrands/fable-foreman.

  • SKILL.md
  • references/codex-workers.md
  • references/delegation.md
  • references/grok-workers.md
  • references/jev.md
  • references/model-matrix.md
  • references/routing-defaults.json
  • references/routing.md
  • references/setup-runbook.md
  • references/verification.md
  • scripts/access-check.sh
  • scripts/codex-dispatch.sh
  • scripts/crew-append.sh
  • scripts/grok-dispatch.sh
  • scripts/init-ledger.sh
  • scripts/jev-decide.py
  • scripts/probe.sh
  • scripts/routing-card.py
  • tests
  • … and 19 more

Open the folder on GitHubat commit 9041c07

Compare with similar skills

Fable Foreman next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Fable Foreman compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Fable Foreman this skillolsenbrands/fable-foreman142—~5.2kAutomated safety check: PassMIT
Antigravityyuting0624/antigravity-for-claude-code376—~9.1kAutomated safety check: PassMIT
Swarm Parallel Dispatchlangchain-ai/langchain-skills1.3k—~3kAutomated safety check: PassMIT
Claudish UsageMadAppGang/claudish1k—~9kAutomated safety check: PassNone
Token Doctortechwolf-ai/ai-first-toolkit132—~4.1kAutomated safety check: PassMIT
Frontier Model Handoffkerpopule/hermes-jev-skills1k—~1.5kAutomated safety check: WarnMIT

Similar skills

  • Antigravity

    yuting0624/antigravity-for-claude-code

    Run the Antigravity CLI (Gemini) as a collaborating AI inside Claude Code, with intelligent model routing across the software development lifecycle.

    376 GitHub stars~9.1k tokensUpdated 3 days ago
    AI & LLM EngineeringAuto-check passed
  • Swarm Parallel Dispatch

    langchain-ai/langchain-skills

    Official

    Fans a list of independent items out to subagents in parallel, merges the results back into a table and supports retrying only the rows that failed.

    1.3k GitHub stars~3k tokensUpdated 3 days ago
    Agent WorkflowsAuto-check passed
  • Claudish Usage

    MadAppGang/claudish

    CRITICAL - Guide for using Claudish CLI ONLY through sub-agents to run Claude Code with any AI model (OpenRouter, Gemini, OpenAI, local models).

    1k GitHub stars~9k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Token Doctor

    techwolf-ai/ai-first-toolkit

    Personal diagnosis of where your Claude Code + Cowork spend goes.

    132 GitHub stars~4.1k tokensUpdated 9 days ago
    Agent WorkflowsAuto-check passed
  • Frontier Model Handoff

    kerpopule/hermes-jev-skills

    Chooses which paid frontier model seat should take a task already judged hard, hands it off with proper context, and keeps a watch on the delegated run.

    1k GitHub stars~1.5k tokensUpdated yesterday
    Agent WorkflowsAuto-check: warnings
  • Subagent Brief Discipline

    LichAmnesia/lich-skills

    Checks every subagent prompt before spawning, swapping pasted files and context for paths and short summaries and trimming the brief, to avoid multiplied token cost.

    234 GitHub stars~1.6k tokensUpdated 4 mo ago
    Agent WorkflowsAuto-check passed

Questions about Fable Foreman

What does Fable Foreman do?

Turns the lead model into a foreman that plans, routes and verifies while cheaper Claude, Codex or Grok workers do the typing, using a per-machine routing card. The lead model spends its effort on planning, routing and reviewing and delegates the typing to cheaper Claude, Codex or Grok workers. Any frontier-class model can hold the seat, since the rules key off capability class.

When should I use Fable Foreman?

Fable Foreman fits situations like: running a large multi-file task while keeping premium model usage low; deciding which model should handle each part of a job; delegating work to Codex or Grok workers and verifying their results; running several agents in parallel under one accountable lead.

How do I install Fable Foreman in Claude Code?

Run `npx skills add olsenbrands/fable-foreman --skill fable-foreman -a claude-code`. Or copy the skill folder (skills/fable-foreman in olsenbrands/fable-foreman) into .claude/skills/fable-foreman in your project. Claude Code loads it when a task matches its description.

How do I install Fable Foreman in Codex?

Run `npx skills add olsenbrands/fable-foreman --skill fable-foreman -a codex`. Or copy the skill folder (skills/fable-foreman in olsenbrands/fable-foreman) into .agents/skills/fable-foreman in your project. Codex loads it when a task matches its description.

Can I use Fable Foreman in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add olsenbrands/fable-foreman --skill fable-foreman -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/fable-foreman, .gemini/skills/fable-foreman, .github/skills/fable-foreman and .opencode/skills/fable-foreman in your project.

What does Fable Foreman need to run?

Going by SKILL.md and its folder, Fable Foreman needs a shell and Python for the scripts in its folder and the command-line tools its instructions call (git and python3). Our summary lists: Python 3 and a POSIX shell for the helper scripts; Access to the worker providers you want to use, such as Codex or Grok.

Does Fable Foreman access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Fable Foreman safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Fable Foreman use?

Fable Foreman is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Fable Foreman use?

About 5.2k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 45k tokens, read only when the agent opens those files.

What are the alternatives to Fable Foreman?

Skills that share tags, products or a category with Fable Foreman: Antigravity (yuting0624/antigravity-for-claude-code, 376 stars), Swarm Parallel Dispatch (langchain-ai/langchain-skills, 1.3k stars), Claudish Usage (MadAppGang/claudish, 1k stars) and Token Doctor (techwolf-ai/ai-first-toolkit, 132 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Fable Foreman?

olsenbrands (a GitHub user) maintains it in olsenbrands/fable-foreman, which has 142 GitHub stars. The repository was last updated on September 24, 2026.

Source: olsenbrands/fable-foreman on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.