import { createCoreTools } from './index.js';
import { createTaskTool } from './task.js';
import { createTodoTool } from './todo.js';
import { buildSystemPrompt } from '../agent/prompt.js';
/**
 * Build the full tool set for a session: core tools + MCP tools + the task
 * subagent tool. Shared by the interactive UI and print mode.
 */
export function assembleTools(opts) {
    const tools = [...createCoreTools(opts.cwd), createTodoTool(), ...opts.mcpTools];
    const taskTool = createTaskTool({
        apiKey: opts.apiKey,
        provider: opts.provider,
        getModel: opts.getModel,
        getTools: () => tools,
        gate: opts.gate,
        buildSystemPrompt,
    });
    tools.push(taskTool);
    return tools;
}
