Distill a roadmap item (and any plan files the operator hands you) into a single
self-contained prompt — one an executor agent with zero prior context can run to completion. The prompt is the product; its tightness decides whether the goal succeeds.
Capped at
4000 characters, hard. Structure borrowed from
's plans: self-contained, verification-gated, hard-boundaried. The skeleton that carries execution — objective, scope, verify gates, done criteria, STOP conditions — stays; everything the executor can read from files (code excerpts) or inherits from jackin❯'s auto-loaded rules (
,
,
) is pointed at, never restated.
Distinct from
: that authors a
dossier brief (a multi-page
file run via
). This produces a compact
inline prompt run via
or
.
-
Gather the change. Read the roadmap
. Anchor on
and
only — real items drift from the
scaffold, so tolerate any heading set. If
is given, read every plan file and lift its scope, steps, verify commands, done criteria, and STOP conditions.
Done when you can state, in two sentences, what this change builds and where its code lives.
-
Read the repo's real verification gates. The verify commands come from the repo, never invented. Pull them from
(the merge-readiness block),
, and
— for jackin❯ that is
,
cargo clippy --all-targets --all-features -- -D warnings
,
cargo nextest run --all-features
, the
profile, plus the
docs gate when
is touched.
Done when every gate you cite is a command the repo actually runs, with its expected result.
-
Compose the prompt — the compressed
skeleton:
- Objective — one or two lines: what to build, pulled from the roadmap/plan.
- Scope — in-scope paths; out-of-scope boundaries (what looks related but must not be touched).
- Verify gates — the commands from step 2, each with its expected result.
- Done criteria — machine-checkable, one line each (a command + result, or a greppable absence), never prose like "works correctly."
- STOP conditions — drift vs the plan, a scope boundary that won't hold, a gate that won't go green honestly.
- Conventions — one line pointing at jackin❯'s auto-loaded rule files; do not copy their content.
-
Enforce the 4000-character cap. Write the prompt to a temp file and
it. Over the cap, compress in this priority order until it fits: drop code excerpts (name the file + the contract, not the code), collapse conventions to a pointer, tighten the objective, cut the "why" narrative, merge done criteria into the verify gates. Re-count. The cap is hard — never emit over 4000.
Done when reports ≤ 4000 and the prompt still carries objective + scope + verify gates + done criteria + STOP conditions.
-
Emit + report. Print the prompt in a single code block, ready to paste after
or
. State the character count. Name what you compressed or dropped to fit, so the operator can ask for it back inline if they'd rather raise the cap.
No xtask owns this. The skill orchestrates reads (the roadmap
, the plan files, the repo's verify commands) and emits a single ≤ 4000-char string. The structure borrows from
's plan anatomy (self-contained, verification-gated, hard-boundaried) and the
brief shape jackin❯ already uses for gap-closure.