Windows 上用 cc-connect 接入 Telegram + Codex:从零跑通与避坑指南

本文记录一次在 Windows 上把 Telegram Bot 接入本机 Codex 的完整流程。可以发给 AI 让它按步骤协助配置。

一、目标效果

最终链路如下:

text 复制代码
Telegram Bot -> cc-connect 本机进程 -> Codex CLI -> 本地项目目录

你可以在 Telegram 里给 bot 发消息,让它调用本机 Codex 读取、分析、修改项目文件。

注意:cc-connect 是跑在本机的桥接程序。电脑关机、睡眠、断网,或者 cc-connect 进程没运行时,Telegram bot 都不会处理消息。

二、准备条件

需要提前准备:

  • Windows 电脑
  • Node.js / npm
  • Codex CLI 已安装并可在本机运行
  • Telegram Bot Token
  • 一个本地项目目录,例如:
text 复制代码
D:\your-project

Telegram Bot Token 通过 @BotFather 创建 bot 获取。不要把 token 发到公开渠道。

三、安装 cc-connect

Windows 上建议使用 npm.cmd,避免 PowerShell 执行策略拦截 .ps1

powershell 复制代码
npm.cmd install -g cc-connect

检查安装:

powershell 复制代码
cc-connect.cmd --version

如果 PowerShell 报 .ps1 禁止执行,不要先改系统策略,优先改用 .cmd 或直接调用实际 exe。

四、创建配置文件

默认配置文件路径:

text 复制代码
C:\Users\<你的用户名>\.cc-connect\config.toml

最小配置示例:

toml 复制代码
language = "zh"

[log]
level = "info"

[[projects]]
name = "my-project"
admin_from = "你的Telegram数字ID"

[projects.agent]
type = "codex"

[projects.agent.options]
work_dir = "D:/your-project"
mode = "suggest"

[[projects.platforms]]
type = "telegram"

[projects.platforms.options]
token = "你的Telegram Bot Token"
allow_from = "你的Telegram数字ID"

首次不知道 Telegram 数字 ID 时,可以临时写:

toml 复制代码
admin_from = "*"
allow_from = "*"

跑通后立刻改成自己的数字 ID。昵称、用户名都不等于数字 ID。

五、获取 Telegram 数字 ID

启动 bot 后,在 Telegram 里给 bot 发:

text 复制代码
/whoami

或者看 cc-connect 日志中的 session/user 信息。拿到数字 ID 后,把配置改成:

toml 复制代码
admin_from = "123456789"
allow_from = "123456789"

这样可以避免其他人控制你的本地 Codex。

六、Windows 上最常见的 Codex 坑

1. PowerShell 执行策略拦截

现象:

text 复制代码
npm.ps1 无法加载
cc-connect.ps1 无法加载

解决:

powershell 复制代码
npm.cmd install -g cc-connect
cc-connect.cmd --version

或者直接运行 npm 全局目录里的 cc-connect.exe

2. Telegram 客户端能连,不代表 Bot API 能连

Telegram App 可能走客户端内置代理,但 cc-connect 访问的是:

text 复制代码
https://api.telegram.org

诊断:

powershell 复制代码
curl.exe -I https://api.telegram.org

如果这里不通,需要让命令行进程也能走代理或 VPN。

3. Codex 被 WindowsApps 别名劫持

Windows 上可能出现:

text 复制代码
fork/exec C:\Program Files\WindowsApps\...\codex.exe: Access is denied.

原因:cc-connect 固定调用 codex,但 Windows 命令查找先命中了 WindowsApps 里的 App Alias,该路径对普通进程不可直接 fork/exec。

诊断:

powershell 复制代码
where.exe codex
Get-Command codex -All

如果 where.exe codex 先看到 C:\Program Files\WindowsApps\...,就容易出问题。

可行解决方案:

  1. 找到真实 Codex CLI 路径,例如:
text 复制代码
C:\Users\<用户名>\AppData\Local\OpenAI\Codex\bin\codex.exe
  1. 复制一份真实 codex.exe 到一个普通目录,例如:
text 复制代码
C:\cc-connect-bin\codex.exe
  1. 启动 cc-connect 前,把这个目录放到 PATH 最前面。

启动脚本示例:

bat 复制代码
@echo off
setlocal
set "PATH=C:\cc-connect-bin;%PATH%"
set "CC_CONNECT_EXE=%APPDATA%\npm\node_modules\cc-connect\bin\cc-connect.exe"
set "CC_CONNECT_CONFIG=%USERPROFILE%\.cc-connect\config.toml"
"%CC_CONNECT_EXE%" --config "%CC_CONNECT_CONFIG%" --force

然后用:

powershell 复制代码
where.exe codex

确认第一项是:

text 复制代码
C:\cc-connect-bin\codex.exe

4. 不要盲目配置 cli_path

不同版本的 cc-connect 对 Codex 配置字段支持不完全一致。某些稳定版可能不支持 cli_path,即使写了也会被忽略。

如果你遇到 cli_path 不生效,优先用 PATH 方案解决 Codex 查找问题。

七、启动 cc-connect

建议写一个 .bat 启动脚本:

bat 复制代码
@echo off
setlocal
set "PATH=C:\cc-connect-bin;%PATH%"
set "CC_CONNECT_EXE=%APPDATA%\npm\node_modules\cc-connect\bin\cc-connect.exe"
set "CC_CONNECT_CONFIG=%USERPROFILE%\.cc-connect\config.toml"
"%CC_CONNECT_EXE%" --config "%CC_CONNECT_CONFIG%" --force

双击脚本即可启动。

检查进程:

powershell 复制代码
Get-Process cc-connect

停止:

powershell 复制代码
Stop-Process -Name cc-connect

八、验证是否真正跑通

日志里看到以下内容,才算 Telegram 和 cc-connect 连接成功:

text 复制代码
telegram: connected
platform ready
telegram: registered bot commands

给 Telegram bot 发一条普通消息后,看到以下内容,才算 Codex 跑通:

text 复制代码
message received
session spawned
turn complete

如果只看到 telegram: connected,只能说明 bot 连接了,不代表 Codex 已经能启动。

九、Telegram 常用命令

新开一个会话:

text 复制代码
/new

查看状态:

text 复制代码
/status

获取自己的 Telegram 数字 ID:

text 复制代码
/whoami

查看会话:

text 复制代码
/sessions

十、建议让 AI 帮你跑通时这样发提示词

可以把下面这段发给你的 AI:

text 复制代码
请帮我在 Windows 上配置 cc-connect,把 Telegram Bot 接入本机 Codex CLI。

要求:
1. 用 npm.cmd 安装 cc-connect,避免 PowerShell .ps1 执行策略问题。
2. 配置文件写到 %USERPROFILE%\.cc-connect\config.toml。
3. Telegram token 用我提供的 token,但不要在输出中复述。
4. 项目目录是:<替换为你的项目目录>。
5. 优先使用 Codex agent,mode 先用 suggest。
6. 启动后检查日志是否出现 telegram: connected、platform ready。
7. 如果 Codex 报 WindowsApps Access denied,请检查 where.exe codex 和 Get-Command codex -All。
8. 如 WindowsApps 抢占 codex,请把真实 codex.exe 复制到普通目录,并用启动脚本把该目录放到 PATH 最前。
9. 跑通后让我发送 /whoami,再把 allow_from 和 admin_from 锁定为我的 Telegram 数字 ID。
10. 每一步都要验证,不要只看安装成功就判断跑通。

十一、最终避坑清单

  • 不要公开 Telegram Bot Token。
  • 不要长期使用 allow_from = "*"
  • Windows 上优先用 npm.cmd
  • 不要把 Telegram 客户端能连等同于 Bot API 能连。
  • telegram: connected 只代表平台连上,不代表 Codex 能执行。
  • 遇到 WindowsApps Access denied,优先查 where.exe codex
  • cc-connect 是本机服务,电脑关机后 bot 不会工作。
  • 修改项目文件只会发生在配置的 work_dir 下,建议先用 suggestauto-edit,不要一开始就用高权限模式。
相关推荐
铁手飞鹰2 小时前
PyModbus API对应的功能码和报文
linux·windows·python·modbus rtu·pymodbus
idolao2 小时前
helium_0.11.5.1_x64-installer浏览器安装步骤详解(附Helium浏览器配置与隐私设置)
windows
爱宇阳3 小时前
Windows 11 右键菜单恢复经典样式完整指南
windows
火车叼位3 小时前
像管理 Linux 一样 SSH 到 Windows:OpenSSH Server 与 Git Bash 实战
运维·windows·ssh
非凡ghost3 小时前
完美解码最新版(完美解码播放器)
windows·智能手机·pdf·firefox·软件需求
Lw老王要学习3 小时前
Windows 11 安装配置 Docker Desktop 并部署 sqlbot 完整指南
windows·docker·容器·agent·sqlbot
半壶清水3 小时前
windows环境下,bmv2虚拟交换机的部署与使用方法
网络·windows·python·网络协议
小-黯3 小时前
Windows软件自启速度优化BAT脚本
windows
Mzyh3 小时前
通过蓝印RPA获取到飞书聊天中的信息图片-自动化
windows·python·ai·自动化·飞书·rpa