/** * Flow discovery and configuration. * * Flows are Markdown files with YAML frontmatter that define name, description, * optional model/tools, and a system prompt body. * * Lookup locations: * - User flows: ~/.pi/agent/agents/*.md by default, or * $AGENT_DIR/agents/*.md when the env var is set * - Project flows: .pi/agents/*.md (walks up from cwd) */ export type FlowScope = "user" | "project" | "both" | "bundled" | "all"; export type FlowTier = "lite" | "flash" | "full"; /** All bundled flow type names. Keep in sync with markdown files in agents/ directory. */ export declare const BUNDLED_FLOW_TYPES: readonly ["trace", "scout", "build", "craft", "audit", "debug", "ideas"]; export type ToolResultCategory = "error" | "stackTrace" | "testFailure" | "fileContent" | "bashSuccess" | "grepResult" | "gitDiff" | "userMessage" | "designDecision" | "other"; export interface ContextProfile { name: string; keepCategories: ToolResultCategory[]; compressCategories: ToolResultCategory[]; } export interface FlowConfig { name: string; description: string; tools?: string[]; model?: string; thinking?: string; maxDepth?: number; inheritContext?: boolean; tier?: FlowTier; contextProfile?: ContextProfile; systemPrompt: string; source: "user" | "project" | "bundled"; filePath: string; } export interface FlowDiscoveryResult { flows: FlowConfig[]; projectFlowsDir: string | null; } /** Determine the model tier for a given flow name. */ export declare function getFlowTier(flowName: string): FlowTier; /** * Discover all available flows according to the requested scope. * * Precedence is: bundled < user < project. */ export declare function discoverFlows(cwd: string, scope: FlowScope): FlowDiscoveryResult; //# sourceMappingURL=agents.d.ts.map