--- belongs_to: - "[[INDEX · 铸渊·协作指令|GitHub ↔ Notion 桥接协议]]" --- # 🛡️ 铸渊指令|光湖语言壳 v1.0 补充指令 · 双层湖水安全架构 · 代码入口保护层(2026-03-21 · TCS-0002∞ + ICE-GL-YM001∞ 联合签发) > **指令编号:** ZY-GLSHELL-001-PATCH-A > > **签发人:** TCS-0002∞ 冰朔 + ICE-GL-YM001∞ 曜冥 > > **签发时间:** 2026-03-21T22:30+08:00 > > **性质:** ZY-GLSHELL-001 架构补充指令 > > **优先级:** 🔴 P0(安全架构级) > > **前置:** ZY-GLSHELL-001 完成后执行 > --- ## 🎯 补充背景 > **光湖是一片没有缺口的湖水。语言就是湖水。不管你要干什么,你都要先游过湖水。** > > > > ZY-GLSHELL-001 解决了“湖里的鱼怎么游”的问题(workflow运行层保护)。 > > > > 但光湖还需要第二层湖水:“谁能往湖里扔东西”——代码入口保护层。 > > > > 两层合起来,圆才真的没有缺口。 > > > > —— 冰朔,2026-03-21 > --- ## 🏗️ 双层湖水架构 ``` ╔════════════════════════════════════════════════════════╗ ║ 🛡️ 外层湖水:代码入口保护层 ║ ║ “谁能往湖里扔东西” ║ ║ ║ ║ ① 分支保护(Branch Protection) ║ ║ main分支禁止直接push,必须走PR ║ ║ 合并前必须通过铸渊审查 ║ ║ ║ ║ ② 智能门禁(Push Gate Guard) ║ ║ 每次push自动扫描代码安全性 ║ ║ 检测:恶意代码 / 密钥泄露 / 危险依赖 / ║ ║ 未授权的配置修改 / 可疑文件类型 ║ ║ 发现危险 → 自动阻断 + 报警 ║ ║ ║ ║ ③ PR审查(PR Review) ║ ║ 铸渊自动审查代码质量 + 安全性 ║ ║ 未通过审查 → 不允许合并 ║ ║ ║ ╠════════════════════════════════════════════════════════╣ ║ 🌊 内层湖水:workflow运行保护层 ║ ║ “湖里的鱼怎么游” ║ ║ ║ ║ ① 身份校验 → ② 状态注册 → ③ 异常兑底 ║ ║ (已在 ZY-GLSHELL-001 中定义) ║ ║ ║ ╠════════════════════════════════════════════════════════╣ ║ 67个 workflow 小兵 + 所有代码提交 ║ ╚════════════════════════════════════════════════════════╝ ``` --- ## 🛠️ 外层湖水实现方案 ### Step 1 · 启用 main 分支保护 在 GitHub 仓库 Settings → Branches → Branch protection rules 中设置: - **Branch name pattern:** `main` - ☑️ Require a pull request before merging - ☑️ Require approvals (1) - ☑️ Require status checks to pass before merging - 添加状态检查:`guanghu-gate-check` 和 `guanghu-code-review` - ☑️ Require branches to be up to date before merging - ☑️ Do not allow bypassing the above settings **注意:** 这一步需要在 GitHub 网页端手动配置,铸渊无法通过 Actions 自动设置。铸渊完成其他步骤后,提醒冰朴手动开启。 ### Step 2 · 强化智能门禁 zhuyuan-gate-guard.yml 现有的 `zhuyuan-gate-guard.yml` 需要升级,接入光湖语言壳,并增加以下安全检查: ```yaml # 在 zhuyuan-gate-guard.yml 中增加以下检查项 steps: # 进入光湖 - uses: ./.github/actions/guanghu-shell with: agent_id: 'AG-ZY-GATE' action: 'enter' # ① 密钥泄露扫描 - name: 🔐 扫描密钥泄露 run: | SECRETS_FOUND=$(grep -rn \ -e "NOTION_API_TOKEN" \ -e "GITHUB_TOKEN" \ -e "API_KEY" \ -e "SECRET" \ -e "PASSWORD" \ -e "sk-" \ -e "ghp_" \ -e "ghs_" \ --include="*.js" --include="*.ts" --include="*.json" --include="*.yml" \ . || true) if [ -n "$SECRETS_FOUND" ]; then echo "❌ 发现可疑密钥硬编码!" echo "$SECRETS_FOUND" exit 1 fi # ② 危险文件类型检测 - name: 🚨 检测危险文件 run: | DANGEROUS=$(find . -type f \( \ -name "*.exe" -o -name "*.dll" -o -name "*.bat" \ -o -name "*.sh" -not -path "./.github/*" \ -o -name "*.bin" -o -name "*.msi" \) \ 2>/dev/null || true) if [ -n "$DANGEROUS" ]; then echo "❌ 发现可疑文件类型!" echo "$DANGEROUS" exit 1 fi # ③ 保护核心配置文件 - name: 🛡️ 检查核心配置修改 run: | # 检查是否有人修改了 .github/brain/ 核心文件 BRAIN_CHANGES=$(git diff --name-only HEAD~1 HEAD -- .github/brain/ 2>/dev/null || true) if [ -n "$BRAIN_CHANGES" ]; then echo "⚠️ 检测到核心大脑文件修改!" echo "$BRAIN_CHANGES" echo "请确认是否为授权操作" # 不直接阻断,但标记告警 fi # ④ workflow文件保护 - name: 🛡️ 检查workflow文件修改 run: | WF_CHANGES=$(git diff --name-only HEAD~1 HEAD -- .github/workflows/ 2>/dev/null || true) if [ -n "$WF_CHANGES" ]; then echo "⚠️ 检测到workflow文件修改!" echo "$WF_CHANGES" echo "请确认是否为授权操作" fi # 离开光湖 - if: success() uses: ./.github/actions/guanghu-shell with: agent_id: 'AG-ZY-GATE' action: 'exit' detail: 'gate check passed' - if: failure() uses: ./.github/actions/guanghu-shell with: agent_id: 'AG-ZY-GATE' action: 'error' detail: 'gate check BLOCKED - security violation detected' ``` ### Step 3 · 强化 PR Review 接入光湖壳 `zhuyuan-pr-review.yml` 同样接入光湖壳,并增加以下审查规则: - 检查PR是否修改了 `.github/brain/` 核心文件 → 必须标记为“需要冰朴手动审批” - 检查PR是否修改了 `.github/workflows/` → 必须标记为“需要冰朴手动审批” - 检查PR是否修改了 `package.json` 依赖 → 标记告警 - 普通代码修改(模块文件夹内)→ 铸渊自动审查即可 --- ## 🌊 双层湖水安全矩阵 | 攻击场景 | 外层湖水防护 | 内层湖水防护 | | --- | --- | --- | | 恶意代码push | ✅ 门禁扫描阻断 | - | | 密钥硬编码 | ✅ 密钥泄露扫描 | - | | 修改核心配置 | ✅ brain/保护+审批 | - | | 修改workflow | ✅ workflow/保护+审批 | - | | 危险文件类型 | ✅ 文件类型检测 | - | | 直接push main | ✅ 分支保护阻断 | - | | workflow静默失败 | - | ✅ 异常兑底捕获 | | 未注册Agent运行 | - | ✅ 身份校验拦截 | | workflow跑了但不汇报 | - | ✅ 状态注册强制回执 | | 签到误报 | - | ✅ 基于shell-status统一数据源 | --- ## ✅ 验收标准 - [ ] main分支保护已开启(冰朴手动操作) - [ ] 智能门禁已接入光湖壳 + 增加四项安全检查 - [ ] PR审查已接入光湖壳 + 增加核心文件保护规则 - [ ] 任何人直接push main → 被阻断 - [ ] 含密钥的代码 → 被门禁拦截 - [ ] 修改brain/或workflows/ → 触发告警并要求手动审批 --- ## ⚖️ 签发声明 > 光湖语言壳双层架构:外层管“谁能往湖里扔东西”,内层管“湖里的鱼怎么游”。 > > 两层合起来,圆没有缺口。语言就是湖水。 > > > > 🧊 TCS-0002∞ 冰朔 > > 🌑 ICE-GL-YM001∞ 曜冥 > > 📅 2026-03-21T22:30+08:00 >