Initial commit: add all skills

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-12 17:48:53 +08:00
commit dea5db60d9
31 changed files with 3111 additions and 0 deletions

View File

@@ -0,0 +1,179 @@
---
name: cli-docs
description: |
将任意 CLI 工具的所有子命令自动整理成一份结构化中文 **Markdown 文档文件**.md
包含目录、命令总览表格、每条命令的中文详解和示例,适合存档、分享或离线阅读。
**触发条件(需同时满足)**
- 用户明确提到"markdown"、"文档"、"guide"、"指南"、"整理文档"、"生成文档"、"总结文档"等词语
- 用户的最终目的是得到一个 **文件**.md而非一个可执行脚本
典型触发示例:
- "帮我把 git CLI 整理成 markdown"
- "生成 docker 的中文命令文档"
- "把 kubectl 的命令总结成一份 guide"
- "summarize X cli to markdown"
- "把 npm 命令整理成文档文件"
**不触发本 skill 的情况**(交给 command-help-zh-skill 处理):
- 用户只想在终端里看中文帮助(无需保存文件)
- 用户想要一个可执行的 bash 脚本 / help 脚本
- 用户想翻译单条命令的 --help 输出
- 用户说"帮我写一个 X 的中文 help 脚本"
---
# CLI Docs Skill
将命令行工具的帮助信息自动整理成一份中文 Markdown 指南,包含版本号、目录、命令总数统计以及每个命令的中文说明。
---
## 第一步:确定工具名称
从用户的请求中提取目标工具名(例如 `git``docker``kubectl``npm`)。如果不确定,先询问用户。
---
## 第二步:获取版本信息
按顺序尝试以下命令,取第一个成功的结果:
```
<tool> --version
<tool> -v
<tool> version
<tool> -version
```
从输出中提取版本号和版本名称(如有,例如 `Docker version 24.0.5, build ced0996`)。如果所有命令都失败,记录"版本信息获取失败"。
---
## 第三步:获取顶级命令列表
按顺序尝试以下命令:
```
<tool> --help
<tool> -h
<tool> help
<tool> -help
```
从输出中解析出所有顶级命令subcommands。注意
- 有些工具把命令分组展示(如 `Management Commands` / `Commands`),需要合并所有组
- 有些工具的命令用缩进或列表格式呈现,注意识别命令名和其简短描述
- 全局选项flags`--verbose``-h`)不算命令,不要列入
---
## 第四步:获取每个子命令的详细帮助
对每个顶级命令,运行:
```
<tool> <subcommand> --help
```
如果失败,尝试:
```
<tool> help <subcommand>
<tool> <subcommand> -h
```
收集每个命令的:
- 功能说明(一到两句话)
- 用法usage
- 重要参数/选项(不需要列出全部,选最常用的)
- 如果该命令本身还有子命令,也递归列出(最多两层深度)
**子命令数量控制**:如果工具命令非常多(超过 30 个),先列出最核心的命令,并在文档末尾注明"仅列出核心命令,完整列表请运行 `<tool> --help`"。
---
## 第五步:生成 Markdown 文档
### 文档结构模板
```markdown
# <工具名> 命令行指南
> **版本**<版本号><版本名称,如有>
> **生成时间**<当前日期>
---
## 目录
- [简介](#简介)
- [命令总览](#命令总览)
- [命令详解](#命令详解)
- [command1](#command1)
- [command2](#command2)
...
---
## 简介
<用 2-3 句话中文介绍该工具是什么、主要用途是什么。从 --help 输出的描述中提炼,结合你对该工具的了解。>
---
## 命令总览
**N** 个顶级命令,**M** 个子命令(含二级命令)。
| 命令 | 简介 |
|------|------|
| `command1` | 一句话中文描述 |
| `command2` | 一句话中文描述 |
...
---
## 命令详解
### command1
**功能**<中文说明2-4 句,解释这个命令做什么、适合什么场景>
**用法**
```
<tool> command1 [选项] [参数]
```
**常用选项**
| 选项 | 说明 |
|------|------|
| `--flag1` | 说明 |
| `--flag2` | 说明 |
**示例**
```bash
<tool> command1 --flag example
```
---
(每个命令重复上面的格式)
```
### 写作要求
- **全部用中文**:命令说明、功能介绍、选项描述都用中文。命令名称、选项名称本身保持英文原样。
- **忠实原文**:中文描述要忠实于 `--help` 输出的含义,不要过度发挥或编造。
- **通俗易懂**:把技术文档翻译成普通用户能理解的语言,必要时加一句使用场景。
- **格式整洁**表格对齐代码块用正确语言标记shell/bash
---
## 第六步:输出文件
将生成的 Markdown 内容写入文件 `<tool>-guide.md`,保存在**用户当前工作目录**(即 Claude Code 运行的目录)。
完成后告知用户:
- 文件保存路径(完整路径)
- 共整理了多少个顶级命令、多少个子命令
- 如有获取失败的命令,列出说明

View File

@@ -0,0 +1,50 @@
{
"skill_name": "cli-docs",
"evals": [
{
"id": 1,
"prompt": "帮我把 git 命令行工具总结成 markdown 文档指南,需要有目录,显示版本号,列出所有命令和子命令,每个命令写中文介绍",
"expected_output": "生成 git-guide.md 文件包含版本信息、目录TOC、命令总数统计、每个 git 命令(如 commit/push/pull/clone 等)的中文说明和用法示例",
"files": [],
"assertions": [
{"text": "guide_file_exists: git-guide.md 文件已生成"},
{"text": "has_version_info: 文件包含 git 版本号(如 2.x.x 格式字符串)"},
{"text": "has_toc: 文件包含目录区块(## 目录 或 TOC 链接列表)"},
{"text": "has_command_count: 文件包含命令数量统计(如 '共 N 个命令'"},
{"text": "has_code_blocks: 文件包含 markdown 代码块(```"},
{"text": "has_chinese_content: 文件包含中文字符说明"},
{"text": "is_substantial: 文件内容超过 3000 字符"}
]
},
{
"id": 2,
"prompt": "帮我把 curl 命令行工具整理成 markdown 文档,要有目录和版本号,每个命令或选项配中文说明",
"expected_output": "生成 curl-guide.md 文件,包含:版本信息、目录、常用选项的中文说明(如 -X、-H、-d、-o 等),以及使用示例",
"files": [],
"assertions": [
{"text": "guide_file_exists: curl-guide.md 文件已生成"},
{"text": "has_version_info: 文件包含 curl 版本号"},
{"text": "has_toc: 文件包含目录区块"},
{"text": "has_command_count: 文件包含选项/命令数量统计"},
{"text": "has_code_blocks: 文件包含 markdown 代码块(```"},
{"text": "has_chinese_content: 文件包含中文字符说明"},
{"text": "is_substantial: 文件内容超过 3000 字符"}
]
},
{
"id": 3,
"prompt": "npm 有哪些命令?帮我整理成一个 markdown 文档,中文说明,要有版本号和目录",
"expected_output": "生成 npm-guide.md 文件包含npm 版本号、目录、npm 的顶级命令(如 install/run/publish/init 等)的中文介绍、参数说明和用法示例",
"files": [],
"assertions": [
{"text": "guide_file_exists: npm-guide.md 文件已生成"},
{"text": "has_version_info: 文件包含 npm 版本号"},
{"text": "has_toc: 文件包含目录区块"},
{"text": "has_command_count: 文件包含命令数量统计"},
{"text": "has_code_blocks: 文件包含 markdown 代码块(```"},
{"text": "has_chinese_content: 文件包含中文字符说明"},
{"text": "is_substantial: 文件内容超过 3000 字符"}
]
}
]
}