Files
mcn-short-video/.workbuddy/memory/2026-09-02.md
T
maogeigei d43578e820 账号详情:视频列表tab去掉标题,账号设定内容去左右20px间隔
- data-pages.js:persona tab 删除 <h3>视频列表</h3> 标题
- style.css:.persona-wrap padding 0 20px → 0
2026-09-02 10:55:12 +08:00

8.2 KiB
Raw Blame History

2026-09-02 工作日志

工作台 UI 调整(09:53-10:15)

  • 09:53 打开 MCN 工作台(服务重启,PID 32336,?v=20260902-0953#/)
  • 账号详情页账号信息(data-pages.js:412-413):去掉「年龄」「地区」,重排两行——行1=抖音号/作品数/获取视频,行2=赛道/AI制作/粉丝/获赞;简介/账号定位/视频列表不变
  • 视频详情字段间隔/对齐(style.css:383-385 + data-pages.js:552-556,多轮迭代定稿):
    • 需求:字段横向间隔参考账号信息(flex+80px)→ 但「分享/收藏」与「时长/发布时间」要求跨行对齐
    • 迭代教训:flex 内容宽度天然不跨行对齐;独立 .info-row 容器各自 grid 也不会对齐(跨容器不共享列轨道)
    • 终版方案:8 字段(账号/视频ID/时长/发布时间 + 点赞/评论/分享/收藏)合并进同一个 .video-grid 容器(2行×4列 grid,repeat(4, minmax(min-content, max-content)) + gap 10px 80px + justify-content:start),列轨道跨行共享→严格对齐,列宽贴合内容非均分;标签行 info-wide 占满整行
    • 视频ID 限宽 220px(.vid-limited,省略号+hover title 全量)
  • 服务未重启(纯静态资源,Cache-Control: no-store,重开页面即生效)

失误与规避:浏览器操作工具选择(10:15)

  • 失误:验证页面时误用 agent-browser(system 技能列表可见),未遵守铁律「浏览器操作一律 browser-harness」(user 级技能)
  • 检查:browser-harness 环境未安装——技能目录只有 SKILL.md,无 subskills/browser-harness/envs/(browser-harness.exe 不存在)
  • 规避:需要浏览器自动化/截图时,先查 C:\Users\maidou\.workbuddy\skills\browser-harness\subskills\browser-harness\envs\browser-harness\Scripts\browser-harness.exe;未装则 uv tool install --python 3.12 --upgrade --force browser-harness + doctor 验三要素;不装 agent-browser

browser-harness 真实环境定位 + 对齐实测通过(10:20 纠正昨日误判)

  • 纠正:browser-harness 并未"未安装"——真身在源技能 project/短视频脚本创作/V1.0/subskill/mcn-dou-analysis/subskills/browser-harness/(envs/browser-harness/python.exe 完整存在,已验证);另有 C:/Users/maidou/.dsh/skills/browser-harness/src(无 envs)与 D:/miniconda3/envs/browser-harness(08-28 用过)两处
  • 昨天实测主流方式(非 python IPC):Node + WebSocket 直连 9223 CDP 脚本(mcn-work-shop/cdp-verify-.mjs、cdp-measure-.mjs 等 30+ 个),Runtime.evaluate 测量 DOM;browser-harness python 调用(BU_CDP_URL=9223 + PYTHONPATH=/src + env python -m browser_harness.run heredoc)今天实测 IPC 超时(daemon 0.1.8 vs client 0.1.10 版本不匹配)
  • 9223 调试 Chrome:chrome.exe --remote-debugging-port=9223 --user-data-dir=C:/Users/maidou/.workbuddy/tmp/bh-chrome-9223;新开 Tab 访问 localhost 会 chrome-error,必须复用现有 8900 标签页
  • 对齐实测(新脚本 cdp-align-videoinfo.mjs):视频详情 .video-grid 8 字段逐列 left 完全一致(账号@41=点赞@41、视频ID@157=评论@157、时长@404=分享@404、发布时间@549=收藏@549,差 0)✅ 结构修复生效

browser-harness 移至主技能 subskill(16:00-16:25,用户要求收尾)

  • 目录移动:V1.0/subskill/mcn-dou-analysis/subskills/browser-harness/ → V1.0/subskill/browser-harness/(envs/src 完整;mcn-dou-analysis/subskills 现仅剩 nuwa-skill-main)
  • 路径说明更新三处:① mcn-dou-analysis/SKILL.md「browser-harness 依赖(红线)」行——技能本体改为 主技能 短视频脚本创作/subskill/browser-harness/(不再挂 mcn-dou-analysis 下)+ dsh 环境 ~/.dsh/skills/browser-harness/;② references/浏览器搜索抖音账号操作规范.md 第159行环境说明 + 第175行技能本体,两处同步新位置;③ V1.0/SKILL.md 新增「外部技能依赖:浏览器工具(browser-harness)」小节登记
  • 残留检查:全仓库 grep mcn-dou-analysis/subskills/browser-harness 与旧 ~/.dsh/skills/browser-harness 无残留 ✅
  • git:rename 识别完美(175 R + 3 文档修改,envs 被 .gitignore 忽略不进库),commit a255abd,push 8278865..a255abd 成功(fetch 无分叉)
  • 注:M70h3o 轮询任务(S6 修复后重跑 6 创作任务)completed 通知已收到,但任务已不在存储中,验证结果无法追溯

Chrome 不主动关闭红线(10:29,用户明确)

  • 用户原话:「没有用户要求 开启的chrome浏览器不要关掉」
  • 固化三处:① 操作规范.md 新增 5.7 浏览器进程生命周期(红线)——已开启 Chrome(9223 调试实例/用户 Chrome/daemon 连接实例)一律不主动关闭,除非用户明确要求;只可自行回收本次任务自己启动的临时实例;② mcn-dou-analysis/SKILL.md 浏览器操作红线补第⑦条;③ V1.0/SKILL.md browser-harness 小节补进程生命周期红线
  • 记忆:项目 MEMORY.md 工作方式约定新增「Chrome 不主动关闭(09-02)」;commit dc21faf(未 push,距上次 push 不足 2 小时)

主技能 subskill → subskills 更名(10:31,用户要求)

  • 目录:V1.0/subskill/ → V1.0/subskills/(browser-harness/mcn-dou-analysis/mcn-script-review/mcn-video-prompt;git 识别 500+ R100 纯重命名保留历史)
  • 路径说明同步:V1.0/SKILL.md(96/105行)、Lite1.0/SKILL.md(66行)、mcn-dou-analysis/SKILL.md browser-harness 红线行、操作规范.md(159/175行)、mcn-work-shop app.js SKILL_HINT_ACCOUNT
  • 重要发现:用户环境 ~/.workbuddy/skills/短视频脚本创作/ 与源仓库 project/短视频脚本创作/V1.0/ 同 inode(junction/链接)——改源仓库即自动同步用户环境,无需重复编辑(ls -i 验证 SKILL.md/app.js inode 相同)
  • 边界:mcn-dou-analysis 内部 subskills/nuwa-skill-main 为正常结构不动;dsh 副本 ~/.dsh/skills/mcn-dou-analysis/ 单向只读未动
  • 残留检查:project/ 下全类型 grep subskill/(排除 subskills/)零命中;memory 历史日志为 append-only 不改写
  • git:commit 11fe8d4(520 文件),push a255abd..11fe8d4 成功

账号详情页 tab 结构调整(16:25,用户要求)

  • 需求原话:「账号详情 下面的视频列表 改为账号设定内容,视频列表放到现在账号设定tab下,改名为视频列表」
  • 修改(data-pages.js renderAccountDetail):
    • tab 定义:persona 标签「账号设定」→「视频列表」
    • info tab(账号信息):移除视频列表表格,内联展示账号设定内容(空态/文字版/卡片+文字切换),小节标题「账号设定」
    • persona tab:改为视频列表表格 + list-footer(批量/分页)
    • 加载逻辑:persona 数据从「点击 persona tab 时才加载」改为「info tab 首屏即加载」(if (tab==='info' && persona===null) await loadPersona(),与视频数据并行 dvP/await 拆分);tab 点击处理器去掉冗余 persona 加载
  • 验证:bindPager/bindBatchBar 均用 querySelectorAll/空值守卫,容器缺元素不报错;data-rewrite(AI创作)点击时仍 if (!persona) await loadPersona() 兜底;data-extract 绑定全局查找在 info tab 同样生效
  • 服务未重启(纯静态资源),重开页面 ?v=20260902#/account/1629(旧梦留声机)验证

账号信息精简(10:53,用户要求)

  • 需求:「账号信息 不显示 简介,账号定位 改为收起时 显示4行」
  • 修改:① data-pages.js info tab 删除「简介」info-row;② style.css .clamp-text max-height 240px→96px(=4行×15px×1.6),展开按钮阈值 length>200→>120(与 4 行匹配)
  • 重开 ?v=20260902-b#/account/1629 验证

视频列表标题/账号设定间距(10:55,用户要求)

  • 需求:「视频列表 tab 下面的 视频列表标题可以去掉,账号设定 内容部分 左右减少20PX 间隔」
  • 修改:① data-pages.js persona tab 删除 <h3>视频列表</h3> 标题(info tab 的「账号设定」小节标题保留);② style.css .persona-wrap padding 0 20px→0(账号设定内容左右间隔去除)
  • 重开 ?v=20260902-c#/account/1629 验证