用途:添加 CI/CD、创建工作流、审计 GitHub Actions 或修复 action 版本固定(pinning)。默认以审计和报告模式运行;只有在明确要求创建、添加或设置 CI 时才生成工作流,不会仅因缺少 .github/workflows/ 就自动生成,而是报告未找到。仅在要求修复或固定时才应用修复;需求不明确时先报告并提议修复。
创建模式:先检测项目类型,依据 package.json(Node.js/JS/TS)、go.mod(Go)、requirements.txt / pyproject.toml / setup.py(Python)、Cargo.toml(Rust)、Gemfile(Ruby)判断。对 JS/TS 项目,按 nub.lock、pnpm-lock.yaml、bun.lock/bun.lockb、yarn.lock、package-lock.json 的顺序检测包管理器;无锁文件则询问。package.json 中的 packageManager 或 devEngines.packageManager 字段优先于锁文件;Nub 以兼容模式运行在其他管理器的锁文件上,因此 nub.lock 与 pnpm-lock.yaml 并存时表示 Nub,需先检查该字段。生成工作流时读取并应用 rules/ 下全部规则,写入前按 rules/action-pinning.md 固定每个 action(含 GitHub 自有的 actions/*),用 gh api repos/{owner}/{repo}/commits/{ref} --jq '.sha' 将目标版本解析为完整 commit SHA,并在注释中保留原始版本引用。项目若提交迁移工具的迁移文件,另按 rules/migration-drift.md 添加迁移漂移任务,并提示用户将其设为必需状态检查。模板按语言路由:JS/TS 用默认模板,Go、Python、Rust、Ruby 分别加载 references/<lang>.md 中的模板;所有模板统一应用 action 固定、权限、并发等规则。
审计模式:读取 .github/workflows/ 下全部 .yml 与 .yaml 文件,对照 rules/ 每条规则审计。报告格式为 path:line — 问题 → 修复,按严重级别分组,末尾给出各级别计数与扫描文件数;需报告全部违规,不只固定和权限,还包括迁移漂移、并发、Node 版本、缓存、触发条件、矩阵和并行步骤。修复时用 gh api 查询 commit SHA 完成固定。
规则与影响级别:action 固定(HIGH)、权限(HIGH)、迁移漂移(HIGH)、并发(MEDIUM)、Node 版本(MEDIUM)、缓存(MEDIUM)、触发条件(LOW)、矩阵策略(LOW)、并行步骤(LOW)。
限制:资料未提供该技能的具体安装方式、收费或平台支持等细节;以上为资料中明确内容。