Files
iAs/tools/tool_manager/specs/tool_manager.tool.yaml
T
wunianxiao bf231352fb security(tool_manager): 禁止自改保留名 + 强制 high risk + 审计日志 + 构建超时清理
P0-2: validate_tool_name 将 tool_manager 等列为保留名,禁止
      create/update/build 作用于自身,杜绝持久化后门。
P0-3: spec_yaml 忽略调用方传入的 risk_level,由 tool_manager
      产出的工具一律 high risk,避免创建低风险后门绕过审批。
审计: 每次调用追加记录到 tools/.tool_audit.log
      (timestamp/user_id/action/tool_name/ok|err/detail)。
构建: 用 timeout 限制 180s,失败时删除残留旧二进制,
      避免 reload 后调用旧版本造成"假成功"。
2026-06-22 10:37:42 +08:00

33 lines
1.2 KiB
YAML

name: tool_manager
desc: 创建、修改和构建本地能力工具。用于给助手新增或更新 tools 目录下的 stdio Rust 工具;高风险操作,执行前需要用户确认。
type: stdio
tool: tool_manager
path: /target/release/tool_manager
risk_level: high
timeout_secs: 300
params:
- name: action
required: true
desc: 操作类型:create_tool、update_tool 或 build_tool
- name: tool_name
required: true
desc: 工具名称,只允许字母、数字、下划线和短横线
- name: description
required: false
desc: 工具说明,创建或更新 spec 时使用
- name: rust_code
required: false
desc: 完整的 src/main.rs Rust 源码;省略时 create_tool 会生成默认模板
- name: params
required: false
desc: 参数列表数组,每项包含 name、required、desc
- name: risk_level
required: false
desc: 已弃用,tool_manager 创建/更新的工具一律强制 high risk,传入值将被忽略
- name: timeout_secs
required: false
desc: 新工具超时时间秒数,默认 30
- name: overwrite
required: false
desc: create_tool 目标已存在时是否覆盖,默认 false