/**
 * The capabilities layer — public surface.
 *
 * One import site for everything a host needs to stand up the built-in tools:
 * the kernel authoring shape and type vocabulary, every individual tool, the
 * Node-backed context assembler, and the assembled registry/toolbox helpers.
 *
 * The two outward contracts — the runtime's `ToolCall`/`ToolOutcome`/`ToolBox`/
 * `ToolRunner` and the gateway's `ToolDescriptor`/`JsonSchema` — are deliberately
 * not re-exported here; consumers import those straight from their own contracts
 * so there is a single source of truth.
 */
export { defineTool, clamp, ToolRegistry, UnknownToolError } from "./kernel";
export type { ToolSpec, ToolResult, ToolContentBlock, TextContentBlock, JsonContentBlock, ToolContext, DefinedTool, Fs, FsEntryInfo, DirChild, RemoveOptions, Shell, ShellLaunchOptions, ShellExecOptions, ShellExecResult, ShellHandle, OutputBudget, ClipEnd, RegistryContextFactory, ContextOverrides, ContextFactory, } from "./kernel";
export { nodeFs, nodeShell, makeNodeContext } from "./backends/node-backends";
export { readTool } from "./files/read";
export { writeTool } from "./files/write";
export { editTool } from "./files/edit";
export { lsTool } from "./files/ls";
export { grepTool } from "./search/grep";
export { findTool } from "./search/find";
export { bashTool } from "./shell/bash";
export { processTool, resetProcessTable } from "./shell/process";
export { todoSetTool, todoReadTool, todoStore, TodoStore, reset as resetTodos, } from "./planning/todo";
export type { TodoItem, TodoStatus } from "./planning/todo";
export { webSearchTool } from "./web/websearch";
export { webFetchTool } from "./web/webfetch";
export { builtinRegistry, toolBox } from "./registry";
export type { ToolCollection } from "./registry";
