← ClaudeAtlas

github-safe-publishlisted

将本地 Git 项目安全地发布到 GitHub 公开仓库。包含两层脱敏扫描 (确定性规则 + AI 语义)、自动修复、备份回滚、仓库创建、SEO 优化。 Use when: "push to github", "publish to github", "开源", "推送到 GitHub", "create github repo", "发布到 github"。
zwyin/github-safe-publish · ★ 0 · Code & Development · score 78
Install: claude install-skill zwyin/github-safe-publish
# GitHub Safe Publish 将本地 Git 项目安全地发布到 GitHub 公开仓库。 ## 参数 ``` /github-safe-publish # 核心流程(脱敏+发布) /github-safe-publish --seo # 核心 + SEO 优化 /github-safe-publish --ci # 核心 + CI 生成 /github-safe-publish --seo --ci # 全部 /github-safe-publish --scan-only # 只做脱敏扫描,输出报告,不修复不发布 /github-safe-publish --dry-run # 模拟完整流程:扫描+模拟修复建议,但不做任何实际修改 ``` **参数互斥与冲突处理**: - `--scan-only` 和 `--dry-run` 不能与 `--seo` / `--ci` 组合(SEO 和 CI 只对已推送的仓库有意义,扫描模式不推送) - `--seo` 和 `--ci` 可以同时使用(完整功能模式) - 无效组合直接报错并退出 - `--dry-run` 与 `--scan-only` 的区别:`--scan-only` 只输出扫描报告;`--dry-run` 在报告基础上还会展示每个发现项的推荐修复方案(但不执行修复) **流程控制矩阵**: | 步骤 | 完整流程 | --scan-only | --dry-run | |------|---------|-------------|-----------| | Step 1: 前置检查+参数确认 | 执行 | 执行 | 执行 | | Step 2: 创建备份分支 | 执行 | 跳过 | 跳过 | | Step 3: 脱敏扫描 | 执行 | 执行 | 执行 | | Step 4: 自动修复+用户确认 | 执行 | 跳过 | 输出修复建议但不执行 | | Step 5: 仓库决策+推送 | (迭代 2) | 跳过 | 跳过 | | Step 6: 验证+报告 | (迭代 2) | 仅扫描报告 | 仅扫描报告+修复建议 | ## 前提 - 当前目录是 Git 仓库,至少有一个 commit - `gh` CLI 已安装并登录(可选,支持手动推送) - 用户确认项目可以公开(已过脱敏) ## Step 1: 前置检查 + 参数确认(集中交互 #1) 所有前置检查和参数决策集中在一次交互中完成。任何一项阻断条件不满足则停在当前步骤。 ### 1.1 自动检查(无交互) 按顺序执行以下检查,仅记录结果,不做交互: ``` 检查项: 1. 当前目录是 git 仓库? 命令:git rev-parse --is-inside-work-tree ├── 成功 → is_git_repo = true,继续 └── 失败 → is_git_repo = false,标记"需要在 1.2 中询问初始化" 2. git 仓库至少有 1 个 commit? 命令:git rev-parse HEAD ├── 成功 → has_commit = true,继续 └── 失败 → 阻断:输出"仓库没有任何 commit,需要至少一次 commit 才能创建备份分支和回滚",停止流程 3. gh CL