Ode is a agent tool that bridges your coding agents (OpenCode, Claude Code, Codex and much more) to your favorite chat apps (Slack, Discord, and Lark). Perfect for personal or team developers working on the go.
- 🏖️ Coding from anywhere, just chat and get response in slack or discord.
- 🖇️ Map coding sessions 1 - 1 to chat threads, and use worktree to get isolated, parallel coding is so easy.
- 👬 Anyone in the channel can join coding without any extra setup, pay one account for all team members.
- 📝 Message live message updates, you don't wait for response without any information, you can monitor from real-time text updates.
- 🐙 Per user git config, who start the thread becomes corresponding git commit author. (Run @bot /setting)
- OpenClaw is greate, but Ode utilize thread based messaging to organize things better, making it easy to port sessions in coding agents directly to chat apps. Just work on one thing in one thread.
- Ode provide live message updates, you can monitor from real-time text updates for more confident.
- Channel based settings lets you configure multiple work directories easily in one machine and one slack workspace.
- Work in parallel, multiple threads can work together and isolated by worktree, multiple channels can also work together, just send messages.
- Team focused, just allow people to join channel to give them permissions to work together.
- Ode supports multiple chat tools including Slack, Discord, and Lark.
Each thread is a session, each channel can setup different directories or coding tools/models
- Configured OpenCode / Claude Code / Codex / Kimi Code... at least 1 coding cli.
- Choose one chatting app.
- Slack - Slack Bot with Socket Mode enabled, have its APP TOKEN (xapp...) and BOT TOKEN (xbot..). Configuration and auth scope can be a little bit complicated if not so familiar with slack bots. If not sure, download
slack-app-manifest.jsonand generate from the manifest file. - Discord - Discord Bot (real discord app, not webhook), have its BOT TOKEN.
- 飞书 Bot - Just CN version for now, as Lark global is not supportting long connection with socket yet. Prepare the larkAppId and larkAppSecret.
- Slack - Slack Bot with Socket Mode enabled, have its APP TOKEN (xapp...) and BOT TOKEN (xbot..). Configuration and auth scope can be a little bit complicated if not so familiar with slack bots. If not sure, download
One-line install (macOS/Linux):
curl -fsSL https://raw.githubusercontent.com/odefun/ode/main/scripts/install.sh | bashode
# ODE_WEB_HOST=0.0.0.0 ode if you want to expose setting pageSettings UI can be accessible via http://127.0.0.1:9293 or use /setting command in slack like @bot /setting.
| Agent | Logo | Project |
|---|---|---|
| OpenCode | opencode.ai | |
| Codex | github.com/openai/codex | |
| Claude Code | docs.anthropic.com/claude-code | |
| Kimi Code | moonshotai.github.io/kimi-cli | |
| Qwen Code | github.com/QwenLM/qwen-code | |
| Kilo Code | kilo.ai/docs/code-with-ai/platforms/cli | |
| Kiro CLI | kiro.dev/docs/cli/reference |
- Invite the bot to a channel.
- Run
@bot /setting, select channel setting, choose your coding cli (opencode also can choose model) and working directory. - @ your bot with the prompt you want.
- The bot will process your message with the coding agent.
- Each slack thread uses a dedicated git worktree at
<repoRoot>/.worktree/<threadId> - If you don't want to use worktree, can run
@bot /settingand select general setting, choose default.
MIT
