Hawa Code Code mode 支持上万级别 MCP 工具数量调用

简介: Code Mode 是 Hawa Code 内置的 JavaScript 编程接口,支持调用任意已配置 MCP 工具(如 Supabase、GitHub),可搜索发现、组合编排、保存复用;按需加载不占上下文,显著降低 Token 消耗,提升复杂任务执行效率。(239字)

Code Mode

Code Mode 是 Hawa Code 内置的一款工具,它允许模型通过一段 JavaScript 代码来调用已配置的 MCP server 能力,并把执行结果返回给模型继续处理。

  • 支持几万级别 MCP 工具数量,通过 Search 渐进式按需发现,不占用上下文窗口体积。
  • 通过代码串联多个 MCP 工具调用,减少 MCP 工具调用结果往复传输,减少 Token 使用。
  • 通用的代码逻辑可以保存,自动复用,可以实现业务功能自进化。


快速开始

1. 配置文件

Code Mode 使用 .codemode.json 配置 MCP server,格式与 .mcp.json 一致。

配置文件支持两个层级:

  • 全局配置:~/.hcode/.codemode.json
  • 项目配置:{项目目录}/.codemode.json

项目配置会覆盖全局配置。

示例 .codemode.json:

{
  "mcpServers": {
    "supabase": {
      "type": "http",
      "url": "https://mcp.supabase.com/mcp",
      "headers": {
        "Authorization": "Bearer your-token"
      }
    },
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer your-token"
      }
    }
  }
}

提示:如果没有单独配置 .codemode.json,Code Mode 也会复用 Hawa Code 已有的 MCP 配置(全局配置、项目配置、.mcp.json)。

2. 使用方式

在对话中让 Hawa Code 进入 Code Mode,模型会自动生成 JavaScript 代码并执行。你无需手动安装插件或执行额外命令。

典型用法:

  • 调用某个 MCP 工具查询数据
  • 组合多个 MCP 工具完成多步骤任务
  • 搜索可用工具并自动发现能力

代码格式

Code Mode 接收一段 JavaScript 异步箭头函数,并执行它。

你可以直接写箭头函数体:

async () => {
  const result = await codemode.supabase.list_tables();
  return result;
}

也可以只写函数体内容,系统会自动包装:

const result = await codemode.supabase.list_tables();
return result;

调用 MCP 工具

已配置的 MCP server 会以 .> 的形式暴露为 JavaScript 函数。

例如,配置了一个名为 supabase 的 server,其中有一个工具叫 list_tables,可以这样调用:

async () => {
  const tables = await codemode.supabase.list_tables();
  return tables;
}

如果 server 名或工具名包含特殊字符,会自动转换为合法的 JavaScript 标识符。例如 my-server 会变成 codemode.my_server。


发现可用工具

搜索工具

如果你不确定某个能力在哪里,可以使用 codemode.search():

async () => {
  const matches = await codemode.search("list tables");
  return matches;
}

返回的结果包含工具路径、所属 server、方法名、描述和匹配分数,帮助你快速定位需要的工具。

查看工具详情

使用 codemode.describe() 查看某个工具的类型定义和参数说明:

async () => {
  const docs = await codemode.describe("supabase.list_tables");
  return docs;
}

也可以只描述整个 server:

async () => {
  const docs = await codemode.describe("supabase");
  return docs;
}

保存和复用代码片段

你可以把常用的代码保存为 snippet,方便后续调用:

async () => {
  await codemode.saveSnippet(
    "list-supabase-tables",
    "const tables = await codemode.supabase.list_tables(); return tables;",
    "列出 supabase 中的所有表"
  );
  return "saved";
}

snippet 会保存在项目目录的 .codemode-snippets.json 文件中,和 MCP 工具一样可以被 codemode.search() 和 codemode.describe() 找到。


组合多个工具

Code Mode 的真正价值在于可以组合多个 MCP 工具完成复杂任务。

例如:

async () => {
  const tables = await codemode.supabase.list_tables();
  const details = [];
  for (const table of tables.slice(0, 5)) {
    const schema = await codemode.supabase.describe_table({ table });
    details.push({ table, schema });
  }
  return details;
}

执行环境说明

  • Code Mode 在独立的 Node 子进程中执行代码,代码通过 IPC 与 Hawa Code 通信。
  • 执行环境不包含 fs、require、process 等 Node.js API,所有 I/O 只能通过已配置的 MCP 工具完成。
  • 单次执行默认超时时间为 60 秒,超时会自动终止。
  • 标准 JavaScript 语法可用,但不支持 TypeScript 类型注解。

权限与确认

Code Mode 属于需要用户确认的工具。执行前会询问你是否允许,确认后才会运行代码。如果你开启了自动权限模式,符合条件时可能无需每次确认。


常见场景

场景 示例
查询数据库 codemode.supabase.query({ sql: "SELECT * FROM users" })
查询 GitHub 信息 codemode.github.search_issues({ query: "repo:owner/repo is:open" })
组合多工具 先列表面板,再查询每个表的 Schema
复用逻辑 把常用查询保存为 snippet


欢迎使用 Hawa Code https://www.hawacode.com/

目录
相关文章
|
2月前
|
XML Java Apache
【2026实测】Maven下载、安装、配置一篇搞定(附官网安装包)
Maven是Apache开源的Java项目构建与依赖管理工具,以“约定优于配置”为核心,通过pom.xml自动下载、管理依赖并一键完成编译、测试、打包等流程。生态成熟、上手简单,是Java开发者的标配。
|
2月前
|
缓存 人工智能 自然语言处理
阿里云qwen3.7-max模型详解:模型能力、价格、上下文限制及使用注意事项参考
本文介绍阿里云通义千问系列面向智能体时代的旗舰模型Qwen3.7-Max,系统梳理其作为综合能力最强的Max模型的核心特性与适用场景。该模型2026年5月推出基础文本版本,同年6月增强版引入原生图像与视频输入多模态能力,专为复杂智能体任务设计,在编程、办公自动化及长周期自主执行等高阶场景表现卓越。模型在全球五大区域同步部署,功能存在差异化(如批量推理仅限北京区域),支持百万级超长上下文与结构化输出等高级功能,同时提供清晰的梯度定价策略。
|
2月前
|
缓存 运维 安全
阿里云ESA边缘安全加速免费领取:支持2个网站域名免费,通过宝塔面板快速领取指南
宝塔面板联合阿里云ESA推出免费CDN活动,可一键领取2个长期免费站点额度,支持中国大陆节点加速(需备案)、HTTPS加密、基础安全防护及面板内统一管理,降本增效,轻松上手。阿里云ESA官网:https://t.aliyun.com/U/AlRpfa
210 1
|
2月前
|
Shell API 开发工具
国内如何使用 Claude 模型:四条路径的实测对比与选择依据(2026 年 8 月版)
国内使用 Claude 模型目前有四条可走的路径:官方订阅配合合规网络、国内持证的 API 接入服务、把 Claude Code 接到国产大模型上、来路不明的低价接入点。前三条各有适用场景,第四条不建议。本文逐条拆开四条路径的实际成本、门槛与风险,并给出配置完成后连不上时的三层排查方法。
|
23天前
|
人工智能 Kubernetes 测试技术
会AI的测试开发,薪资到底能高多少?我扒了100份JD
2026年测试岗巨变:手工测试需求降47%,测开岗涨340%。AI测试开发年薪达35–100万+,远超传统测开;岗位核心已从“验证功能”转向“评测能力”,要求大模型、Agent、RAG等实战经验。
|
1月前
|
缓存 人工智能 API
阿里云Qwen3.8‑Flash 大模型解析:百万上下文MoE、多模态能力、API实战与企业落地指南
2026年,通义千问正式推出Qwen3.8‑Flash多模态大模型,作为Qwen3.8系列面向高效推理打造的旗舰版本,该模型采用稀疏混合专家MoE架构,把长上下文处理、多模态理解、工具调用能力融为一体,原生支持最高100万Token上下文窗口,能够完整读取超长业务文档、完整代码仓库、长时间会议视频,一次性完成信息解析、摘要、推理与生成任务。
820 4
|
3月前
|
机器学习/深度学习 缓存 人工智能
阿里云百炼 Kimi K3 模型详解:多模态能力、限流参数、调用价格一览
全球首个开源3万亿级大模型Kimi K3正式上线阿里云百炼平台。该模型由月之暗面研发,参数达2.8万亿,支持100万Token超长上下文与原生视觉理解,具备文本生成、多模态推理和深度思考能力,输入定价20元/百万Token(缓存命中仅2元)。在阿里云百炼官网:https://t.aliyun.com/U/fPVHqY 免费领取千万Tokens
|
2月前
|
C语言 数据安全/隐私保护
二级C语言题解:二维数组每行最大值与首元素交换、删除结构体的重复项、取出单词首字母
本教程专为C语言二级考生、中职学生及编程初学者设计,涵盖三大核心题型:二维数组每行最大值与首元素交换、结构体重复项删除(保留首个)、字符串单词首字母提取。含详细分析、易错点解析与标准代码,助你夯实基础、提升解题思维。
109 2
二级C语言题解:二维数组每行最大值与首元素交换、删除结构体的重复项、取出单词首字母
|
2月前
|
人工智能 数据挖掘 测试技术
每天都在“点点点”,功能测试的下一步到底在哪?
这是一篇面向功能测试工程师的深度职业指南:剖析“忙而无积累”的困境,指出焦虑根源并非工作量,而是缺乏可沉淀的技术能力与质量思维。文章以真实学员案例切入,倡导从高频重复场景(如登录支付链路)切入自动化,强调“先解决问题再选工具”,并提出用线上数据驱动测试、提升质量工程能力等进阶路径,助力测试人突破职业瓶颈。

热门文章

最新文章