@winmatrix/agent-sdk 1.0.5 → 1.0.6

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 (43) hide show
  1. package/dist/adapters/claude/ClaudeAdapter.d.ts +12 -0
  2. package/dist/adapters/claude/ClaudeAdapter.d.ts.map +1 -1
  3. package/dist/adapters/claude/ClaudeAdapter.js +121 -13
  4. package/dist/adapters/claude/ClaudeAdapter.js.map +1 -1
  5. package/dist/adapters/codex/CodexAdapter.d.ts +15 -1
  6. package/dist/adapters/codex/CodexAdapter.d.ts.map +1 -1
  7. package/dist/adapters/codex/CodexAdapter.js +130 -7
  8. package/dist/adapters/codex/CodexAdapter.js.map +1 -1
  9. package/dist/adapters/codex/CodexSessionStore.d.ts +42 -0
  10. package/dist/adapters/codex/CodexSessionStore.d.ts.map +1 -0
  11. package/dist/adapters/codex/CodexSessionStore.js +279 -0
  12. package/dist/adapters/codex/CodexSessionStore.js.map +1 -0
  13. package/dist/adapters/hermes/HermesAdapter.d.ts +1 -0
  14. package/dist/adapters/hermes/HermesAdapter.d.ts.map +1 -1
  15. package/dist/adapters/hermes/HermesAdapter.js +32 -4
  16. package/dist/adapters/hermes/HermesAdapter.js.map +1 -1
  17. package/dist/adapters/openclaw/OpenClawAdapter.d.ts +3 -7
  18. package/dist/adapters/openclaw/OpenClawAdapter.d.ts.map +1 -1
  19. package/dist/adapters/openclaw/OpenClawAdapter.js +87 -38
  20. package/dist/adapters/openclaw/OpenClawAdapter.js.map +1 -1
  21. package/dist/core/AgentAdapter.d.ts +7 -1
  22. package/dist/core/AgentAdapter.d.ts.map +1 -1
  23. package/dist/core/AgentAdapter.js.map +1 -1
  24. package/dist/index.d.ts +5 -0
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +3 -0
  27. package/dist/index.js.map +1 -1
  28. package/dist/utils/contextBudget.d.ts +27 -0
  29. package/dist/utils/contextBudget.d.ts.map +1 -0
  30. package/dist/utils/contextBudget.js +86 -0
  31. package/dist/utils/contextBudget.js.map +1 -0
  32. package/dist/utils/mcpUrlValidation.d.ts +10 -0
  33. package/dist/utils/mcpUrlValidation.d.ts.map +1 -0
  34. package/dist/utils/mcpUrlValidation.js +18 -0
  35. package/dist/utils/mcpUrlValidation.js.map +1 -0
  36. package/dist/utils/promptGuardrails.d.ts +15 -0
  37. package/dist/utils/promptGuardrails.d.ts.map +1 -0
  38. package/dist/utils/promptGuardrails.js +26 -0
  39. package/dist/utils/promptGuardrails.js.map +1 -0
  40. package/dist/utils/resumeFallback.d.ts.map +1 -1
  41. package/dist/utils/resumeFallback.js +28 -0
  42. package/dist/utils/resumeFallback.js.map +1 -1
  43. package/package.json +2 -2
@@ -6,7 +6,11 @@ import { existsSync } from 'node:fs';
6
6
  import { waitForExit, killProcess } from '../../utils/processUtils.js';
7
7
  import { sanitizeTaskEnv } from '../../utils/envSanitizer.js';
8
8
  import { executeWithResumeFallback } from '../../utils/resumeFallback.js';
9
+ import { withSecurityPrefix } from '../../utils/promptGuardrails.js';
9
10
  import { classifyAdapterError } from '../../utils/errorClassification.js';
11
+ import { applyContextBudget } from '../../utils/contextBudget.js';
12
+ import { CodexSessionStore, ensureCodexHomeSync, resolveCodexHome, writeCodexConfigIfNeeded, } from './CodexSessionStore.js';
13
+ const MCP_TOKEN_ENV = 'WINMATRIX_MCP_TOKEN';
10
14
  function splitLines(buffer, chunk) {
11
15
  const combined = buffer + chunk;
12
16
  const parts = combined.split('\n');
@@ -60,6 +64,15 @@ const TELEMETRY_ONLY_EVENT_TYPES = new Set([
60
64
  function isTelemetryOnlyEventType(value) {
61
65
  return TELEMETRY_ONLY_EVENT_TYPES.has(value.trim().toLowerCase());
62
66
  }
67
+ const CODEX_TOOL_ITEM_TYPES = new Set([
68
+ 'command_execution',
69
+ 'mcp_tool_call',
70
+ 'file_change',
71
+ 'exec',
72
+ ]);
73
+ function isCodexToolItemType(value) {
74
+ return typeof value === 'string' && CODEX_TOOL_ITEM_TYPES.has(value.trim().toLowerCase());
75
+ }
63
76
  function mapCodexJsonLine(line, threadIdRef) {
64
77
  const trimmed = line.trim();
65
78
  if (!trimmed)
@@ -108,9 +121,45 @@ function mapCodexJsonLine(line, threadIdRef) {
108
121
  retryable: classified.retryable,
109
122
  };
110
123
  }
124
+ const itemType = extractStringField(record.item, 'type');
125
+ const itemRecord = record.item && typeof record.item === 'object' ? record.item : {};
126
+ // G3: Codex 本地工具事件投影为 engineEvent,但不生成 type:'tool_call' AdapterEvent
127
+ // (避免 daemon 路径在服务端真实执行本地工具)。
128
+ if (type === 'item.started' && isCodexToolItemType(itemType)) {
129
+ const name = extractStringField(record.item, 'name')
130
+ ?? extractStringField(record.item, 'command')
131
+ ?? itemType;
132
+ const callId = extractStringField(record.item, 'id') ?? `codex-tool-${name}`;
133
+ return {
134
+ type: 'thinking',
135
+ content: `[Codex] ${type}: ${name}`,
136
+ engineEvent: {
137
+ type: 'tool_call',
138
+ callId,
139
+ name,
140
+ input: itemRecord.args ?? itemRecord.cmd ?? itemRecord.input ?? {},
141
+ },
142
+ };
143
+ }
144
+ if (type === 'item.completed' && isCodexToolItemType(itemType)) {
145
+ const name = extractStringField(record.item, 'name')
146
+ ?? extractStringField(record.item, 'command')
147
+ ?? itemType;
148
+ const callId = extractStringField(record.item, 'id') ?? `codex-tool-${name}`;
149
+ const outputText = text?.trim() ? text : '(no output)';
150
+ return {
151
+ type: 'thinking',
152
+ content: `[Codex] ${type}: ${name}`,
153
+ engineEvent: {
154
+ type: 'tool_result_delta',
155
+ callId,
156
+ name,
157
+ text: outputText,
158
+ },
159
+ };
160
+ }
111
161
  // Codex 最终回答的实测格式:item.completed + item.type=agent_message + item.text(顶层字符串)。
112
162
  // 必须作为 delta 抽取才能累加进 resultText;否则会被下面 name→thinking 分支吞掉,导致 result 为空。
113
- const itemType = extractStringField(record.item, 'type');
114
163
  if (type === 'item.completed' && itemType === 'agent_message' && text) {
115
164
  return {
116
165
  type: 'delta',
@@ -155,7 +204,7 @@ export class CodexAdapter {
155
204
  capabilities: {
156
205
  streaming: true,
157
206
  toolCall: false,
158
- session: false,
207
+ session: true,
159
208
  cancellation: true,
160
209
  supportsCancel: true,
161
210
  supportsResume: true,
@@ -167,11 +216,21 @@ export class CodexAdapter {
167
216
  codexPath;
168
217
  sandbox;
169
218
  skipGitRepoCheck;
219
+ mcpBridgeUrl;
220
+ codexHome;
221
+ sessionStore;
170
222
  constructor(config) {
171
223
  const opts = config;
172
224
  this.codexPath = opts?.codexPath ?? 'codex';
173
225
  this.sandbox = opts?.sandbox ?? 'workspace-write';
174
226
  this.skipGitRepoCheck = opts?.skipGitRepoCheck ?? true;
227
+ this.mcpBridgeUrl = opts?.mcpBridgeUrl;
228
+ this.codexHome = opts?.codexHome ?? resolveCodexHome(process.env, opts?.agentId);
229
+ if (this.codexHome) {
230
+ ensureCodexHomeSync(this.codexHome);
231
+ writeCodexConfigIfNeeded(this.codexHome, this.mcpBridgeUrl);
232
+ }
233
+ this.sessionStore = new CodexSessionStore(this.codexHome);
175
234
  }
176
235
  async *execute(task, signal) {
177
236
  yield* executeWithResumeFallback(task, signal, (nextTask, nextSignal) => this.executeOnce(nextTask, nextSignal));
@@ -187,9 +246,30 @@ export class CodexAdapter {
187
246
  };
188
247
  return;
189
248
  }
190
- const prompt = task.systemPrompt
191
- ? `${task.systemPrompt}\n\n---\n\n${task.input}`
192
- : task.input;
249
+ if (task.mcpToken && !this.mcpBridgeUrl) {
250
+ yield {
251
+ type: 'error',
252
+ message: 'TASK_BOUND_TOOL_PROXY_REQUIRED: MCP_BRIDGE_URL_MISSING',
253
+ code: 'cli_crash',
254
+ retryable: false,
255
+ };
256
+ return;
257
+ }
258
+ const budgeted = applyContextBudget(task);
259
+ if (budgeted.diagnostics) {
260
+ const d = budgeted.diagnostics;
261
+ yield {
262
+ type: 'thinking',
263
+ content: `[ContextBudget] input ${d.originalInputChars}→${d.finalInputChars} chars (${d.compression})`,
264
+ engineEvent: {
265
+ type: 'status',
266
+ text: `[ContextBudget] input ${d.originalInputChars}→${d.finalInputChars} chars (${d.compression})`,
267
+ },
268
+ };
269
+ }
270
+ const prompt = withSecurityPrefix(budgeted.systemPrompt
271
+ ? `${budgeted.systemPrompt}\n\n---\n\n${budgeted.input}`
272
+ : budgeted.input);
193
273
  const resumeSessionId = task.resumeSession ? task.sessionId : undefined;
194
274
  const args = resumeSessionId
195
275
  ? ['exec', 'resume', '--json', resumeSessionId]
@@ -204,6 +284,13 @@ export class CodexAdapter {
204
284
  if (strippedKeys.length > 0) {
205
285
  console.warn(`[CodexAdapter] 已剥离 ${strippedKeys.length} 个凭据形态环境变量(仅列 key 名): ${strippedKeys.join(', ')}`);
206
286
  }
287
+ if (this.codexHome) {
288
+ env.CODEX_HOME = this.codexHome;
289
+ await this.sessionStore.ensureReady();
290
+ }
291
+ if (task.mcpToken) {
292
+ env[MCP_TOKEN_ENV] = task.mcpToken;
293
+ }
207
294
  proc = spawn(this.codexPath, args, {
208
295
  stdio: ['ignore', 'pipe', 'pipe'],
209
296
  env,
@@ -215,7 +302,9 @@ export class CodexAdapter {
215
302
  catch (err) {
216
303
  yield {
217
304
  type: 'error',
218
- message: `Failed to spawn codex: ${err instanceof Error ? err.message : String(err)}`,
305
+ message: err instanceof Error && err.message.startsWith('TASK_BOUND_TOOL_PROXY_REQUIRED:')
306
+ ? err.message
307
+ : `Failed to spawn codex: ${err instanceof Error ? err.message : String(err)}`,
219
308
  code: 'cli_crash',
220
309
  retryable: false,
221
310
  };
@@ -226,6 +315,7 @@ export class CodexAdapter {
226
315
  let stderrText = '';
227
316
  let threadId = task.resumeSession && task.sessionId ? task.sessionId : undefined;
228
317
  const threadIdRef = { current: threadId };
318
+ const firstPrompt = budgeted.input;
229
319
  const onAbort = () => {
230
320
  if (!completed)
231
321
  killProcess(proc);
@@ -267,14 +357,31 @@ export class CodexAdapter {
267
357
  const exitResult = await waitForExit(proc);
268
358
  completed = true;
269
359
  if (exitResult.code === 0) {
360
+ const finalContent = resultText.trim();
361
+ if (threadId) {
362
+ await this.sessionStore.upsert({
363
+ threadId,
364
+ firstPrompt,
365
+ lastResultText: finalContent,
366
+ lastStatus: 'success',
367
+ });
368
+ }
270
369
  yield {
271
370
  type: 'result',
272
- content: resultText.trim(),
371
+ content: finalContent,
273
372
  sessionId: threadId,
274
373
  };
275
374
  return;
276
375
  }
277
376
  const message = stderrText.trim() || exitResult.error || `Codex exited with code ${exitResult.code}`;
377
+ if (threadId) {
378
+ await this.sessionStore.upsert({
379
+ threadId,
380
+ firstPrompt,
381
+ lastResultText: message,
382
+ lastStatus: 'failed',
383
+ });
384
+ }
278
385
  const classified = classifyAdapterError({
279
386
  message,
280
387
  exitCode: exitResult.code,
@@ -309,5 +416,21 @@ export class CodexAdapter {
309
416
  });
310
417
  });
311
418
  }
419
+ // ── session queries (G1) ──
420
+ async listSessions(options = { dir: '' }) {
421
+ return this.sessionStore.listSessions(options);
422
+ }
423
+ async getSession(sessionId, options = {}) {
424
+ return this.sessionStore.getSession(sessionId, options);
425
+ }
426
+ async searchSessions(options) {
427
+ return this.sessionStore.searchSessions(options);
428
+ }
429
+ async deleteSession(sessionId, request = { requestId: '' }) {
430
+ return this.sessionStore.deleteSession(sessionId, request);
431
+ }
432
+ close() {
433
+ this.sessionStore.close();
434
+ }
312
435
  }
313
436
  //# sourceMappingURL=CodexAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodexAdapter.js","sourceRoot":"","sources":["../../../src/adapters/codex/CodexAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodexAdapter.js","sourceRoot":"","sources":["../../../src/adapters/codex/CodexAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import type { SessionDeleteRequest, SessionDeleteResult, SessionDetailOptions, SessionDetailResult, SessionListOptions, SessionListResult, SessionSearchOptions, SessionSearchResult } from '../../core/AgentAdapter.js';
2
+ export interface CodexSessionRecord {
3
+ threadId: string;
4
+ summary?: string;
5
+ firstPrompt?: string;
6
+ createdAt: string;
7
+ lastActivityAt: string;
8
+ messageCount: number;
9
+ lastStatus?: string;
10
+ lastResultText?: string;
11
+ rolloutPath?: string;
12
+ }
13
+ /**
14
+ * Codex 会话台账:在持久 CODEX_HOME 下维护 sqlite 元数据表。
15
+ *
16
+ * - 动态导入 node:sqlite;不可用时降级为 no-op(方法返回空结果或错误)。
17
+ * - 7 天 TTL 惰性清理,并同步删除记录的 rollout 文件。
18
+ * - 不解析 Codex rollout 内容(当前无真实样本),仅保存 last_result_text 与 first_prompt。
19
+ */
20
+ export declare class CodexSessionStore {
21
+ private readonly homePath?;
22
+ private db;
23
+ private closed;
24
+ constructor(homePath?: string | undefined);
25
+ close(): void;
26
+ ensureReady(): Promise<void>;
27
+ upsert(patch: Partial<CodexSessionRecord> & {
28
+ threadId: string;
29
+ }): Promise<void>;
30
+ listSessions(options?: Partial<SessionListOptions>): Promise<SessionListResult>;
31
+ getSession(threadId: string, _options?: SessionDetailOptions): Promise<SessionDetailResult>;
32
+ searchSessions(options: SessionSearchOptions): Promise<SessionSearchResult>;
33
+ deleteSession(threadId: string, _request?: Partial<SessionDeleteRequest>): Promise<SessionDeleteResult>;
34
+ private openDb;
35
+ private pruneExpired;
36
+ private rowToEntry;
37
+ private emptyDetailResult;
38
+ }
39
+ export declare function resolveCodexHome(env?: NodeJS.ProcessEnv, agentId?: string): string | undefined;
40
+ export declare function ensureCodexHomeSync(homePath?: string): void;
41
+ export declare function writeCodexConfigIfNeeded(homePath: string, mcpBridgeUrl?: string): void;
42
+ //# sourceMappingURL=CodexSessionStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodexSessionStore.d.ts","sourceRoot":"","sources":["../../../src/adapters/codex/CodexSessionStore.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EAEnB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAgCD;;;;;;GAMG;AACH,qBAAa,iBAAiB;IAIhB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAHtC,OAAO,CAAC,EAAE,CAA6B;IACvC,OAAO,CAAC,MAAM,CAAS;gBAEM,QAAQ,CAAC,EAAE,MAAM,YAAA;IAE9C,KAAK,IAAI,IAAI;IAQP,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAyChF,YAAY,CAAC,OAAO,GAAE,OAAO,CAAC,kBAAkB,CAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAiBnF,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,oBAAyB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAgC/F,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAoC3E,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,OAAO,CAAC,oBAAoB,CAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;YAenG,MAAM;IAwCpB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,iBAAiB;CAW1B;AAED,wBAAgB,gBAAgB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAI3G;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAG3D;AAID,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CA6BtF"}
@@ -0,0 +1,279 @@
1
+ import { existsSync, mkdirSync, readFileSync, renameSync, unlinkSync, writeFileSync } from 'node:fs';
2
+ import { dirname, join } from 'node:path';
3
+ const TTL_MS = 7 * 24 * 60 * 60 * 1000;
4
+ function isoNow() {
5
+ return new Date().toISOString();
6
+ }
7
+ function asRecord(row) {
8
+ return (row ?? {});
9
+ }
10
+ function optionalString(value) {
11
+ return typeof value === 'string' ? value : undefined;
12
+ }
13
+ function optionalNumber(value) {
14
+ return typeof value === 'number' ? value : undefined;
15
+ }
16
+ /**
17
+ * Codex 会话台账:在持久 CODEX_HOME 下维护 sqlite 元数据表。
18
+ *
19
+ * - 动态导入 node:sqlite;不可用时降级为 no-op(方法返回空结果或错误)。
20
+ * - 7 天 TTL 惰性清理,并同步删除记录的 rollout 文件。
21
+ * - 不解析 Codex rollout 内容(当前无真实样本),仅保存 last_result_text 与 first_prompt。
22
+ */
23
+ export class CodexSessionStore {
24
+ homePath;
25
+ db = null;
26
+ closed = false;
27
+ constructor(homePath) {
28
+ this.homePath = homePath;
29
+ }
30
+ close() {
31
+ this.closed = true;
32
+ if (this.db) {
33
+ try {
34
+ this.db.close();
35
+ }
36
+ catch { /* best-effort */ }
37
+ this.db = null;
38
+ }
39
+ }
40
+ async ensureReady() {
41
+ await this.openDb();
42
+ }
43
+ async upsert(patch) {
44
+ const db = await this.openDb();
45
+ if (!db)
46
+ return;
47
+ const now = isoNow();
48
+ const existing = db.prepare('SELECT message_count FROM sessions WHERE thread_id = ?')
49
+ .get(patch.threadId);
50
+ if (existing) {
51
+ db.prepare(`UPDATE sessions
52
+ SET last_activity_at = ?,
53
+ last_status = coalesce(?, last_status),
54
+ last_result_text = coalesce(?, last_result_text),
55
+ rollout_path = coalesce(?, rollout_path),
56
+ message_count = message_count + 1
57
+ WHERE thread_id = ?`).run(now, patch.lastStatus ?? null, patch.lastResultText ?? null, patch.rolloutPath ?? null, patch.threadId);
58
+ return;
59
+ }
60
+ const firstPrompt = patch.firstPrompt;
61
+ const summary = patch.summary ?? (firstPrompt ? firstPrompt.slice(0, 120) : undefined);
62
+ db.prepare(`INSERT INTO sessions (
63
+ thread_id, summary, first_prompt, created_at, last_activity_at,
64
+ message_count, last_status, last_result_text, rollout_path
65
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(patch.threadId, summary ?? null, firstPrompt ?? null, patch.createdAt ?? now, patch.lastActivityAt ?? now, patch.messageCount ?? 1, patch.lastStatus ?? null, patch.lastResultText ?? null, patch.rolloutPath ?? null);
66
+ }
67
+ async listSessions(options = {}) {
68
+ const db = await this.openDb();
69
+ if (!db)
70
+ return { sessions: [] };
71
+ this.pruneExpired(db);
72
+ const limit = Math.max(1, Math.min(options.limit ?? 50, 200));
73
+ const rows = db.prepare(`SELECT thread_id, summary, first_prompt, created_at, last_activity_at,
74
+ message_count, last_status
75
+ FROM sessions
76
+ ORDER BY last_activity_at DESC
77
+ LIMIT ?`).all(limit);
78
+ return { sessions: rows.map((r) => this.rowToEntry(asRecord(r))) };
79
+ }
80
+ async getSession(threadId, _options = {}) {
81
+ const db = await this.openDb();
82
+ if (!db) {
83
+ return this.emptyDetailResult(threadId, 'Codex session store unavailable');
84
+ }
85
+ const row = db.prepare(`SELECT thread_id, summary, first_prompt, created_at, last_activity_at,
86
+ message_count, last_status, last_result_text
87
+ FROM sessions
88
+ WHERE thread_id = ?`).get(threadId);
89
+ if (!row) {
90
+ return this.emptyDetailResult(threadId, 'Session not found');
91
+ }
92
+ const entry = this.rowToEntry(row);
93
+ const lastResultText = optionalString(row.last_result_text) ?? '';
94
+ const firstPrompt = optionalString(row.first_prompt);
95
+ return {
96
+ session: entry,
97
+ messageCount: optionalNumber(row.message_count) ?? 0,
98
+ truncated: false,
99
+ userPrompts: firstPrompt ? [firstPrompt] : [],
100
+ assistantText: lastResultText,
101
+ lastAssistantText: lastResultText,
102
+ rawMessages: undefined,
103
+ rawMessagesIncluded: false,
104
+ };
105
+ }
106
+ async searchSessions(options) {
107
+ const db = await this.openDb();
108
+ if (!db)
109
+ return { sessions: [] };
110
+ this.pruneExpired(db);
111
+ const needle = options.query?.trim().toLowerCase();
112
+ if (!needle)
113
+ return { sessions: [] };
114
+ const rows = db.prepare(`SELECT thread_id, summary, first_prompt, created_at, last_activity_at,
115
+ message_count, last_status
116
+ FROM sessions
117
+ ORDER BY last_activity_at DESC`).all();
118
+ const matched = rows
119
+ .map((r) => this.rowToEntry(asRecord(r)))
120
+ .filter((entry) => {
121
+ const haystack = [entry.id, entry.summary, entry.firstPrompt, entry.cwd, entry.projectPath]
122
+ .filter(Boolean)
123
+ .join(' ')
124
+ .toLowerCase();
125
+ return haystack.includes(needle);
126
+ });
127
+ let offset = 0;
128
+ if (options.cursor) {
129
+ const parsed = Number.parseInt(options.cursor, 10);
130
+ if (!Number.isNaN(parsed))
131
+ offset = Math.max(0, parsed);
132
+ }
133
+ const limit = Math.min(options.limit ?? 50, 100);
134
+ const page = matched.slice(offset, offset + limit);
135
+ const nextCursor = matched.length > offset + limit ? String(offset + limit) : undefined;
136
+ return { sessions: page, ...(nextCursor ? { nextCursor } : {}) };
137
+ }
138
+ async deleteSession(threadId, _request = {}) {
139
+ const db = await this.openDb();
140
+ if (!db)
141
+ return { status: 'rejected', error: 'Codex session store unavailable' };
142
+ const row = db.prepare('SELECT rollout_path FROM sessions WHERE thread_id = ?')
143
+ .get(threadId);
144
+ if (row?.rollout_path) {
145
+ try {
146
+ unlinkSync(row.rollout_path);
147
+ }
148
+ catch { /* best-effort */ }
149
+ }
150
+ const result = db.prepare('DELETE FROM sessions WHERE thread_id = ?').run(threadId);
151
+ const deleted = result.changes > 0;
152
+ return { status: deleted ? 'deleted' : 'already_deleted' };
153
+ }
154
+ async openDb() {
155
+ if (this.db)
156
+ return this.db;
157
+ if (this.closed || !this.homePath)
158
+ return null;
159
+ try {
160
+ if (!existsSync(this.homePath))
161
+ mkdirSync(this.homePath, { recursive: true });
162
+ const sqlite = await import('node:sqlite');
163
+ const dbPath = join(this.homePath, 'sessions.db');
164
+ const db = new sqlite.DatabaseSync(dbPath);
165
+ db.exec(`
166
+ PRAGMA journal_mode = WAL;
167
+ PRAGMA foreign_keys = ON;
168
+ PRAGMA busy_timeout = 5000;
169
+ `);
170
+ db.exec(`
171
+ CREATE TABLE IF NOT EXISTS sessions (
172
+ thread_id TEXT PRIMARY KEY,
173
+ summary TEXT,
174
+ first_prompt TEXT,
175
+ created_at TEXT NOT NULL,
176
+ last_activity_at TEXT NOT NULL,
177
+ message_count INTEGER NOT NULL DEFAULT 1,
178
+ last_status TEXT,
179
+ last_result_text TEXT,
180
+ rollout_path TEXT
181
+ )
182
+ `);
183
+ this.pruneExpired(db);
184
+ this.db = db;
185
+ return db;
186
+ }
187
+ catch (err) {
188
+ console.warn(`[CodexSessionStore] Failed to open session database at ${this.homePath}: ${err instanceof Error ? err.message : String(err)}`);
189
+ return null;
190
+ }
191
+ }
192
+ pruneExpired(db) {
193
+ try {
194
+ const cutoff = new Date(Date.now() - TTL_MS).toISOString();
195
+ const rows = db.prepare('SELECT rollout_path FROM sessions WHERE last_activity_at < ?').all(cutoff);
196
+ for (const row of rows) {
197
+ if (row.rollout_path) {
198
+ try {
199
+ unlinkSync(row.rollout_path);
200
+ }
201
+ catch { /* best-effort */ }
202
+ }
203
+ }
204
+ db.prepare('DELETE FROM sessions WHERE last_activity_at < ?').run(cutoff);
205
+ }
206
+ catch { /* best-effort */ }
207
+ }
208
+ rowToEntry(row) {
209
+ return {
210
+ id: String(row.thread_id),
211
+ summary: optionalString(row.summary),
212
+ firstPrompt: optionalString(row.first_prompt),
213
+ createdAt: optionalString(row.created_at),
214
+ lastActivityAt: optionalString(row.last_activity_at),
215
+ messageCount: optionalNumber(row.message_count),
216
+ status: optionalString(row.last_status),
217
+ // Codex rollout 目录就是 CODEX_HOME 本身;按会话解析 rollout 内容后续补充。
218
+ projectPath: this.homePath,
219
+ };
220
+ }
221
+ emptyDetailResult(threadId, error) {
222
+ return {
223
+ session: { id: threadId },
224
+ messageCount: 0,
225
+ truncated: false,
226
+ userPrompts: [],
227
+ assistantText: '',
228
+ lastAssistantText: '',
229
+ error,
230
+ };
231
+ }
232
+ }
233
+ export function resolveCodexHome(env = process.env, agentId) {
234
+ const base = env.WINMATRIX_CODEX_HOME?.trim();
235
+ if (!base)
236
+ return undefined;
237
+ return agentId ? join(base, agentId) : base;
238
+ }
239
+ export function ensureCodexHomeSync(homePath) {
240
+ if (!homePath)
241
+ return;
242
+ if (!existsSync(homePath))
243
+ mkdirSync(homePath, { recursive: true });
244
+ }
245
+ const MCP_TOKEN_ENV = 'WINMATRIX_MCP_TOKEN';
246
+ export function writeCodexConfigIfNeeded(homePath, mcpBridgeUrl) {
247
+ if (!mcpBridgeUrl)
248
+ return;
249
+ const desired = [
250
+ '[mcp_servers.winmatrix]',
251
+ `url = ${JSON.stringify(mcpBridgeUrl)}`,
252
+ `bearer_token_env_var = ${JSON.stringify(MCP_TOKEN_ENV)}`,
253
+ '',
254
+ ].join('\n');
255
+ const configPath = join(homePath, 'config.toml');
256
+ try {
257
+ if (existsSync(configPath) && readFileSync(configPath, 'utf8') === desired) {
258
+ return;
259
+ }
260
+ }
261
+ catch {
262
+ // 无法读取时继续覆写
263
+ }
264
+ const parent = dirname(configPath);
265
+ if (!existsSync(parent))
266
+ mkdirSync(parent, { recursive: true });
267
+ const tmpPath = `${configPath}.tmp.${process.hrtime.bigint().toString(36)}`;
268
+ writeFileSync(tmpPath, desired, { encoding: 'utf8', mode: 0o600 });
269
+ try {
270
+ renameSync(tmpPath, configPath);
271
+ }
272
+ catch {
273
+ try {
274
+ unlinkSync(tmpPath);
275
+ }
276
+ catch { /* ignore */ }
277
+ }
278
+ }
279
+ //# sourceMappingURL=CodexSessionStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodexSessionStore.js","sourceRoot":"","sources":["../../../src/adapters/codex/CodexSessionStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAErG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAsC1C,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEvC,SAAS,MAAM;IACb,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,QAAQ,CAAC,GAAY;IAC5B,OAAO,CAAC,GAAG,IAAI,EAAE,CAA4B,CAAC;AAChD,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,OAAO,iBAAiB;IAIC;IAHrB,EAAE,GAAwB,IAAI,CAAC;IAC/B,MAAM,GAAG,KAAK,CAAC;IAEvB,YAA6B,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;IAAG,CAAC;IAElD,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,CAAC;gBAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YACpD,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAyD;QACpE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,EAAE;YAAE,OAAO;QAEhB,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,wDAAwD,CAAC;aAClF,GAAG,CAAC,KAAK,CAAC,QAAQ,CAA2C,CAAC;QAEjE,IAAI,QAAQ,EAAE,CAAC;YACb,EAAE,CAAC,OAAO,CACR;;;;;;8BAMsB,CACvB,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI,EAAE,KAAK,CAAC,cAAc,IAAI,IAAI,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC9G,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACvF,EAAE,CAAC,OAAO,CACR;;;4CAGsC,CACvC,CAAC,GAAG,CACH,KAAK,CAAC,QAAQ,EACd,OAAO,IAAI,IAAI,EACf,WAAW,IAAI,IAAI,EACnB,KAAK,CAAC,SAAS,IAAI,GAAG,EACtB,KAAK,CAAC,cAAc,IAAI,GAAG,EAC3B,KAAK,CAAC,YAAY,IAAI,CAAC,EACvB,KAAK,CAAC,UAAU,IAAI,IAAI,EACxB,KAAK,CAAC,cAAc,IAAI,IAAI,EAC5B,KAAK,CAAC,WAAW,IAAI,IAAI,CAC1B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAuC,EAAE;QAC1D,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,EAAE;YAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAEjC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB;;;;gBAIU,CACX,CAAC,GAAG,CAAC,KAAK,CAAc,CAAC;QAE1B,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,WAAiC,EAAE;QACpE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,iCAAiC,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CACpB;;;4BAGsB,CACvB,CAAC,GAAG,CAAC,QAAQ,CAAmD,CAAC;QAElE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACrD,OAAO;YACL,OAAO,EAAE,KAAK;YACd,YAAY,EAAE,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC;YACpD,SAAS,EAAE,KAAK;YAChB,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;YAC7C,aAAa,EAAE,cAAc;YAC7B,iBAAiB,EAAE,cAAc;YACjC,WAAW,EAAE,SAAS;YACtB,mBAAmB,EAAE,KAAK;SAC3B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAA6B;QAChD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,EAAE;YAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAEjC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACtB,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACnD,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAErC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB;;;uCAGiC,CAClC,CAAC,GAAG,EAAe,CAAC;QAErB,MAAM,OAAO,GAAG,IAAI;aACjB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aACxC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;YAChB,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,CAAC;iBACxF,MAAM,CAAC,OAAO,CAAC;iBACf,IAAI,CAAC,GAAG,CAAC;iBACT,WAAW,EAAE,CAAC;YACjB,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEL,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACnD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxF,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,QAAgB,EAAE,WAA0C,EAAE;QAChF,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,EAAE;YAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC;QAEjF,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,uDAAuD,CAAC;aAC5E,GAAG,CAAC,QAAQ,CAA0C,CAAC;QAC1D,IAAI,GAAG,EAAE,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC;gBAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;QACnC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC7D,CAAC;IAEO,KAAK,CAAC,MAAM;QAClB,IAAI,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE/C,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;YAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YAClD,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,CAAiB,CAAC;YAC3D,EAAE,CAAC,IAAI,CAAC;;;;OAIP,CAAC,CAAC;YACH,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;OAYP,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACtB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACZ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CACV,0DAA0D,IAAI,CAAC,QAAQ,KACrE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE,CACH,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,EAAgB;QACnC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC3D,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,8DAA8D,CAC/D,CAAC,GAAG,CAAC,MAAM,CAAgC,CAAC;YAC7C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;oBACrB,IAAI,CAAC;wBAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;YACD,EAAE,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5E,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC/B,CAAC;IAEO,UAAU,CAAC,GAA4B;QAC7C,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC;YACzB,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;YACpC,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC;YAC7C,SAAS,EAAE,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC;YACzC,cAAc,EAAE,cAAc,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACpD,YAAY,EAAE,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC;YAC/C,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC;YACvC,yDAAyD;YACzD,WAAW,EAAE,IAAI,CAAC,QAAQ;SAC3B,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,QAAgB,EAAE,KAAa;QACvD,OAAO;YACL,OAAO,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE;YACzB,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,KAAK;YAChB,WAAW,EAAE,EAAE;YACf,aAAa,EAAE,EAAE;YACjB,iBAAiB,EAAE,EAAE;YACrB,KAAK;SACN,CAAC;IACJ,CAAC;CACF;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAyB,OAAO,CAAC,GAAG,EAAE,OAAgB;IACrF,MAAM,IAAI,GAAG,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC;IAC9C,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAiB;IACnD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,aAAa,GAAG,qBAAqB,CAAC;AAE5C,MAAM,UAAU,wBAAwB,CAAC,QAAgB,EAAE,YAAqB;IAC9E,IAAI,CAAC,YAAY;QAAE,OAAO;IAE1B,MAAM,OAAO,GAAG;QACd,yBAAyB;QACzB,SAAS,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE;QACvC,0BAA0B,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE;QACzD,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACjD,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,OAAO,EAAE,CAAC;YAC3E,OAAO;QACT,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,YAAY;IACd,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACnC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhE,MAAM,OAAO,GAAG,GAAG,UAAU,QAAQ,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IAC5E,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACnE,IAAI,CAAC;QACH,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,CAAC;YAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;IACrD,CAAC;AACH,CAAC"}
@@ -39,6 +39,7 @@ export declare class HermesAdapter implements AgentAdapter {
39
39
  category?: string;
40
40
  }>>;
41
41
  private scanSkillDirRecursive;
42
+ private resolveHermesHome;
42
43
  private openStateDb;
43
44
  private queryStateDb;
44
45
  private mutateStateDb;
@@ -1 +1 @@
1
- {"version":3,"file":"HermesAdapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/hermes/HermesAdapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,sDAAsD,CAAC;AAkC1G,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EAEnB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,6BAA6B,CAAC;CACpD;AAED,qBAAa,aAAc,YAAW,YAAY;IAChD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAcxB;IAEF,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,kBAAkB,CAAC,CAAgC;gBAE/C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAWrC,OAAO,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC;YAI3E,WAAW;IA8PpB,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;IA0BpC,YAAY,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgCrE,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA4D/F,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAiC3E,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAiB9F,cAAc,CAAC,QAAQ,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAUhJ,OAAO,CAAC,qBAAqB;YAsBf,WAAW;YAeX,YAAY;IA0B1B,OAAO,CAAC,aAAa;CAWtB"}
1
+ {"version":3,"file":"HermesAdapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/hermes/HermesAdapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoBH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,sDAAsD,CAAC;AAkC1G,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EAEnB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,6BAA6B,CAAC;CACpD;AAED,qBAAa,aAAc,YAAW,YAAY;IAChD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAcxB;IAEF,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,kBAAkB,CAAC,CAAgC;gBAE/C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAWrC,OAAO,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC;YAI3E,WAAW;IAsRpB,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;IA0BpC,YAAY,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgCrE,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA4D/F,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAiC3E,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAiB9F,cAAc,CAAC,QAAQ,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAUhJ,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,iBAAiB;YAIX,WAAW;YAeX,YAAY;IA0B1B,OAAO,CAAC,aAAa;CAWtB"}