SuperAPI AI 工具集

safe-push

通用与其它

查看项目

更新于 10-16 01:10

技能介绍

用途:safe-push 是 GitHub 仓库的推送前卫生检查技能,在用户要求推送代码(尤其是公开仓库)时触发,用于在推送前发现 PII、密钥和敏感数据。触发方式包括用户说“push”“safe push”“push to GitHub”或运行 /safe-push。

主要能力:先对仓库分类,公开仓库执行全部检查,私有仓库仅做 PII 扫描。扫描基于个人模式清单 ~/.claude/safe-push-blocklist,覆盖客户名称、内部代号、主机名、邮箱、电话、地址、API 密钥与令牌、私有 IP、私钥、Slack 令牌与频道 ID、GA4/GTM 跟踪 ID 等。默认扫描目标分支的 diff,/safe-push --full 则扫描全部已跟踪文件。同一套模式同时用于 diff 内容和提交信息(标题与正文)。还会审计提交信息,标记个人信息、私有仓库名和含糊信息,并建议交互式 rebase 清理。推送时按分支或提交数量做限速,避免触发 GitHub 批量操作检测。最后展示仓库状态、分支、提交数、完整提交信息预览和警告,等待用户确认后再推送并验证。

使用方式:先复制模板并自定义:cp safe-push-blocklist.template ~/.claude/safe-push-blocklist,再用编辑器编辑。若文件缺失,技能会警告并跳过个人模式检查。仓库本地可配置 .pii-allowlist(排除误报)和 .commit-msg-blocklist(禁止出现在公开提交信息中的词)。

适用场景:向公开仓库推送、首次推送已有仓库、周期性卫生检查,以及公开/私有仓库分离的项目。

限制:该技能不绕过全局 pre-commit 钩子,两者协同工作;公开/私有分离项目应先推开发仓库再同步后检查公开仓库;不确定时按公开仓库处理。资料未提供收费、价格、平台支持范围等信息。