Development record
abcd's help fits the screen it is read on
Press Release
A person reads abcd --help, or abcd --help --agent, in a laptop terminal or a narrow window and every line fits the screen. Each verb's name stands on its own, its one-line purpose wraps to the terminal's width on a word boundary, and what it writes and what it refuses sit on the lines below, so nothing runs off the edge or breaks mid-word when the terminal wraps it. At 80 columns the whole menu reads top to bottom without scrolling sideways, and a wider terminal uses the width it has.
Why This Matters
Typed links: refines
itd-146
(the labelled command groups this help renders in) and
itd-2610090831227812
(the person's menu and the --help --agent expansion whose lines this
re-lays).
The help is the first thing a person reads, and today it cannot be read on an
ordinary screen. Measured on 2026-10-30 with COLUMNS=80: abcd --help runs
to 64 lines whose longest is 172 characters, and abcd --help --agent to 94
lines whose longest is 218. Every verb is one line holding its name, its
purpose, what it writes, what it refuses and, in the agents block, the page to
read next ((read commands/<verb>.md)), so the terminal wraps each line at
its edge, mid-word and under the name column, and the part that says what a
verb writes or refuses lands in an unaligned tail. The width the help is laid
out to is the terminal's, never a fixed one, so a wide terminal is not
squeezed either.
Whether --help --agent should write JSON by default was researched on
2026-10-30 and answered no: the agents block stays text, read by a model the
way the host reads a skill listing, with JSON behind --json. So this draft
covers the text layout of both listings, which an agent reads too, and the
machine-readable listing is
iss-2610301320457709.
Mechanism
Prompted (the claim-recording gradient): why the authors expect this to work, as a falsifiable "we expect X because Y" — not the outcome restated. Replace this line with the claim, or with the exact token
None stated.alone on its line to record the claim as considered and declined.
Scope Conditions
Required (the claim-recording gradient): the population, platform, scale, or assumptions this claim holds under, one per top-level bullet —
abcd intent planstamps each with a persistent identity. Replace this line with those bullets, or with the exact tokenNone stated.alone on its line.
Acceptance Criteria
Required (the itd-1 discipline): add at least one Given-When-Then bullet describing the verifiable bar for "shipped" before this draft can be planned.
Open Questions
None recorded yet.
Audit Notes
Empty. Populated by intent-auditor when intent moves to shipped/.
Frontmatter
| id | itd-2610301327282266 |
|---|---|
| type | intent |
| lifecycle | drafts |
| severity | minor |
.abcd/development/intents/drafts/itd-2610301327282266-a-person-reads-abcd-help-or-abcd-help.md
open on GitHub ↗ · commit history ↗
mentions5
- iss-2610301320457709abcd has no machine-readable list of its verbs: abcd --help --agent --json ignores --json and prints the text menu, so an agent learns the verbs, their flags and how to call them only by parsing help prose or reading every commands/*.md page. The list must be built from the same source as --help --agent and must carry machine-readable instructions for an agent to use abcd.
- itd-1Every Intent Has Acceptance Criteria; Every Audit Verifies Them
- itd-146abcd's help renders in labelled command groups, and the grouping is gated like every other surface claim
- itd-2610090831227812A person who types `/abcd:` sees the commands people use
- spc-2610301431075964An agent learns how to call abcd from the abcd it runs