[Bug]: Kimi(ACP) 的 TodoList 待办清单不渲染成卡片,只折叠进 "View Steps"
Author: marce006982Created Sep 15, 2026Updated Sep 15, 2026
Labelsneeds-triage
环境
- AionUi 2.2.2(Windows)
- 后端:kimi(ACP),Kimi CLI 0.42.0
现象
使用 Kimi 后端时,agent 更新 TodoList(ACP 的 tool_call_update,title 为 Updating todo list)界面上看不到任何待办卡片:
- 这些更新被折叠进连续的
View Steps · N分组里,展开后只是一条条普通工具调用条目(因为kind: "execute",被当作"执行命令"类渲染) - 界面上没有专用的待办清单卡片/面板
- 每次 todo 更新都是一个全新的
tool_call_id(不是同一张卡片刷新),某些会话里会累积 100+ 条这样的条目,全部堆在 View Steps 里
界面观感就是一路的 思考完成 / View Steps · 1 / 思考完成 / View Steps · 2 …,没有可读的待办列表。
证据(数据库里收到的原始 ACP 数据,已脱敏)
messages 表中的一条记录(hidden=0,没有被丢弃):
{
"type": "acp_tool_call",
"content": {
"session_id": "session_xxx",
"update": {
"session_update": "tool_call_update",
"tool_call_id": "9:call_00_xxx",
"status": "completed",
"title": "Updating todo list",
"kind": "execute",
"content": [
{
"type": "content",
"content": {
"type": "text",
"text": "Todo list updated.\nCurrent todo list:\n [in_progress] …\n [pending] …"
}
}
],
"raw_input": {
"todos": [
{ "status": "in_progress", "title": "…" },
{ "status": "pending", "title": "…" }
]
}
}
}
}也就是说:数据里 raw_input.todos 已经是结构化的待办数组(status + title),前端只要识别这个工具就能渲染成清单卡片,但目前走的是通用工具卡片渲染。
另外,在 app.asar 前端产物中搜索 TodoList / TodoWrite / todo,只能匹配到 Markdown 的 task-list 插件,没有针对待办的工具渲染组件;"View Steps " 是硬编码的工具分组折叠标签。
期望
Kimi(ACP)的 TodoList 更新在消息流里渲染成可读的待办清单卡片(或面板),能反映当前 todo 状态,而不是折叠成一长串 View Steps 工具条目。
建议
- AionUi 侧:按工具名/
title(如TodoList、Updating todo list),或直接按raw_input.todos是否存在,做专用渲染 - 或由 Kimi 侧改走 ACP 的
plan通道(但目前消息列表里case "plan": return null,需要 AionUi 先把 plan 渲染补上)
关联
- #3754 [Feature] 新增模型任务 Todo 列表 —— 维护者回复「待办列表/看板已在路线图,设计草稿已出」。本 issue 可视为该设计落地前,Kimi/ACP 这条数据源的具体 case
- #688 长 todolist 执行中状态不显示(v1.8.1,已关闭)
Source: iOfficeAI/AionUi