返回顶部
d

dep-audit依赖审计

>

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.2.1
安全检测
已通过
785
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

dep-audit

依赖审计技能

检测并报告项目依赖树中的已知漏洞。
原生支持 npmpip (Python)Cargo (Rust)Go
无需API密钥。无需配置。只需指向项目即可。

激活条件

当用户提及以下内容时,此技能将被激活:

  • - 审计、漏洞、CVE、依赖检查、供应链、安全扫描
  • 检查依赖项、锁定文件或包是否存在问题
  • 生成SBOM(软件物料清单)

示例提示

  1. 1. 审计此项目的漏洞
  2. 检查 ~/projects 中所有仓库的已知CVE
  3. 是否有我现在应该修复的关键漏洞?
  4. 为此项目生成SBOM
  5. 此项目中哪些依赖项需要更新?
  6. 仅审计Python依赖项

权限

yaml
permissions:
exec: true # 需要运行审计CLI
read: true # 读取锁定文件
write: on-request # 当用户要求时,SBOM生成写入sbom.cdx.json
network: true # 工具获取咨询数据库

智能体工作流程

请严格按照以下顺序执行:

步骤1:检测

运行检测脚本以发现锁定文件和可用工具:

bash
bash /scripts/detect.sh <目标目录>

如果未指定目标目录,则使用当前工作目录(.)。

解析JSON输出。注意哪些生态系统有锁定文件以及哪些工具可用。

步骤2:审计每个生态系统

对于步骤1中检测到的每个生态系统:

  • - 如果审计工具可用,运行相应的脚本:
bash bash /scripts/audit-npm.sh <目录> bash /scripts/audit-pip.sh <目录> bash /scripts/audit-cargo.sh <目录> bash /scripts/audit-go.sh <目录>
  • - 如果工具缺失,告知用户需要哪个工具以及检测输出中的安装命令。跳过该生态系统并继续处理其他生态系统。

注意: yarn.lock 和 pnpm-lock.yaml 分别被检测为 yarn 和 pnpm 生态系统。v0.1.x版本仅支持npm审计(package-lock.json)。如果仅存在 yarn.lock 或 pnpm-lock.yaml,请告知用户尚不支持专用的yarn/pnpm审计,并建议手动运行 yarn audit 或 pnpm audit。

每个脚本将标准化的JSON输出到stdout。

步骤3:聚合

将所有每个生态系统的JSON结果通过管道或传递方式发送给聚合器:

bash
bash dir>/scripts/aggregate.sh result.json> ... 1>unified.json 2>report.md

聚合器将统一的JSON输出到stdout,并将Markdown报告输出到stderr
捕获两者:2>report.md 用于Markdown,1>unified.json 用于JSON。

步骤4:呈现结果

向用户展示聚合器生成的Markdown报告。突出显示:

  • - 按严重级别统计的漏洞总数
  • 首先显示关键和高危发现(这些需要关注)
  • 哪些生态系统已扫描,哪些已跳过

如果发现零漏洞:报告✅ 未发现已知漏洞。
如果未找到锁定文件:报告在 <目录> 中未找到锁定文件。此技能适用于npm、pip、Cargo和Go项目。

Discord v2 交付模式(OpenClaw v2026.2.14+)

当用户在Discord频道中时:

  • - 发送简短的第一条回复,包含总数和仅关键/高危发现。
  • 保持第一条消息在约1200字符以内,避免一开始就使用大型Markdown表格。
  • 如果Discord组件可用,包含快速操作:
- 显示完整报告 - 显示修复命令 - 生成SBOM
  • - 如果组件不可用,以编号列表形式提供相同选项。
  • 将长内容分成短块(<=15行)发送,以提高可读性。

步骤5:修复建议(仅当用户要求时)

如果用户要求修复漏洞:

  1. 1. 列出每个修复命令,包含包名、当前版本和目标版本。
  2. 建议先创建分支:git checkout -b dep-audit-fixes
  3. 在运行任何修复命令之前,请求明确确认。
  4. 切勿静默批量运行修复命令。

示例交互:

我找到了这些修复命令:
1. cd /home/user/project && npm audit fix
2. pip install requests>=2.31.0

我建议先创建一个分支:
git checkout -b dep-audit-fixes

是否运行它们?(是/否)

步骤6:SBOM(仅当用户要求时)

bash
bash /scripts/sbom.sh <目录>

报告文件位置和组件数量。

错误处理

情况行为
未找到工具打印缺失的工具 + 安装命令。继续使用可用工具。
审计工具失败
捕获stderr,报告[生态系统]的审计失败:[错误]。继续处理其他生态系统。 | | 超时(每个工具>30秒) | 当 timeout/gtimeout 可用时,报告[生态系统]审计超时,跳过。继续。 | | 无效的目标目录 | 报告目录未找到或无法访问,并停止该生态系统的扫描(不要报告虚假的干净)。 | | 未找到锁定文件 | 报告未找到锁定文件 + 列出支持的生态系统。 | | jq 不可用 | 检测无需jq即可工作。审计和聚合需要jq — 请先安装。 | | 格式错误的锁定文件 | 报告该生态系统的解析错误。继续处理其他生态系统。 |

聚合鲁棒性

  • - aggregate.sh 现在可以容忍混合输入(有效结果 + 错误对象)。
  • 无效输入对象在统一JSON中列在 errors 下,并在跳过的/错误输入Markdown部分中呈现。
  • 如果未提供有效的生态系统结果,聚合输出设置 status: error 而不是崩溃。

安全性

  • - 默认模式仅为报告。 除非您明确要求修复并确认,否则此技能绝不会修改文件。
  • 审计工具读取锁定文件 — 它们不会执行项目代码。
  • 修复命令(npm audit fix、pip install --upgrade)以建议形式打印。智能体将在运行前请求确认。
  • 此技能检查已知的咨询数据库(OSV、GitHub Advisory DB、RustSec)。它不会检测零日漏洞或运行时漏洞。
  • 除了原生审计工具所做的操作(它们查询公共咨询数据库)外,不会向第三方服务发送任何数据。
  • 无遥测。无跟踪。无回传。

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 dep-audit-1776419997 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 dep-audit-1776419997 技能

通过命令行安装

skillhub install dep-audit-1776419997

下载

⬇ 下载 dep-audit v0.2.1(免费)

文件大小: 28.65 KB | 发布时间: 2026-4-17 19:14

v0.2.1 最新 2026-4-17 19:14
Rebrand to Anvil AI. Remove CacheForge marketing copy. Normalize install commands.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部