@downcity/agent 1.1.51 → 1.1.62

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/README.md +5 -4
  2. package/bin/agent/Agent.d.ts.map +1 -1
  3. package/bin/agent/Agent.js.map +1 -1
  4. package/bin/config/AgentInitializer.d.ts +1 -1
  5. package/bin/config/AgentInitializer.js +1 -1
  6. package/bin/config/DowncitySchema.js +1 -1
  7. package/bin/config/DowncitySchema.js.map +1 -1
  8. package/bin/config/ExecutionBinding.d.ts +1 -1
  9. package/bin/config/ExecutionBinding.js +1 -1
  10. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.d.ts.map +1 -1
  11. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.js +0 -4
  12. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.js.map +1 -1
  13. package/bin/executor/composer/system/default/InitPrompts.d.ts +1 -1
  14. package/bin/executor/composer/system/default/InitPrompts.js +1 -1
  15. package/bin/executor/composer/system/default/SystemDomain.js +1 -1
  16. package/bin/executor/composer/system/default/assets/core.prompt.d.ts +1 -1
  17. package/bin/executor/composer/system/default/assets/core.prompt.js +1 -1
  18. package/bin/executor/composer/system/default/assets/plugin.prompt.d.ts +1 -1
  19. package/bin/executor/composer/system/default/assets/plugin.prompt.js +1 -1
  20. package/bin/executor/composer/system/default/assets/task.prompt.d.ts +1 -1
  21. package/bin/executor/composer/system/default/assets/task.prompt.js +1 -1
  22. package/bin/executor/messages/ChatMessageMarkupTypes.d.ts +1 -1
  23. package/bin/executor/messages/ChatMessageMarkupTypes.js +1 -1
  24. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.d.ts +1 -2
  25. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.d.ts.map +1 -1
  26. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js +17 -56
  27. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js.map +1 -1
  28. package/bin/executor/tools/shell/ShellToolBridge.js +1 -1
  29. package/bin/executor/tools/shell/ShellToolBridge.js.map +1 -1
  30. package/bin/executor/tools/shell/ShellToolDefinition.d.ts +2 -2
  31. package/bin/executor/tools/shell/ShellToolFormatting.d.ts +1 -1
  32. package/bin/executor/tools/shell/ShellToolFormatting.js +7 -7
  33. package/bin/executor/tools/shell/ShellToolFormatting.js.map +1 -1
  34. package/bin/executor/tools/shell/ShellToolSchemas.d.ts +7 -75
  35. package/bin/executor/tools/shell/ShellToolSchemas.d.ts.map +1 -1
  36. package/bin/executor/types/SessionHistoryMeta.d.ts +5 -24
  37. package/bin/executor/types/SessionHistoryMeta.d.ts.map +1 -1
  38. package/bin/executor/types/SessionHistoryMeta.js +1 -1
  39. package/bin/index.d.ts +3 -2
  40. package/bin/index.d.ts.map +1 -1
  41. package/bin/index.js +1 -0
  42. package/bin/index.js.map +1 -1
  43. package/bin/model/CityModelAdapter.d.ts +23 -0
  44. package/bin/model/CityModelAdapter.d.ts.map +1 -0
  45. package/bin/model/CityModelAdapter.js +338 -0
  46. package/bin/model/CityModelAdapter.js.map +1 -0
  47. package/bin/runtime/host/daemon/Paths.d.ts +1 -1
  48. package/bin/runtime/host/daemon/Paths.js +1 -1
  49. package/bin/runtime/host/daemon/ProjectSetup.js +2 -2
  50. package/bin/session/Session.d.ts +1 -0
  51. package/bin/session/Session.d.ts.map +1 -1
  52. package/bin/session/Session.js +32 -6
  53. package/bin/session/Session.js.map +1 -1
  54. package/bin/session/SessionTitle.d.ts +49 -0
  55. package/bin/session/SessionTitle.d.ts.map +1 -0
  56. package/bin/session/SessionTitle.js +130 -0
  57. package/bin/session/SessionTitle.js.map +1 -0
  58. package/bin/session/browse/Browse.d.ts +2 -1
  59. package/bin/session/browse/Browse.d.ts.map +1 -1
  60. package/bin/session/browse/Browse.js +18 -15
  61. package/bin/session/browse/Browse.js.map +1 -1
  62. package/bin/session/index.d.ts +2 -1
  63. package/bin/session/index.d.ts.map +1 -1
  64. package/bin/session/index.js +2 -1
  65. package/bin/session/index.js.map +1 -1
  66. package/bin/session/storage/Metadata.d.ts +4 -0
  67. package/bin/session/storage/Metadata.d.ts.map +1 -1
  68. package/bin/session/storage/Metadata.js +12 -25
  69. package/bin/session/storage/Metadata.js.map +1 -1
  70. package/bin/session/storage/Persistence.d.ts.map +1 -1
  71. package/bin/session/storage/Persistence.js +1 -4
  72. package/bin/session/storage/Persistence.js.map +1 -1
  73. package/bin/types/agent/AgentTypes.d.ts +9 -5
  74. package/bin/types/agent/AgentTypes.d.ts.map +1 -1
  75. package/bin/types/config/AgentProject.d.ts +1 -1
  76. package/bin/types/config/DowncityConfig.d.ts +3 -3
  77. package/bin/types/config/ExecutionBinding.d.ts +4 -4
  78. package/bin/types/config/ExecutionBinding.js +1 -1
  79. package/bin/types/runtime/auth/AuthPermission.js +2 -2
  80. package/bin/types/runtime/auth/AuthPermission.js.map +1 -1
  81. package/bin/types/runtime/host/Store.d.ts +3 -177
  82. package/bin/types/runtime/host/Store.d.ts.map +1 -1
  83. package/bin/types/runtime/host/Store.js +7 -0
  84. package/bin/types/runtime/host/Store.js.map +1 -1
  85. package/bin/types/runtime/http/InlineInstant.d.ts +1 -1
  86. package/bin/types/runtime/platform/Platform.d.ts +1 -1
  87. package/package.json +19 -18
  88. package/src/agent/Agent.ts +3 -2
  89. package/src/config/AgentInitializer.ts +1 -1
  90. package/src/config/DowncitySchema.ts +1 -1
  91. package/src/config/ExecutionBinding.ts +1 -1
  92. package/src/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.ts +0 -4
  93. package/src/executor/composer/system/default/InitPrompts.ts +1 -1
  94. package/src/executor/composer/system/default/SystemDomain.ts +1 -1
  95. package/src/executor/composer/system/default/assets/core.prompt.ts +1 -1
  96. package/src/executor/composer/system/default/assets/core.prompt.ts.txt +1 -1
  97. package/src/executor/composer/system/default/assets/plugin.prompt.ts +1 -1
  98. package/src/executor/composer/system/default/assets/plugin.prompt.ts.txt +18 -18
  99. package/src/executor/composer/system/default/assets/task.prompt.ts +1 -1
  100. package/src/executor/composer/system/default/assets/task.prompt.ts.txt +1 -1
  101. package/src/executor/messages/ChatMessageMarkupTypes.ts +1 -1
  102. package/src/executor/store/history/jsonl/JsonlSessionHistoryStore.ts +17 -57
  103. package/src/executor/tools/shell/ShellToolBridge.ts +1 -1
  104. package/src/executor/tools/shell/ShellToolFormatting.ts +7 -7
  105. package/src/executor/types/SessionHistoryMeta.ts +5 -25
  106. package/src/index.ts +5 -5
  107. package/src/model/CityModelAdapter.ts +384 -0
  108. package/src/runtime/host/daemon/Paths.ts +1 -1
  109. package/src/runtime/host/daemon/ProjectSetup.ts +2 -2
  110. package/src/session/Session.ts +40 -6
  111. package/src/session/SessionTitle.ts +192 -0
  112. package/src/session/browse/Browse.ts +22 -13
  113. package/src/session/index.ts +5 -0
  114. package/src/session/storage/Metadata.ts +14 -29
  115. package/src/session/storage/Persistence.ts +1 -4
  116. package/src/types/agent/AgentTypes.ts +10 -5
  117. package/src/types/config/AgentProject.ts +1 -1
  118. package/src/types/config/DowncityConfig.ts +3 -3
  119. package/src/types/config/ExecutionBinding.ts +4 -4
  120. package/src/types/runtime/auth/AuthPermission.ts +2 -2
  121. package/src/types/runtime/host/Store.ts +3 -182
  122. package/src/types/runtime/http/InlineInstant.ts +1 -1
  123. package/src/types/runtime/platform/Platform.ts +1 -1
  124. package/tsconfig.json +1 -0
  125. package/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,338 @@
1
+ /**
2
+ * CityModel 到 AI SDK LanguageModel 的适配模块。
3
+ *
4
+ * 关键点(中文)
5
+ * - Agent 对外可以接收 CityModel,但 executor 内部仍只处理 AI SDK LanguageModel。
6
+ * - 适配逻辑集中在这里,避免 City 协议散落到 session/executor 各处。
7
+ * - 这里不依赖 @downcity/city,只依赖 @downcity/type 的共享协议。
8
+ */
9
+ import { CITY_MODEL_INVOKER, isCityModel, } from "@downcity/type";
10
+ function normalizeFinishReason(input) {
11
+ const text = typeof input === "string" ? input : "";
12
+ if (text === "stop" || text === "length" || text === "content-filter" || text === "tool-calls" || text === "error") {
13
+ return { unified: text, raw: text };
14
+ }
15
+ return { unified: "stop", raw: text || "stop" };
16
+ }
17
+ function stringifyToolInput(input) {
18
+ if (typeof input === "string")
19
+ return input;
20
+ try {
21
+ return JSON.stringify(input ?? {});
22
+ }
23
+ catch {
24
+ return "{}";
25
+ }
26
+ }
27
+ function textFromProviderContent(content) {
28
+ if (typeof content === "string")
29
+ return content;
30
+ if (!Array.isArray(content))
31
+ return "";
32
+ return content
33
+ .filter((part) => part && typeof part === "object" && part.type === "text")
34
+ .map((part) => String(part.text ?? ""))
35
+ .join("\n")
36
+ .trim();
37
+ }
38
+ function fileUrlFromProviderPart(part) {
39
+ const data = part.data;
40
+ if (data instanceof URL)
41
+ return data.toString();
42
+ if (typeof data === "string")
43
+ return data;
44
+ return "";
45
+ }
46
+ function providerContentToUiParts(content) {
47
+ if (!Array.isArray(content)) {
48
+ return [{ type: "text", text: textFromProviderContent(content) }];
49
+ }
50
+ const parts = [];
51
+ for (const part of content) {
52
+ if (!part || typeof part !== "object")
53
+ continue;
54
+ const record = part;
55
+ if (record.type === "text") {
56
+ parts.push({ type: "text", text: String(record.text ?? "") });
57
+ continue;
58
+ }
59
+ if (record.type === "reasoning") {
60
+ parts.push({ type: "reasoning", text: String(record.text ?? "") });
61
+ continue;
62
+ }
63
+ if (record.type === "file") {
64
+ const url = fileUrlFromProviderPart(record);
65
+ if (!url)
66
+ continue;
67
+ parts.push({
68
+ type: "file",
69
+ mediaType: String(record.mediaType ?? "application/octet-stream"),
70
+ filename: typeof record.filename === "string" ? record.filename : undefined,
71
+ url,
72
+ });
73
+ continue;
74
+ }
75
+ if (record.type === "tool-call") {
76
+ parts.push({
77
+ type: "dynamic-tool",
78
+ toolName: String(record.toolName ?? ""),
79
+ toolCallId: String(record.toolCallId ?? ""),
80
+ state: "input-available",
81
+ input: record.input,
82
+ providerExecuted: Boolean(record.providerExecuted),
83
+ });
84
+ }
85
+ }
86
+ return parts;
87
+ }
88
+ function providerPromptToMessages(prompt) {
89
+ if (!Array.isArray(prompt))
90
+ return [];
91
+ return prompt
92
+ .map((message, index) => {
93
+ if (!message || typeof message !== "object")
94
+ return null;
95
+ const item = message;
96
+ const role = item.role === "system" || item.role === "assistant" ? item.role : "user";
97
+ const parts = providerContentToUiParts(item.content);
98
+ return {
99
+ id: `city-model-message-${String(index)}`,
100
+ role,
101
+ parts,
102
+ };
103
+ })
104
+ .filter((message) => Boolean(message));
105
+ }
106
+ function providerOptionsToInput(options) {
107
+ return {
108
+ messages: providerPromptToMessages(options.prompt),
109
+ tools: options.tools,
110
+ toolChoice: options.toolChoice,
111
+ providerOptions: options.providerOptions,
112
+ };
113
+ }
114
+ function textFromUiMessage(message) {
115
+ return message.parts
116
+ .filter((part) => part.type === "text")
117
+ .map((part) => String(part.text ?? ""))
118
+ .join("\n")
119
+ .trim();
120
+ }
121
+ function uiMessageToProviderContent(message) {
122
+ return message.parts.flatMap((part) => {
123
+ if (part.type === "text") {
124
+ return [{ type: "text", text: String(part.text ?? "") }];
125
+ }
126
+ if (part.type === "reasoning") {
127
+ return [{ type: "reasoning", text: String(part.text ?? "") }];
128
+ }
129
+ if (part.type === "dynamic-tool") {
130
+ const toolPart = part;
131
+ return [{
132
+ type: "tool-call",
133
+ toolCallId: String(toolPart.toolCallId ?? ""),
134
+ toolName: String(toolPart.toolName ?? ""),
135
+ input: stringifyToolInput(toolPart.input),
136
+ providerExecuted: Boolean(toolPart.providerExecuted),
137
+ }];
138
+ }
139
+ return [];
140
+ });
141
+ }
142
+ function enqueueFinish(controller, finishReason) {
143
+ controller.enqueue({
144
+ type: "finish",
145
+ finishReason: normalizeFinishReason(finishReason),
146
+ usage: {
147
+ inputTokens: {
148
+ total: undefined,
149
+ noCache: undefined,
150
+ cacheRead: undefined,
151
+ cacheWrite: undefined,
152
+ },
153
+ outputTokens: {
154
+ total: undefined,
155
+ text: undefined,
156
+ reasoning: undefined,
157
+ },
158
+ },
159
+ });
160
+ }
161
+ function enqueueProviderParts(controller, parts, state) {
162
+ for (const part of parts) {
163
+ if (part.type !== "stream-start" && !state.sawStart) {
164
+ controller.enqueue({ type: "stream-start", warnings: [] });
165
+ state.sawStart = true;
166
+ }
167
+ if (part.type === "stream-start")
168
+ state.sawStart = true;
169
+ if (part.type === "finish")
170
+ state.sawFinish = true;
171
+ controller.enqueue(part);
172
+ }
173
+ }
174
+ function mapUiChunkToProviderParts(chunk) {
175
+ switch (chunk.type) {
176
+ case "start":
177
+ return [{ type: "stream-start", warnings: [] }];
178
+ case "text-start":
179
+ return [{ type: "text-start", id: chunk.id }];
180
+ case "text-delta":
181
+ return [{ type: "text-delta", id: chunk.id, delta: chunk.delta }];
182
+ case "text-end":
183
+ return [{ type: "text-end", id: chunk.id }];
184
+ case "reasoning-start":
185
+ return [{ type: "reasoning-start", id: chunk.id }];
186
+ case "reasoning-delta":
187
+ return [{ type: "reasoning-delta", id: chunk.id, delta: chunk.delta }];
188
+ case "reasoning-end":
189
+ return [{ type: "reasoning-end", id: chunk.id }];
190
+ case "tool-input-start":
191
+ return [{
192
+ type: "tool-input-start",
193
+ id: chunk.toolCallId,
194
+ toolName: chunk.toolName,
195
+ providerExecuted: chunk.providerExecuted,
196
+ dynamic: chunk.dynamic,
197
+ }];
198
+ case "tool-input-delta":
199
+ return [{
200
+ type: "tool-input-delta",
201
+ id: chunk.toolCallId,
202
+ delta: chunk.inputTextDelta,
203
+ }];
204
+ case "tool-input-available":
205
+ return [{
206
+ type: "tool-call",
207
+ toolCallId: chunk.toolCallId,
208
+ toolName: chunk.toolName,
209
+ input: stringifyToolInput(chunk.input),
210
+ providerExecuted: chunk.providerExecuted,
211
+ dynamic: chunk.dynamic,
212
+ }];
213
+ case "tool-output-available":
214
+ return [{
215
+ type: "tool-result",
216
+ toolCallId: chunk.toolCallId,
217
+ toolName: "",
218
+ output: { type: "json", value: chunk.output },
219
+ providerExecuted: chunk.providerExecuted,
220
+ dynamic: chunk.dynamic,
221
+ }];
222
+ case "error":
223
+ return [{ type: "error", error: new Error(chunk.errorText) }];
224
+ default:
225
+ return [];
226
+ }
227
+ }
228
+ function cityModelToLanguageModel(model) {
229
+ const invoker = model[CITY_MODEL_INVOKER];
230
+ const languageModel = {
231
+ specificationVersion: "v3",
232
+ provider: "downcity",
233
+ modelId: model.id,
234
+ supportedUrls: {},
235
+ async doGenerate(options) {
236
+ const message = await invoker.text(providerOptionsToInput(options));
237
+ return {
238
+ content: uiMessageToProviderContent(message),
239
+ finishReason: normalizeFinishReason("stop"),
240
+ usage: {
241
+ inputTokens: {
242
+ total: undefined,
243
+ noCache: undefined,
244
+ cacheRead: undefined,
245
+ cacheWrite: undefined,
246
+ },
247
+ outputTokens: {
248
+ total: undefined,
249
+ text: undefined,
250
+ reasoning: undefined,
251
+ },
252
+ },
253
+ response: {
254
+ modelId: model.id,
255
+ },
256
+ warnings: [],
257
+ };
258
+ },
259
+ async doStream(options) {
260
+ const cityStream = await invoker.stream(providerOptionsToInput(options));
261
+ return {
262
+ stream: new ReadableStream({
263
+ async start(controller) {
264
+ const reader = cityStream.getReader();
265
+ const state = {
266
+ sawStart: false,
267
+ sawFinish: false,
268
+ };
269
+ try {
270
+ while (true) {
271
+ const { done, value } = await reader.read();
272
+ if (done)
273
+ break;
274
+ const parts = mapUiChunkToProviderParts(value);
275
+ enqueueProviderParts(controller, parts, state);
276
+ }
277
+ if (!state.sawStart)
278
+ controller.enqueue({ type: "stream-start", warnings: [] });
279
+ if (!state.sawFinish)
280
+ enqueueFinish(controller, "stop");
281
+ controller.close();
282
+ }
283
+ catch (error) {
284
+ controller.enqueue({ type: "error", error });
285
+ if (!state.sawFinish)
286
+ enqueueFinish(controller, "error");
287
+ controller.close();
288
+ }
289
+ finally {
290
+ reader.releaseLock();
291
+ }
292
+ },
293
+ }),
294
+ response: {
295
+ modelId: model.id,
296
+ },
297
+ };
298
+ },
299
+ };
300
+ return languageModel;
301
+ }
302
+ /**
303
+ * 将 Agent 可接受的模型输入归一为 AI SDK LanguageModel。
304
+ */
305
+ export function normalizeAgentModel(model) {
306
+ if (isCityModel(model))
307
+ return cityModelToLanguageModel(model);
308
+ return model;
309
+ }
310
+ /**
311
+ * 从 Agent 模型输入推导展示标签。
312
+ */
313
+ export function inferAgentModelLabel(model) {
314
+ if (!model)
315
+ return undefined;
316
+ if (isCityModel(model))
317
+ return model.name || model.id;
318
+ if (typeof model !== "object")
319
+ return undefined;
320
+ const record = model;
321
+ const candidates = [
322
+ record.modelId,
323
+ record.model,
324
+ record.id,
325
+ record.name,
326
+ record.label,
327
+ ];
328
+ for (const candidate of candidates) {
329
+ const label = typeof candidate === "string" ? candidate.trim() : "";
330
+ if (label)
331
+ return label;
332
+ }
333
+ const constructorName = model.constructor && typeof model.constructor.name === "string"
334
+ ? model.constructor.name.trim()
335
+ : "";
336
+ return constructorName || "configured-model";
337
+ }
338
+ //# sourceMappingURL=CityModelAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CityModelAdapter.js","sourceRoot":"","sources":["../../src/model/CityModelAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,kBAAkB,EAClB,WAAW,GAGZ,MAAM,gBAAgB,CAAC;AAuBxB,SAAS,qBAAqB,CAAC,KAAc;IAI3C,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACpD,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,gBAAgB,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACnH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IACtC,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,IAAI,MAAM,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAgB;IAC/C,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAK,IAA2B,CAAC,IAAI,KAAK,MAAM,CAAC;SAClG,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAE,IAA2B,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;SAC9D,IAAI,CAAC,IAAI,CAAC;SACV,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,uBAAuB,CAAC,IAA6B;IAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACvB,IAAI,IAAI,YAAY,GAAG;QAAE,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IAChD,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1C,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAgB;IAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,KAAK,GAAuB,EAAE,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,SAAS;QAChD,MAAM,MAAM,GAAG,IAA+B,CAAC;QAC/C,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9D,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACnE,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,CAAC,GAAG;gBAAE,SAAS;YACnB,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,0BAA0B,CAAC;gBACjE,QAAQ,EAAE,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;gBAC3E,GAAG;aACJ,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,cAAc;gBACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACvC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;gBAC3C,KAAK,EAAE,iBAAiB;gBACxB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;aACnD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,wBAAwB,CAAC,MAAe;IAC/C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IACtC,OAAO,MAAM;SACV,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAoB,EAAE;QACxC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACzD,MAAM,IAAI,GAAG,OAAgC,CAAC;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QACtF,MAAM,KAAK,GAAG,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO;YACL,EAAE,EAAE,sBAAsB,MAAM,CAAC,KAAK,CAAC,EAAE;YACzC,IAAI;YACJ,KAAK;SACN,CAAC;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,OAAO,EAAwB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAgC;IAC9D,OAAO;QACL,QAAQ,EAAE,wBAAwB,CAAC,OAAO,CAAC,MAAM,CAAC;QAClD,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,eAAe,EAAE,OAAO,CAAC,eAAe;KACzC,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAkB;IAC3C,OAAO,OAAO,CAAC,KAAK;SACjB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;SACtC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAE,IAA2B,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;SAC9D,IAAI,CAAC,IAAI,CAAC;SACV,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAkB;IACpD,OAAO,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAyB,EAAE;QAC3D,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACzB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAE,IAA2B,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC9B,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAE,IAA2B,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,IAKhB,CAAC;YACF,OAAO,CAAC;oBACN,IAAI,EAAE,WAAW;oBACjB,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC;oBAC7C,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC;oBACzC,KAAK,EAAE,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC;oBACzC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;iBACrD,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CACpB,UAAoC,EACpC,YAAqB;IAErB,UAAU,CAAC,OAAO,CAAC;QACjB,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,qBAAqB,CAAC,YAAY,CAAC;QACjD,KAAK,EAAE;YACL,WAAW,EAAE;gBACX,KAAK,EAAE,SAAS;gBAChB,OAAO,EAAE,SAAS;gBAClB,SAAS,EAAE,SAAS;gBACpB,UAAU,EAAE,SAAS;aACtB;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,SAAS;gBAChB,IAAI,EAAE,SAAS;gBACf,SAAS,EAAE,SAAS;aACrB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAC3B,UAAoC,EACpC,KAAgC,EAChC,KAUC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpD,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3D,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc;YAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;QACxD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;YAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;QACnD,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAqB;IACtD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,OAAO;YACV,OAAO,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;QAClD,KAAK,YAAY;YACf,OAAO,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QAChD,KAAK,YAAY;YACf,OAAO,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACpE,KAAK,UAAU;YACb,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9C,KAAK,iBAAiB;YACpB,OAAO,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACrD,KAAK,iBAAiB;YACpB,OAAO,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACzE,KAAK,eAAe;YAClB,OAAO,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACnD,KAAK,kBAAkB;YACrB,OAAO,CAAC;oBACN,IAAI,EAAE,kBAAkB;oBACxB,EAAE,EAAE,KAAK,CAAC,UAAU;oBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;oBACxC,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;QACL,KAAK,kBAAkB;YACrB,OAAO,CAAC;oBACN,IAAI,EAAE,kBAAkB;oBACxB,EAAE,EAAE,KAAK,CAAC,UAAU;oBACpB,KAAK,EAAE,KAAK,CAAC,cAAc;iBAC5B,CAAC,CAAC;QACL,KAAK,sBAAsB;YACzB,OAAO,CAAC;oBACN,IAAI,EAAE,WAAW;oBACjB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC;oBACtC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;oBACxC,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;QACL,KAAK,uBAAuB;YAC1B,OAAO,CAAC;oBACN,IAAI,EAAE,aAAa;oBACnB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,QAAQ,EAAE,EAAE;oBACZ,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE;oBAC7C,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;oBACxC,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;QACL,KAAK,OAAO;YACV,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAChE;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAgB;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG;QACpB,oBAAoB,EAAE,IAAI;QAC1B,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,aAAa,EAAE,EAAE;QACjB,KAAK,CAAC,UAAU,CAAC,OAAO;YACtB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAkC,CAAC,CAAC,CAAC;YAC/F,OAAO;gBACL,OAAO,EAAE,0BAA0B,CAAC,OAAO,CAAC;gBAC5C,YAAY,EAAE,qBAAqB,CAAC,MAAM,CAAC;gBAC3C,KAAK,EAAE;oBACL,WAAW,EAAE;wBACX,KAAK,EAAE,SAAS;wBAChB,OAAO,EAAE,SAAS;wBAClB,SAAS,EAAE,SAAS;wBACpB,UAAU,EAAE,SAAS;qBACtB;oBACD,YAAY,EAAE;wBACZ,KAAK,EAAE,SAAS;wBAChB,IAAI,EAAE,SAAS;wBACf,SAAS,EAAE,SAAS;qBACrB;iBACF;gBACD,QAAQ,EAAE;oBACR,OAAO,EAAE,KAAK,CAAC,EAAE;iBAClB;gBACD,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,OAAO;YACpB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,OAAkC,CAAC,CAAC,CAAC;YACpG,OAAO;gBACL,MAAM,EAAE,IAAI,cAAc,CAAC;oBACzB,KAAK,CAAC,KAAK,CAAC,UAAoC;wBAC9C,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;wBACtC,MAAM,KAAK,GAAG;4BACZ,QAAQ,EAAE,KAAK;4BACf,SAAS,EAAE,KAAK;yBACjB,CAAC;wBACF,IAAI,CAAC;4BACH,OAAO,IAAI,EAAE,CAAC;gCACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gCAC5C,IAAI,IAAI;oCAAE,MAAM;gCAChB,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;gCAC/C,oBAAoB,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;4BACjD,CAAC;4BACD,IAAI,CAAC,KAAK,CAAC,QAAQ;gCAAE,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;4BAChF,IAAI,CAAC,KAAK,CAAC,SAAS;gCAAE,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;4BACxD,UAAU,CAAC,KAAK,EAAE,CAAC;wBACrB,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;4BAC7C,IAAI,CAAC,KAAK,CAAC,SAAS;gCAAE,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;4BACzD,UAAU,CAAC,KAAK,EAAE,CAAC;wBACrB,CAAC;gCAAS,CAAC;4BACT,MAAM,CAAC,WAAW,EAAE,CAAC;wBACvB,CAAC;oBACH,CAAC;iBACF,CAAC;gBACF,QAAQ,EAAE;oBACR,OAAO,EAAE,KAAK,CAAC,EAAE;iBAClB;aACF,CAAC;QACJ,CAAC;KACF,CAAC;IAEF,OAAO,aAAyC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAiB;IACnD,IAAI,WAAW,CAAC,KAAK,CAAC;QAAE,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC/D,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAA6B;IAChE,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,WAAW,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,MAAM,UAAU,GAAG;QACjB,MAAM,CAAC,OAAO;QACd,MAAM,CAAC,KAAK;QACZ,MAAM,CAAC,EAAE;QACT,MAAM,CAAC,IAAI;QACX,MAAM,CAAC,KAAK;KACb,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IAC1B,CAAC;IACD,MAAM,eAAe,GACnB,KAAK,CAAC,WAAW,IAAI,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ;QAC7D,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE;QAC/B,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,eAAe,IAAI,kBAAkB,CAAC;AAC/C,CAAC"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - 这里只保留 agent 侧访问 daemon meta 所需的项目级路径。
6
- * - daemon 进程启停、pid 清理、registry 同步属于 `@downcity/city`,不放在 agent 包内。
6
+ * - daemon 进程启停、pid 清理、registry 同步属于 `downcity`,不放在 agent 包内。
7
7
  */
8
8
  /**
9
9
  * 计算 daemon pid 文件路径。
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - 这里只保留 agent 侧访问 daemon meta 所需的项目级路径。
6
- * - daemon 进程启停、pid 清理、registry 同步属于 `@downcity/city`,不放在 agent 包内。
6
+ * - daemon 进程启停、pid 清理、registry 同步属于 `downcity`,不放在 agent 包内。
7
7
  */
8
8
  import path from "node:path";
9
9
  import { getDowncityDebugDirPath } from "../../../config/Paths.js";
@@ -14,11 +14,11 @@ import { getCacheDirPath, getDowncityAgentsRootDirPath, getLogsDirPath, getProfi
14
14
  function ensureContextFiles(projectRoot) {
15
15
  // Check if initialized(启动入口一次性确认工程根目录与关键文件)
16
16
  if (!fs.existsSync(getProfileMdPath(projectRoot))) {
17
- console.error('❌ Project not initialized. Please run "city agent create" first');
17
+ console.error('❌ Project not initialized. Please run "town agent create" first');
18
18
  process.exit(1);
19
19
  }
20
20
  if (!fs.existsSync(getDowncityJsonPath(projectRoot))) {
21
- console.error('❌ downcity.json does not exist. Please run "city agent create" first');
21
+ console.error('❌ downcity.json does not exist. Please run "town agent create" first');
22
22
  process.exit(1);
23
23
  }
24
24
  }
@@ -167,6 +167,7 @@ export declare class Session implements AgentSession {
167
167
  ensureReadyForExecution(): Promise<void>;
168
168
  private ensureRunnable;
169
169
  private touchMetadata;
170
+ private ensureTitleFromHistory;
170
171
  private persistAssistantResult;
171
172
  private createAndPersistUserPromptMessage;
172
173
  private executePromptTurn;
@@ -1 +1 @@
1
- {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../src/session/Session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../src/session/Session.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ import { JsonlSessionHistoryComposer } from "../executor/composer/history/jsonl/
12
12
  import { JsonlSessionHistoryStore } from "../executor/store/history/jsonl/JsonlSessionHistoryStore.js";
13
13
  import { extractTextFromUiMessage } from "../executor/messages/UIMessageTransformer.js";
14
14
  import { buildSessionSystemBlocks, SessionSystemBuilder, } from "../session/SessionSystemBuilder.js";
15
- import { inferModelLabel, buildSessionHistoryPage, buildSessionInfo, patchSessionModelLabel, readSessionMetadata, resolveSystemTimezone, writeSessionMetadata, } from "../session/index.js";
15
+ import { buildSessionHistoryPage, buildSessionInfo, patchSessionModelLabel, readSessionMetadata, resolveSystemTimezone, writeSessionMetadata, } from "../session/index.js";
16
16
  import { getSdkAgentSessionArchiveDirPath, getSdkAgentSessionDirPath, } from "../session/index.js";
17
17
  import { mapAgentEventToSessionEvent, mapUiMessageChunkToAgentEvent, } from "../session/SessionEventMapper.js";
18
18
  import { persistSdkAssistantResult, touchSessionMetadata, } from "../session/index.js";
@@ -20,6 +20,8 @@ import { createRuntimeSessionPort } from "../session/index.js";
20
20
  import { drainDeferredPersistedUserMessages } from "../executor/SessionRunScope.js";
21
21
  import { SessionEventHub } from "../session/runtime/SessionEventHub.js";
22
22
  import { SessionPromptRuntime } from "../session/runtime/SessionPromptRuntime.js";
23
+ import { inferAgentModelLabel, normalizeAgentModel, } from "../model/CityModelAdapter.js";
24
+ import { ensureSessionTitle } from "../session/SessionTitle.js";
23
25
  /**
24
26
  * SDK 本地 Session。
25
27
  */
@@ -145,8 +147,8 @@ export class Session {
145
147
  this.createdAt = createdAt;
146
148
  this.timezone = timezone;
147
149
  this.sessionConfig = {
148
- ...(metadata.sdkConfig?.modelLabel
149
- ? { modelLabel: metadata.sdkConfig.modelLabel }
150
+ ...(metadata.modelLabel
151
+ ? { modelLabel: metadata.modelLabel }
150
152
  : {}),
151
153
  };
152
154
  return this;
@@ -166,8 +168,8 @@ export class Session {
166
168
  */
167
169
  async set(input) {
168
170
  if (input.model) {
169
- this.sessionConfig.model = input.model;
170
- this.sessionConfig.modelLabel = inferModelLabel(input.model);
171
+ this.sessionConfig.model = normalizeAgentModel(input.model);
172
+ this.sessionConfig.modelLabel = inferAgentModelLabel(input.model);
171
173
  this.executor.clearExecutor();
172
174
  }
173
175
  await patchSessionModelLabel({
@@ -211,6 +213,7 @@ export class Session {
211
213
  await this.executor.appendUserMessage({
212
214
  text: String(input.text || "").trim(),
213
215
  });
216
+ await this.ensureTitleFromHistory({ generate: true });
214
217
  await this.touchMetadata();
215
218
  }
216
219
  /**
@@ -234,11 +237,19 @@ export class Session {
234
237
  }),
235
238
  this.historyStore.list(),
236
239
  ]);
240
+ const metadataWithTitle = metadata.title
241
+ ? metadata
242
+ : await ensureSessionTitle({
243
+ projectRoot: this.projectRoot,
244
+ agentId: this.agentId,
245
+ sessionId: this.id,
246
+ messages,
247
+ });
237
248
  return buildSessionInfo({
238
249
  projectRoot: this.projectRoot,
239
250
  agentId: this.agentId,
240
251
  sessionId: this.id,
241
- metadata,
252
+ metadata: metadataWithTitle,
242
253
  messages,
243
254
  executing: this.isExecuting(),
244
255
  });
@@ -336,6 +347,7 @@ export class Session {
336
347
  for (const message of forkMessages) {
337
348
  await forked.historyStore.append(message);
338
349
  }
350
+ await forked.ensureTitleFromHistory({ generate: true });
339
351
  await forked.touchMetadata();
340
352
  return forked;
341
353
  }
@@ -362,6 +374,8 @@ export class Session {
362
374
  },
363
375
  appendUserMessage: async (messageParams) => {
364
376
  await this.executor.appendUserMessage(messageParams);
377
+ await this.ensureTitleFromHistory({ generate: true });
378
+ await this.touchMetadata();
365
379
  },
366
380
  appendAssistantMessage: async (messageParams) => {
367
381
  await this.executor.appendAssistantMessage(messageParams);
@@ -413,6 +427,17 @@ export class Session {
413
427
  sessionConfig: this.sessionConfig,
414
428
  });
415
429
  }
430
+ async ensureTitleFromHistory(input) {
431
+ const messages = await this.historyStore.list();
432
+ await ensureSessionTitle({
433
+ projectRoot: this.projectRoot,
434
+ agentId: this.agentId,
435
+ sessionId: this.id,
436
+ messages,
437
+ ...(input?.generate ? { model: this.sessionConfig.model } : {}),
438
+ generate: input?.generate === true,
439
+ });
440
+ }
416
441
  async persistAssistantResult(assistantMessage) {
417
442
  await persistSdkAssistantResult({
418
443
  projectRoot: this.projectRoot,
@@ -433,6 +458,7 @@ export class Session {
433
458
  await this.executor.appendUserMessage({
434
459
  message,
435
460
  });
461
+ await this.ensureTitleFromHistory({ generate: true });
436
462
  await this.touchMetadata();
437
463
  return message;
438
464
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Session.js","sourceRoot":"","sources":["../../src/session/Session.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,iEAAiE,CAAC;AAC9G,OAAO,EAAE,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AACtG,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAavF,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,gCAAgC,EAChC,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,GAC9B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,kCAAkC,EAAE,MAAM,8BAA8B,CAAC;AAQlF,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAwDjF;;GAEG;AACH,MAAM,OAAO,OAAO;IACT,EAAE,CAAS;IACX,OAAO,CAAS;IAER,WAAW,CAAS;IACpB,KAAK,CAAuB;IAC5B,MAAM,CAA2B;IACjC,0BAA0B,CAA+C;IACzE,4BAA4B,CAAiD;IAC7E,qBAAqB,CAA0C;IAC/D,oBAAoB,CAAsC;IAC1D,YAAY,CAA2B;IACvC,eAAe,CAA8B;IAC7C,QAAQ,CAAW;IACnB,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,aAAa,CAAuB;IAC7C,aAAa,GAA+B,EAAE,CAAC;IAC/C,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,QAAQ,GAAG,qBAAqB,EAAE,CAAC;IACnC,iBAAiB,GAAyB,IAAI,CAAC;IAC/C,uBAAuB,GAAyB,IAAI,CAAC;IACrD,WAAW,GAAuB,IAAI,CAAC;IAE/C,YAAY,OAAuB;QACjC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACpD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5D,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC;QACrE,IAAI,CAAC,4BAA4B,GAAG,OAAO,CAAC,4BAA4B,CAAC;QACzE,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;QAC3D,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACrD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,cAAc,GAAG,yBAAyB,CAC9C,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,EAAE,CACR,CAAC;QACF,MAAM,eAAe,GAAG,GAAG,cAAc,WAAW,CAAC;QACrD,IAAI,CAAC,YAAY,GAAG,IAAI,wBAAwB,CAAC;YAC/C,QAAQ,EAAE,IAAI,CAAC,WAAW;YAC1B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,KAAK,EAAE;gBACL,cAAc;gBACd,eAAe;gBACf,gBAAgB,EAAE,GAAG,eAAe,iBAAiB;gBACrD,YAAY,EAAE,GAAG,eAAe,YAAY;gBAC5C,cAAc,EAAE,gCAAgC,CAC9C,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,EAAE,CACR;aACF;SACF,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,GAAG,IAAI,2BAA2B,CAAC;YACrD,KAAK,EAAE,IAAI,CAAC,YAAY;SACzB,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC3B,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK;YACxC,MAAM,EAAE,IAAI,CAAC,MAAe;YAC5B,cAAc,EAAE,IAAI,oBAAoB,CAAC;gBACvC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS;gBACzC,kBAAkB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ;gBACvC,0BAA0B,EAAE,IAAI,CAAC,0BAA0B;gBAC3D,4BAA4B,EAAE,IAAI,CAAC,4BAA4B;gBAC/D,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;aAClD,CAAC;YACF,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAoB,CAAC;YAC5C,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;YACD,2BAA2B,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBAC3C,OAAO,MAAM,IAAI,CAAC,iCAAiC,CAAC,KAAK,CAAC,CAAC;YAC7D,CAAC;YACD,WAAW,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;gBAC1D,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC;oBAClC,MAAM;oBACN,WAAW;oBACX,WAAW;iBACZ,CAAC,CAAC;YACL,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC;QACtC,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAK,IAAI,EAAE;YACnC,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC;gBACzC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,EAAE;aACnB,CAAC,CAAC;YACH,MAAM,SAAS,GACb,OAAO,QAAQ,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC3E,MAAM,QAAQ,GACZ,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE;gBAC/D,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE;gBAC1B,CAAC,CAAC,qBAAqB,EAAE,CAAC;YAC9B,MAAM,oBAAoB,CAAC;gBACzB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,EAAE;gBAClB,IAAI,EAAE;oBACJ,GAAG,QAAQ;oBACX,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,SAAS;oBACT,QAAQ;iBACT;aACF,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG;gBACnB,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU;oBAChC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE;oBAC/C,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO;YACL,GAAG,IAAI,CAAC,aAAa;SACtB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,KAA2B;QACnC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YACvC,IAAI,CAAC,aAAa,CAAC,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC7D,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QAChC,CAAC;QACD,MAAM,sBAAsB,CAAC;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,KAA8B;QACzC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;YACrC,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,SAAS,CAAC,UAAkC;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAKvB;QACC,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACpC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;SACtC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAAC,KAK5B;QACC,MAAM,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YACzC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;SAC9C,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC7C,mBAAmB,CAAC;gBAClB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,EAAE;aACnB,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;SACzB,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;YACtB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,QAAQ;YACR,QAAQ;YACR,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,KAAgC;QAC5C,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC5C,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;SACzB,CAAC,CAAC;QACH,OAAO,uBAAuB,CAAC;YAC7B,OAAO;YACP,QAAQ;YACR,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC;YAC5C,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,0BAA0B,EAAE,IAAI,CAAC,0BAA0B;YAC3D,4BAA4B,EAAE,IAAI,CAAC,4BAA4B;YAC/D,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;SAClD,CAAC,CAAC;QACH,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,OAAO,EAAE;gBACP,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,EAAE;gBAClB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;gBACjD,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB;YACD,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,aAAa;QACX,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,KAAsC;QAC/C,MAAM,SAAS,GACb,OAAO,KAAK,KAAK,QAAQ;YACvB,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS;YACzC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;QACzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QAChD,MAAM,YAAY,GAChB,CAAC,SAAS;YACR,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,CAAC,GAAG,EAAE;gBACJ,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,SAAS,CAC3D,CAAC;gBACF,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CACb,wBAAwB,IAAI,CAAC,EAAE,iBAAiB,SAAS,cAAc,CACxE,CAAC;gBACJ,CAAC;gBACD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;YAC5C,CAAC,CAAC,EAAE,CAAC;QAEX,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC;YACzB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;YAC5C,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,0BAA0B,EAAE,IAAI,CAAC,0BAA0B;YAC3D,4BAA4B,EAAE,IAAI,CAAC,4BAA4B;YAC/D,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;SAClD,CAAC,CAAC;QACH,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YAC7B,MAAM,MAAM,CAAC,GAAG,CAAC;gBACf,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK;aAChC,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACnC,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,wBAAwB,CAAC;YAC1C,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;YAC9C,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBACtB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;YACD,SAAS,EAAE,CAAC,UAAU,EAAE,EAAE;gBACxB,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACpC,CAAC;YACD,aAAa,EAAE,GAAG,EAAE;gBAClB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;YAChC,CAAC;YACD,wBAAwB,EAAE,KAAK,IAAI,EAAE;gBACnC,MAAM,IAAI,CAAC,QAAQ,CAAC,wBAAwB,EAAE,CAAC;YACjD,CAAC;YACD,iBAAiB,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;gBACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;YACvD,CAAC;YACD,sBAAsB,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;gBAC9C,MAAM,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;YAC5D,CAAC;YACD,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;YACrC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,uBAAuB,EAAE,KAAK,IAAI,EAAE;gBAClC,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACvC,CAAC;YACD,aAAa,EAAE,KAAK,IAAI,EAAE;gBACxB,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC7B,CAAC;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB;QAC3B,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,uBAAuB,CAAC;YACnC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,uBAAuB,GAAG,CAAC,KAAK,IAAI,EAAE;YACzC,IAAI,CAAC,IAAI,CAAC,oBAAoB;gBAAE,OAAO;YACvC,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC,CAAC,EAAE,CAAC;QACL,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,uBAAuB,CAAC;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;YACpC,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,YAAY,IAAI,CAAC,EAAE,yGAAyG,CAC7H,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,MAAM,oBAAoB,CAAC;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,gBAAkC;QAElC,MAAM,yBAAyB,CAAC;YAC9B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,gBAAgB;SACjB,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,iCAAiC,CAC7C,KAA8B;QAE9B,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;YACzC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;YACtC,QAAQ,EAAE;gBACR,SAAS,EAAE,IAAI,CAAC,EAAE;aACnB;SACF,CAAyB,CAAC;QAC3B,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACpC,OAAO;SACR,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,KAI/B;QAMC,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YACrC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK;YAC9B,cAAc,EAAE,KAAK,CAAC,WAAW;YACjC,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;oBACpB,IAAI,EAAE,gBAAgB;oBACtB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC5D,CAAC,CAAC;YACL,CAAC;YACD,wBAAwB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBACxC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;oBACtC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACvD,OAAO;gBACT,CAAC;gBACD,MAAM,KAAK,GAAG,6BAA6B,CAAC,KAAK,CAAC,CAAC;gBACnD,IAAI,CAAC,KAAK;oBAAE,OAAO;gBACnB,MAAM,aAAa,GACjB,CACE,KAAK,CAAC,IAAI,KAAK,aAAa;oBAC5B,KAAK,CAAC,IAAI,KAAK,YAAY,CAC5B;oBACD,KAAK,CAAC,QAAQ,KAAK,SAAS;oBAC1B,CAAC,CAAC;wBACE,GAAG,KAAK;wBACR,QAAQ,EACN,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,QAAQ;qBAC3D;oBACH,CAAC,CAAC,KAAK,CAAC;gBACZ,IACE,aAAa,CAAC,IAAI,KAAK,WAAW;oBAClC,aAAa,CAAC,IAAI,KAAK,YAAY,EACnC,CAAC;oBACD,gBAAgB,CAAC,GAAG,CAClB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,QAAQ,CACvB,CAAC;gBACJ,CAAC;gBACD,MAAM,YAAY,GAAG,2BAA2B,CAAC;oBAC/C,KAAK,EAAE,aAAa;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;iBACrB,CAAC,CAAC;gBACH,IAAI,YAAY,EAAE,CAAC;oBACjB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC3D,MAAM,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACzC,OAAO;YACL,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACvD,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjD,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,2BAA2B;QACvC,MAAM,gBAAgB,GAAG,kCAAkC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrE,KAAK,MAAM,OAAO,IAAI,gBAAgB,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;gBACpC,OAAO;aACR,CAAC,CAAC;QACL,CAAC;QACD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"Session.js","sourceRoot":"","sources":["../../src/session/Session.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * SDK Session 标题生成与持久化辅助。
3
+ *
4
+ * 关键点(中文)
5
+ * - session title 是 `meta.json` 顶层字段,列表与详情都以它为准。
6
+ * - 首次用户消息出现后优先使用模型生成标题,失败时回退到首条用户消息截断。
7
+ * - 老 session 缺失 title 时可在读取列表/详情时补写 fallback title。
8
+ */
9
+ import { type LanguageModel } from "ai";
10
+ import type { SessionHistoryMetaV1 } from "../executor/types/SessionHistoryMeta.js";
11
+ import type { SessionMessageV1 } from "../executor/types/SessionMessages.js";
12
+ /**
13
+ * 标题持久化参数。
14
+ */
15
+ export interface EnsureSessionTitleParams {
16
+ /**
17
+ * 当前项目根目录。
18
+ */
19
+ projectRoot: string;
20
+ /**
21
+ * 当前 agent 稳定标识。
22
+ */
23
+ agentId: string;
24
+ /**
25
+ * 当前 sessionId。
26
+ */
27
+ sessionId: string;
28
+ /**
29
+ * 当前 session 已落盘消息。
30
+ */
31
+ messages: SessionMessageV1[];
32
+ /**
33
+ * 可选模型实例;传入时会尝试生成更短标题。
34
+ */
35
+ model?: LanguageModel;
36
+ /**
37
+ * 是否允许调用模型生成标题。
38
+ */
39
+ generate?: boolean;
40
+ }
41
+ /**
42
+ * 从首条用户消息推导 fallback 标题。
43
+ */
44
+ export declare function resolveFallbackSessionTitle(messages: SessionMessageV1[]): string | undefined;
45
+ /**
46
+ * 确保当前 session meta 中持久化 title。
47
+ */
48
+ export declare function ensureSessionTitle(input: EnsureSessionTitleParams): Promise<SessionHistoryMetaV1>;
49
+ //# sourceMappingURL=SessionTitle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionTitle.d.ts","sourceRoot":"","sources":["../../src/session/SessionTitle.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,IAAI,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAU5E;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAE7B;;OAEG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAgDD;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,gBAAgB,EAAE,GAC3B,MAAM,GAAG,SAAS,CAOpB;AAgCD;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,oBAAoB,CAAC,CAwC/B"}