import type { ActiveRun } from "./types.ts"; export type DelegationRole = "research" | "doc" | "code" | "review" | "verify"; export interface DelegationRequest { role: DelegationRole; task: string; } export type DelegationMode = "single" | "parallel" | "chain"; export interface ParsedDelegationArgs extends DelegationRequest { dryRun: boolean; } export declare const DEFAULT_REVIEW_TASK = "\u5BA1\u67E5\u5F53\u524D run \u548C\u6700\u8FD1\u53D8\u66F4\uFF0C\u91CD\u70B9\u627E\u72B6\u6001\u673A\u6F0F\u6D1E\u3001\u95E8\u7981\u7ED5\u8FC7\u3001\u8BC1\u636E\u7F3A\u53E3\u3001\u5DE5\u7A0B\u6307\u4EE4\u5206\u6563\u548C\u6D4B\u8BD5\u7F3A\u53E3\u3002"; export declare const CHILD_AGENT_USER_TASK = "\u6267\u884C KCode \u5B50 agent \u59D4\u6D3E\u4EFB\u52A1\u3002"; export declare const KD_SUBAGENT_TOOL_DESCRIPTION = "\u5C06\u8C03\u7814\u3001\u6587\u6863\u3001\u4EE3\u7801\u3001\u9A8C\u8BC1\u6216\u4EA4\u53C9\u5BA1\u67E5\u4EFB\u52A1\u59D4\u6D3E\u7ED9\u9694\u79BB Pi \u5B50\u8FDB\u7A0B\u3002\u4E3B Harness \u4ECD\u8D1F\u8D23\u9636\u6BB5\u63A8\u8FDB\u3001\u8BC1\u636E\u548C\u95E8\u7981\u3002"; export declare const KD_DELEGATE_USAGE = "\u7528\u6CD5\uFF1A/kd-delegate <\u4EFB\u52A1> [--dry-run]"; export declare const KD_SUBAGENT_INVALID_PARAMS = "kd_subagent \u53C2\u6570\u8981\u6C42\uFF1Arole=research|doc|code|review|verify \u4E14 task \u975E\u7A7A\uFF0C\u6216\u63D0\u4F9B tasks/chain\u3002"; export declare const KD_SUBAGENT_PARALLEL_ROLE_ERROR = "kd_subagent \u5E76\u884C\u6A21\u5F0F\u53EA\u5141\u8BB8 research\u3001review\u3001verify \u8FD9\u7C7B\u53EA\u8BFB\u89D2\u8272\u3002doc/code \u5FC5\u987B\u4E32\u884C\u6267\u884C\u3002"; export declare const KD_REVIEW_COMMAND_DESCRIPTION = "\u542F\u52A8\u53EA\u8BFB\u4EA4\u53C9\u81EA\u67E5\u5B50 agent\uFF1A/kd-review [\u5BA1\u67E5\u91CD\u70B9]"; export declare const KD_DELEGATE_COMMAND_DESCRIPTION = "\u59D4\u6D3E\u4EFB\u52A1\u7ED9\u9694\u79BB\u5B50 agent\uFF1A/kd-delegate <\u4EFB\u52A1> [--dry-run]"; export declare const KD_SUBAGENT_SCHEMA_DESCRIPTIONS: { readonly role: "单任务角色:research、doc、code、review、verify。"; readonly task: "单任务内容。"; readonly taskItemRole: "任务角色。"; readonly taskItemTask: "任务内容。"; readonly tasks: "并行任务数组,最多 8 个,最多 4 个同时运行。"; readonly chain: "链式任务数组,按顺序运行;后一步会收到上一步输出。"; readonly dryRun: "只预览上下文包,不启动子进程。"; readonly maxOutputChars: "返回给主 agent 的最大输出字符数,默认 30000。"; }; export declare function isDelegationRole(value: string): value is DelegationRole; export declare function parseDelegationArgs(args: string): ParsedDelegationArgs | undefined; export declare function delegationBlockReason(role: DelegationRole, run: ActiveRun | undefined): string | undefined; export declare function isReadOnlyDelegationRole(role: DelegationRole): boolean; export declare function parallelDelegationBlockReason(requests: DelegationRequest[]): string | undefined; export declare function isSubagentChild(env?: NodeJS.ProcessEnv): boolean; export declare function subagentRoleFromEnv(env?: NodeJS.ProcessEnv): DelegationRole | undefined; export declare function shouldInjectDelegationGuidance(env?: NodeJS.ProcessEnv): boolean; export declare function subagentAllowedTools(role: DelegationRole): string[]; export declare function subagentToolCallBlockReason(input: { role: DelegationRole; toolName: string; path?: string; cwd: string; run?: ActiveRun; sourceLike?: boolean; planWriteBlockReason?: string; sourceWriteBlockReason?: string; }): string | undefined; export declare function buildDelegationCommandPrompt(request: DelegationRequest, dryRun: boolean): string; export declare function delegationGuidanceForWorkflow(): string; export declare function buildChainedDelegationRequest(request: DelegationRequest, previousOutput: string): DelegationRequest; export declare function buildDelegationPrompt(cwd: string, run: ActiveRun | undefined, request: DelegationRequest): string; export declare function formatDelegationPreview(cwd: string, run: ActiveRun | undefined, request: DelegationRequest): string;