import { z } from "zod"; import { type SeedOverrides } from "./seed.ts"; /** * The `playbook` MCP tool: chain N ordered seed steps into one run. * * Composes the existing `seed()` function in a loop — does NOT * re-implement seeding. Each step gets its own session under * `~/.sandbox-seed/sessions//`; the playbook adds a parent * manifest at `~/.sandbox-seed/playbook-runs//`. * * The aggregated dry-run report (one per playbook run, all steps rolled * up) is written to disk; the response references it by path. Cross-run * FK stitching across step boundaries works for free via the persistent * project-level id-map (see `src/seed/project-id-map.ts`). */ export declare const PlaybookArgs: z.ZodObject<{ action: z.ZodEnum<["list", "dry_run", "run"]>; name: z.ZodOptional; playbookRunId: z.ZodOptional; confirm: z.ZodOptional>; }, "strip", z.ZodTypeAny, { action: "dry_run" | "run" | "list"; name?: string | undefined; confirm?: true | undefined; playbookRunId?: string | undefined; }, { action: "dry_run" | "run" | "list"; name?: string | undefined; confirm?: true | undefined; playbookRunId?: string | undefined; }>; export type PlaybookArgsT = z.infer; export type PlaybookResponse = { action: PlaybookArgsT["action"]; summary: Record; guidance: string; }; export type PlaybookOverrides = { /** Defaults to `~/.sandbox-seed`. */ rootDir?: string; /** Forwarded to every per-step `seed()` call. */ seedOverrides?: SeedOverrides; }; export declare function playbook(args: PlaybookArgsT, overrides?: PlaybookOverrides): Promise;