Storage
SDK Session 布局
本地 SDK Agent 的 session 为什么会落在 .downcity/agents/<agentId>/... 下
SDK Session 布局
SDK 本地 Agent 的 session 默认落盘到:
<projectRoot>/.downcity/agents/<agentId>/sessions/<sessionId>/messages/messages.jsonl为什么有 agentId
因为同一个项目目录中,可能同时存在多个 SDK Agent。
agentId 用来隔离它们的 session 数据。
你能在这里看到什么
messages.jsonlinflight.jsonmeta.json- archive 目录
meta.json 中包含持久化 title。首条用户消息出现后,SDK 会写入标题;如果模型标题生成失败,就使用首条用户消息的截断文本。
inflight.json 用来保存当前还在生成中的 assistant UIMessage 快照。这样在多 step tool 执行过程中,即使中途中断,也不会把已经产生的 text / tool parts 全部丢掉。运行完成后,SDK 会把最终 assistant 收口进 messages.jsonl,并清理 inflight.json。
当你在做多 session 或多 agent 调试时,这套目录结构会非常关键,因为它决定了不同执行单元之间的数据隔离方式。