Skip to content

子智能体与多模型分工 ​

每个 Kiki 会话都有一个主智能体。活儿超过一轮能做完的时候,主智能体会把它拆开,派子智能体分别去做——每个子智能体有自己的隔离上下文——而这一切你在一个窗口里就能看完。这一页讲工作台处理一个任务时做的事:主会话怎么分派、每个角色怎么跑各自的模型、子智能体自己的记录放在哪,以及你跟主智能体说话时后台还在跑什么。

三端共用本地守护进程 ​

桌面应用、终端界面(kiki)和浏览器界面(kiki web)是同一个本地守护进程的三个前端。它们读写同一份会话数据,所以在终端里开的会话,在浏览器里就是同一个会话,反过来也一样。这就是「一个工作台」的意思:看当下适合哪个就用哪个。

主会话分派子智能体 ​

你交给主智能体一个任务——一次代码改动、一个调研问题、一个要查到底的 bug。它自己规划、调用工具,遇到能干净切开的活就派子智能体去处理那些更聚焦的部分:摸清一个陌生代码库、并行审几份实现、或者在不动主上下文的前提下规划一次大重构。

子智能体收到任务描述,在自己的隔离上下文里干活,然后交回结论、结束时也会报一声。它完整的推理和工具调用记录不会整份混进主智能体的历史,所以你同时跑四五条线,主上下文也不会被细节淹掉。而你随时可以点开其中任何一个,自己把每一步都读一遍。

新装的实例带两个 subagent profile:general 是通用助手,explore 只读探索。什么时候派谁由主智能体自己判断——看任务复杂度、上下文消耗、子任务之间是否独立,你不用指定。当然你也可以指定:直接跟主智能体说一声;权限模式是 manual 时,每次派发还会停下来等你批准。

完整的派发合同、上下文隔离和权限继承见 Agent 与 subagent。

按角色绑定不同模型 ​

不同的活不一定要共用一个模型。把主智能体、各个子智能体、审查者分别绑到不同的模型或不同的厂商上,一个会话里就能同时跑起来。强推理模型负责规划,便宜的模型跑日常;让审查跑在另一个模型家族上,也能给实现者已经做过的决定补上一个外部视角。

主 agent profile 总会拿到三个子智能体工具(AgentRun、AgentList、AgentSend),不需要实验开关,每次调用都能指定子智能体该跑哪个模型。哪里都没绑模型时,派发会以 model.not_configured 失败,而不是悄悄替你猜一个。Kimi 开箱即用;Anthropic、OpenAI 兼容服务、OpenAI Responses API、Gemini、Vertex AI 都能接,也可以用 GitHub Copilot 或 ChatGPT 账号登录。

模型选择、硬边界和模型菜单见平台与模型和 Agent profile 概念与设计。

同一个会话里用了好几种模型:派发树中每个角色绑定不同的模型。

一个会话同时跑着几个角色:右栏列出主智能体的状态、待办,以及每个子智能体和它绑定的模型。

子智能体的独立记录 ​

点开任何一个被派出去的子智能体,就能在主会话旁边读它自己的记录:它被要求做什么、做了什么、结论是什么——不用把主智能体的对话一起载入。同一个右栏会跟着你进到子智能体里,所以查看它的上下文和花费用的是同一套方式。

你也可以在它自己的输入框里给它发消息;之后用 AgentRun 把它接回来继续同一个任务,而不是从头再来。见 具名子 Agent和右侧栏。

子智能体自己的会话:它独立的记录、它自己的输入框,以及标明这条消息在回复谁的输入行。

子智能体的右栏:和主智能体一样的那套状态、待办、工作笔记与会话概览。

后台任务自动回报 ​

耗时的 shell 命令和子智能体不必占着前台。把它们丢到后台,Kiki 会在它们结束时自动通知主智能体,结果直接带在通知里,并保留完整输出的文件路径——你和智能体都不用反复去查。你可以随时查看某个运行中任务的状态和输出,也可以随时停掉它。停掉一个智能体任务时,还会告诉它下面还有哪些直属子智能体在跑。

主 agent profile 用 TaskList、TaskOutput 和 TaskStop 管后台工作。见后台任务。

任务页:一个后台任务正在跑并带停止按钮,一个已完成,一个失败。

任务页的全部任务视图:一个运行中、一个已完成、一个失败,每个都带它跑过的命令,顶部是筛选行。

下一步 ​