逆向技能链生成器 Skill(reverse-skill-chain)
快速生成符合团队规范的逆向工程领域 Skill,统一输出 SKILL.md 模板、校验并打包上线。
技能模板规范
每个技能 SKILL.md 必须遵循以下结构:
Frontmatter(必填)
name: <skill-name> # 小写连字符,≤40 字符
version: 1.0.0
description: "<一句话描述>。当用户……时使用。" # 含触发场景
agent_created: true # 标记为 Agent 创建
triggers: # 中文 + 英文触发词,5-8 个
- "触发词1"
- "触发词2"
categories: # 1-3 个分类
- engineering
- reverse-engineering
Body 结构(推荐顺序)
| 序号 | 章节 | 说明 |
|---|---|---|
| 1 | # 标题(<中文名> Skill(<英文名>)) |
一行总结定位 |
| 2 | ## 能力范围 | 表格:场景 → 工具/手段 |
| 3 | ## 工作流程(N 阶段) | 每阶段 Step 表格 |
| 4 | ## 常用命令速查 | bash 代码块 |
| 5 | ## 输出物清单 | 目录树 |
| 6 | ## 注意事项 | 编号列表 5 条 |
已上线技能对照表
| 技能 | 场景 | 触发关键词 |
|---|---|---|
reverse-skill |
APK/SO/ELF 算法反推 | 逆向 apk、反编译 so、提取算法 |
llvm-decompile-skill |
C/C++ 编译产物源码恢复 | 丢失源码恢复、二进制还原 c、decompile binary |
xbs-js-reverse-skill |
网页 JS 加密/签名/Token 还原 | 还原加密参数、逆向签名算法、js 加密还原 |
ast-reverse-refactor-skill |
混淆源码重建可读工程 | 混淆源码重建、ast 重构、反混淆重构 |
project-rebuild-skill |
零散代码 → 可编译项目 | 碎片代码重组、逆向工程重建、代码整合 |
ui-site-clone-skill |
网页 UI 页面复刻 | 复刻网页、页面克隆、像素级还原 |
code-obfuscation-reverse |
通用混淆/压缩代码还原 | 混淆还原、反混淆、deobfuscate |
code-reverse-replicate |
代码架构反推 + 复刻 | 代码反推、复刻代码、架构分析 |
创建流程(4 步)
Step 1:初始化骨架
cd ~/.workbuddy/plugins/cache/workbuddy-builtin/skill-skill-creator/0.1.0/scripts
python3 init_skill.py <skill-name> --path ~/.workbuddy/skills
Step 2:编写 SKILL.md
按模板规范填空,关键决策:
- 能力范围表格:对照"已上线技能"避免重复
- 工作流阶段数:简单 4 阶段,复杂 6 阶段
- 触发词:中文 + 英文各 3-5 个
Step 3:清理示例文件
rm -f ~/.workbuddy/skills/<name>/scripts/example.py
rm -f ~/.workbuddy/skills/<name>/references/api_reference.md
rm -f ~/.workbuddy/skills/<name>/assets/example_asset.txt
rmdir ~/.workbuddy/skills/<name>/scripts ~/.workbuddy/skills/<name>/references ~/.workbuddy/skills/<name>/assets 2>/dev/null
Step 4:校验 + 打包
python3 package_skill.py ~/.workbuddy/skills/<name> <output-dir>
校验通过 = 上线,技能即可在任意项目中触发使用。
注意事项
- 不重复造轮子:创建前先对照"已上线技能表",功能重叠则合并而非新建。
- 触发词精准:描述越具体,触发越准确。避免泛词如"分析"、"代码"。
- 工作流可操作:每阶段应是可执行的步骤(操作 + 工具),而非抽象概念。
- 命令速查可用:
bash代码块中的命令应可直接复制运行。 - 保留 agent_created:YAML frontmatter 必须含
agent_created: true,否则后续无法自动更新。