关于 pair-programmer
VideoDB Pair Programmer 是结合屏幕与音频上下文进行 AI 协作编程的技能,可实时记录并索引视觉和音频事件,以便搜索或依据口头指令执行操作。
主要功能
- 01录制屏幕和音频
- 02实时索引视觉与音频事件
- 03搜索录制上下文
- 04总结近期活动
- 05根据口头指令执行操作
适用场景
- 01回顾编程时近期的屏幕活动
- 02按语音内容或屏幕上下文搜索录制
- 03根据口头指令触发操作
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ video-db/ pair-programmer --skill pair-programmer安装后在 Claude Code 中输入/pair-programmer确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
package.jsonrecorder-app.jssearch-rtstream.jsverify-connection.jscommands/act.mdconfig.mdrecord.mdsearch.mdsetup.mdstop.mdwhat-happened.mdui/picker.htmlwidget.html详细介绍
VideoDB 配对编程助手
基于实时屏幕和音频上下文的 AI 配对编程。录制屏幕和音频,并通过 AI 驱动的索引实时记录视觉和音频事件。
命令
用户请求某个命令时,请阅读对应文件中的说明:
| 命令 | 描述 | 参考 |
|---|---|---|
/pair-programmer record | 开始录制屏幕/音频 | 请参阅 commands/record.md |
/pair-programmer stop | 停止正在运行的录制 | 请参阅 commands/stop.md |
/pair-programmer search | 搜索录制上下文(屏幕、麦克风、音频) | 请参阅 commands/search.md |
/pair-programmer act | 根据麦克风收到的语音指令执行操作 | 请参阅 commands/act.md |
/pair-programmer what-happened | 总结近期活动 | 请参阅 commands/what-happened.md |
/pair-programmer setup | 安装依赖项并配置 API 密钥 | 请参阅 commands/setup.md |
/pair-programmer config | 更改索引和其他设置 | 请参阅 commands/config.md |
工作原理
- 用户运行
/pair-programmer setup安装依赖项并设置VIDEO_DB_API_KEY环境变量 - 用户运行
/pair-programmer record开始录制 - 系统会显示选择器 UI,用于选择屏幕和音频来源
- 开始录制,并将事件记录到
/tmp/videodb_pp_events.jsonl - 用户可以通过托盘图标停止录制(🔴 PP → 停止录制)
输出文件
| 路径 | 内容 |
|---|---|
/tmp/videodb_pp_pid | 录制器的进程 ID |
/tmp/videodb_pp_events.jsonl | 所有 WebSocket 事件(JSONL 格式) |
/tmp/videodb_pp_info.json | 当前会话信息(session_id、rtstream_ids) |
事件文件格式
事件以 JSONL 格式写入(每行一个 JSON 对象):
{"ts": "2026-03-05T10:15:30.123Z", "unix_ts": 1709374530.12, "channel": "visual_index", "data": {"text": "User is viewing VS Code with auth.ts open"}}
{"ts": "2026-03-05T10:15:31.456Z", "unix_ts": 1709374531.45, "channel": "transcript", "data": {"text": "Let me check the login flow", "is_final": true}}
环境变量
录制器会从环境变量中读取以下变量:
| 变量 | 必需 | 描述 |
|---|---|---|
VIDEO_DB_API_KEY | 是 | VideoDB API 密钥 |
VIDEO_DB_BASE_URL | 否 | API 端点(默认值:https://api.videodb.io) |
读取上下文
事件位于 /tmp/videodb_pp_events.jsonl。使用 CLI 工具进行筛选,切勿读取整个文件。
| 通道 | 内容 | 密度 |
|---|---|---|
visual_index | 屏幕描述 | 密集(约每 2 秒 1 条) |
transcript | 麦克风语音 | 稀疏(句子) |
audio_index | 系统音频摘要 | 稀疏(句子) |
通道筛选 — 使用 grep 按通道筛选,并通过管道传给 tail 获取近期事件:
grep '"channel":"visual_index"' /tmp/videodb_pp_events.jsonl | tail -10
关键词搜索 — 使用 grep 搜索所有通道:
grep -i 'keyword' /tmp/videodb_pp_events.jsonl
时间范围筛选 — 筛选最近 N 分钟内的事件:
- 获取当前时间戳:
$(date +%s) - 计算截止时间:
epoch - N*60 - 筛选
unix_tsJSON 字段大于截止时间的行 - 通过管道传给
grep,按通道进一步筛选
根据复杂程度生成合适的筛选命令(grep、awk、python3、jq)。
如需对已索引内容进行语义搜索,请使用 search-rtstream.js:
node search-rtstream.js --query="your query" --cwd=<PROJECT_ROOT>
<PROJECT_ROOT>是用户项目目录的绝对路径。它不是技能目录 — 运行命令前请先解析该路径。
完整的搜索策略和 CLI 模式请参阅 commands/search.md。
评论
支持 Markdown