Skip to content

MingyiSecLab/pentest-skills

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@mingyisec/pentest-skills

@mingyisec/pentest-skills 是一个纯 Markdown 的安全 skills 包,用来给 Pentest、Reverse Engineering、CTF 和通用安全工作流 agents 提供可检索、可维护、可版本化的方法论、约束和模板。

设计目标

  • 按能力域拆分,而不是把所有 Web 安全知识堆进一个大 Skill
  • 让 Agent 先读主链技能,再按需追加专项技能
  • 把分析规则、输出规范、证据模板从 prompt 中沉淀出来
  • 作为独立 npm 包发布和演进

项目结构

运行时发布目录采用 skills/<domain>/<skill>/ 分层组织:

@mingyisec/pentest-skills/
├── README.md
├── package.json
├── skills/
│   ├── pentest/
│   │   ├── api-security/
│   │   ├── recon/
│   │   ├── auth/
│   │   ├── authz/
│   │   ├── idor/
│   │   ├── injection/
│   │   ├── xss/
│   │   ├── ssrf/
│   │   ├── upload/
│   │   ├── business-logic/
│   │   ├── exploitation/
│   │   ├── browser-cli/
│   │   ├── reporting/
│   │   ├── evidence/
│   │   ├── tool-params/
│   │   └── vulnerability-analysis/
│   ├── reverse/
│   │   ├── binary-analysis/
│   │   ├── android/
│   │   ├── ios/
│   │   ├── firmware/
│   │   └── unpacking/
│   ├── ctf/
│   │   ├── web/
│   │   ├── crypto/
│   │   ├── pwn/
│   │   ├── reverse/
│   │   ├── forensics/
│   │   └── misc/
│   └── shared/
│       ├── playwright-cli/
│       ├── http-cli/
│       ├── evidence/
│       └── reporting/
└── docs/
    └── skills-design.md

当前已经实现并带有 SKILL.md 的运行时技能包括:

  • skills/pentest/recon,技能名 atlas-pentest-recon
  • skills/pentest/auth,技能名 atlas-pentest-auth
  • skills/pentest/authz,技能名 atlas-pentest-authz
  • skills/pentest/api-security,技能名 atlas-pentest-api-security
  • skills/pentest/injection,技能名 atlas-pentest-injection
  • skills/pentest/xss,技能名 atlas-pentest-xss
  • skills/pentest/ssrf,技能名 atlas-pentest-ssrf
  • skills/pentest/browser-cli,技能名 atlas-pentest-browser-cli
  • skills/pentest/reporting,技能名 atlas-pentest-reporting
  • skills/pentest/business-logic,技能名 atlas-pentest-business-logic
  • skills/pentest/evidence,技能名 atlas-pentest-evidence
  • skills/pentest/exploitation,技能名 atlas-pentest-exploitation
  • skills/pentest/vulnerability-analysis,技能名 atlas-pentest-vulnerability-analysis
  • skills/shared/playwright-cli,技能名 atlas-shared-playwright-cli

其他目录是规划中的技能槽位,只有在加入 SKILL.md 后才会被 skills add 识别和安装。

每个 Skill 目录严格采用以下结构:

skills/<domain>/<skill-name>/
├── SKILL.md
└── references/
  • SKILL.md:入口文档,定义 Use When、Inputs、Workflow、Tool Guidance、Outputs、Completion Criteria
  • references/:方法论、规则、判定标准、风险说明

包发布边界

  • package.jsonfiles 只包含 README.mdskills/
  • docs/ 仅保留仓库内设计文档,不作为运行时 Skill 内容
  • Skill 内容保持纯 Markdown,不放运行时代码

发布建议

  • 保持 skills/<domain>/<skill>/ 路径稳定
  • 允许在 references/ 下继续扩展主题文档
  • 新增或调整目录前,先同步更新消费方的 Workspace.skills 路径和 agent 绑定配置

使用 npx skills add 安装

skills add 用于把本仓库中的 Agent Skills 安装到本地 agent 目录。默认会从 skills/ 分层中发现带 SKILL.md 的技能;docs/ 只保留设计文档,不包含运行时技能。

从当前本地仓库安装到 OpenCode:

npx skills add . --skill '*' --agent opencode -y

从远程 GitHub 仓库安装到 OpenCode:

npx skills add MingyiSecLab/pentest-skills --skill '*' --agent opencode -y

也可以使用完整仓库 URL:

npx skills add https://github.com/MingyiSecLab/pentest-skills --skill '*' --agent opencode -y

只查看远程仓库中可安装的技能,不执行安装:

npx skills add MingyiSecLab/pentest-skills --list

只安装指定技能:

npx skills add MingyiSecLab/pentest-skills \
  --skill atlas-pentest-recon atlas-pentest-xss atlas-pentest-reporting \
  --agent opencode \
  -y

安装到全局用户级目录,但仍只同步到指定 agent:

npx skills add MingyiSecLab/pentest-skills --skill '*' --agent opencode -g -y

不建议直接使用 --all,因为它等价于 --skill '*' --agent '*' -y,会把全部技能安装到所有检测到的 agents,输出和本地目录都会比较混乱。

安装后验证:

npx skills list

全局安装的验证命令:

npx skills list -g

也可以使用 package.json 中的 npm scripts:

npm run skills:list
npm run skills:add
npm run skills:add:claude
npm run skills:add:global
npm run skills:add:all-agents
npm run pack:dry-run

作为 npm 包使用

在消费方项目中安装已发布的 npm 包:

npm install @mingyisec/pentest-skills

开发期也可以从本地路径安装:

npm install /Users/administrator/Desktop/Project/Workspace/project_code/pentest-skills

发布前检查 npm 包内容:

npm run pack:dry-run

Mastra 加载方式

消费方通过 Workspacenode_modules 加载本包:

new Workspace({
  skills: ["node_modules/@mingyisec/pentest-skills/skills"],
})

当本地项目也提供同名 skill 时,Mastra 会按 local > managed > external 的优先级解析;需要指定外部包版本时,可以使用完整路径加载,例如 node_modules/@mingyisec/pentest-skills/skills/pentest/xss

About

渗透测试智能体Skills

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors