/** * `/step`, `/chain` and `/quote`: walking a chain by hand. * * `/run` runs a flow end to end and leaves its answer in the conversation, * which is right for an exploration - it is read, and then asked about. It is * wrong for the other use: `explorer → planner → coder → reviewer`, advanced * one step at a time, where the main window is a console and not an * interlocutor. Everything it reads it acts on, so a report landing there turns * it into an orchestrator nobody asked for. * * So these three do the opposite of `/run` on exactly one point. A step is * **drawn and not sent**: `appendEntry` renders it in the transcript and keeps * it out of the model's context, the output waits in the relay for the next * step, and `/quote` is the one door into the conversation - taken on purpose, * when there is something to discuss. * * What a step *is* is deliberately wide: a flow is a fine stage of a * hand-walked chain (`explore` is a fan-out and a synthesis), and so is a lone * agent. One command takes both, resolved in that order. */ import { type CommandCtx, type PiApi } from "../pi.ts"; import { type StepDeps } from "../deps.ts"; import { type RelayStep } from "../relay.ts"; /** Registers `/step`, `/chain` and `/quote`. */ export default function registerStepCommands(pi: PiApi): void; /** * `/step [--from ] [--model ] [--agent] `. * * One stage of the chain: the named flow or agent is handed the previous * step's output and whatever is typed after it, and what it answers goes into * the relay - not into this session's context. * * A failing step leaves the chain untouched. It produced no material to carry, * and recording it would hand the next agent an error message as its input; the * export is still on disk, and the same command can be retried on another * model. */ export declare function runStep(args: string, ctx: CommandCtx, injected: StepDeps): Promise; /** `/chain` - the steps walked so far. `/chain export` writes them into one page, `/chain reset` starts a new chain. */ export declare function showChain(args: string, ctx: CommandCtx): string[]; /** * `/quote [id]` - one step of the chain, into this conversation. * * The only door out of the relay, and it stays manual: the whole reason a step * is drawn rather than sent is that this session acts on whatever it reads. */ export declare function quoteStep(args: string, ctx: CommandCtx, deps: StepDeps): RelayStep | undefined; //# sourceMappingURL=step.d.ts.map