2026年Claude Code Skills API 详解

Claude Code Skills API 详解Claude Code Skills 中的 API 详解 2026 最新官方机制 Claude Code Anthropic 的代码专用界面 桌面工具 中的 nbsp Skills 技能 nbsp 是目前最强大的扩展系统 它把工作流 规范 API 调用逻辑打包成可复用的 技能包 支持自动触发 手动调用 子代理隔离执行 你问的 nbsp API amp

大家好,我是讯享网,很高兴认识大家。



Claude Code Skills 中的 API 详解(2026 最新官方机制)

Claude Code(Anthropic 的代码专用界面/桌面工具)中的 Skills(技能) 是目前最强大的扩展系统。它把工作流、规范、API 调用逻辑打包成可复用的「技能包」,支持自动触发、手动调用、子代理隔离执行。

你问的 「API」 其实指两部分(Claude Code 生态完整覆盖):

  1. SKILL.md 配置 API
    (YAML Frontmatter)—— Claude Code 本地每天都在用的「定义接口」
  2. Claude Platform API
    (/v1/skills + Messages API)—— 企业/程序化调用时用的 HTTP API

下面给你最完整、最实操的详解(基于官方 code.claude.com/docs/zh-CN/skills + platform.claude.com 最新文档)。

每个 Skill 就是一个文件夹,核心文件必须叫 SKILL.md

Markdown


# ← 这里就是「配置 API」的所有参数
name: call-external-api
description: 当用户要求调用第三方 API(OpenAI、Stripe、企业内部系统等)时自动触发
allowed-tools: [Bash, Read, Grep]
context: fork


详细指令正文(Claude 必须严格遵守)…

讯享网

YAML 参数完整表格(2026 最新版)

参数
类型
默认值
必填/推荐
详细说明与使用场景
name
string
-
必填
变成 /skill-name 命令。必须 kebab-case(小写+连字符),最长 64 字符,不能含 anthropic/claude
description
string
-
强烈推荐
决定自动加载的关键!Claude 启动时只读这行,用于「渐进式披露」。写得越精确越好
argument-hint
string
-
推荐
slash 命令的参数提示,如 [endpoint] [method] [payload]
disable-model-invocation
boolean
false
推荐
true = 禁止 Claude 自动调用,只能用户手动 /name(用于危险操作如部署)
user-invocable
boolean
true
推荐
false = 不在 / 菜单显示,仅供 Claude 内部调用(做背景知识库)
allowed-tools
array
-
推荐
授权工具列表:Read、Grep、Bash(gh:*)、Glob 等。限制权限更安全
context
string
-
推荐
fork = 在隔离的子代理中运行(强烈推荐复杂任务,避免污染主会话)
agent
string
general-purpose
推荐
context: fork 时用:Explore、Plan、Code 等子代理类型
model
string
-
可选
强制使用特定模型(如 claude-sonnet-4-5)
hooks / metadata
object
-
高级
生命周期钩子、许可证等

参数传递机制(超级实用):

  • \(ARGUMENTS → 全部参数</span></section></li><li><section><span leaf="">\)1、\(2、\)ARGUMENTS[0] → 指定参数
  • \({CLAUDE_SESSION_ID} → 当前会话 ID</span></section></li></ul><p dir="auto" style="white-space: pre-wrap;"><strong><span leaf="">动态注入神器</span></strong><span leaf="">(Claude Code 独有): 在正文里写 !command``,Claude 加载 skill 前会先执行 shell 命令并把结果注入:</span></p><p><span leaf="">Markdown</span></p><pre tabindex="0" style="background-color: rgb(255, 255, 255);color: rgb(0, 35, 57);"><code><span style="color: rgb(17, 0, 0);"><span leaf="">当前 PR 的改动: !</span></span><span style="color: rgb(4, 96, 177);font-style: italic;"><span leaf="">`gh pr diff --name-only`</span></span><span leaf=""><br /></span><span style="color: rgb(17, 0, 0);"><span leaf="">API 密钥状态: !</span></span><span style="color: rgb(4, 96, 177);font-style: italic;"><span leaf="">`cat ~/.config/api-keys.json | jq '.openai'`</span></span></code></pre><p dir="auto" style="white-space: pre-wrap;"><strong><span leaf="">推荐目录结构</span></strong><span leaf="">(让 Skill 真正成为「API 调用专家」):</span></p><p><span leaf="">text</span></p><pre tabindex="0" style="background-color: rgb(255, 255, 255);color: rgb(0, 35, 57);"><code><span leaf="">call-external-api/</span><span leaf=""><br /></span><span leaf="">├── SKILL.md</span><span leaf=""><br /></span><span leaf="">├── scripts/</span><span leaf=""><br /></span><span leaf="">│ &nbsp; ├── call_api.py &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# 核心调用逻辑</span><span leaf=""><br /></span><span leaf="">│ &nbsp; ├── auth_manager.py &nbsp; &nbsp; &nbsp;# 统一密钥管理</span><span leaf=""><br /></span><span leaf="">│ &nbsp; └── utils.py</span><span leaf=""><br /></span><span leaf="">├── config/ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# .gitignore(放密钥模板)</span><span leaf=""><br /></span><span leaf="">└── examples/ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# 示例 payload</span></code></pre><p dir="auto" style="white-space: pre-wrap;"><strong><span leaf="">SKILL.md 示例</span></strong><span leaf="">(调用任意第三方 API):</span></p><p><span leaf="">Markdown</span></p><pre tabindex="0" style="background-color: rgb(255, 255, 255);color: rgb(0, 35, 57);"><code><span style="color: rgb(0, 35, 57);"><span leaf="">---</span></span><span leaf=""><br /></span><span style="color: rgb(4, 68, 172);"><span leaf="">name</span></span><span style="color: rgb(0, 35, 57);"><span leaf="">:&nbsp;</span></span><span style="color: rgb(164, 65, 133);"><span leaf="">call-third-party-api</span></span><span leaf=""><br /></span><span style="color: rgb(4, 68, 172);"><span leaf="">description</span></span><span style="color: rgb(0, 35, 57);"><span leaf="">:&nbsp;</span></span><span style="color: rgb(164, 65, 133);"><span leaf="">用户要求调用外部 API 时使用此技能(支持 OpenAI、Stripe、内部系统、SiliconFlow 等)</span></span><span leaf=""><br /></span><span style="color: rgb(4, 68, 172);"><span leaf="">allowed-tools</span></span><span style="color: rgb(0, 35, 57);"><span leaf="">: [</span></span><span style="color: rgb(164, 65, 133);"><span leaf="">Bash</span></span><span style="color: rgb(0, 35, 57);"><span leaf="">]</span></span><span leaf=""><br /></span><span style="color: rgb(4, 68, 172);"><span leaf="">context</span></span><span style="color: rgb(0, 35, 57);"><span leaf="">:&nbsp;</span></span><span style="color: rgb(164, 65, 133);"><span leaf="">fork</span></span><span leaf=""><br /></span><span style="color: rgb(0, 35, 57);"><span leaf="">---</span></span><span leaf=""><br /></span><span leaf=""><br /></span><span style="color: rgb(78, 118, 181);font-weight: bold;"><span leaf="">严格执行流程</span></span><span style="color: rgb(17, 0, 0);"><span leaf="">:</span></span><span leaf=""><br /></span><span style="color: rgb(32, 123, 184);"><span leaf="">1.&nbsp;</span></span><span style="color: rgb(17, 0, 0);"><span leaf="">解析用户意图 → 确定 service、endpoint、method、payload</span></span><span leaf=""><br /></span><span style="color: rgb(32, 123, 184);"><span leaf="">2.&nbsp;</span></span><span style="color: rgb(17, 0, 0);"><span leaf="">执行以下命令调用脚本:</span></span><span leaf=""><br /></span><span style="color: rgb(17, 0, 0);"><span leaf="">&nbsp; &nbsp;!</span></span><span style="color: rgb(4, 96, 177);font-style: italic;"><span leaf="">`cd \)SKILL_DIR && python scripts/call_api.py –service “\(1" --endpoint "\)2” –payload “\(3" --headers "\)4”`
    3.&nbsp; 把返回结果用 Markdown 表格 + 关键字段高亮展示
    4.&nbsp; 如果报错,自动尝试重试 2 次并给出解决方案
    • 多服务路由
    • 密钥从环境变量 / /.config/api-keys.json 读取
    • 自动重试、日志、错误美化

    如果你要在代码里调用 Claude(而非 Claude Code 界面),就需要下面这两个接口。

    A. Messages API 中使用 Skills(最常用)

    必须加 beta header:

    http

    讯享网anthropic-beta:&nbsp;skills-2025-10-02,code-execution-2025-08-25

    container.skills&nbsp;结构:

    JSON

    “container”: {
    &nbsp; “skills”: [
    &nbsp; &nbsp; {&nbsp;“type”:&nbsp;“anthropic”,&nbsp;“skill_id”:&nbsp;“xlsx”,&nbsp;“version”:&nbsp;“latest”&nbsp;},
    &nbsp; &nbsp; {&nbsp;“type”:&nbsp;“custom”,&nbsp;“skill_id”:&nbsp;“skill_01abc123”,&nbsp;“version”:&nbsp;“v1.2”&nbsp;}
    &nbsp; ]
    }

    B. Skills Management API(/v1/skills)

    • GET /v1/skills → 列出所有技能
    • POST /v1/skills → 上传整个文件夹(multipart/form-data)
    • 支持版本管理、CRUD

    curl 上传示例

    Bash

    讯享网curl&nbsp;-X&nbsp;POST&nbsp;https://api.anthropic.com/v1/skills&nbsp;</span>
    &nbsp; -H&nbsp;“x-api-key:&nbsp;$ANTHROPIC_API_KEY&nbsp;</span>
    &nbsp; -H&nbsp;“anthropic-beta: skills-2025-10-02”&nbsp;</span>
    &nbsp; -F&nbsp;“files[]=@my-skill/SKILL.md;filename=my-skill/SKILL.md”&nbsp;</span>
    &nbsp; -F&nbsp;“files[]=@my-skill/scripts/call_api.py”
    • pptx → 生成 PowerPoint
    • xlsx → Excel 处理/生成
    • docx → Word 文档
    • pdf → PDF 解析与生成
    1. 先建全局技能:/.claude/skills/
    2. 从简单 skill 开始(只改 description 和 name)
    3. 复杂任务一定加 context: fork
    4. 生产环境:固定版本 + disable-model-invocation: true

    scripts/call_api.py(让 Claude 一键帮你生成)里统一处理:


小讯
上一篇 2026-03-09 09:58
下一篇 2026-03-09 10:00

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/208990.html