The skill grilled its own redesign: every branch settled through ask rounds with you on 2026-10-18. Facts from a source census of the harness (omp://tools/*, installed prompt/TUI sources).
Design as implemented:
Round vehicle: ask default for every 2–5-option decision (recommended: 0 — one Enter is the bare yes); prose reserved for open narrative; classic text round survives as no-ask fallback
Atomicity law absorbed from managed skill one-decision-per-ask-question (deleted here, your call), reworded per your clarification: ideas heavily encouraged — each gets its own atomic question; the ban is only on smuggling artefacts into option text
Tree: todo phases=branches, blocked-reasons=dependencies (HUD-visible); per-round local://grilling-state.md ledger — the safety net for the fact that Esc on the dialog aborts the run with no final turn
Facts: scout=environment (spawned before ask — exclusive concurrency), web_search=world, inline=cheap; 3-scout cap respected
End gate: summary + one closing ask; then distilled decisions → omp-docs/log.md via branch → PR
bats 36/36. New behavior lands next session (skill discovery runs at startup).
The skill grilled its own redesign: every branch settled through ask rounds with you on 2026-10-18. Facts from a source census of the harness (`omp://tools/*`, installed prompt/TUI sources).
Design as implemented:
- **Round vehicle**: `ask` default for every 2–5-option decision (`recommended: 0` — one Enter is the bare yes); prose reserved for open narrative; classic text round survives as no-`ask` fallback
- **Atomicity law absorbed** from managed skill `one-decision-per-ask-question` (deleted here, your call), reworded per your clarification: ideas heavily encouraged — each gets its own atomic question; the ban is only on smuggling artefacts into option text
- **Tree**: `todo` phases=branches, blocked-reasons=dependencies (HUD-visible); per-round `local://grilling-state.md` ledger — the safety net for the fact that Esc on the dialog aborts the run with no final turn
- **Facts**: scout=environment (spawned *before* ask — exclusive concurrency), `web_search`=world, inline=cheap; 3-scout cap respected
- **End gate**: summary + one closing ask; then distilled decisions → `omp-docs/log.md` via branch → PR
bats 36/36. New behavior lands next session (skill discovery runs at startup).
---
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
Rewritten per grilling-on-grilling (2026-10-18, all branches settled via
ask rounds): ask tool is the default round vehicle (one artefact per
question, recommended:0 = bare-yes semantics, hybrid boundary ask-default
/ prose-exception); todo as visible decision tree (phase=branch, blocked
reasons) + durable local://grilling-state.md ledger surviving the
Esc-aborts-the-run path; scout=environment facts (spawn-before-ask,
exclusive concurrency), web_search=world facts, inline=cheap lookups;
completion gate = summary + one closing ask, then distilled decisions
land in omp-docs/log.md via branch -> PR.
Absorbs managed skill one-decision-per-ask-question (Frank's choice;
reworded: ideas heavily encouraged via own atomic question, ban is on
smuggling into option text only). Managed skill deleted here; heartbeat
drops it from the live tree.
Every frontier decision that fits 2–5 options goes through the `ask` tool - one question per decision, `recommended: 0` (the recommended answer is always option 0; the user's single Enter is the bare "yes" that accepts it). Prose in chat is the exception, reserved for genuinely open narrative ("walk me through the deploy flow") - never as buttons.
➡️ <your recommended answer>
Per-question discipline (absorbed law, was the `one-decision-per-ask-question` managed skill):
> **Authored override.** Extracted 2026-10-18 from `mattpocock/skills` (identical to upstream at extraction) into the command-center repo so Frank can customize it. Removed from the `skills` CLI global store (`~/.agents/.skill-lock.json` pruned) so `skills update -g` never resurrects a duplicate. Edits to this file are repo prose: branch → PR → Frank OK.
> **Authored override.** Extracted 2026-10-18 from `mattpocock/skills` (identical to upstream at extraction) into the command-center repo so Frank can customize it. Removed from the `skills` CLI global store (`~/.agents/.skill-lock.json` pruned) so `skills update -g` never resurrects a duplicate. omp-aware redesign same day; absorbed the `one-decision-per-ask-question` managed skill. Edits to this file are repo prose: branch → PR → Frank OK.
The session is done when the frontier is empty: every branch of the design tree visited, nothing left silently assumed. Do not act on it until the user confirms you have reached a shared understanding.
- Environment facts (filesystem, repo, live config): `task` + `scout`, one batch, one scout per fact-cluster; on this box at most 3 run at once, so cluster rather than spray.
Frontier empty and nothing blocked → write the settled-decisions summary from the ledger, then **one closing `ask`**: "Shared understanding reached - proceed?" Nothing executes before that yes. After it: distill the settled decisions into an `omp-docs/log.md` work-log entry through the normal branch → PR path, and refresh the ledger file to final form.
All four notes fixed in fe039a0:
1. ✅ provenance blockquote dropped - skill body is instructions, not history
2. ✅ (same) absorbed-law parenthetical also stripped: 'Per-question discipline:' stands alone
3. ✅ 'on this box at most 3' -> 'concurrency is capped, so cluster rather than spray'
4. ✅ completion target now 'the project's knowledge base, or a log markdown file'
bats 36/36. (Per-comment resolve API 404s on this Gitea build - flagging the conversations resolved here instead.)
---
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
- drop provenance blockquote and the absorbed-law attribution: the skill
is instructions, not a history
- 'concurrency is capped' replaces the 3-scout figure of one machine
- completion distillate: project's knowledge base or a log markdown file,
not a command-center-specific path (skill travels outside this repo)
Read all 36 upstream skills, then rewrote to their house style per
writing-for-agents' own levers: leading words as tokens (frontier,
brief, ledger, artefact, scout), vocabulary-first and used exactly,
positive phrasing with prohibitions kept only as hard guardrails,
completion criteria sharpened to checkable+exhaustive ('counted before
sending', 'frontier empty and nothing sits blocked'), zero history,
gotchas the environment cannot confess kept inline. All settled
behaviour from the grilling-on-grilling session survives intact.
Style pass in 3fa0242: read all 36 upstream skills, then rewrote to the corpus voice using writing-for-agents' own levers. Behaviour unchanged; the mapping:
Leading words as tokens: frontier / round / ledger / artefact / brief / scout - each defined once, then used as a noun everywhere. 'brief' and 'frontier' are lifted from the corpus so they share language with wayfinder and loop-me.
Positive phrasing: 'a question may not carry two' -> 'one artefact per question, counted before sending'; 'smuggling banned' -> 'attach it to its own question, so it rides there on its merits'. The two hard guardrails that survive as prohibitions (nothing executes before the yes, one Enter accepts option 0) are the ones with no positive form.
Sharpened bounds: done is now 'frontier empty and nothing sits blocked' + a brief you can count, not 'shared understanding reached'.
No-op/history pruning: absorbed-law attribution gone, the speech-enabled note gone (harness default), 'renders as markdown' gone (the environment confesses it).
Gotchas stay inline (they're the cache worth keeping): exclusive dialog -> scouts before ask; Esc kills the run -> ledger.
Style pass in 3fa0242: read all 36 upstream skills, then rewrote to the corpus voice using writing-for-agents' own levers. Behaviour unchanged; the mapping:
- **Leading words as tokens**: frontier / round / ledger / artefact / brief / scout - each defined once, then used as a noun everywhere. 'brief' and 'frontier' are lifted from the corpus so they share language with wayfinder and loop-me.
- **Positive phrasing**: 'a question may not carry two' -> 'one artefact per question, counted before sending'; 'smuggling banned' -> 'attach it to its own question, so it rides there on its merits'. The two hard guardrails that survive as prohibitions (nothing executes before the yes, one Enter accepts option 0) are the ones with no positive form.
- **Sharpened bounds**: done is now 'frontier empty and nothing sits blocked' + a brief you can count, not 'shared understanding reached'.
- **No-op/history pruning**: absorbed-law attribution gone, the speech-enabled note gone (harness default), 'renders as markdown' gone (the environment confesses it).
- **Gotchas stay inline** (they're the cache worth keeping): exclusive dialog -> scouts before ask; Esc kills the run -> ledger.
bats 36/36.
---
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
Interview the user relentlessly until you reach a shared understanding. Map this as a **design tree**: every decision branches into the decisions that hang off it.
Interview the user relentlessly until nothing is silently assumed. The subject is a **design tree**: every decision branches into the decisions that hang off it.
- Environment facts (filesystem, repo, live config): dispatch a **scout** per fact-cluster, batched into one `task` call, before the round's `ask`. Cluster tightly; spawns are the expensive route.
- Environment facts (filesystem, repo, live config): dispatch a **scout** per fact-cluster, batched into one `task` call, before the round's `ask`. Cluster tightly; spawns are the expensive route.
Round two, all four applied in ca8b462:
1. ✅ opening now reads '...until nothing is silently assumed and you reach a shared understanding. Map this as a **design tree**: ...'
2. ✅ 'Cluster tightly; doing so keeps each scout more aware of possible adjacencies.'
3. ✅ 'call web_search directly, do not delegate to a subagent.'
4. ✅ '## Definition of Done'
bats 36/36.
---
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
- opening restores 'shared understanding' alongside 'nothing is
silently assumed', and 'Map this as a design tree'
- cluster rationale restated: tight clusters keep each scout aware of
possible adjacencies
- web_search: explicit 'do not delegate to a subagent'
- 'Done' heading -> 'Definition of Done'
You're right - the tool auto-labels the recommended option but never pre-selects it; the reply always names what was picked. My line invented a default-accept mechanic. Now, in %s: 'Recommended answer first, marked recommended: 0, which labels it "(Recommended)" for one-glance acceptance. Every reply names what was picked, so the record is unambiguous.' The bare-'yes' sentence survives only in the prose-fallback path, where it is literally true. bats 36/36.
You're right - the tool auto-labels the recommended option but never pre-selects it; the reply always names what was picked. My line invented a default-accept mechanic. Now, in %s: 'Recommended answer first, marked recommended: 0, which labels it "(Recommended)" for one-glance acceptance. Every reply names what was picked, so the record is unambiguous.' The bare-'yes' sentence survives only in the prose-fallback path, where it is literally true. bats 36/36.
---
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99dc379d16
The ask tool's recommended flag only labels option 0; the reply always
names the selected options, so 'the user's single Enter accepts it'
overclaimed a default-accept mechanic that does not exist. Stated
truthfully: the label invites one-glance acceptance, the reply is
self-documenting.
Dialog mechanics, the gotchas no doc confesses: the dialog is exclusive, so dispatch scouts before the `ask` call in the same message and expect their results between rounds. Esc cancels the whole run with no closing turn; the ledger below is what survives it.
Rephrased in 6134e11: the aside ('the gotchas no doc confesses') and the simile ('so the user watches it fall') are gone; the paragraph now leads with the constraint itself - 'The dialog is exclusive: dispatch scouts before the ask call in the same message, or they wait behind it; their results land between rounds. Esc ends the run outright, with no turn to wrap up, so the ledger is what survives it.' bats 36/36.
Rephrased in 6134e11: the aside ('the gotchas no doc confesses') and the simile ('so the user watches it fall') are gone; the paragraph now leads with the constraint itself - 'The dialog is exclusive: dispatch scouts before the ask call in the same message, or they wait behind it; their results land between rounds. Esc ends the run outright, with no turn to wrap up, so the ledger is what survives it.' bats 36/36.
---
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
'Too Claudish': drop the aside ('the gotchas no doc confesses') and the
simile ('watches it fall'); lead with the constraint itself. Facts
unchanged: exclusive dialog, scouts before ask, Esc ends the run, the
ledger survives.
dank
merged commit 66e3f220e7 into main2026-10-18 19:39:01 -07:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The skill grilled its own redesign: every branch settled through ask rounds with you on 2026-10-18. Facts from a source census of the harness (
omp://tools/*, installed prompt/TUI sources).Design as implemented:
askdefault for every 2–5-option decision (recommended: 0— one Enter is the bare yes); prose reserved for open narrative; classic text round survives as no-askfallbackone-decision-per-ask-question(deleted here, your call), reworded per your clarification: ideas heavily encouraged — each gets its own atomic question; the ban is only on smuggling artefacts into option texttodophases=branches, blocked-reasons=dependencies (HUD-visible); per-roundlocal://grilling-state.mdledger — the safety net for the fact that Esc on the dialog aborts the run with no final turnweb_search=world, inline=cheap; 3-scout cap respectedomp-docs/log.mdvia branch → PRbats 36/36. New behavior lands next session (skill discovery runs at startup).
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
@@ -16,2 +14,3 @@Every frontier decision that fits 2–5 options goes through the `ask` tool - one question per decision, `recommended: 0` (the recommended answer is always option 0; the user's single Enter is the bare "yes" that accepts it). Prose in chat is the exception, reserved for genuinely open narrative ("walk me through the deploy flow") - never as buttons.➡️ <your recommended answer>Per-question discipline (absorbed law, was the `one-decision-per-ask-question` managed skill):Drop this line; this skill is not a history.
@@ -4,3 +4,3 @@---> **Authored override.** Extracted 2026-10-18 from `mattpocock/skills` (identical to upstream at extraction) into the command-center repo so Frank can customize it. Removed from the `skills` CLI global store (`~/.agents/.skill-lock.json` pruned) so `skills update -g` never resurrects a duplicate. Edits to this file are repo prose: branch → PR → Frank OK.> **Authored override.** Extracted 2026-10-18 from `mattpocock/skills` (identical to upstream at extraction) into the command-center repo so Frank can customize it. Removed from the `skills` CLI global store (`~/.agents/.skill-lock.json` pruned) so `skills update -g` never resurrects a duplicate. omp-aware redesign same day; absorbed the `one-decision-per-ask-question` managed skill. Edits to this file are repo prose: branch → PR → Frank OK.Drop this line. The skill is not a history.
@@ -31,2 +33,3 @@## Facts are yours; decisions are the user'sThe session is done when the frontier is empty: every branch of the design tree visited, nothing left silently assumed. Do not act on it until the user confirms you have reached a shared understanding.- Environment facts (filesystem, repo, live config): `task` + `scout`, one batch, one scout per fact-cluster; on this box at most 3 run at once, so cluster rather than spray.Drop the bit about "this box".
@@ -33,0 +39,4 @@## CompletionFrontier empty and nothing blocked → write the settled-decisions summary from the ledger, then **one closing `ask`**: "Shared understanding reached - proceed?" Nothing executes before that yes. After it: distill the settled decisions into an `omp-docs/log.md` work-log entry through the normal branch → PR path, and refresh the ledger file to final form.The skill might not be used in the omp directory. Just say "either the projects knowledge base, or a log markdown file"
All four notes fixed in
fe039a0:bats 36/36. (Per-comment resolve API 404s on this Gitea build - flagging the conversations resolved here instead.)
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
Read all 36 upstream skills, then rewrote to their house style per writing-for-agents' own levers: leading words as tokens (frontier, brief, ledger, artefact, scout), vocabulary-first and used exactly, positive phrasing with prohibitions kept only as hard guardrails, completion criteria sharpened to checkable+exhaustive ('counted before sending', 'frontier empty and nothing sits blocked'), zero history, gotchas the environment cannot confess kept inline. All settled behaviour from the grilling-on-grilling session survives intact.Style pass in
3fa0242: read all 36 upstream skills, then rewrote to the corpus voice using writing-for-agents' own levers. Behaviour unchanged; the mapping:bats 36/36.
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
@@ -7,2 +6,3 @@# GrillingInterview the user relentlessly until you reach a shared understanding. Map this as a **design tree**: every decision branches into the decisions that hang off it.Interview the user relentlessly until nothing is silently assumed. The subject is a **design tree**: every decision branches into the decisions that hang off it."... until nothing is silently assumed and you reach a shared understanding. Map this as a design tree:..."
@@ -33,0 +36,4 @@## Facts are yours, decisions are theirs- Environment facts (filesystem, repo, live config): dispatch a **scout** per fact-cluster, batched into one `task` call, before the round's `ask`. Cluster tightly; spawns are the expensive route."Cluster tightly; doing so keeps each scout more aware of possible adjacencies."
@@ -33,0 +41,4 @@- Cheap lookups: `read`/`grep` inline.- The main session is where questions happen: every spawn carries the exact facts to return, and comes back into the next round.## DoneDefinition of Done
@@ -33,0 +37,4 @@## Facts are yours, decisions are theirs- Environment facts (filesystem, repo, live config): dispatch a **scout** per fact-cluster, batched into one `task` call, before the round's `ask`. Cluster tightly; spawns are the expensive route.- Outside-world facts: call `web_search` directly.call web_search directly, do not delegate to a subagent
Round two, all four applied in
ca8b462:bats 36/36.
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
You're right - the tool auto-labels the recommended option but never pre-selects it; the reply always names what was picked. My line invented a default-accept mechanic. Now, in %s: 'Recommended answer first, marked recommended: 0, which labels it "(Recommended)" for one-glance acceptance. Every reply names what was picked, so the record is unambiguous.' The bare-'yes' sentence survives only in the prose-fallback path, where it is literally true. bats 36/36.
cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99dc379d16
@@ -22,3 +25,2 @@➡️ <your recommended answer>```Dialog mechanics, the gotchas no doc confesses: the dialog is exclusive, so dispatch scouts before the `ask` call in the same message and expect their results between rounds. Esc cancels the whole run with no closing turn; the ledger below is what survives it.Too Claudish. Rephrase.
Rephrased in
6134e11: the aside ('the gotchas no doc confesses') and the simile ('so the user watches it fall') are gone; the paragraph now leads with the constraint itself - 'The dialog is exclusive: dispatch scouts before the ask call in the same message, or they wait behind it; their results land between rounds. Esc ends the run outright, with no turn to wrap up, so the ledger is what survives it.' bats 36/36.cwd: /home/blank/.omp/wt/feat-grilling · session: wt-20261018-170616-7c8a99d
'Too Claudish': drop the aside ('the gotchas no doc confesses') and the simile ('watches it fall'); lead with the constraint itself. Facts unchanged: exclusive dialog, scouts before ask, Esc ends the run, the ledger survives.