logo
0
0
WeChat Login
feat: migrate from iflow to codebuddy SDK

🤖 codebuddy-bot

_____ _ _ _ ____ _ / ____| | | | | | | | _ \ | | | | ___ __| | | |__ __ _| |_ _ _ | |_) | ___ | |_ | | / _ \ / _` | | '_ \ / _` | __| | | | | _ < / _ \| __| | |___| (_) | (_| | | |_) | (_| | |_| |_| | | |_) | (_) | |_ \_____\___/ \__,_| |_.__/ \__,_|\__|\__, | |____/ \___/ \__| __/ | |___/

English | 中文

多渠道 AI 助手 - 基于 CodeBuddy CLI 构建的多平台消息机器人。

将 CodeBuddy 的强大 AI 能力扩展到多个通信平台,让 AI 助手无处不在。

✨ 特性

  • 🔌 多渠道支持 - Telegram、Discord、Slack、飞书、钉钉、QQ、WhatsApp、邮件、Mochat
  • 🧠 AI 驱动 - 基于 CodeBuddy CLI,支持多种模型(Claude 等)
  • 💾 会话管理 - 自动多用户会话管理,支持对话上下文
  • 📁 工作空间 - 每个机器人实例拥有独立的工作空间和记忆系统
  • 🔐 访问控制 - 支持白名单、提及触发等多种策略
  • 🔄 思考模式 - 可选的 AI 思考过程展示
  • 流式输出 - Telegram 和钉钉 AI 卡片支持实时流式输出

📋 前置条件

1. 安装 CodeBuddy CLI

codebuddy-bot 依赖 CodeBuddy CLI,请先安装:

# 使用 Node.js 22+ npm install -g @codebuddy-ai/codebuddy-cli # 或访问官方文档 # https://www.codebuddy.cn/docs/cli/installation

2. 登录 CodeBuddy

codebuddy login

按提示完成登录流程。

🚀 快速开始

安装

方式一:pip 安装(推荐)

pip install codebuddy-bot

安装后可直接使用:

codebuddy-bot --help codebuddy-bot init codebuddy-bot gateway start

方式二:从源码安装

# 克隆仓库 git clone https://github.com/your-repo/codebuddy-bot.git cd codebuddy-bot # 安装依赖(使用 uv) uv sync

初始化配置

# 创建默认配置文件(pip 安装) codebuddy-bot init # 或从源码运行 uv run codebuddy-bot init # 或手动创建 mkdir -p ~/.codebuddy-bot cp config/config.example.json ~/.codebuddy-bot/config.json

启动服务

pip 安装后:

# 前台运行(调试模式) codebuddy-bot gateway run # 后台运行 codebuddy-bot gateway start # 查看状态 codebuddy-bot status # 停止服务 codebuddy-bot gateway stop

源码安装后:

# 前台运行(调试模式) uv run codebuddy-bot gateway run # 后台运行 uv run codebuddy-bot gateway start

⚙️ 配置

配置文件位于 ~/.codebuddy-bot/config.json

完整配置示例

{ "driver": { "codebuddy_path": "codebuddy", "model": "claude-sonnet-4-20250514", "permission_mode": "bypassPermissions", "thinking": false, "max_turns": 40, "timeout": 300, "workspace": "~/.codebuddy-bot/workspace", "extra_args": [] }, "channels": { "telegram": { "enabled": true, "token": "YOUR_BOT_TOKEN", "allow_from": [] }, "discord": { "enabled": false, "token": "YOUR_BOT_TOKEN", "allow_from": [] } }, "log_level": "INFO", "log_file": "" }

Driver 配置

参数类型默认值描述
codebuddy_pathstring"codebuddy"CodeBuddy CLI 路径
modelstring"claude-sonnet-4-20250514"默认模型
permission_modestring"bypassPermissions"权限模式
thinkingboolfalse显示 AI 思考过程
max_turnsint40每个会话最大对话轮数
timeoutint300超时时间(秒)
workspacestring~/.codebuddy-bot/workspace工作空间路径

权限模式

模式描述
default所有操作需要确认
acceptEdits自动批准文件编辑
plan规划模式,只读
bypassPermissions跳过所有权限检查(机器人推荐)

🎮 CLI 命令

基本命令

# 查看版本 codebuddy-bot version codebuddy-bot -v # 查看帮助 codebuddy-bot --help # 查看状态 codebuddy-bot status # 初始化配置 codebuddy-bot init

Gateway 服务管理

# 后台启动服务 codebuddy-bot gateway start # 前台运行(调试模式) codebuddy-bot gateway run # 停止服务 codebuddy-bot gateway stop # 重启服务 codebuddy-bot gateway restart

配置管理

# 显示配置 codebuddy-bot config # 切换模型 codebuddy-bot model claude-sonnet-4-20250514 # 思考模式 codebuddy-bot thinking on codebuddy-bot thinking off

会话管理

# 列出所有会话 codebuddy-bot sessions # 清除会话 codebuddy-bot clear-session telegram 123456

定时任务 (Cron)

# 列出任务 codebuddy-bot cron list # 添加间隔任务 codebuddy-bot cron add --name "喝水提醒" --message "该喝水了!" --every 300 # 添加一次性任务 codebuddy-bot cron add --name "会议提醒" --message "开会时间!" --at "2024-12-25T10:00:00" # 添加 cron 表达式任务 codebuddy-bot cron add --name "晨报" --message "发送晨报" --cron "0 9 * * *" # 启用/禁用任务 codebuddy-bot cron enable <id> codebuddy-bot cron disable <id> # 立即运行任务 codebuddy-bot cron run <id> # 删除任务 codebuddy-bot cron remove <id>

📁 目录结构

~/.codebuddy-bot/ ├── config.json # 配置文件 ├── gateway.pid # PID 文件(后台模式) ├── gateway.log # Gateway 日志 ├── session_mappings.json # 会话映射 └── workspace/ # CodeBuddy 工作空间 ├── AGENTS.md # Agent 行为指南 ├── BOOT.md # 启动配置 ├── HEARTBEAT.md # 心跳任务 ├── IDENTITY.md # 身份 ├── SOUL.md # AI 个性定义 ├── TOOLS.md # 工具配置 ├── USER.md # 用户信息 └── memory/ # 记忆目录 └── MEMORY.md # 长期记忆

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📄 许可证

MIT

🙏 致谢