import type { ToolDefinition } from "@opencode-ai/plugin"; import type { PluginContext } from "../types.js"; /** * Agent-facing tool description, selected from the live configuration so it * never advertises behavior this project doesn't have: * - code-search prohibition steers to `aft_search` when registered, else the * `grep` tool (same surface logic as the Rust grep-rewrite footer); the * registration variant is selected late in index.ts once the final tool map * is known. * - the compression sentence only appears when output compression is on — * advertising `compressed: false` otherwise would describe a no-op. * - the background/PTY/watch sentences only appear when `bash.background` is on. * With it off, the foreground tool surface runs commands to completion * inline and treats `timeout` as the hard kill cap. * * Wording rules: this is read by AGENTS choosing a tool, not by users reading * docs. No internal vocabulary ("hoisted", "command rewriting", "unified bash * schema") — describe what the tool does and what NOT to use it for. */ export declare function bashToolDescription(aftSearchRegistered: boolean, compressionOn: boolean, backgroundOn: boolean): string; export declare function createBashTool(ctx: PluginContext, aftSearchRegisteredOverride?: boolean): ToolDefinition; export declare function createBashStatusTool(ctx: PluginContext): ToolDefinition; export declare function createBashKillTool(ctx: PluginContext): ToolDefinition; //# sourceMappingURL=bash.d.ts.map