import type { TaskComplexity, TaskKind, PlanStep } from "./task-plan.js"; export interface TaskAnalysis { complexity: TaskComplexity; /** True when multi-step durable planning is warranted (soft signal). */ shouldPlan: boolean; category: TaskKind; goal: string; needsNetworkContext: boolean; needsToolPreflight: boolean; likelyTools: string[]; stopWhen: string; /** Soft high-level steps — never force-executed; empty for trivial asks. */ suggestedSteps: PlanStep[]; } /** * A bounded, explicit nmap operation is not a request for a full pentest. * Keep it to one net.scan call unless the user also asks for assessment, * reconnaissance, enumeration, exploitation, or multiple named operations. */ export declare function isNarrowExplicitNmapOperation(prompt: string): boolean; /** * Lightweight task analysis for step budgets and soft guidance. * Does not execute or force a plan — the agent still owns decisions. */ export declare function analyzeTask(prompt: string): TaskAnalysis; /** Compact one-liner for session/system context (optional inject). */ export declare function formatTaskAnalysisHint(analysis: TaskAnalysis): string;