基于 OpenClaw 思路做的精简版实现,目标是保留最核心链路:
- Telegram 单渠道
- Codex 登录复用(
openai-codex)+ OpenAI API Key(openai) /coding_agent调用 codex CLI- Mac 文件/浏览器工具
- macOS 终端工具(
mac_run) - 精简控制台
- 精简管理端(Admin UI)
-
Telegram 消息收发(含 slash command)
-
模型调用:
openai/openai-codex -
认证方式:
MODEL_REF=openai-codex/...:复用 Codex 登录态(codex login)MODEL_REF=openai/...:使用OPENAI_API_KEY
-
Slash 命令:
/help/auth status/auth login/coding_agent ...
-
管理端 API + Web UI:
- 健康状态
- Auth 状态与设备码登录
- 模型传输探针(Probe API)
- coding_agent 运行/重置/会话列表
- 调试聊天
-
文件/终端工具(供聊天自动调用):
fs_search_files(搜索文件)fs_create_file(创建文件)fs_read_text/fs_write_text/fs_edit_textmac_run(可在任意 macOS 路径执行终端命令)
npm installcp .env.example .env最少要配置(Telegram):
TELEGRAM_BOT_TOKEN=你的telegram机器人token
WORKSPACE_ROOT=~/.cokeclaw可选配置:
MODEL_REF=openai-codex/gpt-5.3-codex
CODEX_LOGIN_MODE=auto
CODEX_SANDBOX=danger-full-access
# 可选:当服务环境 PATH 找不到 codex 时,填绝对路径
CODEX_BIN=/Users/你的用户名/.npm-global/bin/codex
ADMIN_HOST=127.0.0.1
ADMIN_PORT=3187只开管理端:
npm run dev:adminTelegram + 管理端:
npm run dev:telegram-admin全开(Telegram + Console + Admin):
npm run dev:all- 在 Telegram 打开你的 bot(例如
@coke_claw_bot) - 发送
/start、/help - 检查登录状态:
/auth status - 如果未登录:
/auth login,按返回 URL + code 去 OpenAI 完成登录 - 执行 coding 任务:
/coding_agent 请在 tetris-demo 目录创建一个原生 JS 的俄罗斯方块网页游戏
会话相关命令:
/coding_agent sessions
/coding_agent reset
打开:http://127.0.0.1:3187
可以直接:
- 点
Auth Status查看当前是否复用到 Codex 登录 - 点
Start Codex Login获取设备码登录信息 - 在
Coding Agent面板执行任务 - 在
Persistent Sessions查看会话绑定
单元/集成测试:
npm test端到端测试(admin api + telegram + admin ui):
npm run test:e2e仅 UI e2e:
npm run test:e2e:uinpm run dev:telegram
npm run dev:console
npm run dev:admin
npm run dev:telegram-admin
npm run dev:all
npm run codex:loginsrc/lite/
app.ts
config.ts
auth/
channels/telegram/
runtime/
tools/
admin/
acp/
console/
src/tests/
src/e2e/
docs/
.env已在.gitignore中,不会被提交。codex login --device-auth登录后,服务会自动优先复用 Codex 凭证。- 如果 Telegram token 泄露,请立即在
@BotFather执行/revoke。
