/** * Research tools factory for AutoResearch system. * * These tools allow an AI agent to conduct autonomous experiments: * reading/writing code, running experiments, recording results, and * managing the research lifecycle (accept/revert/checkpoint). * * @module autoresearch/tools */ import type { ResearchToolsDeps, Tool } from "../types/index.js"; /** * Create research management tools bound to a research session. * * These tools follow the same factory pattern as `createTaskTools()` in * `src/lib/tasks/tools/taskTools.ts`. Dependencies are captured via closure, * eliminating the need for module-level singleton state. * * @param deps - The research dependencies to bind to * @returns Record of tool name to tool definition * * @example * ```typescript * const tools = createResearchTools({ config, stateStore, repoPolicy, runner, recorder }); * // tools.research_get_context, tools.research_read_file, etc. * ``` */ export declare function createResearchTools(deps: ResearchToolsDeps): Record;