import type { AgentSession } from "../core/agent-session.js"; import type { WorkflowCommandSpec } from "../core/autopilot-gate.js"; /** Ken's read-only tool allow-list. Excludes every mutating tool (write/edit/ * bash/tasks/subagent/generate_image/enter_plan/exit_plan/task_*) so the mentor * agent can research + see, but never change the repo. */ export declare const KEN_ALLOWED_TOOLS: string[]; /** Extract the plain text of the most recent assistant message (Ken's reply). * Strips tool-call / image blocks, returning just the prose Ken streamed. */ export declare function lastAssistantText(messages: ReturnType): string; /** * Assemble Ken's context digest for one `@Ken` question: git/env + the build * session's compaction summary + recent activity. Prepended to the user's * question as Ken's prompt body each turn. Project docs (CLAUDE.md/AGENTS.md) * are NOT here — they're folded into Ken's cached system prompt once per * session instead (see ken-prompt.ts), so they hit the provider prompt cache * instead of being re-sent uncached on every question. Workflow commands + * autopilot-injected prompts are passed through so the digest labels them as * what they are instead of user-authored asks. */ export declare function buildKenContext(buildSession: AgentSession, cwd: string, gitBranch: string | null, question: string, workflowCommands: readonly WorkflowCommandSpec[], injectedPrompts: readonly string[]): string;