
opencode-telegram-bot
手机遥控本地 AI 编程,随时监控任务进度
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1344
使用教程
环境要求
- 已在本机安装并运行 OpenCode(本地 OpenCode 服务器,默认端口 4096)
- Node.js 环境(可用 npx / npm)
- 一个 Telegram Bot Token 和你的 Telegram 用户 ID
- 系统为 macOS、Windows 或 Linux
安装与启动步骤
-
1启动 OpenCode 服务
机器人需要连接本地 OpenCode 服务器,先在宿主机启动它并监听 4096 端口,再启动机器人。
opencode serve --port 4096 -
2快速运行机器人
最快方式,直接用 npx 运行,无需克隆仓库。注意不要在源码仓库根目录执行,否则会报 opencode-telegram: not found。
npx @grinev/opencode-telegram-bot@latest -
3完成向导配置
若未通过环境变量或 .env 提供配置,会出现交互向导:依次填写界面语言、Bot Token、用户 ID、OpenCode API URL,以及可选的服务器用户名/密码。
-
4全局安装方式
也可以全局安装后使用 start 命令。前台模式推荐用于 systemd、Docker 和本地调试等外部进程管理场景。
npm install -g @grinev/opencode-telegram-bot opencode-telegram start -
5后台守护模式
内置后台模式适合没有外部进程管理器的独立 npm 安装场景,可启动、查看状态和停止。
opencode-telegram start --daemon opencode-telegram status opencode-telegram stop -
6随时重新配置
需要修改 Bot Token、用户 ID 或 OpenCode 地址等配置时,运行 config 命令重新进入配置流程。
opencode-telegram config -
7从源码运行
克隆仓库、安装依赖并复制环境变量模板,之后按 Development 章节说明启动(不要用 npx)。
git clone https://github.com/grinev/opencode-telegram-bot.git cd opencode-telegram-bot npm install cp .env.example .env -
8Docker 部署准备
镜像只包含 Telegram 机器人,OpenCode 必须已在宿主机运行。克隆后复制 .env 并按 Configuration 小节填写环境变量。
git clone https://github.com/grinev/opencode-telegram-bot.git cd opencode-telegram-bot cp .env.example .env
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
OPENCODE_API_URL | 是 | OpenCode 服务器地址;Linux 默认 compose 下经 host 网络访问 | http://127.0.0.1:4096 |
OPENCODE_MODEL_PROVIDER | 否 | 默认模型提供方,与 Model ID 组合后固定出现在模型收藏中 | anthropic |
OPENCODE_MODEL_ID | 否 | 默认模型 ID,与 Provider 组合使用 | claude-sonnet-4 |
OPENCODE_TELEGRAM_CONTAINER | 否 | Docker Compose 自动设为 1,提示哪些命令需要宿主机文件系统 | 1 |
INITIAL_SETTINGS_PRESET | 否 | 以 JSON 设定初始默认设置,仅影响尚未持久化的键 | {"showAssistantRunFooter":false,"compactOutputMode":true,"tt |
MAX_QUEUED_PROMPTS | 否 | 消息队列上限,默认 5 条,队列在 /abort 或切换会话时清空 | 5 |
如何确认成功
在 Telegram 中打开你的机器人并发送一条任务即可;用 opencode-telegram status 可查看后台运行状态。
常见问题
Q:为什么在源码目录运行 npx 会报 opencode-telegram: not found?
A:快速开始面向 npm 用法,不需要克隆仓库。若从仓库根目录直接运行会失败,请改用 README 的 Development 章节从源码启动。
Q:为什么在 Docker 里 /open、/ls、/opencode_start 等命令不可用?
A:这些命令需要机器人进程看到宿主机项目路径,或在同一命名空间中启停 opencode。默认镜像做不到,机器人会返回警告而非通用错误。
Q:docker 需要暴露 4096 端口吗?
A:不需要。4096 端口属于单独运行的 OpenCode 服务器,机器人镜像并不对外暴露该端口。
Q:systemd、pm2 或 Docker 下该用哪种启动方式?
A:请使用 opencode-telegram start(前台运行),不要加 --daemon。内置守护模式只适合没有外部进程管理器的独立 npm 安装。
注意事项
- 所有计算和代码操作都在本地完成,机器人只与本地 OpenCode 服务器和 Telegram Bot API 通信,不开放端口、不暴露 API。
- Docker 镜像只包含 Telegram 机器人,宿主机必须已运行 OpenCode;镜像内不支持需要宿主机文件系统的命令。
- README 跟踪 main 分支,npm 上的最新发布可能还不包含文中描述的全部功能。
- 设置以原子方式写入 settings.json,旧版本保留为 settings.json.bak;两者都不可读时机器人会拒绝启动而不是覆盖。
核心亮点
- 手机端直接发起和监控 OpenCode 任务,无需 SSH 或桌面环境
- 支持定时任务调度,可自动化触发编码流程
- 本地执行代码,数据不出机器,安全性高
不足之处
- 依赖 Telegram 服务,网络受限地区使用不便
- 仅适配 OpenCode 生态,不兼容其他 AI 编码工具
适用场景
- 外出时查看 CI 或长时编码任务状态
- 在手机上远程启动代码生成或重构任务
- 定时触发自动化编码流程并接收结果通知
替代项目
OpenClaw、Telegram Bot API 自建方案、OpenCode 官方 CLI 配合 tmux
同类项目推荐
Awesome-Graphs-Meet-Agents
开源
一张地图看懂图与智能体如何互相成就
[Up-to-date] A curated list of resources on graph-empowered agents and agent-facilit···
AgentPipe
开源
让 agent 任务并发飞跑,自动优化执行效率
High performance multithreaded task execution and optimization engine for agents and···
claude-command-center
开源
一个面板管住所有 AI 编码代理,并行开工效率翻倍
One local board for Claude Code, Codex, Cursor and 5 more coding agents. See which s···
cc-haha
开源
把 Claude Code 装进桌面,多代理协作、代码对比、聊天接入全搞定
本地优先的跨平台 Claude Code / AI Agent 桌面工作台:多 Agent 协作、Git Worktree、代码···
ai-desk-card
开源
让 AI 帮你把墨水屏变成桌面智能副屏,即插即用
桌面 AI 副屏 Skill:M5Paper 墨水屏 + AI Agent 推送 widget。装 Skill 后由 Agent 自动引···
grace-marketplace
开源
让 AI 写代码更守规矩,用知识图谱管住生成质量。
GRACE (Graph-RAG Anchored Code Engineering): open Agent Skills for contract-driven A···
intentkit
开源
部署你的AI打工人团队,自动协作搞定复杂任务
IntentKit is an open-source, self-hosted cloud agent cluster that manages a collabor···
openlegion
开源
用一句话描述,安全地组建AI团队,搞定复杂任务
Secure autonomous AI agent framework and platform. Build AI teams by describing what···
OpenHer
开源
让 AI 拥有真实人格,从神经驱动而非提示词涌现情感。
Build AI that feels. Open-source persona engine — personality emerges from neural d···