Skip to content

hophacker/skill-writing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

skill-writing — 把"分析方法"变成"可复用 Skill"

一个开源、可上手的 Skill 写作教程。
课堂主题:在城市治理热线场景里,用 Agent + Skill 把"描述-诊断-预测-规范"四层分析落到可复核的产物。

License: MIT Skill format: Claude Skills Status: 教学示例可跑通

在线预览(不用 clone,直接打开看):


这个项目能教会你什么

读完并动手一遍,你会:

  1. 理解什么是 Skill:为什么 Skill 比 Prompt / 一次性指令更值得投入;它和"长 System Prompt"、"自定义 Agent"的边界在哪。
  2. 学会写一份合格的 Skill:固定流程、强制输出模板、风险分级、Human-in-the-loop 节点、测试清单——一项不少。
  3. 跑一次真实数据:用提供的 5 张治理数据表,让你写的 Skill 在 Claude Code / Claude.ai / QClaw 等环境里跑出可复核的诊断报告。
  4. 看到一个完整的示范交付submissions/jie-feng/ 里有可直接对照的 Skill + HTML + 实跑答案(含图表)。

读完不再"觉得 Skill 是个时髦词"——你会把它当成一类可工程化的产物:有约束、有红线、有自检、可复核


5 分钟上手

# 1. clone 本项目
git clone https://github.com/hophacker/skill-writing.git
cd skill-writing

# 2. 安装示范 Skill 到你的 Claude Code(全局)
mkdir -p ~/.claude/skills/multi-source-diagnosis
cp skills/multi-source-diagnosis/SKILL.md ~/.claude/skills/multi-source-diagnosis/

# 3. 进入数据目录,用 Claude Code 跑一次
cd data
claude "use the multi-source-diagnosis skill,请基于 2025-09 的数据做一次描述-诊断"

如果想要看"跑出来应该长什么样",不用 clone 也能看

GitHub 上直接点 .html 文件只会显示源码、不会渲染——所以图表用上面这两个 lingti 静态托管链接看效果。


仓库结构

skill-writing/
├── README.md                    ← 你正在看
├── LICENSE                      ← MIT
├── CONTRIBUTING.md              ← 提交你自己的 Skill
│
├── decks/                       ← 原始教学幻灯片(NotebookLM 生成)
│   ├── 编写Skill的方法与技巧.pptx       Day1:如何写 Skill
│   └── 数据治理与大数据分析.pptx        Day2:四层分析与作业要求
│
├── data/                        ← 案例数据集(5 张表 + 数据字典)
│   ├── README.md
│   ├── 01_热线工单表.csv
│   ├── 02_网格巡查与现场核验表.csv
│   ├── 03_资源排班与部门容量表.csv
│   ├── 04_天气节假日与活动表.csv
│   └── 05_处置规则与政策口径.md
│
├── docs/                        ← 文字版教学材料(PPT 的可读化提炼)
│   ├── methodology.md           ← 如何写 Skill 的方法论(Day1)
│   ├── case-study.md            ← 城市治理作业说明(Day2)
│   ├── skill-template.md        ← 空白 Skill 模板,复制即用
│   └── rubric.md                ← 自评打分细则
│
├── skills/                      ← 可直接安装的参考 Skill
│   └── multi-source-diagnosis/
│       └── SKILL.md
│
└── submissions/                 ← 学员作品(欢迎 PR 你的 Skill)
    ├── README.md
    └── jie-feng/                ← 第一份示范提交
        ├── SKILL.md             ← 多源描述-诊断 Skill 原文
        ├── SKILL.html           ← 同上,HTML 渲染版
        ├── run-report.md        ← 在 2025-09 数据上的实跑答案
        └── run-report.html      ← 实跑答案 HTML 版(含 5 张图表)

推荐学习路径

按下面这个顺序,总共 2–3 小时

阶段 投入时间 看什么 你应该学到
① 看原始幻灯片 30 min decks/编写Skill的方法与技巧.pptx(Day1) 概念框架:Skill 是什么、放哪、怎么跑
② 读文字版方法论 30 min docs/methodology.md 提炼成可查阅的清单:6 个红线、5 步流程、3 个强制输出
③ 看一个完整范例 20 min submissions/jie-feng/SKILL.md + 实跑答案在线版 看真东西怎么写出来、跑出来(图表只在在线版可见)
④ 抄模板写一份 60 min docs/skill-template.md + data/ 自己写一份 Skill,让它在 5 张数据表上跑出结果
⑤ 自评 + 提 PR 30 min docs/rubric.md + CONTRIBUTING.md 6 项验收清单全 ✓,提交进 submissions/<你的名字>/

Skill 是什么(30 秒电梯版)

Skill = 一个写在 SKILL.md 里的、被 Agent 在合适场景自动调起的"可复用任务文件"。

不是

  • 一次性写完就丢的 Prompt
  • 长得像小说的 System Prompt
  • 一个对话历史

  • 有 frontmatter(name + description),让 Agent 知道何时调用它;
  • 有固定流程、强制输出格式、红线约束;
  • 长得像一份任务 SOP 文档——一个新人按它跑也能跑出同样质量的结果;
  • 可以被反复调用、版本化、加测试。

如果你做过:DAG / Makefile / Linter 规则 / API 接口定义——Skill 给你的感觉应该类似:把方法外化成可被机器执行的契约


这个项目里的"参考 Skill" 到底在做什么

skills/multi-source-diagnosis/SKILL.md 是一份完整示范,专门用于 多源描述-诊断分析

  • 输入:5 张数据表(工单 / 网格 / 排班 / 天气活动 / 处置规则)。
  • 强制走 5 步:字段理解 → 描述画像 → 异常提取 → 多假设诊断 → 复核清单。每步走完必须显式打 [done]
  • 强制三件套输出:「事实卡片」+「竞争性假设」+「复核清单」,散文形式直接判不合格。
  • 6 条红线
    • 不读 07_*.csv(教师参考答案,本仓库未提供,但 Skill 主动隔离)
    • 不把 05_处置规则 当终审判决
    • 不输出 P0/P1/P2 等级
    • 单一假设直接判罪 = 不合格
    • 不能打乱 5 步顺序
    • 不替部门拍板
  • 自检 6 项:数据源 / 时序 / 结构 / 多假设 / 红线 / 复核点——任一未过回到对应步骤重写。

实跑产物(在线版含图表 · 仓库内源码)是 Skill 在 2025-09 数据上的实跑产物,包括:

  • 4 张事实卡片(城管局超时、街道办超时+低满意度、东文昌-01 重复投诉聚集、capacity_pressure_level 全"低"口径异常);
  • 8 个竞争假设,每个带证据 + 反证 + 置信度 + 必须人工拍板的具体问题;
  • 12 项复核清单,明确归口部门 + 1 周回话期;
  • 5 张 Chart.js 图表(部门超时率对比 / 类目超时 vs 重复率 / 同类目跨部门处置时长 / 网格重复率 Top10 / 容量压力分布饼图)。

怎么把它装到你的环境里

Claude Code(CLI)

# 全局安装
mkdir -p ~/.claude/skills/multi-source-diagnosis
cp skills/multi-source-diagnosis/SKILL.md ~/.claude/skills/multi-source-diagnosis/

# 或只在本项目安装
mkdir -p .claude/skills/multi-source-diagnosis
cp skills/multi-source-diagnosis/SKILL.md .claude/skills/multi-source-diagnosis/

Claude Code 启动后看到匹配的描述即自动触发;显式调用:

use multi-source-diagnosis skill,请基于 2025-09 数据描述并诊断东城区文昌街道的异常

Claude.ai(Web Projects)

  1. 创建一个 Project
  2. skills/multi-source-diagnosis/SKILL.md 上传到 Project Knowledge
  3. data/ 5 张表也上传
  4. 对话里说:"按 multi-source-diagnosis Skill 处理 ..."

QClaw / 课堂智能体环境

SKILL.mddata/ 放进工作区目录,prompt 里点名 Skill 名即可。

没有 Skill 加载机制的环境

把整个 SKILL.md 内容粘贴作为 System Prompt,然后用户消息附数据。这是最原始的 fallback。


我想自己写一份 Skill,从哪开始?

按这个顺序操作:

  1. 复制模板cp docs/skill-template.md submissions/<你的英文名>/SKILL.md
  2. 想清楚你的 Skill 解决什么问题——一句话能说清的那种。建议从作业三选一:
    • 多源描述-诊断 Skill(已有参考实现,建议你写一个不同视角的版本)
    • 预测-规范 Skill(基于现状预测并比选处置方案,更难)
    • 跨城市/跨部门对照 Skill(脱离本案例,去你的工作场景)
  3. 填模板:每个 <TODO: ...> 都要填掉;不会填的,回头看 docs/methodology.md
  4. 跑一遍:装到 Claude Code → 在 data/ 上跑一次 → 把过程输出存为 run-report.md
  5. 自评:对照 docs/rubric.md 6 项打分;任一未过回去改,不要先美化文字。
  6. 提 PR:见 CONTRIBUTING.md

关于数据

数据是教学模拟数据——不对应任何真实城市、街道、部门或人员。详见 data/README.md

警告:data/05_处置规则与政策口径.md 里所有的"职责边界 / P0/P1/P2 口径"都是课堂模拟规则,不是任何地区的正式政策文件,请勿在真实工作中作为依据使用。


这个项目不解决什么

  • 不教数据分析方法本身:Skill 是分析方法的"封装方式",不是分析方法本身。要先有方法。
  • 不提供生产环境数据:数据是模拟的,仅用于教学。
  • 不替代真实决策:示范 Skill 明确拒绝输出 P0/P1/P2 等级,复核清单必然回到人。
  • 不锁定某一家厂商:Skill 格式遵循 Claude Skills 约定,但内容上是 vendor-neutral 的 Markdown SOP,任何 Agent 系统都能消费。

致谢与许可

  • 原始幻灯片由 NotebookLM 协助生成。
  • 教学案例数据集为课堂模拟,不对应真实地区。
  • 代码与文档遵循 MIT 协议

欢迎 fork / PR / 提 issue。如果你拿这个项目在企业或学校开课,欢迎给我们留个 issue 让我们知道——可能加进"Used By"列表。


路线图

  • 第一份示范 Skill:multi-source-diagnosis
  • 第二份示范 Skill:forecast-and-prescribe(实操二:预测-规范)
  • 提交模板的 GitHub Actions 自动 lint(检查 frontmatter / 字数 / 必填章节)
  • 英文版 README & docs
  • 与 Claude Code Plugin Marketplace 的对接(把 skills/ 发为一个 plugin)

issue / PR 欢迎挑路线图里的任意一项。

About

把分析方法写成 Agent 可复用的 Skill — 含完整方法论、城市治理热线多源诊断案例、5 张数据表、参考实现(带 Chart.js 可视化)与评分细则。教写法 + 教案例,自评 → PR 贡献你的作品。

Topics

Resources

License

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages