跳到正文
Hacker News· gabe4coding·· 6 天前AI 评分62

gabe4coding 发布 Claude Code 插件 code-mode:用沙箱程序批量调用 MCP 工具

Show HN: Claude Code Mode

AI 导读

gabe4coding 发布 Claude Code 插件 code-mode,让模型写一段 JavaScript 程序在沙箱中调用 MCP 工具,只把返回值放回上下文,中间数据不进入上下文以节省 token。

正文 · AI 翻译

code-mode: many MCP calls, one program, one small result

一个 Claude Code 插件:模型编写一个 JavaScript 程序,在沙箱中调用你的 MCP 工具。 只有返回值会回到上下文中。

License: MIT Node.js 22.13+ No dependencies Claude Code plugin Tests

快速开始 · 用法 · 提示 · 函数 · 权限 · 配置


code-mode-explainer-github.mp4

没有 code-mode 时,模型逐个调用 MCP 工具,每个完整结果都会进入上下文。使用 code-mode 时,模型编写一个程序。程序调用这些工具,然后在 沙箱中过滤并合并结果。只有答案会进入上下文。

  • 更少的 token:中间数据不会进入上下文。模型将上下文用于任务本身。
  • 沙箱:程序在自己的 Node 进程中运行,没有文件系统,并有 CPU 限制。在 macOS 上,以及在 unshare -rn 可用的 Linux 上,它也没有网络。
  • 提示:为每个 MCP 服务器提供的简短说明会告诉模型结果格式、必需参数和限制。 模型可以提议新的提示或删除错误的提示,由你批准。
  • 已保存的函数:模型可以提议将程序的一部分作为函数供后续会话使用。你阅读 代码并批准它。
  • 你的权限规则适用:程序中的每次 MCP 调用都会经过正常的权限检查。

快速开始

你需要 Claude Code 和 Node.js 22.13 或更高版本。

在 Claude Code 会话的提示符下输入这些命令:

/plugin marketplace add gabe4coding/claude-code-mode
/plugin install code-mode@claude-code-mode

启动一个新会话。然后请求一个需要多次 MCP 调用的任务。

如果你使用自动模式,请先为你的 MCP 工具添加允许规则。阅读 权限。

示例

你问:“我有哪些未更新的 Jira 问题在过去 14 天内没有更新?” 模型会编写一个程序,例如:

const issues = await call("mcp__claude_ai_Jira__searchJiraIssuesUsingJql", {
  cloudId: "example.atlassian.net",
  jql: "assignee = currentUser() AND statusCategory != Done",
})
const cutoff = Date.now() - 14 * 24 * 3600 * 1000
return issues.issues
  .filter(i => Date.parse(i.fields.updated) < cutoff)
  .map(i => ({ key: i.key, title: i.fields.summary }))

模型只得到简短的列表,而不是每个完整的问题。

文档

页面
安装 要求、安装、本地文件夹、更新
用法 三个工具、如何编写程序、结果
提示 编写提示、批准提议、安全规则
已保存的函数 批准或编写程序可再次使用的函数
权限 手动和自动模式、允许规则
配置 每个选项及其默认值
工作原理 从开始到结束的一次运行、四个沙箱层
故障排除 常见错误和已知限制
开发 布局、测试、发布

许可证

MIT。参见 LICENSE。

来源:Hacker News · github.com