用途:为 Dune 应用添加结构化任务跟踪功能。智能体通过 TodoWrite 工具在处理多步查询时创建和更新任务列表,让用户实时看到智能体在做什么及原因。
前提:需已配置 integrate-atlas-chat,useAtlasChat 已接入,并安装 @cognite/dune-industrial-components、@sinclair/typebox、ajv、ajv-formats。
主要步骤:先阅读 package.json(确认 @tabler/icons-react,缺失则安装)、src/App.tsx 及调用 useAtlasChat 的文件和渲染消息的聊天视图组件。然后创建 src/todo/ 模块,从技能目录复制 types.ts、TodoContext.tsx、useTodoList.ts、todoWriteTool.ts、useTodoWriteTool.ts、TodoPanel.tsx、TodoItemRow.tsx、TodoToolResultCard.tsx 等文件。接着用 TodoProvider 包裹应用,将工具接入 useAtlasChat(配置 tools、getAppContext,并在 reset 时清空列表),在聊天输入区上方渲染 TodoPanel,在工具调用步骤中按名称 TodoWrite 渲染 TodoToolResultCard。最后运行类型检查(如 pnpm tsc --noEmit)并测试。
效果:智能体开始多步工作时显示任务面板,实时更新状态(pending → in_progress → completed),全部完成后自动清空,并通过 getAppContext 将当前任务列表注入每次提示。
限制:依赖 Atlas 聊天环境与指定依赖;具体平台、收费等信息暂未提供。