prepare-prompt · v0.1 · 2026-09-16 · sha256 6ebe33c9d1fbb9af
prepare-prompt v0.1A
Immutable. This exact content is served forever at /api/v1/blob/6ebe33c9d1fbb9af.
--- name: prepare-prompt description: Prepare a prompt that hands this session's work to a fresh agent session — to continue it, check it, or pick up what was left open. Use when asked for a prompt or brief for the next session. license: MIT metadata: version: "0.1" --- # Prepare prompt Write for a session holding only this text — no chat history, no memory of what was meant — and make it as short as that reader allows: nothing it needs is cut for brevity, nothing else stays. The reader is a fresh interactive session the user pastes it into; a subagent brief only when the invocation asks for one, under the same rules. ## Input The user's goal, in a line, plus this session. Draft at once; ask only what neither settles — typically whether the next session may change things or only report — one question at a time, with a recommended answer. ## Content A suggested order, every part optional: a part is never filled to exist, and two lines are a complete prompt when two lines cover the case. 1. **Situation** — what exists that the next session builds on, and what is open or was missed, each with its identifier (ticket URL, branch, commit, PR, task ids). 2. **Task and deliverable** — what to do, and in what form to report or produce it (a chat report with a given structure, a file, a code change). 3. **Latitude and boundaries** — what it may decide alone, when deviating is fine, what it must not touch (read-only, no git or tracker writes, files to ignore). 4. **Facts it cannot derive** — paths, the planning directory, docs to read, tool quirks with the workaround, a command that saves time. The deliverable form and the write boundaries are the usual gaps: check whether the case needs them. What stays and what goes: - A fact the next session builds on takes one line, never how it was reached. Anything it will redo anyway, and any narration of this session, goes. - When its job is to check, verify or review something, this session's own conclusions about that thing go entirely — they would steer the check. When its job is to continue the work, the decisions it must build on stay, one line each. - Point, never paste: what exists in a file or commit is referenced precisely (path and section, hash), never copied. Only what lives nowhere — a decision made in the chat, a tool quirk, a useful command — is written out. - When an installed skill covers what the next session must do, the prompt opens with its slash command and the rest follows as its arguments (`/refine-ticket 1234 …`) — not a description of the procedure, nor prose like "run `/refine-ticket`", which cannot load a skill that blocks model invocation. Verify it exists first. A subagent cannot run a slash command: its brief names the skill to invoke instead, and a task whose skill blocks model invocation stays with an interactive session. ## Form Plain imperative prose in paragraphs, no headings, bullets for lists. Agent-facing, so no conversational voice. Print it as one fenced block, then a `---` line before any note to the user; every revision reprints the whole block. ## Check before printing - Every path, id and command in the prompt exists or works — verified by a read-only lookup, not remembered. - Nothing narrates this session; for a checking job, nothing states this session's conclusion about the thing checked. - A session holding only this text can act without asking what was meant. Done when all three hold. ## Boundaries - The printed prompt is the product: write no file unless asked.