跳转到内容

工具

Jarvis 的工具配置分两类:面向工作会话的汇报工具,以及可选的本地能力工具。默认目标是低噪声、可监督、可降级。

托管编码会话通常会获得这些工具:

  • report_progress
  • notify_blocked
  • ask_human
  • request_context

它们用于把关键进展、阻塞和问题回流到主聊天。

某些工具依赖本地配置或用户数据,例如:

  • search_kb:查询用户配置的本地知识库。
  • 运行时特有权限回复:依赖具体 CLI 或边车服务能力。
  • 远程控制相关工具:依赖移动端或隧道配置。

这些能力应优雅降级。没有配置时,工具可以返回 unavailable,而不是阻断聊天或编码会话启动。

  • 只给会话注入完成任务所需的最小工具集。
  • 不把用户私有路径、KB 内容或真实凭证写进仓库。
  • 工具输出进入主聊天前要结构化和压缩。
  • 对用户可见的阻塞和问题要清楚说明下一步。

不同运行时对工具配置的承载方式不同:

运行时 常见方式
Claude Code 启动期参数、临时 MCP 配置、hook 或 transcript 信号
Codex 项目级 MCP 配置、CLI 默认值和 app-server 状态
OpenCode 本地边车服务、HTTP/WebSocket 会话 API、结构化权限流

Jarvis 只归一化监督所需的部分,不把运行时差异完全抹平。