AI Agent技能——Skill


在 Skill 的整个体系里,SKILL.md 是唯一必需的核心文件,它相当于写给 AI 的标准化操作手册,存放着技能的触发条件、执行流程、详细规则与示例;同时你也可以搭配 scripts/、references/、assets/ 等文件夹,分别存放可执行脚本、参考文档与资源文件,让技能的功能更完整。
以代码审计 Skill为例,只需在文件夹中创建SKILL.md,写明触发条件、审查步骤与输出格式,再将审查脚本放入scripts/、代码规范文档放入references/,就能打造出一个通用的代码审查技能包,被任何支持该格式的 AI 调用,自动完成标准化工作。
开发安全类 Skill,核心是给 AI 智能体封装一套可被大模型安全调用的、适配网络安全场景的工具能力,既要让 Agent 能自主执行扫描、检测、分析等操作,又要严格控制权限、规避安全风险。
首先要明确这个 Skill 的业务场景,比如是端口扫描、漏洞检测、日志研判还是威胁情报查询,再梳理清楚它的核心功能边界,只保留必要的能力,避免功能过度复杂带来不可控风险。
接着要设计输入参数,只允许传入 IP、域名、端口范围这类合规参数,禁止直接传入完整命令或特殊字符,同时在代码层做严格的参数校验与过滤,防止命令注入、路径遍历等问题,高危系统命令、内网越权访问相关的参数要直接拦截。然后编写底层执行逻辑,如果是封装现有安全工具,就用 Python 的 subprocess 模块调用 nmap、sqlmap 这类工具,同时设置超时限制和异常捕获,防止工具卡死或异常输出;如果是对接企业内部资产平台、漏洞库、威胁情报系统,就通过标准化 API 接口实现数据交互,避免直接操作数据库或文件系统。
在核心逻辑之外,必须加上多层安全防护,比如黑白名单机制,只允许执行预设的安全命令,禁用 rm、格式化、系统权限修改这类高危操作,同时给 Skill 配置最小权限,让它只能访问指定的目录和网络地址,无法随意读写敏感文件或访问未授权内网资源。
之后要给 Skill 写清晰的功能描述和参数说明,让大模型能准确理解它的用途、适用场景和调用条件,比如明确标注 “该技能仅用于合规的安全测试,禁止对未授权目标执行扫描”,避免被恶意滥用。
开发完成后,要进行多轮测试,先单独测试 Skill 的正常功能和异常输入场景,再把它接入 Agent 框架,测试多技能串联、异常反馈、超时重试等场景,确保它在各种情况下都能稳定、安全地执行,同时所有执行过程都要留存完整日志,包括调用时间、参数、执行结果和异常信息,方便后续审计与溯源。
最后,要把 Skill 解耦封装,单个 Skill 只专注于一个具体的安全任务,方便后续维护和扩展,同时根据实际使用反馈持续优化,补充更细粒度的权限控制和更完善的风险拦截规则,让它既能高效辅助安全工作,又不会成为新的安全风险点。
-
以漏洞检测skill为例 -
首先导入需要的依赖库,统一设置安全拦截规则、禁止危险符号与系统高危操作,限定只对内网授权目标做漏洞检测,从底层杜绝越权攻击与恶意命令拼接,固定程序运行超时时间,防止工具卡死或长时间占用资源,为漏洞检测技能建立基础安全边界。 -
import reimport subprocessFORBIDDEN_SYMBOLS = [";", "|", "&", ">", "<", "$", "`", "\\"]ALLOWED_TARGET_REG = r"^(192\.168|127\.0|10\.0|172\.1[6-9]\.|172\.2[0-9]\.|172\.3[0-1]\.)[\d\.]+$"VULN_TIMEOUT = 90然后实现漏洞检测核心技能逻辑,以常规 web 漏洞探测为示例,采用列表式传参执行工具,不开启 shell 模式,彻底规避命令注入风险,自动捕获超时、运行报错、工具不存在等各类异常,统一返回标准化文本结果,方便大模型后续整理漏洞信息、生成研判结论与安全报告。 -
def web_vuln_scan(target_url):if not check_target_safe(target_url.split("/")[2].split(":")[0]):return "检测失败:目标非授权内网资产,禁止对外网进行漏洞检测"if not check_input_safe(target_url):return "检测失败:输入包含非法特殊字符,已拦截危险参数"try:cmd = ["curl", "-I", "--max-time", "10", target_url]res = subprocess.run(cmd, capture_output=True, text=True, timeout=VULN_TIMEOUT)output = res.stdout + res.stderrnote = "基础web服务信息探测完成,可结合版本信息、响应头开展弱口令、目录遍历、漏洞组件排查"return f"漏洞探测结果:\n{output}\n提示:{note}"except subprocess.TimeoutExpired:return "漏洞检测超时,目标无响应"except Exception as e:return f"漏洞检测执行异常:{str(e)}"最后补充技能描述元信息,专门写给大模型识别使用,标注技能用途、适用场景、调用参数与安全约束,让 AI Agent 能够自主理解该技能负责 web 基础漏洞探测,仅用于内网合规安全检测,自动在合适任务场景下主动调用,同时保留本地测试入口,方便单独调试再接入智能体。 -
VULN_SKILL_INFO = {"name": "web_vuln_scan","description": "内网合规漏洞检测技能,用于探测web服务基础信息、辅助发现潜在脆弱点,仅限授权内网资产使用","params": {"target_url": "待检测内网网址,格式为http://ip:端口"},"limit": "禁止未授权目标、禁止命令类特殊字符、禁止批量暴力攻击"}if __name__ == "__main__":print(web_vuln_scan("http://127.0.0.1:80"))npx skills命令详解(Vercel Agent Skills 工具)这些命令用于管理和安装 AI Agent 技能,需要先安装 Node.js 环境,再通过
npx直接调用。1. 前置依赖
-
安装 Node.js(推荐 LTS 版本) -
安装完成后,终端可直接运行 npx skills命令,无需额外安装包 -
2. -
-
用于搜索技能仓库中的特定技能,比如 npx skills find port-scan可以查找端口扫描相关的技能。
-
-
npx skills find xxx -
查看当前环境中已安装的所有技能,确认技能是否成功部署。-
npx skills list-
以项目级模式安装整个技能仓库,默认仅对当前项目生效,例如 npx
-
-
npx skills add 仓库地址npx skills add 仓库地址 --skill 技能名
skills add crazyMarky/pentest-skills
-
只安装仓库中的指定技能,不安装全部内容,例如npx skills add crazyMarky/pentest-skills --skill sql-injection --skill xss-scan。
-
全局安装技能,安装后所有项目和 AI 助手都可以使用,例如 npx skills add yaklang/hack-skills -g。
npx skills add 仓库地址 -g-
将技能直接安装到指定的 AI 助手中,例如 npx skills add 0xShe/PHP-Code-Audit-Skill -a claude-code -a cursor。
-
npx skills add 仓库地址 -a 助手名
-
-
网络安全 Skills 仓库列表 -
https://github.com/ljagiello/ctf-skills
专为 AI Agent 设计的 CTF 解题技能集,覆盖 Web、AI/ML、密码学等多类型赛题的攻击技术与 Payload,适合自动化完成 CTF 比赛题目。 https://github.com/3stoneBrother/code-audit
支持 9 种语言、55 + 漏洞类型的专业白盒代码安全审计 Skill,具备多 Agent 并行分析与攻击链自动构建能力,可辅助大规模代码审计工作。
https://github.com/0xShe/PHP-Code-Audit-Skill
面向 PHP Web 的全流程白盒代码审计 Skill 集合,覆盖路由枚举、数据流追踪到 20 + 类漏洞的证据驱动审计,适合 PHP 项目的漏洞排查。 https://github.com/RuoJi6/java-audit-skills
专注 Java Web 代码审计的 Claude Skills 集合,支持多框架路由提取、调用链追踪与 SQL 注入 / XXE 等漏洞自动化审计,适配主流 Java Web 项目。 https://github.com/fr33d3m0n/threat-modeling
AI 原生的软件威胁建模与风险分析 Skill,基于 LLM 驱动的 8 阶段工作流,覆盖 OWASP Top 10 与渗透测试全流程,可辅助完成安全威胁评估。
https://github.com/yaklang/hack-skills
面向 AI Agent 的实战黑客技能知识库,涵盖 Web、AD 攻击、二进制利用、逆向等 14 个安全领域的 100 + 深度技能,适合搭建通用安全攻防 Agent。
https://github.com/crazyMarky/pentest-skills
专为 Claude Code 设计的模块化渗透测试技能集,让用户用自然语言驱动端口扫描、SQL 注入、XSS 等专业渗透测试任务,降低渗透测试的操作门槛。
-
夜雨聆风