import type { SubagentConfig } from '../types/multi-agent.js'; import type { Tool } from '../types/tool.js'; import type * as Host from './director-host-contracts.js'; export declare function makeSpawnTool(director: Host.DirectorAdmissionPort, roster?: Record): Tool; export declare function makeQualityGateTool(director: Host.DirectorRepairPort, roster?: Record): Tool; export declare function makeAssignTool(director: Pick): Tool; export declare function makeKanbanQueueTool(director: Host.DirectorLeaseRecoveryPort, roster?: Record): Tool; export declare function makeAwaitTasksTool(director: Host.DirectorAssignmentPort): Tool; export declare function makeAskTool(director: Host.DirectorQuestionPort & Host.DirectorAnswerStorePort): Tool; /** * Retrieve a previously stored `ask_subagent` answer by its store key. * The key was returned as `_answerKey` in the ask_subagent response. * Use this only for large responses that were stored out-of-context. */ export declare function makeAskResultTool(director: Host.DirectorAnswerStorePort): Tool; export declare function makeRollUpTool(director: Pick): Tool; export declare function makeTerminateTool(director: Pick): Tool; export declare function makeTerminateAllTool(director: Pick): Tool; /** * Unified fleet observation tool — consolidates the former fleet_status, * fleet_usage, fleet_session, and fleet_health tools under a single `action` * parameter (status, usage, health, session). * * These four are all read-only fleet queries; merging them into one tool * reduces tool-schema token overhead (4 × ~150 tokens → 1 × ~250 tokens) * and eliminates model confusion when choosing between similar tools. */ export declare function makeFleetTool(director: Host.DirectorReadModelPort): Tool; /** * Collaborative debugging session: BugHunter, RefactorPlanner, and Critic * run in parallel on the same target files, with findings flowing through * the FleetBus (bug.found → refactor.plan → critic.evaluation). * * Returns a structured CollabDebugReport containing all bug findings, * refactor plans, critic evaluations, and an overall verdict. */ export declare function makeCollabDebugTool(director: Host.DirectorCollabPort): Tool; /** * Tool for subagents to emit structured events on the FleetBus. * Custom event types are extensible; known collab events are schema-validated * and restricted to their owning role before the Director routes them. * Common event types in collaborative sessions: * bug.found — BugHunter emits per-finding * refactor.plan — RefactorPlanner emits per-plan * critic.evaluation — Critic emits per-evaluation * * The payload structure is event-type-specific. Use null for empty payloads. */ export declare function makeFleetEmitTool(director: Host.DirectorPublishingPort): Tool; /** * Signal that the director's work is satisfied and the fleet should wind down. * * Once called: * - `spawn_subagent` throws — no new subagents can be created * - `assign_task` synthesizes an immediate `aborted_by_parent` completion * for any queued task (callers awaiting those tasks unblock immediately) * - Running subagents are NOT killed — they finish naturally; no new * tasks are dispatched to them * * Use this when you are satisfied with the results and want the fleet to * stop spawning without forcibly stopping in-flight work. Call * `terminate_subagent` separately for any subagent you need to stop immediately. */ export declare function makeWorkCompleteTool(director: Pick): Tool; //# sourceMappingURL=director-tools.d.ts.map