Vibe Replay 会话回放
把 AI 编程会话变成可分享、可交互的动画回放,让审阅者看到改动背后的思路,而不只是最终的 diff。
SKILL.md 体现最小权限(限定的 allowed-tools)、强制用户确认(翻译/润色/PR 写入均为 opt-in)、不覆盖原始文件、凭据脱敏审查流程和明确的回滚路径(原始 github-summary.md 保持只读)。扣分点:底层依赖 npx vibe-replay 为远程拉取的第三方 npm 包,供应链信任未在 skill 内声明;shell 命令拼接存在轻微注入面;发布者未经注册表验证。
指令自洽,包含错误分支(空结果时检查 --version、多文件匹配时取最旧、${CLAUDE_SESSION_ID} 为空时的降级路径),失败反馈清晰。扣分点:静态评审未执行;仓库 CI 与测试覆盖 CLI 与 symlink 完整性,但未见针对 skill 关键路径(搜索→生成→脱敏→PR 写入)的端到端复现证据,按锚点不超过 10。
触发场景描述具体(回放、找会话、retro、PR 附加),能力边界有声明(元数据搜索非语义搜索、避免大范围 --scan、Cursor 指标为估算值)。扣分点:核心功能依赖 npx 从 npm 注册表拉取,对中国大陆网络可达性构成风险且未说明;无中文支持说明。
文档分层良好(SKILL.md 给 agent、README 给人类)、安装路径多样且有专门的 agent-instructions 测试防 symlink 断裂、MIT 许可明确、维护路径清晰。扣分点:skill 文件本身无版本号/变更记录;版本治理依赖仓库级 package. (0.0.3),参数稳定性承诺不足。
价值主张具体(将难手写的会话统计/结构化摘要委托给 CLI,agent 处理排序与判断),流程产出直接可用的 markdown。扣分点:静态评审无法验证输出完整性;PR 追加脚本的健壮性(如含特殊字符的 body)未经证实;比较优势仅有文档声明,无独立验证。
仓库有真实 CI(lint/test/build/windows-smoke/npm pack 模拟/audit)与成套测试,属可审计一手材料。扣分点:这些证据覆盖 CLI/网站,而非 skill 声称的关键路径;示例输出、demo 链接不可静态复核,未达多源独立可复现标准。
- skill 通过 npx 运行第三方 npm 包 vibe-replay,供应链信任依赖 npm 注册表,建议锁定版本号后再使用。
- PR 写入步骤使用 gh pr edit,替换模式会覆盖整个 PR 描述;务必使用默认的追加模式并保留原始正文。
- 凭据脱敏依赖正则匹配,leftoverFindings 之外仍可能有未被识别的敏感信息,分享前请人工复核最终 markdown。
- 核心功能依赖 npm 注册表可达性,中国大陆网络环境下 npx 安装可能失败或不稳定。
- 本评审为静态源码审阅,未执行任何命令,输出质量与脚本健壮性未经实测验证。
这个 Skill 能做什么,适合哪些场景?
vibe-replay 是一个本地优先的 CLI,能把 Claude Code、Cursor、Codex、OpenCode、Hermes、Pi 和 Grok Bot 的会话文件打包成单个自包含 HTML 回放文件,并生成 GitHub 风格的活动热力图、成本统计和 token 分析。配套的 replay 技能让智能体自动发现本地会话、搜索历史会话、生成 PR 摘要,并在写入 PR 前完成密钥脱敏、翻译和语气润色等清理步骤。所有处理默认在本地完成,只有明确发布时数据才会离开本机。它同时提供 Claude Code 插件和可移植的 Agent Skills 两种安装方式。
技能会:1) 用 grep 定位当前 Claude Code 会话文件,或通过 npx vibe-replay sessions 按项目、提供方、关键词(支持 --、--scan、--brief、--dedupe 等参数)搜索历史会话;2) 运行 npx vibe-replay --provider <provider> --session <PATH> --github,在 ~/.vibe-replay/<slug>/ 下生成 github-summary.md、redactions. 和可选的 GIF/SVG 预览;3) 审查 redactions. 中未自动脱敏的可疑凭据,在副本文件 github-summary.clean.md 上执行脱敏;4) 可选地把非英文提示词翻译为目标语言、把沮丧语气润色为专业/中性/友好风格;5) 通过 gh pr edit --body-file 把摘要追加(推荐默认)或替换到 PR 正文;6) 针对'会话复盘'场景用 --scan 输出分析提示效率、工具调用、token 成本和上下文压缩情况。
- 开发者创建 PR 时,想让审阅者理解 AI 会话中的决策过程,把回放摘要附加到 PR 描述
- 用户想找回上周某个模糊记忆中的调试会话('那次 auth bug 是怎么修的'),用智能体搜索并定位
- 团队做提示词质量复盘,分析某次会话的工具调用次数、token 消耗、API 错误和压缩情况
- 需要把含外文提示词或沮丧语气的会话摘要安全分享给团队,先脱敏、翻译、润色再贴出
- 教学或入职培训场景,用真实会话的动画回放演示构建过程
这个 Skill 有哪些优点和局限?
- 本地优先,单个自包含 HTML 文件可离线打开,且不会自动发出外部请求
- 支持 9 种提供方(Claude Code/Desktop/Cowork、Codex、Cursor、OpenCode、Hermes、Pi、Grok Bot),自动发现多文件与续传会话
- 内置密钥自动脱敏,且技能在 PR 写入前做人工审查;原始文件只读,所有编辑都写到 .clean.md 副本
- 智能体与 CLI 分工清晰:机械工作交给 CLI,排序搜索结果、判断凭据真伪、翻译润色由智能体判断,且每步清理都需用户确认
- PR 写入默认采用追加而非替换,避免覆盖用户手写的 PR 描述
- 需要 Node.js >= 22.19.0,版本门槛较高;PR 功能依赖 gh CLI
- `${CLAUDE_SESSION_ID}` 依赖 Claude Code 运行时插值,在其他平台上需要手动提供会话路径
- 会话搜索是元数据/子序列匹配而非语义搜索,模糊查询可能需要多次调整关键词
- --scan 全量扫描开销大,技能文档明确建议避免对大量会话使用
- Cursor 的 token 快照被标记为估算值,压缩次数仅为下限,指标精度因提供方而异
- CLI 默认发送可退出的匿名遥测(不含提示词和内容),对隐私敏感用户需自行关闭
- 远程 SSH 数据源暂不支持 Live 模式,Grok Bot 转录不支持 SSH 远程索引
如何安装这个 Skill?
三种方式任选:
- Agent Skills CLI(推荐给 Cursor 等用户):
bash
npx skills add tuo-lei/vibe-replay --skill replay -g
Cursor 会从 ~/.agents/skills/ 或 ~/.cursor/skills/ 发现全局技能。
- Claude Code 插件:在 Claude Code 中运行 /plugin,在 Discover 标签搜索 vibe-replay 安装;或:
bash
/plugin marketplace add tuo-lei/vibe-replay
/plugin install vibe-replay@vibe-replay
- 手动单文件安装:
bash
mkdir -p ~/.claude/skills/replay
curl -o ~/.claude/skills/replay/SKILL.md \
https://raw.githubusercontent.com/tuo-lei/vibe-replay/main/skills/replay/SKILL.md
CLI 需要 Node.js >= 22.19.0;PR 相关步骤需要安装 GitHub CLI (gh)。
如何使用这个 Skill?
安装后用自然语言触发,例如:'给我这次会话生成一个回放'、'把会话上下文附到这个 PR'、'帮我找上次调试那个 bug 的会话'、'对这次会话做一次复盘'。技能的参数提示为 [session-path-or-search-query]。也可以直接用底层 CLI:npx vibe-replay 生成当前会话回放,npx vibe-replay -d 打开本地仪表盘,npx vibe-replay sessions --query "..." -- 搜索历史会话。
这个 Skill 与同类方案有什么区别?
源材料未提及直接竞品。与手动阅读会话 JSONL 文件相比,它的价值在于把解析、脱敏、分析和 HTML 打包自动化;与纯会话浏览器相比,它额外提供 PR 工作流集成和复盘分析。