关于 prowler-ci
prowler-ci 是面向 Prowler 贡献者的技能,用于排查拉取请求检查并理解 GitHub Actions 策略。它将工作流对应到文件,并为路径筛选、变更日志门禁、冲突标记和密钥扫描等常见失败提供检查清单。
主要功能
- 01GitHub Actions 工作流索引
- 02拉取请求检查排查
- 03路径筛选行为说明
- 04变更日志与标题策略检查
- 05TruffleHog 误报处理指引
适用场景
- 01查明 UI、API 或 SDK 变更为何未触发工作流
- 02解决拉取请求标题或变更日志检查失败
- 03排查冲突标记或密钥扫描失败
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ prowler-cloud/ prowler --skill prowler-ci安装后在 Claude Code 中输入/prowler-ci确认已加载。
详细介绍
此技能涵盖的内容
遇到以下情况时,请使用此技能:
- 阅读或修改
.github/workflows/下的 GitHub Actions 工作流 - 解释 PR 检查失败的原因(标题、变更日志、冲突标记、密钥扫描)
- 确定哪些工作流会针对 UI/API/SDK 变更运行,以及原因
- 诊断路径筛选行为(工作流为何运行或未运行)
快速索引(查看位置)
- PR 模板:
.github/pull_request_template.md - PR 标题验证:
.github/workflows/conventional-commit.yml - 变更日志检查:
.github/workflows/pr-check-changelog.yml(要求在<component>/changelog.d/下提供片段) - 变更日志编译(发布时):
.github/workflows/compile-changelogs.yml - 冲突标记检查:
.github/workflows/pr-conflict-checker.yml - 密钥扫描:
.github/workflows/find-secrets.yml - 自动添加标签:
.github/workflows/labeler.yml和.github/labeler.yml - 代码审查负责人:
.github/CODEOWNERS
调试检查清单(PR 检查失败)
- 确认失败的工作流/任务(名称及
.github/workflows/下的文件)。 - 检查路径筛选器:工作流是否应该针对你修改的文件运行?
- 如果是标题检查:确认 PR 标题符合 Conventional Commits 规范。
- 如果是变更日志检查:确认对应的
<component>/changelog.d/下存在有效片段,或者添加no-changelog标签。 - 如果是冲突检查器:移除
<<<<<<<、=======、>>>>>>>标记。 - 如果是密钥检查(TruffleHog):请参阅下文。
TruffleHog 密钥扫描
TruffleHog 会扫描泄露的密钥。测试文件中常见的误报包括:
会触发 TruffleHog 的模式:
sk-*T3BlbkFJ*- OpenAI API 密钥AKIA[A-Z0-9]{16}- AWS 访问密钥ghp_*/gho_*- GitHub 令牌- 看起来像凭据的 Base64 编码字符串
测试文件的修复方法:
# BAD - looks like real OpenAI key
api_key = "sk-test1234567890T3BlbkFJtest1234567890"
# GOOD - obviously fake
api_key = "sk-fake-test-key-for-unit-testing-only"
如果 TruffleHog 检测到真实密钥:
- 立即从代码中移除该密钥
- 轮换凭据(它现在已存在于 git 历史记录中)
- 可以考虑对已知误报使用
.trufflehog-ignore(很少需要)
注意事项
- 让
prowler-pr专注于创建 PR 和填写模板。 - 使用
prowler-ci处理适用于 PR 的 CI 策略和门禁。
评论
支持 Markdown