Quickstart
Illustrative: this helper receives an already configured owner. It accepts one prompt and reads the current durable state. It does not wait for the reply.
import { Shiitake, type ShiitakeOptions } from "@fungi.computer/shiitake";
export async function ask(options: ShiitakeOptions) { const agent = await Shiitake.make(options); try { const session = agent.session("example-session"); const receipt = await session.command({ type: "prompt", requestId: "example-first-prompt", delivery: "followUp", text: "Describe this project.", }); return { receipt, snapshot: await session.read() }; } finally { await agent.close(); }}Keep a production host open while it owns active work. Closing it stops its runtime resources. It does not erase SQLite data or turn acceptance into a completed reply. The public-import consumer fixture checks construction, acceptance and close with an injected owner.