all opencode features deeply integrated inside Discord. each project is a channel. each session a thread
1,404
stars
2,307
commits
TypeScript
primary language
Sep 9, 2026
updated
A collaborative agent orchestrator, inside Discord
Kimaki is a collaborative agent orchestrator that lets you drive every feature of OpenCode from Discord. Each Discord channel is a project, each thread is a coding session. Send a message, an AI agent edits code on your machine.
You can try the bot in the Kimaki Discord Server to see what it can do.
npx -y kimaki@latest
The CLI walks you through everything. Setup takes about 1 minute: you install the Kimaki bot to your Discord server with one click, pick your projects, and you're done.
Kimaki turns Discord into the control surface for your coding agents. It connects to OpenCode, a coding agent similar to Claude Code, and maps your work onto Discord's natural structure:
This separation is the whole point. Other Discord/iMessage agent tools cram everything into a single channel, so sessions pile on top of each other with no clean way to partition them. Kimaki splits projects into channels and sessions into threads, so each piece of work has its own place. Switch projects by switching channels. Switch tasks by switching threads. Search, resume, and fork any of them later.
┌──────────────────────────────────────────────────┐
Discord server │ Your machine │
┌──────────────────┐ │ │
│ #web-app ────────┼──────┼──▶ /code/web-app ──▶ OpenCode session (thread) │
│ #api ────────────┼──────┼──▶ /code/api ──▶ OpenCode session (thread) │
│ #docs ───────────┼──────┼──▶ /code/docs ──▶ OpenCode session (thread) │
└──────────────────┘ │ ▲ │
│ thread = session │ │ reads, edits, runs commands │
▼ │ ▼ in the project directory │
agent replies ◀───────┼──── AI agent (any model, your subscriptions) │
└──────────────────┘ └──────────────────────────────────────────────────┘
Think of it as texting your codebase: you describe what you want, the agent does it, and the conversation lives in a thread you can return to.
I'm Tommy, the creator of Kimaki. I do all of my development through it: every project, every session, straight from Discord. I built Kimaki because I wanted one place to start agents, watch them work, jump between projects, and pick things back up from my phone. It is the tool I actually use every day.
Kimaki gives you access to every model OpenCode supports: Anthropic, OpenAI, Google, and more. The best part: you can use your existing Claude Pro/Max and ChatGPT/Codex subscriptions instead of paying per token.
Run /login, pick a provider, choose OAuth, and authenticate with your subscription. Kimaki authenticates against the provider the same way the native CLIs do, so subscription inference works and per-token costs show as zero. You can even add multiple accounts and Kimaki rotates between them on rate limits.
See Models & Subscriptions and Model & Agent Switching.
Kimaki adds a layer of orchestration features on top of OpenCode. The ones worth knowing first:
. queue and even edit it later to update the queued text.. btw or run /btw./new-worktree moves a session into an isolated folder mid-plan so it never touches your main checkout; /merge-worktree rebases the commits back into your default branch (and asks the agent to resolve conflicts)./diff generates a shareable URL to review changes in a real diff viewer from your phone or browser.! to run a shell command in the project directory./<name>-agent command.When you send a message during an active run, OpenCode normally queues it to run after the current tool call. Kimaki adds an interrupt: if the current step is still going after ~3 seconds, Kimaki aborts it and force-sends your message, then resumes. So a message acts as an interrupt instead of waiting forever behind a long-running command. See Message Handling.
Run the CLI and follow the interactive prompts:
npx -y kimaki@latest
The setup wizard gives you two options:
Both modes work identically after setup. Keep the CLI running; it's the bridge between Discord and your machine.
Kimaki ships a full set of slash commands and a CLI. The most common slash commands:
| Command | Description |
|---|---|
/resume <session> | Resume a previous session (with autocomplete) |
/abort | Stop the current running session |
/model | Change the AI model for this channel or session |
/agent | Change the agent for this channel or session |
/login | Authenticate a provider (OAuth subscription or API key) |
/queue <message> | Queue a message to send after the current response finishes |
/btw <prompt> | Fork context into a new thread to ask a side question |
/new-worktree <name> | Move the session into an isolated git worktree |
/merge-worktree | Merge the worktree branch back into the default branch |
/diff | Generate a shareable diff URL |
/share | Generate a public URL to share the current session |
See the full Commands reference for every slash command and CLI subcommand.
Kimaki checks Discord permissions before processing any message. Users need one of:
The "Kimaki" role is the recommended approach for team access. Messages from users without any of these are ignored.
If sessions stop responding, fail to start, or the bot behaves unexpectedly, run /restart-opencode-server in any channel. This restarts the backend OpenCode server while keeping the bot connected to Discord. It fixes most transient issues.
If the problem persists, or if the issue is with the bot itself (crashes, messages not picked up, threads not created), run /upgrade-and-restart to update Kimaki to the latest version and do a full restart.
See the full Troubleshooting guide.
TypeScript
96.5%
MDX
3.0%
all opencode features deeply integrated inside Discord. each project is a channel. each session a thread
1,404
stars
2,307
commits
TypeScript
primary language
Sep 9, 2026
updated
A collaborative agent orchestrator, inside Discord
Kimaki is a collaborative agent orchestrator that lets you drive every feature of OpenCode from Discord. Each Discord channel is a project, each thread is a coding session. Send a message, an AI agent edits code on your machine.
You can try the bot in the Kimaki Discord Server to see what it can do.
npx -y kimaki@latest
The CLI walks you through everything. Setup takes about 1 minute: you install the Kimaki bot to your Discord server with one click, pick your projects, and you're done.
Kimaki turns Discord into the control surface for your coding agents. It connects to OpenCode, a coding agent similar to Claude Code, and maps your work onto Discord's natural structure:
This separation is the whole point. Other Discord/iMessage agent tools cram everything into a single channel, so sessions pile on top of each other with no clean way to partition them. Kimaki splits projects into channels and sessions into threads, so each piece of work has its own place. Switch projects by switching channels. Switch tasks by switching threads. Search, resume, and fork any of them later.
┌──────────────────────────────────────────────────┐
Discord server │ Your machine │
┌──────────────────┐ │ │
│ #web-app ────────┼──────┼──▶ /code/web-app ──▶ OpenCode session (thread) │
│ #api ────────────┼──────┼──▶ /code/api ──▶ OpenCode session (thread) │
│ #docs ───────────┼──────┼──▶ /code/docs ──▶ OpenCode session (thread) │
└──────────────────┘ │ ▲ │
│ thread = session │ │ reads, edits, runs commands │
▼ │ ▼ in the project directory │
agent replies ◀───────┼──── AI agent (any model, your subscriptions) │
└──────────────────┘ └──────────────────────────────────────────────────┘
Think of it as texting your codebase: you describe what you want, the agent does it, and the conversation lives in a thread you can return to.
I'm Tommy, the creator of Kimaki. I do all of my development through it: every project, every session, straight from Discord. I built Kimaki because I wanted one place to start agents, watch them work, jump between projects, and pick things back up from my phone. It is the tool I actually use every day.
Kimaki gives you access to every model OpenCode supports: Anthropic, OpenAI, Google, and more. The best part: you can use your existing Claude Pro/Max and ChatGPT/Codex subscriptions instead of paying per token.
Run /login, pick a provider, choose OAuth, and authenticate with your subscription. Kimaki authenticates against the provider the same way the native CLIs do, so subscription inference works and per-token costs show as zero. You can even add multiple accounts and Kimaki rotates between them on rate limits.
See Models & Subscriptions and Model & Agent Switching.
Kimaki adds a layer of orchestration features on top of OpenCode. The ones worth knowing first:
. queue and even edit it later to update the queued text.. btw or run /btw./new-worktree moves a session into an isolated folder mid-plan so it never touches your main checkout; /merge-worktree rebases the commits back into your default branch (and asks the agent to resolve conflicts)./diff generates a shareable URL to review changes in a real diff viewer from your phone or browser.! to run a shell command in the project directory./<name>-agent command.When you send a message during an active run, OpenCode normally queues it to run after the current tool call. Kimaki adds an interrupt: if the current step is still going after ~3 seconds, Kimaki aborts it and force-sends your message, then resumes. So a message acts as an interrupt instead of waiting forever behind a long-running command. See Message Handling.
Run the CLI and follow the interactive prompts:
npx -y kimaki@latest
The setup wizard gives you two options:
Both modes work identically after setup. Keep the CLI running; it's the bridge between Discord and your machine.
Kimaki ships a full set of slash commands and a CLI. The most common slash commands:
| Command | Description |
|---|---|
/resume <session> | Resume a previous session (with autocomplete) |
/abort | Stop the current running session |
/model | Change the AI model for this channel or session |
/agent | Change the agent for this channel or session |
/login | Authenticate a provider (OAuth subscription or API key) |
/queue <message> | Queue a message to send after the current response finishes |
/btw <prompt> | Fork context into a new thread to ask a side question |
/new-worktree <name> | Move the session into an isolated git worktree |
/merge-worktree | Merge the worktree branch back into the default branch |
/diff | Generate a shareable diff URL |
/share | Generate a public URL to share the current session |
See the full Commands reference for every slash command and CLI subcommand.
Kimaki checks Discord permissions before processing any message. Users need one of:
The "Kimaki" role is the recommended approach for team access. Messages from users without any of these are ignored.
If sessions stop responding, fail to start, or the bot behaves unexpectedly, run /restart-opencode-server in any channel. This restarts the backend OpenCode server while keeping the bot connected to Discord. It fixes most transient issues.
If the problem persists, or if the issue is with the bot itself (crashes, messages not picked up, threads not created), run /upgrade-and-restart to update Kimaki to the latest version and do a full restart.
See the full Troubleshooting guide.
TypeScript
96.5%
MDX
3.0%