对话研究
Dialogue Research是一个基于Telegram的会话研究助手,用于论文分析和开发工作流程。
安装指南
1) 先决条件
- Node.js 20+
- VS Code(推荐内部人士)+支持MCP的副驾驶聊天
- Telegram机器人令牌(来自
@BotFather) - 要么
GITHUB_TOKEN或COPILOT_API_KEY用于自动模型调用
2) 安装依赖项
npm install
npm run build3) 准备代币
3.1电报令牌
- 打开
@BotFather在Telegram中 - 跑
/newbot - 复制bot令牌(例如:
123456:ABC...)
3.2型号证书(选择一个)
GITHUB_TOKEN(与models访问)COPILOT_API_KEY
如果你看到 The models permission is required to access this endpoint,您的令牌没有模型访问权限。使用具有适当权限的令牌。
4) 配置环境变量(Windows PowerShell)
[Environment]::SetEnvironmentVariable('TELEGRAM_BOT_TOKEN','','User')
[Environment]::SetEnvironmentVariable('GITHUB_TOKEN','','User')
# Or:
# [Environment]::SetEnvironmentVariable('COPILOT_API_KEY','','User')可选:
[Environment]::SetEnvironmentVariable('HTTP_PROXY','http://127.0.0.1:7890','User')
[Environment]::SetEnvironmentVariable('HTTPS_PROXY','http://127.0.0.1:7890','User')
[Environment]::SetEnvironmentVariable('NO_PROXY','localhost,127.0.0.1','User')
[Environment]::SetEnvironmentVariable('DEV_WORKSPACE_ROOT','E:\\project\\bot_ws','User')设置变量后,重新加载VS Code(Developer: Reload Window).
5) MCP配置
确保 .vcode/mcp.json 包含 telegram-copilot-bridge 并使用 ${env:TELEGRAM_BOT_TOKEN}.
然后在命令面板中运行:
MCP: Start Server- 选择
telegram-copilot-bridge
6) 启动守护程序模式
npm run daemon:start停止守护进程:
npm run daemon:stop用法
1) 直接在Telegram中聊天
直接向您的机器人发送消息。守护进程会自动轮询更新并回复。
建议的第一步:
/devworkspace E:\project\bot_ws
2) 命令
/start显示欢迎信息/menu刷新交互式主菜单/back返回上一步(论文和开发流程)/topic切换主题线程- `/agent
` 交换机代理配置文件
/models列出可用型号/modelsync从端点刷新可用模型/model为当前主题设置模型/language或/lang为当前主题设置交互语言/history搜索历史/paper显示当前论文/paperhelp显示纸张模式命令指南/paperadd添加纸张/paperlist列出/选择最近的论文/papermode设定论文推理模式/paperorganize [cot|tot|got]整理纸质信息/paperbrainstorm [--mode cot|tot|got]进行5人头脑风暴/ask询问当前论文/askm使用按请求模型覆盖进行询问
开发模式命令:
- `/devworkspace
` 设置工作区根目录
/devprojects列出项目- `/devcreate
` 创建项目并设置为当前
- `/devselect
` 选择当前项目
/devclone [project-name]克隆并设置当前/devstatus显示开发模式状态/devhelp显示开发模式命令指南/devls [dir]列出当前项目中的文件/devcat从当前项目读取文件/devrun运行白名单命令(git status|branch|log,npm/pnpm/yarn test)/devgit [status|branch|log]Git查询操作的快捷方式
交互式开发流程(内联键盘):
- 进入
💻 Development Menu接收工作区项目列表和克隆提示 - 从内联按钮中选择项目以设置焦点项目
- 设置焦点后,使用
🤖 Copilot或🔁 Change Project - 在“振动编码”面板中,使用
🧩 Agent/🧠 Model/🌳 File Tree - 您还可以在开发模式下直接发送GitHub repo URL以克隆到工作区
- 文件树行的格式为 `文件夹
或 #文件N.ext `
- 回复 `文件夹
(或 文件夹)浏览、回复 #文件N.ext` 让Copilot读取并解释该文件
- 文件树支持内联分页(
上一页/下一页)对于大型目录 #文件N.ext在当前目录中使用稳定的编号(N在页面之间保持一致)- 内联回调操作绑定到发起主题线程(不强制回退到默认主题)
- 开发子步骤支持
⬅️ 返回上一步通过内联键盘(项目列表、聚焦项目面板、vibe面板、代理/模型选择器、文件树) - 您还可以使用
/back作为开发流程中前一步导航的文本回退 - 纸张子页(历史/候选人)也使用
⬅️ 返回上一步内联导航 - Back action回调命名空间统一为
back:*(传统回调仍然兼容) - 为了可读性和更安全的重构,后台操作回调文本集中在守护进程常量中
语言行为:
zh=>机器人系统消息和模型输出遵循中文en=>机器人系统消息和模型输出遵循英文- 语言设置按以下方式存储
chat_id + topic
指导层次:
- 全球指导保持简洁
/start. - 论文具体指导集中在
/paperhelp并在进入纸张模式后出现。 - 针对发展的指导主要集中在
/devhelp并在进入开发模式后出现。
验证
- 发送
/start - 发送正常消息并确认自动回复
- 检查 数据/副本使用日志 用于使用记录
自动覆盖重点:
- tests/devModeHelpers.test.ts 在分页文件树视图中验证菜单主题状态键格式和稳定的文件索引
- tests/devModeHelpers.test.ts 还验证回调主题解析(映射主题、缺少映射回退、无效消息id回退)
- tests/devModeHelpers.test.ts 还验证了开发的自然意图(
GitHub URL,文件夹,#文件N.ext)解析 - tests/devModeHelpers.test.ts 还通过格式错误的输入回退验证文件索引缓存解析和稳定的索引到路径解析
故障排除
MCP在启动时卡住
- 跑
npm run build - 跑
Developer: Reload Window - 重新启动MCP服务器
机器人不自动回复
- 确保守护进程正在运行(
npm run daemon:start) - 检查
TELEGRAM_BOT_TOKEN - 检查
GITHUB_TOKEN或COPILOT_API_KEY - 如果出现权限错误,请使用令牌
models访问 - 环境更新后重新启动守护进程和VS代码
开发项目操作失败
- 确认
DEV_WORKSPACE_ROOT或奔跑 `/devworkspace
`
- 确认路径权限
- 跑
/devstatus检查当前工作区/项目 - 确保
git已安装用于克隆操作
getUpdates 409冲突
只有一个守护进程实例应该轮询相同的bot令牌。
成本/重试日志
- 日志文件: 数据/副本使用日志
- 每行一条JSON记录,包括令牌、估计成本、重试次数和错误
