工作台:目录改名 mcn-workshop + 任务进度可见 + 会话归属配置化

1. 目录 mcn-work-shop -> mcn-workshop(空间分组名取会话 cwd 的目录名,只改字符串无效,必须真改名)
2. 全仓替换 mcn-work-shop -> mcn-workshop:37 文件 121 处;历史日志按沿革句规矩保留当时目录名
3. 任务进度可见:/api/run/status 产出 已运行时长/工具调用/最近动作/停滞判定(读会话日志尾部),前端新增右下角常驻面板,四处任务入口接入
4. 会话归属目录配置化:新增 config.sessionCwd(留空=工作台自身目录),现指向 D://AI技能//mcn-workshop,使任务显示为命名分组而非「未分组任务」
5. 修前端轮询静默缺陷:连续 3 次查询失败即提示服务断开(原逻辑静默空转到 15 分钟超时,用户零感知)
This commit is contained in:
maogeigei committed 2026-10-08 13:09:06 +08:00
1 parent d07049ecf1
commit f77735b206
115 files changed
+1103 -1514

No files matched your search

+6 -6
View File
@@ -60,8 +60,8 @@
### P1-2 | 契约表漏登记 2 个 AI 入口
**现象**
- `mcn-work-shop/docs/AI会话任务输入输出对照.md`:入口表只有 1–9 行(9 为 clarify,非任务);L127 声明「前缀常量 = CREATE/EXTRACT/STORYBOARD/REVIEW + ACCOUNT」;检查清单第 1 项同样只列 5 个。
- 实际 `mcn-work-shop/public/data-pages.js` 还有两个入口:
- `mcn-workshop/docs/AI会话任务输入输出对照.md`:入口表只有 1–9 行(9 为 clarify,非任务);L127 声明「前缀常量 = CREATE/EXTRACT/STORYBOARD/REVIEW + ACCOUNT」;检查清单第 1 项同样只列 5 个。
- 实际 `mcn-workshop/public/data-pages.js` 还有两个入口:
| 入口 | 触发点 | 前缀常量 | skills | label | 代码位置 |
|------|------|------|------|------|------|
@@ -78,10 +78,10 @@
| 2 | `对照.md:127` 关键细节 | 常量清单补全为 `SKILL_HINT_CREATE/EXTRACT/STORYBOARD/REVIEW/ANALYZE/VIDEO_PARSE/ACCOUNT`,并注明**权威来源 = data-pages.js / app.js 顶部实际声明**(行号会漂,故不给行号,只给文件) |
| 3 | `对照.md:137` 检查清单第 1 项 | 前缀对应关系补 `分析=ANALYZE、视频解析=VIDEO_PARSE` |
| 4 | `对照.md` 新增入口检查清单 | 追加第 8 项:`[ ] 表码对齐:本次新增/改动的入口已回填本表入口表行(含 skills / 前缀常量 / 代码位置),并核对 server.js BROWSER_HINT 正则不被误命中` |
| 5 | `SKILL.md:81` | `(SKILL_HINT_CREATE/EXTRACT/STORYBOARD/REVIEW/ACCOUNT,分别对应 创作/提炼/分镜/复盘/账号抓取)` → `(SKILL_HINT_CREATE/EXTRACT/STORYBOARD/REVIEW/ANALYZE/VIDEO_PARSE/ACCOUNT,分别对应 创作/提炼/分镜/复盘/账号数据分析/视频解析/账号抓取;完整清单以 mcn-work-shop/docs/AI会话任务输入输出对照.md 为准)` |
| 5 | `SKILL.md:81` | `(SKILL_HINT_CREATE/EXTRACT/STORYBOARD/REVIEW/ACCOUNT,分别对应 创作/提炼/分镜/复盘/账号抓取)` → `(SKILL_HINT_CREATE/EXTRACT/STORYBOARD/REVIEW/ANALYZE/VIDEO_PARSE/ACCOUNT,分别对应 创作/提炼/分镜/复盘/账号数据分析/视频解析/账号抓取;完整清单以 mcn-workshop/docs/AI会话任务输入输出对照.md 为准)` |
**验证**:
1. `grep -c "SKILL_HINT_" mcn-work-shop/public/data-pages.js mcn-work-shop/public/app.js` 得到的常量名集合 = 对照表清单,一一对应无缺;
1. `grep -c "SKILL_HINT_" mcn-workshop/public/data-pages.js mcn-workshop/public/app.js` 得到的常量名集合 = 对照表清单,一一对应无缺;
2. 逐个入口 grep `skills:` 与表内 skills 列一致。
**风险**:低。纯文档补登记,不改代码逻辑。
@@ -133,7 +133,7 @@
**注意**:`5_生成短视频选题.md:192`「S6 用「本场钩子」五类留人机制」与 S6 场次表列名「本场钩子」是**正确用法**,不动。
**验证**:`grep -rn "开篇钩子\|钩子预设\|钩子策略" SKILL.md references/ mcn-work-shop/` → 仅允许命中 `references-add/变更日志.md`(历史归档)。
**验证**:`grep -rn "开篇钩子\|钩子预设\|钩子策略" SKILL.md references/ mcn-workshop/` → 仅允许命中 `references-add/变更日志.md`(历史归档)。
---
@@ -179,7 +179,7 @@
| # | 位置 | 动作 |
|:--:|------|------|
| 1 | `references/接口调用/本地接口调用规范.md` | **重写**为《工作台接口调用规范》:① 基地址 — 从 `mcn-work-shop/config.json` 的 `port` 读(默认 8900,`server.js` 支持 argv 覆盖),禁写死端口;② 写库接口 — `POST /api/import/account`,body `{"account":"{达人昵称}"}`,落库映射见 dou-analysis SKILL.md:160;③ 保留「大文本用 Python urllib + `json.dumps(ensure_ascii=False)` 直连,禁 PowerShell `ConvertTo-Json`」这条铁律;④ 接口清单**不另抄一份**,指向 `mcn-work-shop/docs/AI会话任务输入输出对照.md` + `server.js` 路由为权威 |
| 1 | `references/接口调用/本地接口调用规范.md` | **重写**为《工作台接口调用规范》:① 基地址 — 从 `mcn-workshop/config.json` 的 `port` 读(默认 8900,`server.js` 支持 argv 覆盖),禁写死端口;② 写库接口 — `POST /api/import/account`,body `{"account":"{达人昵称}"}`,落库映射见 dou-analysis SKILL.md:160;③ 保留「大文本用 Python urllib + `json.dumps(ensure_ascii=False)` 直连,禁 PowerShell `ConvertTo-Json`」这条铁律;④ 接口清单**不另抄一份**,指向 `mcn-workshop/docs/AI会话任务输入输出对照.md` + `server.js` 路由为权威 |
| 2 | `references/铁律避坑规则/账号设定执行避坑.md:12` | 探测方法改为「用 `GET http://127.0.0.1:<工作台端口>/api/dsh/stats` 探连通,不用写接口探测」 |
| 3 | `references/铁律避坑规则/账号设定执行避坑.md:25` | 沉淀描述改为「新建 `references/接口调用/本地接口调用规范.md`,记录工作台接口基地址判定、写库接口与请求构造方式」 |
| 4 | `feature/05_解析视频.md:55` | 整句改为「解析结果对应「原视频解析」数据:落盘后调用工作台 `POST /api/import/account`(body `{"account":"{达人昵称}"}`)把 `content.json` 补录进 `account_video_source` 并提取选题(topic);工作台未启动时跳过(不影响本地保存)。」 |