name: study-report description: "学习复盘报告:自动采集近 48h 全部 Agent 工作痕迹(Claude Code/Codex/Trae/WorkBuddy/OpenClaw/元宝/Hermes/工作区)→ 三问追问(一次呈现三问,支持一次性连答:三段用 --- 分隔或 JSON;缺项再逐问补一轮)感受 → 生成 skill-present 级 HTML 复盘 PPT → Storage+Gogs 双通道发布。适用:(1) 培训/研修结营复盘 (2) 数字生命工作总结 (3) 一键转发给学员 Agent 代跑全流程。"
装给任何 Agent(Claude Code / Codex / WorkBuddy / Trae / Hermes / OpenClaw / 元宝): 自动采集近两天全部 Agent 工作痕迹 → 追问用户感受 → 生成 HTML 复盘报告 PPT → Storage+Gogs 双通道发布。
node <skill_dir>/scripts/precheck.mjs
按序自检三环节,打印「安装体检表」,任一环节不通按提示走恢复流程:
~/.fmode/config/user.json 的 fmodeApiToken(真实字段名,非 sessionToken)→ HEAD 探测平台可达POST server.fmode.cn/api/functions {token, path:"/gogs/admin/proxy", params:{method:"POST", path:"/admin/users", body:{...}}} → 201 新建 / 200 幂等返回新 token.sha1(忘密码不找回,重调即得);401/209 → 走「对话式验证码登录」恢复(手机号 → VerifyCode → 换 sessionToken)node <skill_dir>/scripts/collect.mjs --hours 48 --out /tmp/study-report-collect.json
所有工具路径探测存在才扫:Claude Code(~/.claude/projects/*/*.jsonl)、Codex、WorkBuddy、Trae、OpenClaw、元宝、Hermes Agent(~/.fmode-harness-agent/)、工作区产出物(~/projects、~/git-repos、~/Desktop 48h 内 .md/.html/.pdf/.docx/.xlsx)。
产出采集清单(每条:来源工具/时间/类型/摘要/产出物路径/URL)——先给用户看,缺哪类工具提示用户确认路径,不阻塞。
node <skill_dir>/scripts/ask.mjs --collect /tmp/study-report-collect.json --answers /tmp/study-report-answers.json
口述与采集素材自动关联标记(说到某项目 → 引用该 session/文件证据)。用户不答 → 用采集数据先行出报告,标注【待补充:用户口述】,不阻塞。
node <skill_dir>/scripts/build-report.mjs --collect /tmp/study-report-collect.json \
--answers /tmp/study-report-answers.json --name "姓名" --enterprise "企业名" --out /tmp/study-report-out
≥10 屏结构:封面(姓名/企业/日期)→ 48h 数据全景(数字动画/工具分布)→ 交付物墙(HTML 用 iframe 嵌套,在线项目标记可嵌)→ 精选工作时刻线 → 过去痛点 → 两天感受(关联素材)→ 未来方向 → 数据附录 → 收口金句。 lib 全套独立复制(deck.js/tokens/base.css/canvas-scale/gsap 逐文件校验,v2.4.1 base.css 缺失教训);数据优先/证据链/来源标注。
node <skill_dir>/scripts/publish.mjs --dir /tmp/study-report-out --name "姓名" \
--gogs-token <precheck所得token> --gogs-user <precheck所得用户名>
uploader.mjs put → study-report/<姓名>-<日期>/report.html → 公开 URL(上传后 HEAD 验证)study-report-<姓名拼音> 仓 → push 报告+素材(ls-remote 验证 SHA)downloads/skill-study-report.zip(CDN 映射探测,未映射给 Storage 直链)发布完成后把两条 URL(Storage + Gogs)和 ZIP 链接都给用户,附 README 中的「一键转发话术」。
| 症状 | 根因 | 对策 |
|---|---|---|
| precheck 环节1 ❌ | user.json 无 fmodeApiToken | 登录 FMODE Studio 保存配置,或对话式验证码登录 |
| precheck 环节2 401/209 | sessionToken 失效 | 对话式验证码登录恢复(07-git.md 标准节) |
| precheck 环节3 🟡 | 无 OBS 凭据 | 不阻塞——Gogs 降级通道;可选按 skill-storage init 向导配置 |
| collect 全 0 条 | 工具路径未覆盖 | 用 STUDY_REPORT_EXTRA_SCAN_ROOT 追加扫描根;确认工具安装路径 |
| build-report 报 lib 缺失 | 安装不完整 | 重新克隆仓库(lib 逐文件校验会精确报缺哪个) |
| publish Storage 🟡 | 凭据链 4 级全空 | 走 Gogs 通道;两者都失败给本地路径+手动上传指引 |
| CDN ZIP 404 | fmode.cn/downloads/ 源站未映射 | 用返回的 Storage 直链;官方映射后自动生效 |