import type { Tool } from "@modelcontextprotocol/server"; import type { ToolContext, ToolResult } from '../types.js'; import type { RiskLevel } from '../core/tool-registry.js'; /** * SEC-P1-1 (2026-08-08): write_script/edit_script 沙箱扫描守卫。 * * write_script/edit_script 写任意 content 不经沙箱扫描,与 execute_gdscript 不对齐—— * 客户端可写 @tool 脚本(editor 加载即执行 _ready)+ 含 OS.execute 脚本(配合 load/instantiate 触发)。 * 此函数对 .gd 文件内容调 scanGdscriptSandbox,发现危险模式则阻断(对齐 overrides.ts:106-119 范式)。 * * 旁路:UNRESTRICTED && (DISABLE_SAFETY || ALLOW_UNSAFE) 双 opt-in(对齐 executeGdscript * gdscript-executor.ts:1054-1055 + overrides.ts:106-108)。非 .gd 文件跳过(.cs 等不适用)。 * * @returns opsErrorResult 若检测到危险模式且未旁路;null 表示通过(安全或已旁路) */ export declare function scanScriptSandboxOrThrow(content: string, filePath: string): ToolResult | null; export declare function getToolDefinitions(): Tool[]; export declare function handleTool(name: string, args: Record, ctx: ToolContext): Promise; export declare const TOOL_META: Record; }>;