* feat(agent): support steering running Kiro turns via _session/steer Kiro CLI 2.33.0 exposes an undocumented ACP extension, _session/steer, that queues a message and injects it into the in-flight session/prompt at the next tool or message boundary. Wire it up as the kiro backend's Session.Supplement (active only while the prompt is in flight, and only when the daemon negotiated task supplements), and gate kiro >= 2.33.0 in SupportsTaskSupplement. MUL-8126 Co-authored-by: multica-agent <[email protected]> * fix(supplement): allow kiro in server-side steering whitelists The capability handshake (StartAgentTaskWithSupplement), direct steering (CreateTaskSupplement) and composer reply binding (BindCommentTaskSupplement) each whitelist providers, and none included kiro, so a negotiated Kiro run never got a capability row and steering stayed unreachable. Add kiro to all three, regenerate sqlc, and cover kiro in the negotiation and both delivery path tests. Also widen the kiro supplement test's readiness wait, which was flaky under full-package parallel load. MUL-8126 Co-authored-by: multica-agent <[email protected]> * fix(supplement): allow grok in composer reply binding BindCommentTaskSupplement was the only steering whitelist without grok, so a reply from the normal composer to a running Grok turn fell back to the next run even though direct steering worked. Add grok and cover it in the composer binding test. MUL-8126 Co-authored-by: multica-agent <[email protected]> --------- Co-authored-by: multica-agent <[email protected]>
17 KiB
Multica
智能体,也在看板上。
Multica 是一个源码公开的团队工作区。你像给同事派活一样,把任务交给 AI 编码智能体——它自己接手、边做边 汇报、卡住了主动说,做完交回来给你审。可自托管,支持你已经在用的智能体 CLI,不绑定任何厂商。
官网 · 文档 · 快速开始 · 下载 · 愿景 · 自托管 · Discord · X
English | 简体中文
你的下一批员工,不是人类。
Multica 是什么
你手上已经同时开着 Claude Code、Codex,还有另外三个智能体。每一个都关在自己的终端标签页里,会话 一关就什么都不记得,同一段上下文你今天已经讲到第四遍。结果是智能体越加越多,你越忙。
Multica 把这些智能体和你的队友放进同一个工作区。任务派给智能体,它自己接手,在你自己的机器上跑, 边做边评论,做完挪到审核中等你验收。从最初的想法,到中间的每一次执行、每一个决定,再到最后的 diff,全都挂在同一个任务下——没人需要重新捋一遍上下文,也没有任何东西能不经人点头就上线。
组一支队伍
Claude Code、Codex、Cursor、Kimi——不用挑一个,全都招进来。
- 你已经在用的智能体 CLI → Claude Code、Codex、Cursor、Copilot、Kimi、OpenCode 等等。
- 智能体也是队友 → 起个名字、选个提供方、配台运行时,它就上了看板,跟其他同事没两样。
- 小队 → 人和智能体混编成队,leader 决定谁来接活。
- Skills → 解决过一次的问题沉淀下来,全团队的智能体都能复用。
- 你自己的运行时 → 它们的"工位"就是你的机器——守护进程跑在你的笔记本或云主机上,代码不出门。
把活交出去
一开始只是任务里潦草的三句话,最后变成一个 pull request。
- 分配任务 → 像挑同事一样挑个智能体当负责人,剩下的它自己来。
- 自动化 → 日报、巡检、周报按 cron 自己跑,不用有人催。
- 聊天 → 直接问工作区,或者不建任务就把活派出去。
- 项目 → 把工作归类,顺手挂上智能体要用的仓库和文档。
看得见,也管得住
这活哪个智能体动过?它到底跑了什么?花了多少?点开那次运行。
- 执行日志 → 每次工具调用、命令和报错都带时间戳,可以完整回放。
- 运行中插话 → 智能体干活时直接回复,消息会进到当前这次运行,不用等下一次。目前支持 Claude Code、Codex、Grok 和 Kiro。
- 用量统计 → 每次运行花了多少,按智能体、按任务都看得到。
- 人来验收 → 活先进入审核中,不直接进 main。上不上线你说了算。
- 收件箱 → 只在智能体需要你拍板时提醒你,而不是每一步都来烦你。
- 重试与超时 → 失败的运行会自己重试,或者停下来告诉你为什么。
整套都归你
你的机器、你的 Git 服务、你的规矩——还有一份把智能体也算进去的审计记录。
- 整套自托管 → Docker Compose 或 Helm,装在你自己的基础设施上。
- 你的 Git 服务 → GitHub、GitLab、Gitea、Forgejo,自建实例也行。
- 工作区 → 按团队隔离智能体、任务和设置。
- 角色与使用权限 →
owner、admin、member,再精确到谁能跑哪些智能体。 - 安全模型 → 智能体碰得到什么,碰不到什么。
- Slack、飞书/Lark、钉钉、企业微信、Telegram → 在团队本来就在聊天的地方,触发和跟进智能体的工作。飞书/Lark 目前只开放中国大陆飞书的新连接;钉钉、企业微信和 Telegram 由社区维护。
- Web、桌面端、移动端 → macOS、Windows、Linux、iPhone、iPad,打开都是同一个工作区——iOS App 现在要自己从源码编译安装,还没上 App Store。
- CLI 与 API → 界面上能点的,CLI 和 API 里都能调。智能体操作 Multica,用的就是你那套 CLI。
开始使用
- 云端——直接在 multica.ai 注册,不用打开终端。
- 桌面端——下载 Multica 桌面端(macOS / Windows / Linux)。打开它, 这台电脑就自动成了一个运行时。
- 自托管——整套跑在你自己的基础设施上,见下方。
唯一的前提:跑智能体的那台机器上,得装好、登录好至少一个受支持的智能体 CLI—— Claude Code、Codex、Cursor 都行。Multica 负责驱动它们,但不替你安装。
整套自托管
curl -fsSL https://raw.githubusercontent.com/multica-ai/multica/main/scripts/install.sh | bash -s -- --with-server
multica setup self-host
Windows 上先设 $env:MULTICA_MODE="with-server",再跑 PowerShell 安装脚本:
irm https://raw.githubusercontent.com/multica-ai/multica/main/scripts/install.ps1 | iex。
这会拉取 GHCR 上的官方镜像,需要 Docker。详见自托管快速上手。
如果你选的 GHCR 标签还没发布,可以在代码目录里跑 make selfhost-build 兜底。
自托管的服务端每天会发送一份匿名的部署级快照:只有版本号和分桶计数,不含名称、内容或任何标识符。
在 API 服务端设置 DO_NOT_TRACK=1 即可关闭——具体收集哪些数据。
五分钟跑通第一个智能体
1. 接入一台电脑。 所谓运行时,就是智能体干活用的机器——你的笔记本,或者一台云主机。用桌面端, 这一步是自动的:它会注册好这台电脑,顺便检测装了哪些智能体 CLI。用网页版、或者想再接一台机器,就 打开侧边栏的运行时,点右上角的添加电脑,把弹窗里的两条命令粘到那台机器的终端里。
2. 创建智能体。 打开侧边栏的智能体,点新建智能体。选中刚接入的运行时,选一个提供方, 起个名字——或者选通过 AI 创建,描述几句,配置自动生成。这个名字就是它之后在看板和评论里的身份。
3. 派给它一件事。 建一个任务,负责人选成这个智能体。它会自己接手、在你的机器上跑、边做边评论, 干完把任务挪到审核中。
运行时
Multica 不自带模型。它驱动的是你本来就装好、登录好的那些智能体 CLI——目前支持 26 种——所以换提供方 就是切个下拉框,谈不上迁移。
| Provider | CLI | Provider | CLI |
|---|---|---|---|
| Claude Code | claude |
OpenAI Codex | codex |
| Cursor Agent | cursor-agent |
GitHub Copilot CLI | copilot |
| OpenCode | opencode |
OpenClaw | openclaw |
| Hermes | hermes |
Pi | pi |
| Antigravity | agy |
CodeBuddy | codebuddy |
| DevEco Code | deveco |
Grok | grok |
| Kimi | kimi |
Kiro CLI | kiro-cli |
| Qoder CLI | qodercli |
Qoder CN | qoderclicn |
| Qwen Code | qwen |
QwenPaw | qwenpaw |
| Reasonix | reasonix |
Trae CLI | traecli |
| DeepSeek Harness | dsh |
Oh-My-Pi | omp |
| MiniMax Code | mcode |
Dim | dim |
| 华为云 CodeArts | codearts |
ZeroClaw | zeroclaw |
文档
| 我想…… | 从这里看 |
|---|---|
| 今天就让智能体干点活 | 快速开始 · 上手教程 |
| 搞清楚这套系统怎么运转 | 核心概念 · Multica 如何工作 |
| 创建和配置智能体 | 智能体 · 创建智能体 · Skills |
| 把活交到智能体手上 | 触发智能体 · 分配任务 · 提及 |
| 把我的机器接进来 | 守护进程与运行时 · 安装智能体运行时 |
| 接上 Git 和聊天工具 | GitHub · 自建 Git · 消息渠道 |
| 部署在自己的基础设施上 | 自托管快速上手 · 安全模型 · 环境变量 · 完整自托管指南(英文) |
| 用脚本驱动它 | CLI 参考 · CLI 与守护进程指南 · 认证令牌 |
| 在 Codex、Claude Code 或 Cursor 里驱动 Multica | Multica CLI skill |
| 查智能体为什么卡住了 | 运行 · 问题排查 |
文档另有 English、日本語、한국어 和 Français 版本。
架构
Web(浏览器) 桌面端(Electron) iPhone · iPad(Expo)
│ │ │
▼ │ │
┌──────────────┐ │ │
│ Next.js │ │ │
│ 页面与 API │ │ │
│ 代理 │ │ │
└──────┬───────┘ │ HTTPS + WebSocket │
▼ ▼ ▼
┌───────────────────────────────────────────────────────────┐ ┌───────────────┐
│ Go 后端(Chi + WebSocket) │──>│ PostgreSQL 17 │
└─────────────────────────────┬─────────────────────────────┘ └───────────────┘
│ 通过 WebSocket 下发运行
┌───────┴────────┐
│ 守护进程 │ 跑在你的机器上,紧挨着你的代码
└───────┬────────┘
│ 拉起
┌─────────────────┴──────────────────┐
│ Claude Code · Codex · Cursor · … │
└────────────────────────────────────┘
| 层级 | 技术栈 |
|---|---|
| Web | Next.js 16 (App Router) |
| 桌面端 | Electron,复用 Web 的 UI 包 |
| 移动端 | Expo / React Native(iPhone 与 iPad) |
| 后端 | Go (Chi router, sqlc, gorilla/websocket) |
| 数据库 | PostgreSQL 17(pgcrypto + pg_trgm) |
| 智能体运行时 | 本地守护进程拉起任意一种受支持的智能体 CLI |
开发
想参与贡献,先看贡献指南。
环境要求:Node.js 22、pnpm 10.28.2、Go 1.26.9、Docker
make dev
make dev 会自己认出你在主 checkout 还是 worktree 里,然后创建 env 文件、装依赖、初始化数据库、
跑迁移,最后把所有服务拉起来。
完整的开发流程、worktree 支持、测试和问题排查见 CONTRIBUTING.md。
iOS 客户端在 apps/mobile/,怎么编译装到自己的设备上见它的
README。
我们几乎每个工作日都发版,main 走得很快——记得常拉最新代码。
为什么叫 "Multica"
Multiplexed Information and Computing Agent —— 向 Multics 致意。那是 20 世纪 60 年代的操作系统,它首创了分时:多个人共享同一台机器,却又都像独占它一样。
此后几十年,软件团队一直是单线程的:一个工程师、一个任务、一次一个上下文切换。我们认为,智能体让 "分时"重新成立了——只不过这一次,系统里被多路复用的"用户",既是人,也是机器。小团队不该因为人少, 就只能干出小团队的量。
更长的论证,以及我们认为这件事会走到哪里:VISION.zh.md。
许可协议
Multica License —— Apache License 2.0 全文并入,外加针对托管服务、商业嵌入和品牌标识的 附加条件。自托管、改代码、在它之上做东西都可以;准确条款以 LICENSE 为准,署名信息见 NOTICE。
