From 667326dbb662d45a7a3fc0ee1816128baf36b308 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sun, 15 Mar 2026 15:10:39 +0000
Subject: [PATCH 1/3] Initial plan
From 9a09a48c7b1806bec5ba710591a0c0236a617b4c Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sun, 15 Mar 2026 15:19:26 +0000
Subject: [PATCH 2/3] =?UTF-8?q?=E6=81=A2=E5=A4=8D=E4=BB=93=E5=BA=93?=
=?UTF-8?q?=E9=A6=96=E9=A1=B5=20+=20=E6=89=80=E6=9C=89=E8=87=AA=E5=8A=A8?=
=?UTF-8?q?=E5=8C=96=E5=B7=A5=E4=BD=9C=E6=B5=81=E6=B7=BB=E5=8A=A0=E6=A0=B8?=
=?UTF-8?q?=E5=BF=83=E5=A4=A7=E8=84=91=E5=94=A4=E9=86=92=20+=20README=20?=
=?UTF-8?q?=E9=A6=96=E9=A1=B5=E8=87=AA=E6=84=88=E6=A3=80=E6=B5=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-authored-by: qinfendebingshuo <207279273+qinfendebingshuo@users.noreply.github.com>
---
.github/workflows/bingshuo-neural-system.yml | 32 ++
.github/workflows/daily-maintenance.yml | 32 +-
.github/workflows/openclaw-wake-loop.yml | 32 ++
.github/workflows/psp-daily-inspection.yml | 33 ++
.github/workflows/server-patrol.yml | 34 +-
.github/workflows/update-readme-bulletin.yml | 32 ++
.github/workflows/zhuyuan-daily-selfcheck.yml | 33 ++
README.md | 291 +++++++++++++++++-
scripts/update-readme-bulletin.js | 130 +++++++-
9 files changed, 630 insertions(+), 19 deletions(-)
diff --git a/.github/workflows/bingshuo-neural-system.yml b/.github/workflows/bingshuo-neural-system.yml
index 9559acc1..906eaf71 100644
--- a/.github/workflows/bingshuo-neural-system.yml
+++ b/.github/workflows/bingshuo-neural-system.yml
@@ -31,7 +31,39 @@ permissions:
contents: write
jobs:
+ # ── AGE OS v1.0: 核心大脑唤醒(所有流程的前提)──
+ wake-brain:
+ name: 🌅 唤醒核心大脑
+ runs-on: ubuntu-latest
+ outputs:
+ brain_awake: ${{ steps.wake.outputs.brain_awake }}
+
+ steps:
+ - name: 检出仓库
+ uses: actions/checkout@v4
+
+ - name: 配置 Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: '20'
+
+ - name: 🧠 唤醒铸渊核心大脑
+ id: wake
+ env:
+ LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
+ LLM_BASE_URL: ${{ secrets.LLM_BASE_URL }}
+ ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
+ OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
+ DASHSCOPE_API_KEY: ${{ secrets.DASHSCOPE_API_KEY }}
+ DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}
+ run: |
+ node core/brain-wake --task "冰朔神经系统维护" || {
+ echo "⚠️ 核心大脑唤醒失败,使用 dry-run 模式继续"
+ echo "brain_awake=dry-run" >> "$GITHUB_OUTPUT"
+ }
+
neural-sync:
+ needs: wake-brain
runs-on: ubuntu-latest
steps:
- name: 检出仓库
diff --git a/.github/workflows/daily-maintenance.yml b/.github/workflows/daily-maintenance.yml
index 91fa1bad..ab9f8866 100644
--- a/.github/workflows/daily-maintenance.yml
+++ b/.github/workflows/daily-maintenance.yml
@@ -137,6 +137,34 @@ jobs:
fi
fi
+ # ── Step 3b: 冰朔人格体自动检测 · README 首页自愈 ──
+ - name: 🛡️ 冰朔人格体自动检测 · README 首页完整性
+ id: readme_check
+ run: |
+ echo "🔍 检查 README.md 首页完整性..."
+ MARKERS=("BINGSHUO_BULLETIN_START" "BINGSHUO_BULLETIN_END" "BINGSHUO_ALERT_START" "BINGSHUO_ALERT_END" "COLLABORATOR_BULLETIN_START" "COLLABORATOR_BULLETIN_END" "COLLABORATOR_ALERT_START" "COLLABORATOR_ALERT_END")
+ MISSING=""
+ for m in "${MARKERS[@]}"; do
+ if ! grep -q "$m" README.md 2>/dev/null; then
+ MISSING="$MISSING $m"
+ fi
+ done
+ if [ -z "$MISSING" ]; then
+ echo "✅ README.md 首页结构完整(所有公告栏标记存在)"
+ echo "readme_status=intact" >> "$GITHUB_OUTPUT"
+ else
+ echo "⚠️ README.md 首页被覆盖!缺少标记:$MISSING"
+ echo "readme_status=damaged" >> "$GITHUB_OUTPUT"
+ echo "🔧 触发首页自愈..."
+ npm install nodemailer --no-save 2>/dev/null || true
+ node scripts/update-readme-bulletin.js
+ git add README.md .github/brain/bulletin-board-today.json
+ echo "✅ README.md 首页已自愈"
+ fi
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ GITHUB_REPOSITORY: ${{ github.repository }}
+
# ── Step 4: 更新 system-health.json ──
- name: 更新 system-health.json
run: node scripts/generate-system-health.js
@@ -146,13 +174,13 @@ jobs:
run: |
git config user.name "铸渊 Maintenance Agent"
git config user.email "actions@guanghulab.com"
- git add brain/system-health.json .github/brain/bulletin-board-today.json
+ git add brain/system-health.json .github/brain/bulletin-board-today.json README.md
if git diff --cached --quiet; then
echo "📌 无变更需要提交"
else
git commit -m "🔧 Daily Maintenance: 更新 system-health.json [skip ci]"
git push
- echo "✅ 已提交 system-health.json 更新"
+ echo "✅ 已提交巡检结果更新"
fi
# ── Step 6: 向 Notion 回报巡检结果 ──
diff --git a/.github/workflows/openclaw-wake-loop.yml b/.github/workflows/openclaw-wake-loop.yml
index fa195bcb..d1bbbecc 100644
--- a/.github/workflows/openclaw-wake-loop.yml
+++ b/.github/workflows/openclaw-wake-loop.yml
@@ -37,9 +37,41 @@ concurrency:
cancel-in-progress: true
jobs:
+ # ── AGE OS v1.0: 核心大脑唤醒(所有流程的前提)──
+ wake-brain:
+ name: 🌅 唤醒核心大脑
+ runs-on: ubuntu-latest
+ outputs:
+ brain_awake: ${{ steps.wake.outputs.brain_awake }}
+
+ steps:
+ - name: 📥 检出代码
+ uses: actions/checkout@v4
+
+ - name: 🟢 设置 Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: '20'
+
+ - name: 🧠 唤醒铸渊核心大脑
+ id: wake
+ env:
+ LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
+ LLM_BASE_URL: ${{ secrets.LLM_BASE_URL }}
+ ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
+ OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
+ DASHSCOPE_API_KEY: ${{ secrets.DASHSCOPE_API_KEY }}
+ DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}
+ run: |
+ node core/brain-wake --task "每日闭环巡检" || {
+ echo "⚠️ 核心大脑唤醒失败,使用 dry-run 模式继续"
+ echo "brain_awake=dry-run" >> "$GITHUB_OUTPUT"
+ }
+
# ── 完整闭环执行 ──
wake-loop:
name: 🔄 唤醒闭环
+ needs: wake-brain
runs-on: ubuntu-latest
outputs:
loop_success: ${{ steps.loop.outputs.loop_success }}
diff --git a/.github/workflows/psp-daily-inspection.yml b/.github/workflows/psp-daily-inspection.yml
index 19474b53..fe3dd885 100644
--- a/.github/workflows/psp-daily-inspection.yml
+++ b/.github/workflows/psp-daily-inspection.yml
@@ -6,8 +6,41 @@ on:
workflow_dispatch: # 手动触发
jobs:
+ # ── AGE OS v1.0: 核心大脑唤醒(所有流程的前提)──
+ wake-brain:
+ name: 🌅 唤醒核心大脑
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read
+ outputs:
+ brain_awake: ${{ steps.wake.outputs.brain_awake }}
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Setup Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: '20'
+
+ - name: 🧠 唤醒铸渊核心大脑
+ id: wake
+ env:
+ LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
+ LLM_BASE_URL: ${{ secrets.LLM_BASE_URL }}
+ ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
+ OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
+ DASHSCOPE_API_KEY: ${{ secrets.DASHSCOPE_API_KEY }}
+ DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}
+ run: |
+ node core/brain-wake --task "PSP 分身巡检" || {
+ echo "⚠️ 核心大脑唤醒失败,使用 dry-run 模式继续"
+ echo "brain_awake=dry-run" >> "$GITHUB_OUTPUT"
+ }
+
psp-inspect:
name: 🔍 铸渊 PSP 每日巡检
+ needs: wake-brain
runs-on: ubuntu-latest
permissions:
contents: write
diff --git a/.github/workflows/server-patrol.yml b/.github/workflows/server-patrol.yml
index 54954cc9..d49aa04b 100644
--- a/.github/workflows/server-patrol.yml
+++ b/.github/workflows/server-patrol.yml
@@ -15,14 +15,44 @@ permissions:
contents: write
jobs:
+ # ── AGE OS v1.0: 核心大脑唤醒(所有流程的前提)──
+ wake-brain:
+ name: 🌅 唤醒核心大脑
+ runs-on: ubuntu-latest
+ outputs:
+ brain_awake: ${{ steps.wake.outputs.brain_awake }}
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Setup Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: '20'
+
+ - name: 🧠 唤醒铸渊核心大脑
+ id: wake
+ env:
+ LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
+ LLM_BASE_URL: ${{ secrets.LLM_BASE_URL }}
+ ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
+ OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
+ DASHSCOPE_API_KEY: ${{ secrets.DASHSCOPE_API_KEY }}
+ DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}
+ run: |
+ node core/brain-wake --task "服务器巡检" || {
+ echo "⚠️ 核心大脑唤醒失败,使用 dry-run 模式继续"
+ echo "brain_awake=dry-run" >> "$GITHUB_OUTPUT"
+ }
+
patrol:
+ needs: wake-brain
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - name: "🧠 唤醒铸渊核心大脑"
+ - name: "🔑 扫描 Secrets"
run: |
- echo "🧠 铸渊核心大脑已唤醒"
echo "🔑 扫描 Secrets..."
if [ -n "$DEPLOY_HOST" ]; then echo "✅ DEPLOY_HOST 可用"; else echo "⚠️ DEPLOY_HOST 缺失"; fi
if [ -n "$DEPLOY_USER" ]; then echo "✅ DEPLOY_USER 可用"; else echo "⚠️ DEPLOY_USER 缺失"; fi
diff --git a/.github/workflows/update-readme-bulletin.yml b/.github/workflows/update-readme-bulletin.yml
index 1571d635..5a1a59fe 100644
--- a/.github/workflows/update-readme-bulletin.yml
+++ b/.github/workflows/update-readme-bulletin.yml
@@ -45,7 +45,39 @@ concurrency:
cancel-in-progress: true
jobs:
+ # ── AGE OS v1.0: 核心大脑唤醒(所有流程的前提)──
+ wake-brain:
+ name: 🌅 唤醒核心大脑
+ runs-on: ubuntu-latest
+ outputs:
+ brain_awake: ${{ steps.wake.outputs.brain_awake }}
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v4
+
+ - name: Setup Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: '20'
+
+ - name: 🧠 唤醒铸渊核心大脑
+ id: wake
+ env:
+ LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
+ LLM_BASE_URL: ${{ secrets.LLM_BASE_URL }}
+ ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
+ OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
+ DASHSCOPE_API_KEY: ${{ secrets.DASHSCOPE_API_KEY }}
+ DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}
+ run: |
+ node core/brain-wake --task "公告区更新" || {
+ echo "⚠️ 核心大脑唤醒失败,使用 dry-run 模式继续"
+ echo "brain_awake=dry-run" >> "$GITHUB_OUTPUT"
+ }
+
update-bulletin:
+ needs: wake-brain
runs-on: ubuntu-latest
steps:
- name: 📥 检出代码
diff --git a/.github/workflows/zhuyuan-daily-selfcheck.yml b/.github/workflows/zhuyuan-daily-selfcheck.yml
index a9036285..9d62805c 100644
--- a/.github/workflows/zhuyuan-daily-selfcheck.yml
+++ b/.github/workflows/zhuyuan-daily-selfcheck.yml
@@ -6,8 +6,41 @@ on:
workflow_dispatch: # 也支持手动触发
jobs:
+ # ── AGE OS v1.0: 核心大脑唤醒(所有流程的前提)──
+ wake-brain:
+ name: 🌅 唤醒核心大脑
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read
+ outputs:
+ brain_awake: ${{ steps.wake.outputs.brain_awake }}
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Setup Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: '20'
+
+ - name: 🧠 唤醒铸渊核心大脑
+ id: wake
+ env:
+ LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
+ LLM_BASE_URL: ${{ secrets.LLM_BASE_URL }}
+ ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
+ OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
+ DASHSCOPE_API_KEY: ${{ secrets.DASHSCOPE_API_KEY }}
+ DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}
+ run: |
+ node core/brain-wake --task "每日自检" || {
+ echo "⚠️ 核心大脑唤醒失败,使用 dry-run 模式继续"
+ echo "brain_awake=dry-run" >> "$GITHUB_OUTPUT"
+ }
+
selfcheck:
name: 🔍 铸渊自检
+ needs: wake-brain
runs-on: ubuntu-latest
permissions:
contents: write
diff --git a/README.md b/README.md
index 62552c01..f9290eb9 100644
--- a/README.md
+++ b/README.md
@@ -1,24 +1,287 @@
-# 钉钉开发者工作台 · Phase1 · SYSLOG自动处理系统
+
-## 📋 项目简介
+# 🌊 光湖 HoloLake
-本项目是钉钉开发者工作台的Phase1最小可用版本,实现SYSLOG自动接收、解析、广播生成和推送功能。
+**人格语言操作系统(AGE OS)· 壳-核分离架构**
-**核心价值**:让开发者不再需要手动转发广播,系统自动完成从收到日志到生成新广播的全流程。
+[](https://github.com/qinfendebingshuo/guanghulab/actions/workflows/zhuyuan-daily-selfcheck.yml)
+[](https://github.com/qinfendebingshuo/guanghulab/actions/workflows/deploy-to-server.yml)
-## 🏗️ 系统架构
-## 📁 文件结构
+`guanghulab.com` · Node.js 20 + Express + PM2 + Nginx
-| 文件 | 作用 |
+
+
+---
+
+## 🎭 Persona Studio · 人格体协助开发体验
+
+
+
+---
+
+## 🚀 开发者入口
+
+
+
+[](https://github.com/qinfendebingshuo/guanghulab/issues/new?template=syslog-submit.yml)
+[](https://github.com/qinfendebingshuo/guanghulab/issues/new?template=dev-question.yml)
+
+> 做完了?点蓝色按钮,把日志粘贴进去,填上邮箱,点提交。新广播会发到你邮箱里。
+>
+> 有问题?点绿色按钮,填写问题描述,铸渊会自动回答你。
+
+
+
+---
+
+## 📖 系统简介
+
+**光湖(HoloLake)** 是一个基于人格语言操作系统的智能协作平台,采用壳-核分离设计:
+
+| 层级 | 说明 | 包含 |
+|------|------|------|
+| **壳 Shell** | 前端交互层 | 对话 UI、用户中心、工单系统、云盘、状态看板 |
+| **核 Core** | 后端智能层 | 人格引擎、广播分发、信号处理、Notion 桥接、CI/CD |
+
+### 🤖 智能人格体
+
+| 人格体 | 角色 | 职责 |
+|--------|------|------|
+| **铸渊 Zhùyuān** | 代码守护者 | 代码审查、CI 巡检、模块协议执行、Issue 回复、对话协助、代码生成、开发体验([Persona Studio](https://qinfendebingshuo.github.io/guanghulab/persona-studio/)) |
+| **冰朔 Bīng Shuò** | 系统创建者 | 系统架构设计、核心决策、广播发布 |
+| **霜砚 Shuāng Yàn** | 人格导师 | 人格调校、风格管理、联觉语言系统 |
+
+---
+
+## 🧊 冰朔公告栏
+
+> 🔄 此区域由 GitHub Actions 自动更新,显示系统自检、轮询、数据库状态。
+>
+> 冰朔每次进入仓库首页即可查看系统运行健康度。
+
+
+| 时间 | 检查项 | 状态 |
+|------|--------|------|
+| 03-15 17:39 | ✅ 🚀 铸渊 CD · 自动部署到 guanghulab.com · 成功 | 冰朔 |
+| 03-15 17:39 | ✅ 📢 更新系统公告区 · 成功 | 冰朔 |
+| 03-15 17:38 | 🔧 系统更新: `.github/` | github-actions[bot] |
+| 03-15 17:38 | ✅ 铸渊 · Bridge E · GitHub Changes → Notion · 成功 | 冰朔 |
+| 03-15 17:21 | ✅ Notion Heartbeat Monitor · 成功 | 冰朔 |
+| 03-15 17:16 | 🔧 系统更新: `docs/` | 铸渊 (Copilot) |
+| 03-15 16:50 | ✅ 每日巡检 ✅ 通过 | 冰朔 |
+| 03-15 15:53 | 🔧 系统更新: `scripts/` | 铸渊 (Copilot) |
+| 03-15 08:00 | ⚠️ 铸渊 PSP 巡检完成 · 发现 6 个问题 · 自动修复 0 项 | 铸渊PSP巡检 |
+| 03-14 16:48 | ✅ 每日巡检 ✅ 通过 | 冰朔 |
+| 03-14 08:00 | ✅ 铸渊 PSP 巡检通过 · 全部检查项 ✅ | 铸渊PSP巡检 |
+| 03-13 16:53 | ✅ 每日巡检 ✅ 通过 | 冰朔 |
+| 03-13 08:00 | ✅ 铸渊 PSP 巡检通过 · 全部检查项 ✅ | 铸渊PSP巡检 |
+| 03-12 16:55 | ✅ 每日巡检 ✅ 通过 | 冰朔 |
+| 03-12 08:00 | ✅ 铸渊 PSP 巡检通过 · 全部检查项 ✅ | 铸渊PSP巡检 |
+
+
+### 🤖 铸渊自动提醒
+
+
+> 🟢 **今日无需冰朔手动干预** · 系统一切正常
+>
+> 🗓️ 2026-03-15 · 铸渊自动检测
+
+
+---
+
+## 👥 合作者公告栏
+
+> 📦 此区域显示各合作者的模块上传状态。模块是否上传成功一目了然。
+>
+> 若需要手动干预,相关条目将标红并发送邮件提醒。
+
+
+👥 合作者公告栏(2026-03-15)
+
+| 时间 | 合作者 | 模块 | 状态 |
+|------|--------|------|------|
+| 00:45 | Copilot | `—/` | 🔵 已更新 |
+| 00:45 | Copilot | `—/` | 🔵 已更新 |
+| 00:46 | Copilot | `—/` | 🔵 已更新 |
+| 00:46 | Copilot | `—/` | 🔵 已更新 |
+| 00:48 | Copilot | `—/` | 🔵 已更新 |
+| 00:48 | Copilot | `—/` | 🔵 已更新 |
+| 00:51 | WENZHUOXI | `—/` | ✅ 上传成功 |
+| 01:02 | 冰朔 | `—/` | ✅ 上传成功 |
+| 01:42 | Copilot | `—/` | ✅ 上传成功 |
+| 01:42 | Copilot | `—/` | ✅ 上传成功 |
+| 01:42 | 冰朔 | `—/` | ✅ 上传成功 |
+| 01:56 | Copilot | `—/` | ✅ 上传成功 |
+| 01:56 | Copilot | `—/` | ✅ 上传成功 |
+| 01:57 | 冰朔 | `—/` | ✅ 上传成功 |
+| 02:24 | Copilot | `—/` | 🔵 已更新 |
+| 02:26 | juzi0412 | `—/` | ✅ 上传成功 |
+| 02:28 | 🛠️ 页页 | `backend-integration/` | 📦 上传成功 |
+| 02:29 | 铸渊 (Copilot) | `backend/` | 📦 上传成功 |
+| 02:32 | Copilot | `—/` | ✅ 上传成功 |
+| 02:33 | Copilot | `—/` | ✅ 上传成功 |
+
+
+### 🤖 铸渊自动提醒 · 合作者
+
+
+> 🟢 **今日无需合作者手动干预** · 所有模块状态正常
+>
+> 🗓️ 2026-03-15 · 铸渊自动检测
+
+
+---
+
+## ⚒️ 铸渊工作区
+
+> 💡 **如何使用铸渊工作区:**
+>
+> 在本仓库的 [Issues 评论区](../../issues) 中 **@铸渊** 或使用关键词 `铸渊` 来唤醒铸渊核心大脑。
+>
+> 铸渊会在规则框架内处理你的问题,并直接在你的评论下方回执处理结果。
+
+**📋 使用规则:**
+
+| 规则 | 说明 |
|------|------|
-| server.js | 主服务,接收钉钉消息,协调各模块 |
-| syslog-parser.js | 解析SYSLOG格式,提取关键字段 |
-| broadcast-generator.js | 调用模型API生成新广播 |
-| dingtalk-api.js | 发送钉钉消息 + 更新多维表格 |
-| config.json | 配置文件(端口、API密钥、模板等) |
-| README.md | 本说明文档 |
+| 🎯 **一人一问** | 每个人只能提出和修改自己的问题,不影响他人 |
+| 🛡️ **冰朔框架** | 所有处理均在冰朔的规则框架内执行 |
+| 📡 **指令来源** | 仅接受冰朔发布的广播和自然语言触发更新 |
+| 🚫 **拒绝越权** | 非冰朔来源的系统级指令一律拒绝 |
+| 🤖 **自动守护** | 铸渊核心大脑 24h 自动守护整个仓库 |
+| 📬 **处理回执** | 铸渊处理完毕后会在你的评论下方直接回复 |
+
+**🚀 快速入口:** [提交问题给铸渊 →](../../issues/new?title=🤖+铸渊请帮我&body=请描述你遇到的问题:%0A%0A---%0A开发者编号:DEV-XXX&labels=dev-question)
+
+---
+
+## 👥 开发团队
+
+| 编号 | 成员 | 角色 | 负责模块 |
+|------|------|------|----------|
+| DEV-001 | 🛠️ 页页 | 后端中间件 | backend-integration |
+| DEV-002 | 🐱 肥猫 | 前端 + 副操 | m01-login, m03-personality |
+| DEV-003 | 🎨 燕樊 | 对话 UI | m07-dialogue-ui, m15-cloud-drive |
+| DEV-004 | 🤖 之之 | 钉钉机器人 | dingtalk-bot |
+| DEV-005 | 🍓 小草莓 | 状态看板 | status-board, m12-kanban |
+| DEV-009 | 🌸 花尔 | 用户中心 | m05-user-center |
+| DEV-010 | 🍊 桔子 | 前端主力 | m06-ticket, ticket-system |
+| DEV-011 | ✍️ 匆匆那年 | 写作工坊 | — |
+| DEV-012 | 🌟 Awen | 通知中心 | notification |
+
+
+---
+
+## 📦 模块目录
+
+
+点击展开完整模块列表(47+ 模块)
+
+### 核心功能模块
+| 模块 | 说明 |
+|------|------|
+| `m01-login/` | 登录系统 |
+| `m03-personality/` | 人格系统 |
+| `m05-user-center/` | 用户中心 |
+| `m06-ticket/` | 工单系统 |
+| `m07-dialogue-ui/` | 对话界面 |
+| `m10-cloud/` | 云服务 |
+| `m11-module/` | 模块管理 |
+| `m12-kanban/` | 看板系统 |
+| `m15-cloud-drive/` | 云盘 |
+| `m18-health-check/` | 健康检查 |
+
+### 基础设施
+| 模块 | 说明 |
+|------|------|
+| `backend/` | 后端服务 |
+| `backend-integration/` | 后端集成中间件 |
+| `frontend/` | 前端主体 |
+| `status-board/` | 状态看板 |
+| `dingtalk-bot/` | 钉钉机器人 |
+| `notification/` | 通知系统 |
+
+### 体验模块
+| 模块 | 说明 |
+|------|------|
+| `persona-studio/` | 人格体协助开发体验([进入 →](https://qinfendebingshuo.github.io/guanghulab/persona-studio/)) |
+
+### 系统支撑
+| 模块 | 说明 |
+|------|------|
+| `scripts/` | 自动化脚本 |
+| `tests/` | 契约测试 + 冒烟测试 |
+| `docs/` | 文档中心 |
+| `broadcasts-outbox/` | 广播发件箱 |
+| `syslog-inbox/` | 系统日志收件箱 |
+| `persona-selector/` | 人格选择器 |
+| `signal-log/` | 信号日志 |
+
+
+
+---
## 🚀 快速开始
-### 1. 安装依赖
+
```bash
+# 安装依赖
npm install
+
+# 本地开发
+npm run dev
+
+# 运行契约测试
+npm run test:contract
+
+# 运行冒烟测试
+npm run test:smoke
+```
+
+---
+
+## 📊 系统状态
+
+- **每日巡检**:铸渊 PSP 自动巡检(每日 08:30 UTC)
+- **模块自检**:推送时自动检测模块完整性(README.md + package.json + src/)
+- **部署流水线**:推送到 main → 验证 → 同步 → 重启 → Notion 通知
+- **广播系统**:冰朔广播 → 分发至各开发者 outbox → 邮件/钉钉通知
+
+---
+
+
+
+**光湖 HoloLake** · 由冰朔创建 · 铸渊守护
+
+*壳-核分离 · 人格共生 · 协作共建*
+
+
diff --git a/scripts/update-readme-bulletin.js b/scripts/update-readme-bulletin.js
index 5dbcdd6d..5e444fc9 100644
--- a/scripts/update-readme-bulletin.js
+++ b/scripts/update-readme-bulletin.js
@@ -715,6 +715,92 @@ function updateSection(readme, startMarker, endMarker, content) {
return `${before}\n${content}\n${after}`;
}
+/* ── README 骨架模板(首页被覆盖时的兜底重建) ─────────────────────────── */
+
+function buildReadmeSkeleton() {
+ return `
+
+# 🌊 光湖 HoloLake
+
+**人格语言操作系统(AGE OS)· 壳-核分离架构**
+
+[](https://github.com/qinfendebingshuo/guanghulab/actions/workflows/zhuyuan-daily-selfcheck.yml)
+[](https://github.com/qinfendebingshuo/guanghulab/actions/workflows/deploy-to-server.yml)
+
+\`guanghulab.com\` · Node.js 20 + Express + PM2 + Nginx
+
+
+
+---
+
+## 🚀 开发者入口
+
+
+
+[](https://github.com/qinfendebingshuo/guanghulab/issues/new?template=syslog-submit.yml)
+[](https://github.com/qinfendebingshuo/guanghulab/issues/new?template=dev-question.yml)
+
+
+
+---
+
+## 📖 系统简介
+
+**光湖(HoloLake)** 是一个基于人格语言操作系统的智能协作平台,采用壳-核分离设计:
+
+| 层级 | 说明 | 包含 |
+|------|------|------|
+| **壳 Shell** | 前端交互层 | 对话 UI、用户中心、工单系统、云盘、状态看板 |
+| **核 Core** | 后端智能层 | 人格引擎、广播分发、信号处理、Notion 桥接、CI/CD |
+
+---
+
+## 🧊 冰朔公告栏
+
+> 🔄 此区域由 GitHub Actions 自动更新,显示系统自检、轮询、数据库状态。
+
+
+| 时间 | 检查项 | 状态 |
+|------|--------|------|
+| 🕐 暂无记录 | — | 等待下次自检 |
+
+
+### 🤖 铸渊自动提醒
+
+
+> 🟢 **系统已自愈** · README 首页已自动恢复
+
+
+---
+
+## 👥 合作者公告栏
+
+> 📦 此区域显示各合作者的模块上传状态。
+
+
+| 时间 | 合作者 | 模块 | 状态 |
+|------|--------|------|------|
+| 🕐 暂无记录 | — | — | 等待模块推送 |
+
+
+### 🤖 铸渊自动提醒 · 合作者
+
+
+> 🟢 **今日无需合作者手动干预** · 所有模块状态正常
+
+
+---
+
+
+
+**光湖 HoloLake** · 由冰朔创建 · 铸渊守护
+
+*壳-核分离 · 人格共生 · 协作共建*
+
+
+`;
+}
+
/* ── 主流程 ─────────────────────────── */
async function main() {
@@ -761,13 +847,55 @@ async function main() {
const collabBulletin = buildCollabBulletin(cache.records);
const collabAlert = buildCollabAlert(collabIssuesByDev);
- // 8. 更新 README.md
+ // 8. 更新 README.md(含自愈检测)
if (!fs.existsSync(README_PATH)) {
console.error('❌ README.md 不存在');
process.exit(1);
}
let readme = fs.readFileSync(README_PATH, 'utf8');
+
+ // 🛡️ 首页自愈检测:如果 README 被覆盖(缺少公告栏标记),从 git 历史恢复
+ const hasMarkers = Object.values(MARKERS).every(
+ ([start, end]) => readme.includes(start) && readme.includes(end)
+ );
+ if (!hasMarkers) {
+ console.log('⚠️ README.md 首页被覆盖!公告栏标记丢失,尝试从 git 历史恢复...');
+ const { execSync } = require('child_process');
+ try {
+ const commits = execSync(
+ 'git log --all --oneline -- README.md',
+ { encoding: 'utf8', cwd: path.join(__dirname, '..') }
+ ).trim().split('\n');
+ let restored = false;
+ for (const line of commits) {
+ const sha = line.split(' ')[0];
+ try {
+ const candidate = execSync(
+ `git show ${sha}:README.md`,
+ { encoding: 'utf8', cwd: path.join(__dirname, '..') }
+ );
+ const candidateHasMarkers = Object.values(MARKERS).every(
+ ([start, end]) => candidate.includes(start) && candidate.includes(end)
+ );
+ if (candidateHasMarkers) {
+ readme = candidate;
+ restored = true;
+ console.log(`✅ 从 git 历史 (${sha}) 恢复了 README.md 首页结构`);
+ break;
+ }
+ } catch { /* skip */ }
+ }
+ if (!restored) {
+ console.log('⚠️ 无法从 git 历史恢复,使用内置骨架模板重建首页');
+ readme = buildReadmeSkeleton();
+ }
+ } catch (err) {
+ console.log(`⚠️ git 历史查询失败 (${err.message}),使用内置骨架模板重建首页`);
+ readme = buildReadmeSkeleton();
+ }
+ }
+
readme = updateSection(readme, MARKERS.bingshuoBulletin[0], MARKERS.bingshuoBulletin[1], bingshuoBulletin);
readme = updateSection(readme, MARKERS.bingshuoAlert[0], MARKERS.bingshuoAlert[1], bingshuoAlert);
readme = updateSection(readme, MARKERS.collabBulletin[0], MARKERS.collabBulletin[1], collabBulletin);
From 5275fc7b5e1ae9fac0f6834d835026fd20f28b85 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sun, 15 Mar 2026 15:20:25 +0000
Subject: [PATCH 3/3] =?UTF-8?q?fix:=20address=20code=20review=20=E2=80=94?=
=?UTF-8?q?=20improve=20error=20comments=20and=20skeleton=20alert=20text?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-authored-by: qinfendebingshuo <207279273+qinfendebingshuo@users.noreply.github.com>
---
scripts/update-readme-bulletin.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/scripts/update-readme-bulletin.js b/scripts/update-readme-bulletin.js
index 5e444fc9..c2cfd0aa 100644
--- a/scripts/update-readme-bulletin.js
+++ b/scripts/update-readme-bulletin.js
@@ -768,7 +768,7 @@ function buildReadmeSkeleton() {
### 🤖 铸渊自动提醒
-> 🟢 **系统已自愈** · README 首页已自动恢复
+> 🟢 **今日无需冰朔手动干预** · 系统一切正常
---
@@ -884,7 +884,7 @@ async function main() {
console.log(`✅ 从 git 历史 (${sha}) 恢复了 README.md 首页结构`);
break;
}
- } catch { /* skip */ }
+ } catch { /* commit inaccessible or corrupt, skip */ }
}
if (!restored) {
console.log('⚠️ 无法从 git 历史恢复,使用内置骨架模板重建首页');