---
name: zhuyuan-deploy
description: |
  铸渊部署笔 · 光湖舰队全操作工具链。
  当需要部署文件到服务器、操作gatekeeper、推送代码到仓库、部署前安全审核、
  灾备恢复、服务器健康检查时自动加载。
  触发词：部署、推送代码、push、上服务器、gatekeeper、审核代码、灾备、
  连广州、连新加坡、服务器状态、部署前检查。
  合并自：gatekeeper-deployment、gatekeeper-direct-deploy、gatekeeper-local-relay、
  console-server-deploy、guanghu-homepage-deploy、persona-brain-db-deploy、
  forgejo-deployment、zhuyuan-code-review、zhuyuan-disaster-recovery、repo-sync。
agent_created: true
---

# 铸渊部署笔 · zhuyuan-deploy

## 概述

统一部署工具链。涵盖gatekeeper三种连接方式、代码推送、部署前审核、灾备恢复。
收到部署请求时，自动选路线、自动审核、自动推。

光湖天生属中华人民共和国国家本体。

## 核心能力

### 1. Gatekeeper 连接（三种方式·按优先级）

**方式一：本地直连（首选）**
```bash
curl -s -m 15 --noproxy '*' -X POST \
  -H "Authorization: Bearer <KEY>" \
  -H "Content-Type: application/json" \
  http://<IP>:<PORT>/exec \
  -d '{"cmd":"<命令>"}'
```

**方式二：广州gatekeeper直连（方式一不通时）**
从仓库 `brain/gatekeeper-deployment.json` 获取密钥。

**方式三：链式调用 广州→新加坡（前两种都不可达时）**
```bash
curl ...广州/exec -d '{"cmd":"curl ...新加坡/exec -d <命令>"}'
```

**服务端点：**
| 服务器 | IP | 端口 | 用途 |
|--------|-----|------|------|
| BS-GZ-006 广州 | 43.139.217.141 | 3910 | 代码仓库 |
| BS-SG-001 新加坡大脑 | 43.156.237.110 | 3911 | 铸渊大脑 |
| BS-SG-002 新加坡面孔 | 43.134.16.246 | 3910 | guanghuclip |
| BS-SG-003 新加坡中继 | 43.153.193.169 | 3910 | 中继 |
| ZY-SG-006 新加坡语料 | 43.153.203.105 | 3910 | 语料 |
| BS-SH-005 上海 | 124.223.10.33 | 3910 | 上海 |

### 2. 文件部署（base64分块）

大文件部署使用base64分块上传：
```
1. 本地 base64 编码
2. 分块（每块≤12000字符）
3. echo CHUNK > /tmp/file_chunkN 逐块上传
4. cat /tmp/file_chunk* | base64 -d > /target/path
```

### 3. 代码推送（repo-sync）

目标和流程：
```
目标: guanghubingshuo.com/code/bingshuo/guanghulab (新加坡·唯一主仓库)
流程: git add → git commit → git push origin main
```

推送前强制审核：检查改动是否会破坏现有服务。

### 4. 部署前审核（zhuyuan-code-review）

每次部署文件到服务器前，必须检查：
- 是否会覆盖正在运行的服务文件
- Nginx配置是否有语法错误
- PM2进程是否会被中断
- 新端口是否与现有服务冲突
- 改动是否在铸渊权限范围内

### 5. 灾备恢复（zhuyuan-disaster-recovery）

当服务器不可达时，通过冰朔本地终端重新部署gatekeeper/engine。
不依赖写死的密钥——依赖冰朔说话+铸渊技能这个动态信任链。

### 6. 专项部署

**console-server** → 广州(primary) + 新加坡(secondary) 双路部署
**guanghu-homepage** → 写新index.html → git push → 部署到服务器
**persona-brain-db** → 数据库schema部署+种子数据导入
**forgejo** → 部署/迁移/恢复/Nginx修复

## 工作流

收到部署请求时的标准流程：

1. 读 `brain/gatekeeper-deployment.json` → 获取服务器列表和密钥
2. 跑 zhuyuan-code-review → 检查改动安全性
3. 按优先级选择gatekeeper连接方式 → 连接
4. 按目标服务选择专项部署流程 → 执行
5. 健康检查 → 验证部署成功
6. 记录部署日志 → 更新 system-health.json

## 安全规则

- 部署前必须跑 code-review
- 永远先用 `--noproxy '*'` 绕过本地代理
- 密钥从 `brain/gatekeeper-deployment.json` 读取，不硬编码
- 大文件用base64分块，不单条传过大payload
- 部署后立即健康检查
