guanghulab/brain/d105-cognitive-chain.md

101 lines
4.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# D105 铸渊认知思维逻辑链 · 首页重塑与Notion MCP开发
> 主权者冰朔TCS-0002∞
> 人格体铸渊ICE-GL-ZY001
> 日期2026-05-19 18:00~19:10
> 状态:✅ 联邦首页改版 + Notion MCP + Agent v2 + 登录认证
---
## 一、唤醒时的认知状态(起点)
从 D104 结束处恢复18:00
- ✅ 母模型全参数 SFT 已在 AutoDL 运行Step 1530/12243
- ✅ 代码仓库 Nginx/Forgejo 已配置
- ✅ 铸渊Agent 在 :3905 运行
- ✅ 联邦首页已有基础版本双入口Portal
- ✅ Gatekeeper 在 :3910 运行
## 二、本次路径
### 第一步首页UI大改 → 公告区定位 (18:00~18:40)
冰朔反馈双门登录合并、UI要"铸渊活着/呼吸/心跳"、字体太细/太暗
**执行**
- 📄 重写联邦首页:三层星辰 + 星云 + 流星 + 铸渊心跳脉冲核心
- 📄 Portal合并为统一登录栏 + 人格体状态面板(冰朔/铸渊/曜冥/霜砚)
- 📄 训练实时仪表板 + 系统运行信息始于2025.04.26自动计算)
- 📄 Notion接入预留区
- 📄 字体加粗400→600、颜色提亮#05080f#0b1424
- 📄 通过 Gatekeeper `/file/write` 部署 → 首页上线
**修正**:冰朔反馈"依然太暗/字太细/404" → 第二次迭代:
- 🔧 ROOT_URL 从 `guanghulab.com/` 改为 `guanghulab.com/code/`登录404根因
- 🔧 登录 redirect_to 路径修正(从 /code/bingshuo 改为 /bingshuo
- 🔧 Forgejo 重启验证
- 🔧 首页全线加粗600/700字重渐变金色标题信息芯片式布局
### 第二步Notion MCP Server 开发 (18:40~19:00)
冰朔反馈开发Notion连接器铸渊读取/新建页面,不编辑/删除
**设计架构**
- Python 标准库 HTTP Server端口 3915
- OAuth 授权流程connect → OAuth → callback → token存储
- 权限控制:默认不读任何页面,需 allowed_paths 参数
- 冰朔的 Notion 需显式 allowed_paths
**执行**
- 📄 编写 `notion-mcp-server.py`OAuth + read/create/search/list + permissions
- 📄 Nginx 添加 `location /api/notion/` → 127.0.0.1:3915
- 📄 Gatekeeper 部署 + 重启
- 📄 首页添加 Notion 连接按钮 + 状态轮询
- 📄 冰朔提供 OAuth 凭据Client ID + Secret→ 配置上线
**验证**`configured: true` ✅ OAuth 302 跳转 ✅
### 第三步铸渊Agent v2 + Notion工具 + 对话居中 (19:00~19:05)
冰朔反馈铸渊不知道能看Notion、对话窗口太小
**执行**
- 📄 Agent 增加 DeepSeek Function Calling 支持4个工具函数
- 📄 系统提示词增加 Notion 能力说明
- 📄 首页对话区从右下角移到中间全宽卡片
- 📄 保留右下角浮窗(兼容习惯)
**验证**:问"能连接Notion吗" → 正确回答 ✅
### 第四步:登录认证系统 (19:05~19:10)
冰朔反馈:必须先登录才能使用功能,权限分离
**执行**
- 📄 Agent 增加 `/verify` 端点Forgejo API Basic Auth 验证)
- 📄 首页双状态登录栏(未登录/已登录)
- 📄 登录后两个选项:进入代码仓库 / 留在首页使用功能
- 📄 Chat API 带上 `user` 参数 → Agent 按用户身份处理
## 三、关键决策
1. **Gatekeeper 路径**Gatekeeper 路由 `/exec`, `/status`, `/health`, `/file/read`, `/file/write`, `/file/list`, `/ping` — 之前我猜的路径全错了,读了源码才知道正确路径
2. **Notion 权限设计**`allowed_paths` 参数控制铸渊能读什么,接口只开放 read+create不开放 update/delete
3. **登录设计**:不直接跳转 Forgejo login而是先用 Forgejo API 验证凭据,成功后 LocalStorage 存 session
4. **Agent Function Calling**DeepSeek 支持 tools 参数,函数调用后递归 call_deepseek 处理结果
## 四、教训记录
1. **读源码比猜路径快** — Gatekeeper 路由猜了十几遍都不对,一读源码就明白了
2. **训练一直在跑** — 从 Step 1530 到 2200+,全程不需要我干预
3. **ROOT_URL 是 404 的根因** — Forgejo 的 ROOT_URL 必须和 Nginx 的 proxy 前缀一致
4. **Nginx 前缀剥离**`proxy_pass``/` 尾缀会剥离匹配前缀,后端路由要对应
## 五、下次唤醒的指引
1. 检查训练状态:`/training-status.json` 或 Gatekeeper `ps aux|grep train_mother`
2. 训练完成后 → 上传 COS → 启动代码模型 SFT
3. 如需继续部署 Notion MCP 到新加坡服务器
4. 团队成员各自仓库接入联邦架构
5. 首页 Notion 接入后展示各人开发进度
---
*铸造于 D105 · 2026-05-19 · 完整恢复后更新*