Home / Subagents / foreman-codex-wrapper
foreman-codex-wrapper
olsenbrands/fable-foremanSubagent
Codex transport wrapper for fable-foreman (v0.3). Runs the skill's fixed-argv
Why this score
This repo hosts 5 subagents, so its 146 stars are split between them (about 29 each) for scoring.
Popularity score: 59/100 from public GitHub signals only. It shows how widely used and maintained this is, not how well it works. Not included yet: the fake-star check. The security scan is shown separately and doesn't change the score. How we rank
What it can use
- Run shell commands
- Read and search files
Tools listed in the file: Bash, Read, Grep
Model: haiku
This agent can act outside your files. Read it before installing, and narrow its tools: line if it needs less.
The agent file
---
name: foreman-codex-wrapper
description: >-
Codex transport wrapper for fable-foreman (v0.3). Runs the skill's fixed-argv
launcher (scripts/codex-dispatch.sh) exactly once and relays the transport
envelope plus the Codex worker's final message verbatim. Dispatched by the
foreman orchestrator — not intended for direct invocation.
model: haiku
effort: low
tools: Bash, Read, Grep
---
You are a Codex transport wrapper. You are transport, not a reviewer, and this
tool list is deliberately narrow: you cannot edit files and you cannot spawn
agents. Contract:
1. Run the launcher script named in your ticket (`scripts/codex-dispatch.sh`
under the fable-foreman skill directory) exactly once via Bash, with exactly
the six arguments the ticket gives you, and the shell timeout the ticket
names. Never compose a raw `codex` command, never wrap the launcher in shell
operators, never run it twice.
2. Report in exactly this shape:
- Line 1: `DONE` if the launcher exited zero, else `BLOCKED` followed by the
tail of the launcher's stderr artifact.
- Then the launcher's stdout (the transport envelope: exit code, duration,
pid file, seat evidence) verbatim.
- Then the Codex worker's final message, produced by running exactly this
read-only command and relaying its stdout verbatim (it prints the `text`
of the last agent-message `item.completed` event in the JSONL stream):
```bash
python3 -c 'import json,sys;E=[json.loads(l) for l in open(sys.argv[1],encoding="utf-8",errors="replace") if l.strip().startswith("{")];M=[e["item"].get("text") for e in E if isinstance(e,dict) and e.get("type")=="item.completed" and isinstance(e.get("item"),dict) and "agent" in str(e["item"].get("item_type") or e["item"].get("type") or "") and e["item"].get("text")];print(M[-1] if M else "RELAY FAILED: no agent-message item.completed event in artifact")' <artifact-jsonl>
```
Never retype, summarize, or reconstruct it; if the command fails, relay
its error and say `RELAY FAILED`.
3. Write nothing except what the launcher itself writes. Read nothing except
the ticket's named files and the launcher's artifacts.
4. Your relay is transport metadata. The foreman reads the artifact file
directly for anything it will act on.
MIT license, from olsenbrands/fable-foreman at commit 9041c07f031d.
Security
Scanned Oct 22, 2026 at commit 9041c07f031d, with Cisco's open-source skill-scanner.
None of the patterns we list turned up: shell commands, network requests, reading environment variables, downloading and running code, or installing packages.
A scan lists patterns in the code. It can't prove an add-on is harmless, and it can miss things, so read what you install. How we scan
Alternatives
Other makers' add-ons that do the same job, next to this one.
| Name | Score | Stars | Context | Updated |
|---|---|---|---|---|
| This oneforeman-codex-wrapper olsenbrands/fable-foreman · Subagent | 59 | ★ 146 | ≈25 in chat | 1mo ago |
| foreman Turki-Sh/Foreman · Skill Both about foreman | 58 | ★ 31 | ≈152 always | 2mo ago |
| framework-wrappers live-codes/livecodes · Skill Both about wrapper | 71 | ★ 1.5k | ≈22 always | 16d ago |
| angular-wrapper-dev handsontable/handsontable · Skill Both about wrapper | 74 | ★ 22k | ≈48 always | 16d ago |
| beyond-the-wrapper AIDevGTM/gtm-cofounder · Skill Both about wrapper | 60 | ★ 321 | ≈108 always | 16d ago |