资讯详情

Google Antigrgravity 支持 Agent Skills:用 SKILL.md 把 AI 编程工作流接进 TaoToken

📅 2026/10/2 23:12:31 | 华诺云谱 👁 阅读
Google Antigrgravity 支持 Agent Skills:用 SKILL.md 把 AI 编程工作流接进 TaoToken
1. 为什么要在 Antigravity 里用 SKILL.md 接 TaoTokenGoogle Antigravity 是 Google 随 Gemini 3 Pro 一起推出的 agent-first AI IDE它的核心思路是让 Agent 主动规划、主动调用工具而不是你一句我一句地聊天。它最近正式支持了 Agent Skills 机制也就是用一个SKILL.md文件把某类任务的标准流程固化下来Agent 在对话开始时会扫描所有可用技能匹配到就自动加载执行。SKILL.md 是什么你可以把它理解成给 AI 写的一份「最佳实践手册」。一个文件夹一个 markdown 文件开头是 YAML 元数据name、description正文是具体步骤指令。它不训练模型也不需要你懂算法只要能把经验写成可执行的 SOP 就行。适合谁适合所有在 AI IDE 里反复做同类任务的人——代码生成、重构、写测试、发票去重、日志分析只要这个流程你会重复第二遍就值得写成 skill。但这里有个现实问题Antigravity 默认走的是 Google 自家模型通道而很多团队同时在用 Claude、GPT、Gemini 多个模型Key 分散、额度分散、计费分散。我试过把每个平台的 Key 分别塞进不同配置文件结果换台机器就要重新配一遍。所以这篇的做法是用 SKILL.md 定义技能用 TaoToken 作为统一的 Key/API 通道接入模型调用让 Antigravity 里的 Agent Skill 走一条稳定的 OpenAI 兼容接口。TaoToken 在这里扮演的角色是统一入口一个 Base URL、一个 Key就能在 Antigravity、Claude Code、Cline 这些工具里调用不同模型。官网在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 入口是 https://taotoken.net/api 。下面我会从目录结构、技能注册配置、端到端验证一路写下来你照着复制就能跑通一个 Agent Skill。2. Antigravity Agent Skills 目录结构与 SKILL.md 规范Antigravity 支持两种层级的 Skills理解这两层是后面配置不踩坑的前提。项目级 Skills 放在项目根目录下的.agent/skills/里结构长这样my-project/ └── .agent/ └── skills/ └── my-skill/ └── SKILL.md这种技能跟着 git 走团队成员 clone 下来就自动获得适合和具体代码库绑定的流程比如「本项目的单测规范」「本项目的 API 错误码约定」。全局 Skills 放在用户目录下~/.gemini/antigravity/skills/skill-folder/配置一次本机所有项目都能用适合通用能力比如「提交信息规范」「JSON 严格输出」。SKILL.md 的结构分两部分。开头是 YAML frontmatter用三个短横线包起来--- name: code-refactor description: 当用户要求重构代码、拆分函数、消除重复逻辑时调用。输入是文件路径或代码片段输出是重构后的代码和变更说明。 ---name是技能标识description最关键——它决定 Agent 什么时候触发这个技能。写得太模糊Agent 匹配不上写得太宽泛什么任务都往里套。我的经验是把「什么时候用」和「输入输出是什么」都写进去。正文就是具体指令用 markdown 分步骤写。可以放参考文献、脚本、模板文件在同级目录Agent 执行时会读取。一个完整的重构技能正文大概是这样## 执行步骤 1. 读取目标文件识别函数长度超过 50 行的部分 2. 找出重复出现的代码块连续 5 行以上相似 3. 对每个超长函数按职责拆分为独立函数保持原有入参出参 4. 对重复代码块抽取为公共函数并替换调用点 5. 输出变更前后的 diff并说明每处改动的理由 ## 约束 - 不改变对外暴露的函数签名 - 不引入新的第三方依赖 - 拆分后的函数命名使用动词开头这里有个容易忽略的点SKILL.md 的正文不是给模型「参考」的是给模型「执行」的。所以步骤要写成命令式约束要写成硬性规则。Antigravity 在对话开始时会扫描所有技能匹配到就加载你也可以在对话里明确指定「用 code-refactor 帮我处理这个文件」。技能注册不需要额外配置文件Antigravity 靠目录扫描自动发现。你只要把文件夹放对位置SKILL.md 的 frontmatter 写规范重启对话就能被识别。这一点比很多需要手动注册的工具省事但也意味着目录名和 name 字段要一致否则排查起来很烦。3. 用 TaoToken 统一 Key 接入 Antigravity 模型调用技能定义好了接下来要解决模型调用通道。Antigravity 本身是 IDE它的 Agent 能力最终要落到某个模型上。如果你想让技能走 TaoToken 的统一通道需要在 Antigravity 的模型配置里指定 Base URL 和 Key。先拿 Key。打开 https://taotoken.net/api-keys 创建一个 API Key复制出来。注意这个 Key 只在创建时完整显示一次丢了就重新建。然后在 Antigravity 的模型设置里找到自定义 OpenAI 兼容端点的地方填入{ provider: openai-compatible, baseURL: https://taotoken.net/api, apiKey: sk-你的TaoToken密钥, model: claude-sonnet-4-5, temperature: 0.2 }如果你用的是 Claude Code 或 Cline 这类工具配置位置不同但字段一样。以 Cline 的 MCP 配置为例三件套是 Base URL、Key、Model ID缺一不可{ mcpServers: { taotoken: { command: npx, args: [-y, taotoken/mcp-server], env: { TAOTOKEN_BASE_URL: https://taotoken.net/api, TAOTOKEN_API_KEY: sk-你的TaoToken密钥, TAOTOKEN_MODEL: claude-sonnet-4-5 } } } }Codex 用户走的是auth.json路径通常在~/.codex/auth.json内容结构{ base_url: https://taotoken.net/api, api_key: sk-你的TaoToken密钥, model: gpt-5.2-codex }这里要强调 Model ID 的写法。TaoToken 的模型名要和平台文档里列出的保持一致写错了会直接报model not found。我踩过的坑是把claude-sonnet-4-5写成claude-4.5-sonnet结果请求发出去返回 404排查了半天才发现是模型名格式问题。配置完成后Antigravity 里的 Agent Skill 在调用模型时就会走 TaoToken 通道。这样做的好处是技能文件本身不绑定模型你换模型只改配置里的 Model IDSKILL.md 一行都不用动。团队里有人用 Claude、有人用 GPT共享同一套技能目录各自配自己的 Key 即可。如果你需要长期跑编码类 Agent 任务可以考虑 Coding Plan额度更划算入口在 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 里面有各工具的完整配置示例。4. 端到端验证跑通一个代码重构 Agent Skill前面都是铺垫这一节我们真正跑一个技能从建目录到看到结果。第一步建技能目录。在项目根目录执行mkdir -p .agent/skills/code-refactor touch .agent/skills/code-refactor/SKILL.md第二步写入 SKILL.md 内容--- name: code-refactor description: 当用户要求重构代码、拆分超长函数、消除重复逻辑时调用。输入是文件路径输出是重构后的代码和变更说明。 --- ## 执行步骤 1. 读取指定文件统计每个函数的行数 2. 标记行数超过 50 行的函数 3. 对每个超长函数按职责拆分为多个小函数 4. 保持对外函数签名不变 5. 输出重构后的完整文件和改动说明 ## 约束 - 不引入新依赖 - 不改变原有逻辑行为 - 拆分后函数命名用动词开头第三步准备一个待重构的测试文件demo.jsfunction processOrder(order) { // 校验 if (!order.id) throw new Error(no id); if (!order.items || order.items.length 0) throw new Error(empty); // 计算 let total 0; for (const item of order.items) { total item.price * item.qty; } // 折扣 if (total 1000) total total * 0.9; // 输出 return { id: order.id, total, itemCount: order.items.length }; }第四步在 Antigravity 对话里输入用 code-refactor 技能重构 demo.jsAgent 会扫描技能目录匹配到code-refactor加载 SKILL.md然后按步骤执行。走 TaoToken 通道的话请求会发到https://taotoken.net/api模型返回重构结果。预期输出大概是这样function validateOrder(order) { if (!order.id) throw new Error(no id); if (!order.items || order.items.length 0) throw new Error(empty); } function calculateTotal(items) { let total 0; for (const item of items) { total item.price * item.qty; } return total; } function applyDiscount(total) { return total 1000 ? total * 0.9 : total; } function processOrder(order) { validateOrder(order); const total applyDiscount(calculateTotal(order.items)); return { id: order.id, total, itemCount: order.items.length }; }看到这个结果说明技能被正确识别、模型调用成功、文件生成落盘。整个过程你只写了一个 SKILL.md没有改任何 IDE 源码也没有手动拼 prompt。如果你想验证模型通道是否真的走了 TaoToken可以在 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 看调用记录每次请求的模型、token 数、耗时都有。这一步能帮你确认配置生效而不是 IDE 偷偷走了默认通道。5. 常见报错排查401、local proxy failed、reading choices配置和验证过程中最容易卡在几个固定报错上。这一节按真实错误信息对照排查。401 Unauthorized。这个最常见九成是 Key 问题。检查三处Key 有没有复制完整前后不能有空格、Key 有没有过期或被删、请求头里的Authorization格式对不对。TaoToken 用的是Bearer sk-xxx格式如果你在配置文件里写成api_key: sk-xxx而工具期望Authorization: Bearer就会 401。另外注意别把 API Key 和 Console 登录密码搞混。local proxy failed / connection refused。这个报错通常出现在你本地起了代理层但代理没启动或端口不对。如果你在 Cline 或 Claude Code 里配了本地转发检查代理进程是否在跑端口是否和配置一致。还有一种情况是 Base URL 写成了https://taotoken.net/api/带尾斜杠某些工具拼接路径时会变成双斜杠导致连接异常去掉尾斜杠即可。Error reading choices / choices field missing。这个报错说明请求发出去了但返回结构不是预期的 OpenAI 格式。常见原因有两个一是 Model ID 写错平台返回了错误对象而不是 completion 对象二是 Base URL 指向了非兼容端点。确认baseURL是https://taotoken.net/apiModel ID 从文档里复制不要手打。OAuth 相关报错。如果你用的是 Claude Code 的 OAuth 登录流程但同时又配了自定义 Base URL两者会冲突。解决办法是走 API Key 模式不要走 OAuth。Claude Code 里把ANTHROPIC_BASE_URL指向 TaoTokenANTHROPIC_API_KEY填 TaoToken 的 Key就能绕开 OAuth。技能不触发。SKILL.md 写好了但 Agent 不调用先检查目录层级对不对项目级必须是workspace-root/.agent/skills/skill-folder/SKILL.md少一层都不行。再检查 frontmatter 的description是否写清楚了触发场景太模糊 Agent 匹配不上。最后确认对话里有没有明确指定技能名有时候 Agent 会优先走通用能力明确说「用 xxx 技能」能强制触发。排查顺序建议先确认 Key 和 Base URL解决 401 和连接问题再确认 Model ID解决 choices 报错最后确认技能目录和 description解决不触发。按这个顺序走基本能覆盖 90% 的配置问题。6. 把技能沉淀成团队资产从 SKILL.md 到统一通道跑通一个技能之后真正有价值的是把它变成可复用的资产。SKILL.md 最大的意义在于它把「正确路径」写死把「错误路径」封死。以前你临场纠正模型这次对了下次可能又错写成技能之后每次执行都走同一条路。我建议的沉淀方式是项目级技能跟着代码库走用 git 管理谁改了流程就提 PR 更新 SKILL.md全局技能放本机处理跨项目的通用任务。模型通道统一走 TaoToken这样技能文件不绑定具体模型团队里换模型只改配置技能目录不动。如果你要长期跑编码类 Agent 任务Coding Plan 的额度比按量付费更稳入口在 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。想先验证模型效果可以去模型对话页面直接试 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。完整的接入文档和配置示例在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API Key 在 https://taotoken.net/api-keys 创建。最后留一个实操建议先别急着写复杂技能从你每天重复最多的那个小任务开始写一个只有三步的 SKILL.md跑通再迭代。技能的价值不在写得多漂亮在于它能不能稳定地把一件事做对。
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑