夜雨聆风学习资料网

ARTICLE · 1086211

AI Skills 开发完全指南

AI Skills 开发完全指南

从触发机制到性能优化,从测试到安全,覆盖 Skill 开发的完整知识体系。以个人月度消费为例,CodeBuddy驱动,串起来skill开发流程。预计阅读时间:约 25 分钟


一、Skill 核心概念

1.1 什么是 Skill

Skill 是一个领域扩展包,为 AI 助手注入特定领域的专业知识、标准化工作流(SOP)和可执行工具。它不是单一脚本,而是一个有结构的软件包:

Skill = 元数据层(SKILL.md) + 引擎层(scripts/) + 资源层(assets/ + references/) + 版本管理

核心设计理念:让 AI 继承你的领域知识。当你编写一个 Skill,本质上是在做一个知识工程——把隐性的领域经验显式化为可被 AI 读取和执行的规范文档。

1.2 文件结构深度解析

skill-name/├── SKILL.md # 入口说明书——AI 每次触发 Skill 时最先读取├── README.md # 给人看的文档(快速开始、FAQ)├── .gitignore│├── scripts/ # 引擎层:可执行脚本│   ├── version.json #   版本元数据(SemVer + 远程更新 URL)│   ├── check_update.py #   自动更新检查模块│   └── *.py / *.sh #   核心业务脚本│├── assets/ # 资源层(机器消费)│   ├── templates/ #   Excel 模板、HTML 模板│   ├── fonts/ #   字体文件(避免宿主环境缺失)│   └── data/ #   静态数据(城市码表、节假日表等)│└── references/ # 知识层(人 + AI 共同消费)    ├── category_rules.md # 分类规则词典    ├── data_schema.md # 中间格式 JSON Schema    ├── platform_notes.md # 各数据源注意事项    └── known_issues.md # 已知问题清单

各目录角色:

目录
定位
AI 何时读取
内容的性质
SKILL.md
入口说明书
每次触发
元数据 + SOP + 领域规则
scripts/
引擎层
按 SOP 步骤执行
可执行代码
assets/
资源层
运行时引用
二进制/结构化文件
references/
知识层
按需读取或引述
规则文档、字典

区分 assets/ 与 references/:

  • assets/
     放的是「代码运行时需要的文件」——模板被 openpyxl 加载、字体被渲染引擎引用
  • references/
     放的是「AI 理解领域时查阅的文档」——分类规则让 AI 知道某笔交易归入哪类

1.3 Skill 的生命周期

安装         触发           执行              更新            退役  ───→  ──────────→  ───────────────→  ───────────→  ─────────→ zip/Git   description   AI→SOP→Scripts   version.json   移除目录 部署       文本匹配        逐步执行          SemVer 比较    清理配置

理解生命周期有助于设计每个阶段的关注点:

阶段
核心关注点
安装
路径规范、依赖声明、.gitignore
触发
description文本质量、触发词精准度
执行
SOP 可操作性、脚本健壮性、输出确定性
更新
版本号策略、向后兼容、静默检测
退役
清理残留、通知用户迁移方案

1.4 Skill 安装级别

Skill 支持四种安装级别,从底层到表层构成一个优先级覆盖链:

优先级(高→低):项目级 > 用户级 > 插件级 > 内置级
级别
存放位置
可见范围
典型场景
内置级
平台内置,不可修改
所有用户、所有项目
通用能力(如代码分析、多模态生成)
插件级
从 Skills 市场安装
启用后全局可用
PPTX 处理、PDF 合并、Excel 生成
用户级
~/.codebuddy/skills/
当前用户的所有项目
个人工作流(代码审查模板、Git 提交规范)
项目级
<project>/.codebuddy/skills/
仅当前项目
项目专属逻辑(spending-analysis、业务规则)

同名 Skill 覆盖规则:

高优先级级别的同名 Skill 会覆盖低优先级级别。例如:

项目级 spending-analysis v2.0  ← 实际生效(高优先级)用户级 spending-analysis v1.0  ← 被静默覆盖,不生效

这个机制的核心价值:在用户级放默认版本,在特定项目级放定制版本。

选择建议:

如果 Skill…
选择
是通用工具,所有人都会用
插件级
是个人习惯,跨项目复用
用户级
绑定特定项目 / 团队共享
项目级(随 git 分发)
公司级强制规范(安全审计、代码风格)
项目级 + git submodule

注意:内置级和插件级由平台管理,开发者自己编写的 Skill 通常落位在用户级或项目级。本文后续讨论以这两个级别为主。


二、Skill 触发机制

2.1 触发原理

Skill 的触发基于文本匹配:AI 在处理每个用户请求时,会将请求内容与所有已安装 Skill 的 description 字段进行语义匹配。匹配成功时,SKILL.md 的完整内容会注入到 AI 的上下文中。

用户输入 ”帮我分析上个月花了多少钱”        │        ▼遍历所有 Skill 的 description 字段 ── 语义匹配        │        ▼匹配到 spending-analysis:description 含”消费分析””月度消费””花了多少钱”等触发词        │        ▼加载 SKILL.md 完整内容到上下文        │        ▼AI 按照 SKILL.md 中定义的工作流(SOP)逐步执行

关键认知:description 字段是 Skill 的唯一入口。如果 description 写不好,Skill 可能永远不会被触发,或者在不该触发的时候被误触发。

2.2 description 写作技巧

description 需要同时回答三个问题:

  1. 这个 Skill 做什么(功能描述)
  2. 什么时候触发(触发条件)
  3. 用户可能怎么提问(自然语言触发词)

优秀示例(spending-analysis):

description: >  个人月度消费分析。从支付宝/微信/招商银行等多平台交易流水中解析、  标准化、去重、分类打标,生成 Excel + Markdown 消费分析报告。  触发词包括:”消费分析”、”月度消费”、”账单分析”、”交易流水”、  ”记账分析”、”消费报告”、”支出分析”、”看看花了多少钱”等。

拆解这个 description 的设计思路:

要素
内容
作用
领域定义
「个人月度消费分析」
告诉 AI 这是一个消费金融领域的 Skill
能力声明
「多平台交易流水中解析、标准化、去重…」
让 AI 知道这个 Skill 能做什么
输出物
「生成 Excel + Markdown 消费分析报告」
让 AI 知道执行结果是什么
触发词列表
「消费分析」「月度消费」「花了多少钱」等
覆盖用户的各种自然语言表达

description 写作口诀:

一句领域 + 一句能力 + 一句输出 + 一串触发词

常见写作错误:

错误
问题
改正
「一个很有用的工具」
太模糊,AI 无法判断何时触发
加具体领域和能力
「处理 CSV 文件」
太宽泛,会误触发
限定场景「支付宝账单 CSV」
只有功能描述,没有触发词
依赖 AI 语义推理,不够可靠
显式列出触发词
触发词太少(2-3 个)
覆盖不全
至少列 5-8 个,涵盖口语化表达

2.3 Skill 触发域控制

为什么要控制触发域:防止 Skill 被不该触发的请求误触发,也防止一个超大的 SKILL.md 在不需要的时候占用上下文窗口。这里的「触发域」指 Skill 对哪些用户输入作出响应,与 1.4 节讨论的「安装级别」(Skill 对哪些项目可见)是两个正交的概念。

触发域控制策略:

策略
说明
示例
明确边界
description 中声明适用范围
「仅处理支付宝/微信/招行账单」
排除声明
说明不处理什么
「不支持银行理财产品分析」
触发词精确化
用组合词而非单个通配词
用「月度消费」而非「消费」
前置判断
SOP 第一步检查前置条件
先确认 bills/{月份}/ 目录存在

触发域边界示意(以 spending-analysis 为例):

       ┌── 触发域 ────────────────┐       │  ”消费分析”、”月度消费”     │       │  ”账单分析”、”花了多少钱”   │       │  ”消费报告”、”支出分析”     │       │────────────────────────│       │  能力域                 │       │  支付宝 CSV / 微信 XLSX  │       │  招行 PDF → 标准化 → 报告 │       └────────────────────────┘                     ↓       ┌── 非触发域 ─────────────┐       │  ”投资收益分析”          │       │  ”股票持仓”             │       │  ”贷款计算”             │       │  ”汇率换算”             │       └────────────────────────┘

2.4 触发词设计进阶

触发词分层模型:

T1 精确触发词(高置信度)  → 用户明确要这个 Skill  → 例:”消费分析”、”账单分析”、”月度消费报告”T2 场景触发词(中置信度)  → 用户描述了典型使用场景  → 例:”花了多少钱”、”帮我记账”、”看月度支出”T3 模糊触发词(低置信度,需 AI 判断)  → 不显式列出,靠 AI 语义推理  → 例:”支付宝明细”、”微信账单整理”

实践建议:

  • T1 触发词必须显式写在 description 中
  • T2 触发词根据实际用户反馈持续补充
  • T3 不写入 description,而是通过 SKILL.md 中的「概述」部分让 AI 自行判断

三、SKILL.md 设计

3.1 元数据头规范

SKILL.md 以 YAML front matter 开头,这是 AI 读取的第一个信息块:

---name: skill-name# 唯一标识,建议用英文小写 + 连字符description: ># 多行文本用 > 或 |  功能 + 场景 + 触发词version: 1.0.0# SemVer,与 version.json 保持一致---

name 命名规范:

规范
正确
错误
小写字母 + 连字符
spending-analysisSpendingAnalysis
领域-动作 格式
asset-allocationasset
(太宽泛)
避免品牌名
pdf-mergeradobe-pdf
2-4 个词为佳
meal-calorie-trackera-comprehensive-meal-and-diet-calorie-tracking-system

3.2 工作流 SOP 设计

SOP(Standard Operating Procedure)是 SKILL.md 的核心内容,告诉 AI 应该按什么步骤执行。好的 SOP 设计遵循以下原则:

原则 1:步骤数量 3-5 步。太多 AI 容易遗漏,太少指令不够明确。spending-analysis 的 3 步设计是一个好的参照:

Step 1: 准备账单文件 → Step 2: 解析标准化 → Step 3: 生成报告

原则 2:每步配可执行命令。AI 需要具体的、可直接复制执行的命令,不是含糊的自然语言描述。

# ✅ 好的写法python scripts/parse_bills.py --dir bills/2607# ❌ 差的写法使用解析脚本处理账单文件

原则 3:明确输入输出。每步结束后输出什么、下一步需要什么输入,必须在 SOP 中显式声明。

Step 1 输出 → 用户确认账单文件 → Step 2 输入Step 2 输出 → _normalized.json → Step 3 输入Step 3 输出 → 消费报告 exceld + .md

原则 4:覆盖异常路径。SOP不只是「正常情况下怎么做」,还要覆盖「出了问题怎么做」:

异常情况
处理策略
账单目录为空
提示用户导出账单的具体路径(支付宝/微信/招行 APP 操作指南)
某平台账单缺失
只分析已有平台,报告中注明缺失平台
解析失败
输出错误文件路径 + 尝试的编码列表,指导修复
报告路径已存在
询问是否覆盖,或用时间戳区分

3.3 知识层设计

知识层是 SKILL.md 中分类规则、指标体系、已知限制等内容的统称。这些内容不直接可执行,但对 AI 做正确决策至关重要。

三层知识结构:

SKILL.md(内嵌核心规则)  ├── 分类体系(主分类 + 子分类 + 关键词映射)  ├── 去重策略(匹配规则 + 优先级 + 保留逻辑)  └── 指标定义(计算公式 + 合理范围 + 消减建议)references/(外部参考文档)  ├── category_rules.md  —— 完整分类词典(超出 SKILL.md 容纳量的部分)  ├── data_schema.md     —— 中间格式 JSON 的字段定义和类型约束  └── platform_notes.md  —— 各数据源的特殊注意事项

何时放入 SKILL.md vs references/:

内容特征
放在 SKILL.md
放在 references/
AI 每次执行都需要
✅
-
改变频率高
-
✅
内容量大(>50 行)
-
✅
仅特定场景需要
-
✅

四、脚本引擎设计

4.1 管道式架构

核心设计模式:单向数据流管道。每个阶段只做一件事,通过标准化中间格式解耦。

原始文件(CSV/XLSX/PDF)     │     ▼ Stage 1: parse_bills.py标准化 JSON(_normalized.json)     │     ▼ Stage 2: classify_report.py     ├── 去重(三级匹配)     ├── 分类(规则链)     ├── 指标计算     └── 报告生成(Excel + Markdown)

为什么用管道而非单体脚本:

对比维度
单体脚本
管道式
调试
全流程重跑
只重跑出错阶段
修改分类规则
必须重解析
直接拿 normalized.json 重分类
复用
难以复用
parse 输出可给其他工具用
测试
难以隔离
每阶段独立测试

中间格式设计要点:

{  ”date”: ”2026-08-01”,       // ← 统一日期格式 YYYY-MM-DD  ”amount”: -35.80,            // ← 正负号统一(支出为负)  ”merchant”: ”瑞幸咖啡”,       // ← 商户名标准化(去公司后缀)  ”platform”: ”支付宝”,         // ← 来源平台标记  ”payment_method”: ”花呗”,     // ← 支付方式  ”original_category”: ””,      // ← 保留原始分类(用于校验)  ”remark”: ””                  // ← 保留原始备注(用于子分类)}

4.2 错误处理与容错

容错三原则:

  1. 不要 crash:任何单条数据出错都不应阻塞整个流程
  2. 记录问题:出错时输出足够多的诊断信息
  3. 可恢复:用户不需要从头开始

编码自动检测(实际案例):

ENCODINGS = [”utf-8-sig”, ”utf-8”, ”gbk”, ”gb2312”, ”gb18030”]for enc in ENCODINGS:    try:        with open(filepath, ”r”, encoding=enc) as f:            content = f.read()        return content    except UnicodeDecodeError:        continue# 所有编码都失败 → 输出诊断信息print(f”⚠️ 无法解码 {filepath},尝试了: {ENCODINGS}”)return None# 返回 None 而非 crash

容错设计清单:

场景
策略
PDF 解析不完整
输出「需人工识别」标记,不丢弃整条记录
金额格式异常
记录 Warning,跳过该行(不中断)
文件不存在
跳过该平台,在报告中注明缺失
网络请求超时
5 秒超时 → 静默跳过(自动更新场景)
编码检测失败
输出尝试过的编码列表,指导用户转码

4.3 配置管理

多层配置优先级(高 → 低):

命令行参数  >  环境变量  >  version.json  >  代码默认值--no-update    SKILL_NO_      update_url    硬编码 fallback               UPDATE_CHECK

version.json 设计规范:

{  ”skill”: ”spending-analysis”,          // 与 SKILL.md name 一致  ”version”: ”1.2.3”,                    // SemVer  ”release_date”: ”2026-08-02”,          // ISO 日期  ”update_url”: ”https://...version.json”, // 远程版本文件 raw URL  ”changelog”: {    ”1.2.0”: ”新增信用卡关联去重”,    ”1.1.0”: ”新增消费指标与消减分析”,    ”1.0.0”: ”初始版本”  },  ”min_python”: ”3.9”,                   // 可选:最低运行时版本  ”dependencies”: [”openpyxl”, ”pdfplumber”]  // 可选:依赖声明}

五、Skill 成本分析与性能优化

5.1 Token 成本分析

每次触发 Skill,SKILL.md 的完整文本会被注入 AI 上下文,这直接消耗 token。理解成本模型是设计高效 Skill 的前提。

成本构成模型:

单次 Skill 触发成本 = SKILL.md token 数 + 脚本输出 token 数 + 中间对话 token 数
成本项
影响因素
优化方向
SKILL.md 大小
文档长度、代码块量
精简描述、移到 references/
脚本输出
stdout 长度、错误信息
输出摘要而非全量
中间对话
AI 追问、确认步骤
SOP 设计得更清晰,减少交互轮次

实际测量(以 spending-analysis 为例):

文件/模块
字符数
估算 Token
占比
SKILL.md
~4,200
~2,100
100%
parse_bills.py 输出(典型)
~15,000
~7,500
需读入上下文
classify_report.py 输出
~3,000
~1,500
需读入上下文

优化策略:

  • SKILL.md 瘦身:将长篇幅的分类词典移到 references/category_rules.md,SKILL.md 中只保留摘要表格
  • 脚本输出控制:输出 summary 而非 full dump,提供 --verbose 开关用于调试
  • 关键信息前置:把最重要的指令放在 SKILL.md 前面,因为 LLM 对文档首尾的注意力更高

5.2 性能优化策略

CPU/IO 密集型优化的常见手段:

策略
适用场景
实现方式
中间结果缓存
解析阶段耗时
检测源文件 mtime,未变则跳过重解析
增量处理
追加数据场景
只处理新文件,合并到已有 normalized.json
延迟加载
报告生成耗时
先产出摘要,详情按需生成
并发执行
多平台解析互不依赖
并行读取三个平台,最后 merge

实际案例:_normalized.json 作为缓存:

首次执行:  CSV → parse → 300 条 ├─→ _normalized.json(写入磁盘)  XLSX → parse → 200 条 ┤  PDF → parse → 50 条  ┘  → classify_report 读取 _normalized.json修改分类规则后重跑:  跳过 parse 阶段(源文件未变)  → classify_report 直接读取已有的 _normalized.json  → 节省约 60% 总耗时

5.3 宿主资源消耗

需要注意的资源上限:

资源
典型限制
注意事项
磁盘 IO
无硬限制
避免在循环中反复读写大文件
内存
~512MB(视环境)
大 Excel 用 openpyxl read_only 模式
网络
超时 5-10s
自动更新检查必须设短超时
执行时间
默认无硬限制
长时间任务提供进度反馈
模型下载
OCR 模型 ~100MB
首次运行提示用户

六、Skill 测试

6.1 测试策略

Skill 的测试分三层:

L1 单元测试:独立函数测试  → parse_amount(”¥35.80”) == 35.80  → 编码检测返回正确字符串L2 集成测试:管道阶段测试  → 输入 fixtures/sample_alipay.csv → 输出标准化 JSON  → 输入 fixtures/_normalized.json → 输出 Excel 报告L3 端到端测试:完整流程  → 目录中有 3 个平台文件 → 跑全流程 → 验证报告生成

推荐的测试结构:

skill-name/├── tests/│   ├── fixtures/ # 测试数据│   │   ├── alipay_sample.csv│   │   ├── wechat_sample.xlsx│   │   ├── cmb_sample.pdf│   │   └── expected_output.json│   ├── test_parse.py # L1 + L2│   ├── test_classify.py # L1 + L2│   └── test_e2e.py # L3

6.2 测试数据管理

fixtures 设计原则:

原则
说明
匿名化
替换真实姓名、卡号为占位符(如「张**」「6222****」)
边界覆盖
空文件、超大金额、特殊字符商户名、跨月记录
最小化
每个 fixture 只覆盖它需要测的场景,不要一个文件测所有
可版本化
fixtures 随 git 提交,不依赖外部数据源

spending-analysis 测试用例示例:

# tests/test_parse.pydef test_parse_amount():    assert parse_amount(”¥35.80”) == 35.80    assert parse_amount(”1,234.56”) == 1234.56    assert parse_amount(””) == 0.0    assert parse_amount(”-99.00”) == -99.00def test_parse_alipay_csv():    result = parse_alipay(”fixtures/alipay_sample.csv”)    assert len(result) == 15    assert result[0][”platform”] == ”支付宝”    assert result[0][”date”].startswith(”2026-”)def test_encoding_detection():# GBK 编码文件能被正确识别    content = detect_encoding(”fixtures/alipay_gbk.csv”)    assert ”交易记录” in content

6.3 自动化测试集成

CI 友好的测试配置:

# 通过环境变量禁用需要网络/交互的功能SKILL_NO_UPDATE_CHECK=1 # 跳过自动更新检查SKILL_TEST_MODE=1 # 跳过耗时操作
# CI 中跑测试SKILL_NO_UPDATE_CHECK=1 pytest tests/ -v

七、版本管理

7.1 SemVer 策略

MAJOR.MINOR.PATCHMAJOR → 不向后兼容的变更(分类体系重构、JSON 格式变化)MINOR → 向后兼容的新功能(新增指标、新增平台支持)PATCH → 向后兼容的 Bug 修复(金额解析修正、编码问题)

实际版本演进示例:

1.0.0  初始版本:三平台解析 + 分类 + 报告1.1.0  新增:消费指标分析 + 可消减建议(向后兼容)1.2.0  新增:信用卡关联去重(向后兼容)1.2.1  修复:招行 PDF 金额符号解析错误2.0.0  重构:分类体系从 10 类变成新的分类标准(Breaking Change)

7.2 自动更新机制

更新检查流程:

用户执行脚本    │    ├── 检查环境变量 SKILL_NO_UPDATE_CHECK    │   └──=1 → 跳过更新检查    │    └── 读取 version.json        ├── 获取本地版本号 (1.0.0)        └── HTTP GET → 远程 version.json (超时 5s)            ├── 网络不通 → 静默跳过(不阻塞用户操作)            ├── 版本相同 → 静默跳过            └── 远程更新 (1.1.0) → 打印更新提示:                🔔 spending-analysis 有新版本可用!                   当前版本: v1.0.0 → 最新版本: v1.1.0                   更新方式: git pull

设计要点:

  • 绝对静默:网络失败、超时不应打扰用户
  • 非阻塞:更新检查不能拖慢核心功能
  • 可关闭:提供环境变量 SKILL_NO_UPDATE_CHECK=1
  • 版本比较可靠:MAJOR → MINOR → PATCH 逐级比较,而非字符串比较

7.3 Changelog 管理

两种 Changelog:

类型
存放位置
读者
写法
SKILL.md Changelog
SKILL.md 底部或 references/changelog.md
用户
简洁、只说新增能力和改进
version.json Changelog
version.json 的 changelog 字段
脚本(自动更新展示)
结构化、每条一行

Changelog 规范:

## v1.2.0 (2026-08-15)### 新增- 信用卡还款自动关联:检测招行信用卡还款记录,关联到当月消费- 新增「周末vs工作日」消费节奏对比### 改进- 微信 XLSX 表头行检测更鲁棒,兼容更多导出格式- PDF 解析从 pdfplumber 迁移到 PyMuPDF,速度提升 3x### 修复- 金额为 0 的记录不再被错误分类为「支出」

八、安全与权限控制

8.1 文件系统安全

常见风险和防御:

风险
防御措施
路径遍历(../../etc/passwd)
限制工作目录为 bills/{月份}/,拒绝 ..
覆盖系统文件
输出目录固定为 report/{月份}/,不写入项目外
读取敏感配置
.gitignore 排除 ~/.ssh/、.env 等
大量文件 IO
限制单次处理文件数、总大小上限

工作目录边界控制:

# ✅ 安全:限定在项目子目录bills_dir = Path(”bills”) / monthreport_dir = Path(”report”) / month# ❌ 不安全:接受任意绝对路径bills_dir = Path(user_input)# 可能指向 /etc/

8.2 网络与外部依赖安全

HTTP 请求安全清单:

检查项
实现
超时控制
timeout=5
(防止无限挂起)
URL 验证
只允许 HTTPS、白名单域名
重定向控制
不跟随重定向到非白名单域名
证书验证
默认开启 SSL 验证
用户代理
设置明确的 User-Agent
# ✅ 安全的 HTTP 请求req = Request(update_url, headers={”User-Agent”: ”skill-updater/1.0”})with urlopen(req, timeout=5) as resp:    data = json.loads(resp.read())

8.3 敏感数据处理

# ❌ 不要硬编码 API Key 或 TokenAPI_KEY = ”sk-1234567890abcdef”# ✅ 从环境变量读取import osAPI_KEY = os.environ.get(”SKILL_API_KEY”)# ✅ 输出前脱敏print(f”使用 API Key: {API_KEY[:4]}****”)

敏感数据保护原则:

原则
说明
不落地
中间 JSON 不写入真实姓名、完整卡号
可配置
敏感值通过环境变量传入,不写入代码
日志脱敏
打印信息时脱敏处理
测试隔离
测试 fixtures 使用匿名化数据

8.4 SSH 与 Git 安全

密钥管理最佳实践:

# 为 Skill 创建专用密钥(不要复用个人 GitHub 密钥)ssh-keygen -t ed25519 -C ”skill-sync” -f ~/.ssh/id_ed25519_skill# 配置专用 HostHost skill-repo    HostName gitee.com    User git    IdentityFile ~/.ssh/id_ed25519_skill    IdentitiesOnly yes

安全清单:

  • 使用 ed25519 而非 RSA(更短更安全)
  • 一个 Skill 一个密钥(最小权限原则)
  • 仓库设为私有(如不需要公开)
  • .gitignore
     排除密钥文件

九、分发与生态

9.1 分发方式对比

方式
适用场景
优点
缺点
Git 私有仓库
个人使用、小团队
版本控制、自动更新
需配置 SSH
Zip 打包
单次分享、跨设备迁移
不需要 Git
无自动更新
公开市场
社区贡献
被搜索和安装
需要审核
项目内嵌
团队协作
随项目拉取
更新需手动同步

9.2 Zip 打包规范

# 打包(排除不必要的文件)cd skill-name/zip -r ../skill-name-v1.0.0.zip . \  -x ”.git/*” ”__pycache__/*” ”*.pyc” ”.DS_Store” \  ”tests/*” ”bills/*” ”report/*”# 验证unzip -l ../skill-name-v1.0.0.zip

9.3 README.md 写作建议

README 面向人类用户,回答:

  1. 一句话简介——这是什么?
  2. 快速开始——我最快怎么用上?
  3. 常见问题——可能会遇到什么问题?
  4. 依赖安装——需要什么环境?

十、参考链接

官方资源

资源
链接
Anthropic Skills 官方仓库
https://github.com/anthropics/skills
Anthropic Skills 文档
https://docs.anthropic.com/en/docs/agents-and-tools/agent-skills
Claude Code 文档
https://docs.anthropic.com/en/docs/claude-code

社区与生态

资源
链接
MCP (Model Context Protocol)
https://modelcontextprotocol.io
Awesome Claude Skills 合集
https://github.com/topics/claude-skills

相关技术栈

技术
用途
链接
openpyxl
Excel 读写
https://openpyxl.readthedocs.io
PyMuPDF
PDF 文本提取
https://pymupdf.readthedocs.io
SemVer
语义化版本规范
https://semver.org
python-dotenv
环境变量管理
https://github.com/theskumar/python-dotenv

相关学习资料