Install
openclaw skills install @thcjp/go-security-vulnerability-free使用 govulncheck 识别 Go 模块安全漏洞的基础能力,覆盖漏洞 扫描、风险评级与基础修复建议. 核心能力: - 基于 govulncheck 的漏洞扫描 - 漏洞风险评级(高/中/低) - 基础修复建议(依赖升级路径) 适用场景: - 安全检测、合规审计、漏洞扫描 - 独立开发者与小型团队的 Go 项目安全维护 - 自动化工作流中的周期性安全检查 差异化:基础版聚焦 govulncheck 的基础扫描与评级,去除了高级版的批量修复、SBOM 生成与深度调用链分析能力.
openclaw skills install @thcjp/go-security-vulnerability-free详细的输入输出格式请参考下方章节说明。
| 场景 | 输入 | 输出 |
|---|---|---|
| 项目安全扫描 | Go 模块根目录 | 漏洞清单与风险评级 |
| 依赖升级评估 | go.mod 文件 | 漏洞修复所需的依赖版本 |
| 漏洞排查 | 特定 CVE 编号 | 该漏洞在本项目中的影响范围 |
| 合规检查 | 模块路径 | 基础合规报告(漏洞数量与等级) |
不适用于:批量自动化修复(如全量 go.mod 改写)、SBOM(软件物料清单)生成、深度调用链分析、自定义漏洞规则、渗透测试等场景(请使用高级版)
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| module_path | string | 是 | Go 模块根目录路径 |
| scan_mode | string | 否 | 扫描模式,可选: source/binary,默认: source |
| severity_filter | string | 否 | 风险等级过滤,可选: high/medium/low/all,默认: all |
| output_format | string | 否 | 输出格式,可选: markdown/json/text,默认: markdown |
| strict_level | string | 否 | 审查严格度,可选: strict/normal/loose,默认: normal |
{
"success": true,
"data": {
"overall_grade": "C",
"total_score": 65,
"max_score": 100,
"summary": "发现 3 个漏洞:1 个高危、1 个中危、1 个低危",
"vulnerabilities": [
{
"id": "CVE-2024-12345",
"module": "相关技术文档
"current_version": "v1.2.0",
"fixed_version": "v1.2.5",
"severity": "high",
"cvss_score": 8.5,
"called": true,
"description": "该漏洞允许攻击者通过特制输入触发缓冲区溢出",
"fix_suggestion": "升级 相关技术文档 到 v1.2.5 或更高版本"
},
{
"id": "GHSA-xy12-abcd",
"module": "相关技术文档
"current_version": "v0.5.0",
"fixed_version": "v0.5.2",
"severity": "medium",
"cvss_score": 5.3,
"called": false,
"description": "存在信息泄露风险,仅在特定配置下可被利用",
"fix_suggestion": "升级 相关技术文档 到 v0.5.2"
}
],
"stats": {
"total": 3,
"high": 1,
"medium": 1,
"low": 1,
"called_count": 2
}
},
"error": null
}
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| govulncheck 未安装 | 未执行 go install golang.org/x/vuln/cmd/govulncheck@latest | 提示用户运行安装命令后检查网络连接和配置后重试 |
| 不是 Go 模块 | 当前目录无 go.mod | 提示切换到 Go 模块根目录或执行 go mod init |
| 网络错误 | 漏洞数据库拉取失败 | 检查网络连接和配置后重试,建议配置 GOProxy 代理 |
| 扫描超时 | 模块依赖过多导致扫描超时 | 建议缩小扫描范围或使用 strict_level=loose 跳过低危 |
| 依赖版本不存在 | 修复建议中的 fixed_version 不存在 | 提示用户检查依赖仓库可用版本 |
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| Go 工具链 | 运行时 | 必需 | 官方下载或系统包管理器 |
| govulncheck | 命令行工具 | 必需 | go install golang.org/x/vuln/cmd/govulncheck@latest |
| LLM API | API | 必需 | 由Agent内置LLM提供 |
输入: module_path=./myproject, severity_filter=all
处理: 执行 govulncheck ./... -> 解析结果 -> 按风险等级分类 -> 匹配修复路径
输出: 发现 3 个漏洞,1 个高危需要立即升级 相关技术文档
输入: module_path=./myproject, severity_filter=high
处理: 扫描后过滤仅保留 high 等级漏洞
输出: 1 个高危漏洞 CVE-2024-12345,建议升级到 v1.2.5
A: 查看使用流程章节,确认已安装 Go 与 govulncheck,然后按"输入格式"提供 module_path 即可.
A: 请执行 go install golang.org/x/vuln/cmd/govulncheck@latest 安装,并将 $GOPATH/bin 加入 PATH 环境变量.
A: 不支持。基础版仅提供扫描与修复建议,不会自动改写 go.mod。如需批量自动修复、SBOM 生成、深度调用链分析,请升级至高级版.
A: 这些属于高级版能力。基础版聚焦 govulncheck 的基础扫描与评级,如需自动化的修复流程、软件物料清单与深度调用链分析,请升级至高级版.
| 错误场景(续) | 原因 | 处理方式 |
|---|---|---|
| LLM响应超时或无响应 | 网络延迟或模型负载过高 | 检查网络连接和配置后重试;确认Agent平台LLM服务正常 |
| 输入内容格式不正确 | 用户输入不符合skill预期格式 | 检查输入是否符合skill使用说明中的格式要求,参考示例章节 |
| 执行结果与预期不符 | 指令描述不够明确或上下文不足 | 提供更详细的指令描述,补充必要的上下文信息 |
| 命令执行失败 | 运行环境不满足要求或权限不足 | 确认运行环境符合依赖说明中的要求;检查命令权限设置 |