run¶
Source: src/run.ts
run(): the disposable form. Spawn, ask, close.
This is the only place where the lifetime is implicit - precisely because it is entirely contained within the call. Nothing survives the return.
run¶
function
export async function run(agent: Agent, task: string, options: RunOptions = {}): Promise<Result> { /* … */ }
Runs one task with a throwaway subagent.
The lifetime is forced to "task": an agent whose frontmatter declares
lifetime: workflow gains nothing from persisting across a single turn.
Use {@link spawn} when the memory must outlive the call.
The session is closed even if the turn fails or is cancelled.
RunOptions¶
type
export type RunOptions = Omit<SpawnOptions, "lifetime"> &
AskOptions & {
/** Defaults to the real {@link spawn}, like every combinator's. */
spawn?: SpawnFn;
};
{@link SpawnOptions} without lifetime - run is "task" by definition - plus the per-turn deadline.