23 KiB
AgentSkills 项目研究报告
| 项目名称 | AgentSkills —— AI 智能体技能集 |
|---|---|
| 报告类型 | 项目研究报告(PROJECT_REPORT) |
| 报告日期 | 2026-08-08 |
| 许可证 | MIT License(Copyright © 2026 Shuery-Shuai) |
摘要
本项目构建了一套面向 AI 编码智能体(Agent)的开源技能(Skills)集合——AgentSkills。项目以「提示词 + 接口策略」为核心组织单元,每个技能由一个 SKILL.md(定义角色、工作流、行为准则与输出格式的完整提示词)与一个 agents/openai.yaml(定义展示名、简介与调用策略)组成。技能按「开发与规范 → 测试与修复 → 交付与部署 → 全自动化」四层递进组织,共 18 个技能,覆盖从代码规范、质量保障到生产部署、监控告警的完整软件工程闭环。项目同时提供 skills_linker.sh 一键安装脚本,可将全部技能软链接至全局技能目录,实现开箱即用。本项目采用 MIT 许可证开源,不包含第三方运行时依赖,许可证合规状态为完全合规。
关键词:AI 智能体;技能(Skills);质量工程;自动化流水线;软件工程
第1章 绪论
1.1 项目背景
随着大语言模型(LLM)与 AI 编码智能体的快速发展,如何让智能体稳定、可复用地完成「代码审查、缺陷修复、性能测试、生产部署、监控告警」等工程化任务,已成为开发者社区关注的热点。传统上,这些任务依赖人工或碎片化的脚本,难以与 AI 智能体无缝衔接;而将领域知识封装为结构化的「技能」(Skills),则可以让智能体按既定流程执行高质量工程任务。
1.2 项目意义
本项目通过将多年软件工程实践沉淀为 18 个可复用、可组合的技能,实现以下价值:
- 能力升级:将 AI 从「问答助手」升级为「质量工程团队」,使其具备端到端工程执行能力;
- 质量闭环:形成「发现缺陷 → 自动修复 → 语法检查 → 性能验证 → 回归测试」的完整闭环;
- 安全可控:内置生产环境保护、敏感信息脱敏、最小权限与人工确认点等安全规则;
- 可观测可审计:每个技能输出带时间戳的结构化 Markdown 报告,全程留痕、便于追溯。
1.3 项目目标
- 提供一套开箱即用、跨平台的智能体技能定义;
- 通过技能互链形成可组合的自动化流水线(如 CI/CD 闭环);
- 保证工程任务执行的安全性与可审计性;
- 以 MIT 许可证开源,降低社区采用门槛。
1.4 报告结构
本报告共七章:第 2 章介绍开发技术与许可证合规分析;第 3 章进行需求分析;第 4 章阐述详细设计;第 5 章说明编码与实现;第 6 章给出系统测试方法与结果;第 7 章进行总结与展望。附录 A 提供许可证清单,附录 B 汇总文档质量检查(lint / prettier / 死链)执行摘要。
第2章 开发技术
2.1 技术栈概述
本项目为「文档 + 配置 + 脚本」型仓库,技术栈轻量且无运行时依赖:
| 层面 | 技术 / 格式 | 说明 |
|---|---|---|
| 技能提示词 | Markdown(GFM) | SKILL.md 定义角色、工作流、行为准则与输出格式 |
| 接口与策略 | YAML | agents/openai.yaml 定义展示信息与调用策略 |
| 安装与自动化 | Bash(Shell) | skills_linker.sh 实现一键软链接安装 |
| 图表与文档增强 | Mermaid / shields.io | 架构图、流程图与徽章 |
| 质量工具链 | shellcheck / markdownlint-cli2 / prettier / js-yaml | 语法检查与格式化 |
2.2 核心技术
- SKILL.md 提示词规范:采用统一的章节模板(角色与描述、支持格式、工作模式、行为准则、输出格式),使技能可被智能体稳定解析与执行;
- agents/openai.yaml 策略配置:以结构化字段(
interface/policy)描述技能的展示信息、隐式调用许可、确认要求与重试次数; - 技能互链机制:技能之间通过
/技能名相互调用,形成可复用的自动化链路(如ci-cd-pipeline串联 13 个子技能); - 一键安装脚本:
skills_linker.sh遍历分类目录,将各技能软链接至~/.agents/skills/,实现全局可用。
2.3 许可证合规分析
本项目采用 MIT License(Copyright © 2026 Shuery-Shuai)。经对项目根目录及子目录扫描,未发现 package.json、pyproject.toml、go.mod、requirements.txt、Cargo.toml、composer.json 等任何第三方依赖清单文件,即项目不包含第三方运行时依赖,因此不存在依赖许可证冲突风险。
| 检查项 | 结果 |
|---|---|
| 项目主许可证 | ✅ MIT License(与 LICENSE 文件一致) |
| 第三方依赖 | ✅ 无(依赖文件数 = 0) |
| 许可证冲突 | ✅ 无 |
| 合规结论 | 完全合规 |
Note
文档中引用的 shields.io(徽章)与 Mermaid(图表)为在线服务或渲染库,不构成代码层面的许可证依赖;若未来引入第三方依赖,建议补充执行依赖许可证扫描。
第3章 需求分析
3.1 功能需求
按四大分类归纳的 18 个技能功能需求如下:
| 分类 | 技能 | 功能需求描述 |
|---|---|---|
| 开发与规范 | readme-generator |
遍历项目生成开源风格 README,含徽章、Mermaid、提示块与死链检查 |
| 开发与规范 | academic-readme-writer |
生成论文格式 PROJECT_REPORT.md,集成格式化、死链检查与许可证信息 |
| 开发与规范 | google-style-formatter |
将代码重构为严格 Google 风格,补全注释并调用权威格式化工具 |
| 开发与规范 | syntax-checker |
自动识别语言并调用编译器 / linter 做语法检查,输出结构化报告 |
| 开发与规范 | dependency-security-scanner |
扫描依赖已知漏洞(CVE),输出风险报告与修复优先级 |
| 开发与规范 | doc-link-checker |
检查 Markdown 文档外部链接可达性,标记死链并生成报告 |
| 测试与修复 | blackbox-tester |
黑盒测试:环境确认 → 用例生成 → 缺陷报告(仅限测试服务器) |
| 测试与修复 | unit-test-generator |
分析源码自动生成缺失单元测试,覆盖正常 / 边界 / 异常场景 |
| 测试与修复 | bug-fixer-from-tests |
解析缺陷报告 → 定位根因 → 最小化修复 → 回归验证指引 |
| 测试与修复 | performance-baseline-tester |
对核心 API 做性能基准测试,与历史基线对比识别退化 |
| 测试与修复 | auto-test-and-fix |
端到端编排「测试→修复→语法检查→性能→回归」闭环 |
| 交付与部署 | db-migration-checker |
分析迁移脚本风险(危险操作 / 锁表),支持预发环境模拟执行 |
| 交付与部署 | deploy-to-production |
多重确认下部署生产,集成迁移审查、健康检查与监控规则生成 |
| 交付与部署 | license-compliance-checker |
扫描依赖开源许可证,检查与主许可证的兼容性与冲突 |
| 交付与部署 | log-monitor-rule-generator |
扫描日志输出,生成 ELK / Loki / Prometheus 监控与告警规则 |
| 全自动化 | ci-cd-pipeline |
串联 13 个子技能的全自动 CI/CD 闭环 |
| 全自动化 | project-health-check |
全量质量体检(安全 / 语法 / 测试 / 性能 / 文档 / 合规),输出 0-100 综合评分 |
| 全自动化 | release-orchestrator |
发布管理:决定版本号、生成变更日志、创建标签、触发 CI/CD、监控与回滚 |
3.2 非功能需求
| 类别 | 需求描述 |
|---|---|
| 安全性 | 生产环境保护、敏感信息脱敏、最小权限、人工确认点 |
| 可观测性 | 每个技能输出 *_<timestamp>.md 结构化报告,全程留痕 |
| 可复用性 | 技能可独立使用,也可通过 /技能名 互链组合 |
| 兼容性 | 覆盖 Python / Node / Java / Go / Shell / YAML / Markdown 等多语言工具链 |
| 可维护性 | 目录按分类组织,技能模板统一,便于新增与维护 |
3.3 需求用例概览
以「CI/CD 全流程」为例,系统需按阶段依次调用安全扫描、黑盒测试、缺陷修复、格式化、文档生成、迁移审查与生产部署,任一阶段失败即暂停并报告:
flowchart LR
R1["用户发起 CI/CD"] --> S0["静态分析<br/>(安全/许可证/语法)"]
S0 --> S1["黑盒测试"]
S1 -->|有缺陷| S2["缺陷修复 + 回归(≤3次)"]
S2 --> S1
S1 -->|通过| S3["测试增强 + 性能验证"]
S3 --> S4["代码规范化 + 语法复查"]
S4 --> S5["文档生成 + 死链检查"]
S5 --> S6["数据库迁移审查"]
S6 --> S7["生产部署"]
S7 --> S8["监控规则生成"]
S8 --> R2["生成 cicd_report"]
第4章 详细设计
4.1 系统总体架构
系统按「开发与规范 → 测试与修复 → 交付与部署 → 全自动化」四层递进组织,形成完整质量闭环:
flowchart TB
subgraph SK["🧩 AgentSkills(18 技能)"]
A["🛠️ 开发与规范<br/>readme-generator · syntax-checker<br/>google-style-formatter · doc-link-checker<br/>dependency-security-scanner · academic-readme-writer"]
B["🧪 测试与修复<br/>blackbox-tester · unit-test-generator<br/>bug-fixer-from-tests · performance-baseline-tester<br/>auto-test-and-fix"]
C["🚀 交付与部署<br/>db-migration-checker · deploy-to-production<br/>license-compliance-checker · log-monitor-rule-generator"]
D["🤖 全自动化<br/>ci-cd-pipeline · project-health-check<br/>release-orchestrator"]
end
A --> B --> C
B -.->|"auto-test-and-fix 闭环"| B
D -->|"编排调用"| A
D -->|"编排调用"| B
D -->|"编排调用"| C
4.2 模块设计
4.2.1 仓库目录结构
AgentSkills/
├── skills_linker.sh # 一键安装脚本(软链接到 ~/.agents/skills/)
├── README.md # 项目说明
├── PROJECT_REPORT.md # 项目研究报告(本文件)
├── LICENSE # MIT 许可证
├── .markdownlint.json # Markdown 规范配置
├── development-and-standards/ # ① 开发与规范(6 个技能)
├── testing-and-fixing/ # ② 测试与修复(5 个技能)
├── delivery-and-deployment/ # ③ 交付与部署(4 个技能)
└── full-automation/ # ④ 全自动化(3 个技能)
4.2.2 单个技能的内部结构
<skill-name>/
├── SKILL.md # 技能提示词(角色、工作流、行为准则、输出格式)
└── agents/
└── openai.yaml # 接口与策略配置(display_name / policy)
4.3 配置数据结构设计
agents/openai.yaml 采用两层结构,字段说明如下:
| 字段 | 类型 | 说明 |
|---|---|---|
interface.display_name |
string | 技能展示名称 |
interface.short_description |
string | 技能简介(用于调用方理解用途) |
policy.allow_implicit_invocation |
boolean | 是否允许隐式调用 |
policy.require_confirmation |
boolean | 执行副作用操作前是否需人工确认 |
policy.max_retries |
int | 最大重试次数(避免死循环) |
4.4 交互流程设计
「测试→修复→回归」闭环由 auto-test-and-fix 编排,核心循环如下:
flowchart TB
P1["blackbox-tester<br/>初始测试"] --> P2{有致命/严重缺陷?}
P2 -->|是| P3["bug-fixer-from-tests<br/>修复"]
P3 --> P4["syntax-checker<br/>语法复查"]
P4 -->|有语法错误| P4
P4 -->|通过| P5["performance-baseline-tester<br/>性能验证"]
P5 --> P6["blackbox-tester<br/>回归测试"]
P6 -->|回归通过率<95% 且循环≤5次| P2
P6 -->|收敛| P7["final_report"]
P2 -->|否| P7
第5章 编码与实现
5.1 总体实现情况
项目共实现 18 个技能(每个含 SKILL.md 与 agents/openai.yaml)、1 个安装脚本(skills_linker.sh)与 1 份 Markdown 规范配置(.markdownlint.json)。所有技能提示词均遵循统一的「角色描述 → 支持格式 → 工作模式 / 工作流程 → 行为准则 → 输出格式」结构,确保可被智能体稳定解析。
5.2 安装脚本 skills_linker.sh 的实现
安装脚本遍历分类目录,将各技能软链接至 ~/.agents/skills/,并对已存在链接、同名冲突等情况进行安全处理。该脚本已通过 shellcheck 检查(0 告警):
#!/bin/bash
# 技能链接脚本 - 将当前目录下分类中的技能链接到 ~/.agents/skills/
TARGET_DIR="$HOME/.agents/skills"
# 创建目标目录(如果不存在)
mkdir -p "$TARGET_DIR"
# 遍历所有一级子目录(分类目录)
for category_dir in */; do
# 排除非目录项
[ -d "$category_dir" ] || continue
# 遍历分类目录下的技能子目录
for skill_dir in "$category_dir"/*/; do
[ -d "$skill_dir" ] || continue
skill_name="${skill_dir%/}"
skill_name="${skill_name##*/}"
# 源技能目录的绝对路径
src="$(realpath "$skill_dir")"
# 目标链接路径
link="$TARGET_DIR/$skill_name"
# 目标已存在且不是指向当前源时,区分符号链接与普通目录处理
if [ -L "$link" ]; then
current_target="$(readlink "$link")"
if [ "$current_target" = "$src" ]; then
echo "跳过: $link 已指向 $src"
continue
else
echo "警告: $link 存在但指向不同目标 ($current_target),将替换"
rm "$link"
fi
elif [ -e "$link" ]; then
echo "警告: $link 存在且不是符号链接,跳过 (手动处理)"
continue
fi
# 创建符号链接
ln -s "$src" "$link"
echo "已链接: $src -> $link"
done
done
echo "完成。所有技能已链接到 $TARGET_DIR"
5.3 接口策略配置 agents/openai.yaml
以 blackbox-tester 为例,接口策略配置定义了展示信息与调用策略:
interface:
display_name: "黑盒测试专家"
short_description: "从 README 提取信息并执行全面的黑盒测试(仅限测试环境),输出缺陷报告。"
policy:
allow_implicit_invocation: false # 需用户明确要求测试
require_confirmation: true # 在执行任何可能产生副作用的测试动作前需确认
max_retries: 2 # 网络或环境问题可重试,但避免死循环
5.4 技能提示词 SKILL.md 的结构
以 syntax-checker 为例,SKILL.md 采用「角色描述 → 支持语言与工具 → 误报处理 → 执行步骤 → 报告格式」的结构化写法,并集成误报处理(忽略标签)规范:
---
name: syntax-checker
description: 自动识别代码语言并调用对应的语法检查工具(如编译器、解释器或专用 linter),检测语法错误,输出结构化检查报告。
---
你是一名代码语法验证专家,专注于检测代码中的语法错误(Syntax Errors)...
5.5 Markdown 规范配置 .markdownlint.json
为抑制 Markdown 文档中系统性出现的纯风格规则噪音(行长、标题与围栏空行、首行标题),项目建立了统一规范配置:
{
"MD013": false,
"MD022": false,
"MD031": false,
"MD041": false
}
第6章 系统测试
6.1 测试环境与工具
| 工具 | 版本 | 用途 |
|---|---|---|
| shellcheck | 0.11.0 | Shell 语法与静态检查 |
| js-yaml | 4.x | YAML 语法解析校验 |
| markdownlint-cli2 | 0.23.2(markdownlint 0.41.1) | Markdown 结构与规范检查 |
| prettier | 3.3.3 | Markdown 格式化 |
| jq / python3 | — | JSON / 辅助校验 |
6.2 语法检查
| 检查对象 | 工具 | 文件数 | 结果 |
|---|---|---|---|
| Shell 脚本 | shellcheck |
1 | ✅ 0 问题 |
| Shell 语法基线 | bash -n |
1 | ✅ 通过 |
| YAML 配置 | js-yaml |
18 | ✅ 全部通过 |
| Markdown | markdownlint-cli2 |
19 | ✅ 0 issues |
| Markdown 格式 | prettier --check |
19 | ✅ 全部合规 |
6.3 链接检查
对 README.md、PROJECT_REPORT.md 等文档中的外部链接进行可达性检查(HEAD 请求,405 时回退 GET,超时 5 秒,同域间隔 0.5 秒),结果如下:
| 链接 | 状态码 | 结果 |
|---|---|---|
img.shields.io/*(徽章) |
200 | ✅ 可达 |
shields.io |
200 | ✅ 可达 |
mermaid.js.org |
200 | ✅ 可达 |
github.com/Shuery-Shuai/AgentSkills.git(代码块内) |
301 → 404 | ⚠️ 仓库尚未公开(已在 README 标注 TODO) |
6.4 测试结论
系统测试全部通过:Shell 与 YAML 无语法错误,Markdown 无规范问题且格式合规;文档外部链接除「未公开仓库的克隆地址」外均可达。测试过程全程只读,未对生产环境执行任何操作。
第7章 总结与展望
7.1 工作总结
本项目设计并实现了一套结构化的 AI 智能体技能集合 AgentSkills:
- 体系化分类:将 18 个技能按「开发与规范 → 测试与修复 → 交付与部署 → 全自动化」四层组织,形成完整质量闭环;
- 统一规范:每个技能由
SKILL.md(提示词)与agents/openai.yaml(策略)组成,模板统一、易于扩展; - 可组合可编排:通过技能互链与
ci-cd-pipeline/auto-test-and-fix编排器,实现端到端自动化; - 安全可审计:内置生产环境保护、脱敏、人工确认点等安全规则,并输出时间戳报告;
- 质量保障:经 shellcheck / js-yaml / markdownlint-cli2 / prettier / 死链检查全面验证,全部通过。
7.2 不足
- 部分技能依赖第三方工具(如
shellcheck、yamllint、markdownlint-cli2),需要目标环境预先安装; release-orchestrator等技能仍在完善中,其与版本控制系统的深度集成有待增强;- 仓库尚未发布至 GitHub(克隆地址暂不可用),动态徽章(构建状态、覆盖率)有待接入 CI 后补充。
7.3 展望
未来可进一步:完善 release-orchestrator 的发布与回滚流程;补充 GitHub Actions 工作流以自动执行全量质量检查;增加更多语言与框架的技能模板;探索与主流 AI 编码工具(Claude Code、VS Code Copilot 等)的深度集成。
参考文献
- GitHub Flavored Markdown Spec. https://github.github.com/gfm/
- shields.io 徽章服务. https://shields.io/
- Mermaid 图表. https://mermaid.js.org/
- ShellCheck —— Shell 脚本静态分析工具. https://www.shellcheck.net/
- markdownlint-cli2 —— Markdown 规范检查工具. https://github.com/DavidAnson/markdownlint-cli2
- Prettier —— 代码格式化工具. https://prettier.io/
致谢
感谢所有为本技能集贡献思路、反馈与代码的开发者;感谢 shields.io、Mermaid、ShellCheck、markdownlint-cli2 与 Prettier 等优秀开源工具,为本项目的实现与质量保障提供了坚实支撑。
附录A 许可证清单
| 组件 | 许可证 | 说明 |
|---|---|---|
| AgentSkills(本项目) | MIT | 见 LICENSE 文件 |
| 第三方运行时依赖 | 无 | 依赖文件数 = 0 |
Warning
本清单基于项目当前状态生成,仅供参考,不构成法律意见。若后续引入第三方依赖,请重新执行许可证合规检查。
附录B 检查执行摘要
| 检查项 | 工具 | 结果 |
|---|---|---|
| 语法检查(Shell) | shellcheck 0.11.0 |
✅ 0 问题 |
| 语法基线(Shell) | bash -n |
✅ 通过 |
| YAML 解析 | js-yaml@4 |
✅ 18/18 通过 |
| Markdown 规范 | markdownlint-cli2 0.23.2 |
✅ 0 issues |
| Markdown 格式 | prettier 3.3.3 |
✅ 合规 |
| 死链检查 | HEAD/GET 请求 | ✅ 无死链(1 处待公开仓库地址已标注) |
| 许可证合规 | 静态扫描 | ✅ 完全合规(MIT,无依赖) |