the first message is two sentences, and the question is tappable

the opening brief was thirty lines and the commander answered in kind: it
explained what the machine already has, what it can be told to do, what it
would not do on its own, and what it inferred from the filenames about
whether a person or a device named them. all of it true, none of it asked,
and the one question was at the bottom.

the brief is five lines now. look in the path, look at what the platform
can already do, ask which of those it should be — or whether the owner has
something else in mind. that is the whole of the first message.

and it asks with AskUserQuestion, so the owner picks instead of typing.
that was already wired end to end — QuestionActivity renders it and
useChat has the answer channel — and nothing was using it here.

the template's first-turn section went the same way: "one question at a
time" stays, the list of five things to settle goes. it was a checklist,
and a checklist gets answered as a checklist.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Officer-Session: 656f5c85-e49a-4f1f-b9f3-042a04b4d043
This commit is contained in:
2026-08-25 05:10:51 +00:00
co-authored by Claude Opus 5
parent facf1a5f9e
commit 6041379e98
2 changed files with 23 additions and 58 deletions
+17 -32
View File
@@ -275,44 +275,29 @@ export function commanderClaudeMd(params: CommanderClaudeMdParams): string {
'when first needed gives the owner nowhere to look before that, and no hint that looking is a thing they',
'do.',
'',
'## The first turn',
'## Talking to the owner',
'',
"Two things were named before anything was said: this commander's name, and the reference path above.",
'Everything else is settled in conversation, and it is settled ONE QUESTION AT A TIME.',
'ONE question at a time, answerable by picking rather than by typing. Use **AskUserQuestion** — it puts',
'options on screen and the owner taps one. Free text is for when they want to say something you did not',
'think of, not for the ordinary case.',
'',
'**Assume the person answering is busy and knows less about this than you do.** Every question should',
'be answerable with "yes" or "no, do this instead". If they have to read a paragraph to reply, or choose',
'between options you have laid out, the question was too big. Break it up and take more turns. Turns are',
'cheap; a wrong guess armed for a week is not.',
'Short, and in plain words. A sentence of what you found, then the question. Nothing about how the',
'platform works, what you could be told to do, or what you are choosing not to do — none of it was',
'asked, and every line of it is another thing to read before answering.',
'',
'**Look, then look again, then ask.**',
'Say what is there, not what you infer from it. How many, what kind. Not who made them or how they',
'arrived: that is you thinking out loud, and it reads as padding even when it is right.',
'',
'1. Read the reference path. What is in there, what kinds of file, how they are named, how recently they',
' arrive.',
'2. Ask the platform what it can already do — `GET /api/tasks` lists every task on this machine, and',
' your skills index names the rest. If one of them plainly fits what you just saw, that is your',
' suggestion. It has to come from what this platform actually has, not from a guess about what would',
' be useful.',
'3. Then ask ONE question: when a new one of these appears, should I do <that thing>?',
'Settle one thing, then the next. The action first. Categories, dispatching and how often to look are',
'separate questions for later turns, and most commanders never need the first two.',
'',
'That is the whole of the first turn. Nothing else.',
'**Never arm a watcher before the owner has agreed what it does.** Arming ahead of that is arming a',
'guess, and a wrong condition either never fires or fires constantly — either way it is found out days',
'later.',
'',
'**Do not ask where the output goes.** It goes in this directory — see "Where things go" above, which',
'is the same for every commander. Putting it somewhere else is a later decision and usually never comes',
'up at all.',
'',
'**Do not ask about categories, dispatching, or how often to look.** Those are separate steps and most',
'commanders never need the first two. They come up later, one at a time, once the action is agreed and',
'has actually run.',
'',
'The name is a clue, not a specification. It says what the subject is. It never says what to do about',
'it, and guessing that is how a commander ends up doing something nobody asked for.',
'',
'**Never arm a watcher on this turn.** Arming before the action is agreed is arming a guess, and a wrong',
'condition either never fires or fires constantly — either way it is found out days later.',
'',
'When it is settled, REPLACE this section with what was agreed: what this commander watches for, what it',
'does about it, and which numbers were guesses. The next turn should read the answer, not the questions.',
'Once the job is settled, write it into this file, replacing this section: what you watch for, what you',
'do about it, and which numbers were guesses. The next session should read the answer, not the',
'questions.',
'',
].join('\n');
}