@ai-devkit/agent-manager 0.4.0 → 0.6.0

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 (50) hide show
  1. package/dist/adapters/AgentAdapter.d.ts +21 -2
  2. package/dist/adapters/AgentAdapter.d.ts.map +1 -1
  3. package/dist/adapters/ClaudeCodeAdapter.d.ts +44 -35
  4. package/dist/adapters/ClaudeCodeAdapter.d.ts.map +1 -1
  5. package/dist/adapters/ClaudeCodeAdapter.js +230 -298
  6. package/dist/adapters/ClaudeCodeAdapter.js.map +1 -1
  7. package/dist/adapters/CodexAdapter.d.ts +41 -31
  8. package/dist/adapters/CodexAdapter.d.ts.map +1 -1
  9. package/dist/adapters/CodexAdapter.js +198 -278
  10. package/dist/adapters/CodexAdapter.js.map +1 -1
  11. package/dist/index.d.ts +2 -4
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +1 -10
  14. package/dist/index.js.map +1 -1
  15. package/dist/utils/index.d.ts +6 -3
  16. package/dist/utils/index.d.ts.map +1 -1
  17. package/dist/utils/index.js +12 -11
  18. package/dist/utils/index.js.map +1 -1
  19. package/dist/utils/matching.d.ts +39 -0
  20. package/dist/utils/matching.d.ts.map +1 -0
  21. package/dist/utils/matching.js +107 -0
  22. package/dist/utils/matching.js.map +1 -0
  23. package/dist/utils/process.d.ts +25 -40
  24. package/dist/utils/process.d.ts.map +1 -1
  25. package/dist/utils/process.js +151 -105
  26. package/dist/utils/process.js.map +1 -1
  27. package/dist/utils/session.d.ts +30 -0
  28. package/dist/utils/session.d.ts.map +1 -0
  29. package/dist/utils/session.js +101 -0
  30. package/dist/utils/session.js.map +1 -0
  31. package/package.json +1 -1
  32. package/src/__tests__/AgentManager.test.ts +5 -27
  33. package/src/__tests__/adapters/ClaudeCodeAdapter.test.ts +754 -830
  34. package/src/__tests__/adapters/CodexAdapter.test.ts +581 -273
  35. package/src/__tests__/utils/matching.test.ts +199 -0
  36. package/src/__tests__/utils/process.test.ts +202 -0
  37. package/src/__tests__/utils/session.test.ts +117 -0
  38. package/src/adapters/AgentAdapter.ts +23 -4
  39. package/src/adapters/ClaudeCodeAdapter.ts +285 -437
  40. package/src/adapters/CodexAdapter.ts +202 -400
  41. package/src/index.ts +2 -4
  42. package/src/utils/index.ts +6 -3
  43. package/src/utils/matching.ts +96 -0
  44. package/src/utils/process.ts +133 -119
  45. package/src/utils/session.ts +92 -0
  46. package/dist/utils/file.d.ts +0 -52
  47. package/dist/utils/file.d.ts.map +0 -1
  48. package/dist/utils/file.js +0 -135
  49. package/dist/utils/file.js.map +0 -1
  50. package/src/utils/file.ts +0 -100
@@ -2,9 +2,13 @@
2
2
  /**
3
3
  * Codex Adapter
4
4
  *
5
- * Detects running Codex agents by combining:
6
- * 1. Running `codex` processes
7
- * 2. Session metadata under ~/.codex/sessions
5
+ * Detects running Codex agents by:
6
+ * 1. Finding running codex processes via shared listAgentProcesses()
7
+ * 2. Enriching with CWD and start times via shared enrichProcesses()
8
+ * 3. Discovering session files from ~/.codex/sessions/YYYY/MM/DD/ via shared batchGetSessionFileBirthtimes()
9
+ * 4. Setting resolvedCwd from session_meta first line
10
+ * 5. Matching sessions to processes via shared matchProcessesToSessions()
11
+ * 6. Extracting summary from last event entry in session JSONL
8
12
  */
9
13
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
14
  if (k2 === undefined) k2 = k;
@@ -43,10 +47,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
43
47
  exports.CodexAdapter = void 0;
44
48
  const fs = __importStar(require("fs"));
45
49
  const path = __importStar(require("path"));
46
- const child_process_1 = require("child_process");
47
50
  const AgentAdapter_1 = require("./AgentAdapter");
48
51
  const process_1 = require("../utils/process");
49
- const file_1 = require("../utils/file");
52
+ const session_1 = require("../utils/session");
53
+ const matching_1 = require("../utils/matching");
50
54
  class CodexAdapter {
51
55
  constructor() {
52
56
  this.type = 'codex';
@@ -56,172 +60,101 @@ class CodexAdapter {
56
60
  canHandle(processInfo) {
57
61
  return this.isCodexExecutable(processInfo.command);
58
62
  }
63
+ /**
64
+ * Detect running Codex agents
65
+ */
59
66
  async detectAgents() {
60
- const codexProcesses = this.listCodexProcesses();
61
- if (codexProcesses.length === 0) {
67
+ const processes = (0, process_1.enrichProcesses)((0, process_1.listAgentProcesses)('codex'));
68
+ if (processes.length === 0)
62
69
  return [];
63
- }
64
- const processStartByPid = this.getProcessStartTimes(codexProcesses.map((processInfo) => processInfo.pid));
65
- const sessionScanLimit = this.calculateSessionScanLimit(codexProcesses.length);
66
- const sessions = this.readSessions(sessionScanLimit, processStartByPid);
70
+ const { sessions, contentCache } = this.discoverSessions(processes);
67
71
  if (sessions.length === 0) {
68
- return codexProcesses.map((processInfo) => this.mapProcessOnlyAgent(processInfo, [], 'No Codex session metadata found'));
72
+ return processes.map((p) => this.mapProcessOnlyAgent(p));
69
73
  }
70
- const sortedSessions = [...sessions].sort((a, b) => b.lastActive.getTime() - a.lastActive.getTime());
71
- const usedSessionIds = new Set();
72
- const assignedPids = new Set();
74
+ const matches = (0, matching_1.matchProcessesToSessions)(processes, sessions);
75
+ const matchedPids = new Set(matches.map((m) => m.process.pid));
73
76
  const agents = [];
74
- // Match exact cwd first, then missing-cwd sessions.
75
- this.assignSessionsForMode('cwd', codexProcesses, sortedSessions, usedSessionIds, assignedPids, processStartByPid, agents);
76
- this.assignSessionsForMode('missing-cwd', codexProcesses, sortedSessions, usedSessionIds, assignedPids, processStartByPid, agents);
77
- // Every running codex process should still be listed.
78
- for (const processInfo of codexProcesses) {
79
- if (assignedPids.has(processInfo.pid)) {
80
- continue;
81
- }
82
- this.addProcessOnlyAgent(processInfo, assignedPids, agents);
83
- }
84
- return agents;
85
- }
86
- listCodexProcesses() {
87
- return (0, process_1.listProcesses)({ namePattern: 'codex' }).filter((processInfo) => this.canHandle(processInfo));
88
- }
89
- calculateSessionScanLimit(processCount) {
90
- return Math.min(Math.max(processCount * CodexAdapter.SESSION_SCAN_MULTIPLIER, CodexAdapter.MIN_SESSION_SCAN), CodexAdapter.MAX_SESSION_SCAN);
91
- }
92
- assignSessionsForMode(mode, codexProcesses, sessions, usedSessionIds, assignedPids, processStartByPid, agents) {
93
- for (const processInfo of codexProcesses) {
94
- if (assignedPids.has(processInfo.pid)) {
95
- continue;
77
+ for (const match of matches) {
78
+ const cachedContent = contentCache.get(match.session.filePath);
79
+ const sessionData = this.parseSession(cachedContent, match.session.filePath);
80
+ if (sessionData) {
81
+ agents.push(this.mapSessionToAgent(sessionData, match.process, match.session.filePath));
96
82
  }
97
- const session = this.selectBestSession(processInfo, sessions, usedSessionIds, processStartByPid, mode);
98
- if (!session) {
99
- continue;
83
+ else {
84
+ matchedPids.delete(match.process.pid);
100
85
  }
101
- this.addMappedSessionAgent(session, processInfo, usedSessionIds, assignedPids, agents);
102
86
  }
103
- }
104
- addMappedSessionAgent(session, processInfo, usedSessionIds, assignedPids, agents) {
105
- usedSessionIds.add(session.sessionId);
106
- assignedPids.add(processInfo.pid);
107
- agents.push(this.mapSessionToAgent(session, processInfo, agents));
108
- }
109
- addProcessOnlyAgent(processInfo, assignedPids, agents) {
110
- assignedPids.add(processInfo.pid);
111
- agents.push(this.mapProcessOnlyAgent(processInfo, agents));
112
- }
113
- mapSessionToAgent(session, processInfo, existingAgents) {
114
- return {
115
- name: this.generateAgentName(session, existingAgents),
116
- type: this.type,
117
- status: this.determineStatus(session),
118
- summary: session.summary || 'Codex session active',
119
- pid: processInfo.pid,
120
- projectPath: session.projectPath || processInfo.cwd || '',
121
- sessionId: session.sessionId,
122
- lastActive: session.lastActive,
123
- };
124
- }
125
- mapProcessOnlyAgent(processInfo, existingAgents, summary = 'Codex process running') {
126
- const syntheticSession = {
127
- sessionId: `pid-${processInfo.pid}`,
128
- projectPath: processInfo.cwd || '',
129
- summary,
130
- sessionStart: new Date(),
131
- lastActive: new Date(),
132
- lastPayloadType: 'process_only',
133
- };
134
- return {
135
- name: this.generateAgentName(syntheticSession, existingAgents),
136
- type: this.type,
137
- status: AgentAdapter_1.AgentStatus.RUNNING,
138
- summary,
139
- pid: processInfo.pid,
140
- projectPath: processInfo.cwd || '',
141
- sessionId: syntheticSession.sessionId,
142
- lastActive: syntheticSession.lastActive,
143
- };
144
- }
145
- readSessions(limit, processStartByPid) {
146
- const sessionFiles = this.findSessionFiles(limit, processStartByPid);
147
- const sessions = [];
148
- for (const sessionFile of sessionFiles) {
149
- try {
150
- const session = this.readSession(sessionFile);
151
- if (session) {
152
- sessions.push(session);
153
- }
154
- }
155
- catch (error) {
156
- console.error(`Failed to parse Codex session ${sessionFile}:`, error);
87
+ for (const proc of processes) {
88
+ if (!matchedPids.has(proc.pid)) {
89
+ agents.push(this.mapProcessOnlyAgent(proc));
157
90
  }
158
91
  }
159
- return sessions;
92
+ return agents;
160
93
  }
161
- findSessionFiles(limit, processStartByPid) {
162
- if (!fs.existsSync(this.codexSessionsDir)) {
163
- return [];
164
- }
165
- const files = [];
166
- const stack = [this.codexSessionsDir];
167
- while (stack.length > 0) {
168
- const currentDir = stack.pop();
169
- if (!currentDir || !fs.existsSync(currentDir)) {
170
- continue;
171
- }
172
- for (const entry of fs.readdirSync(currentDir, { withFileTypes: true })) {
173
- const fullPath = path.join(currentDir, entry.name);
174
- if (entry.isDirectory()) {
175
- stack.push(fullPath);
176
- continue;
177
- }
178
- if (entry.isFile() && entry.name.endsWith('.jsonl')) {
179
- try {
180
- files.push({
181
- path: fullPath,
182
- mtimeMs: fs.statSync(fullPath).mtimeMs,
183
- });
184
- }
185
- catch {
186
- continue;
94
+ /**
95
+ * Discover session files for the given processes.
96
+ *
97
+ * Uses process start times to determine which YYYY/MM/DD date directories
98
+ * to scan (±1 day window), then batches stat calls across all directories.
99
+ * Reads each file once and caches content for later parsing by parseSession().
100
+ * Sets resolvedCwd from session_meta first line.
101
+ */
102
+ discoverSessions(processes) {
103
+ const empty = { sessions: [], contentCache: new Map() };
104
+ if (!fs.existsSync(this.codexSessionsDir))
105
+ return empty;
106
+ const dateDirs = this.getDateDirs(processes);
107
+ if (dateDirs.length === 0)
108
+ return empty;
109
+ const files = (0, session_1.batchGetSessionFileBirthtimes)(dateDirs);
110
+ const contentCache = new Map();
111
+ // Read each file once: extract CWD for matching, cache content for later parsing
112
+ for (const file of files) {
113
+ try {
114
+ const content = fs.readFileSync(file.filePath, 'utf-8');
115
+ contentCache.set(file.filePath, content);
116
+ const firstLine = content.split('\n')[0]?.trim();
117
+ if (firstLine) {
118
+ const parsed = JSON.parse(firstLine);
119
+ if (parsed.type === 'session_meta') {
120
+ file.resolvedCwd = parsed.payload?.cwd || '';
187
121
  }
188
122
  }
189
123
  }
124
+ catch {
125
+ // Skip unreadable files
126
+ }
190
127
  }
191
- const recentFiles = files
192
- .sort((a, b) => b.mtimeMs - a.mtimeMs)
193
- .slice(0, limit)
194
- .map((file) => file.path);
195
- const processDayFiles = this.findProcessDaySessionFiles(processStartByPid);
196
- const selectedPaths = new Set(recentFiles);
197
- for (const processDayFile of processDayFiles) {
198
- selectedPaths.add(processDayFile);
199
- }
200
- return Array.from(selectedPaths);
128
+ return { sessions: files, contentCache };
201
129
  }
202
- findProcessDaySessionFiles(processStartByPid) {
203
- const files = [];
130
+ /**
131
+ * Determine which date directories to scan based on process start times.
132
+ * Returns only directories that actually exist.
133
+ */
134
+ getDateDirs(processes) {
204
135
  const dayKeys = new Set();
205
- const dayWindow = CodexAdapter.PROCESS_START_DAY_WINDOW_DAYS;
206
- for (const processStart of processStartByPid.values()) {
207
- for (let offset = -dayWindow; offset <= dayWindow; offset++) {
208
- const day = new Date(processStart.getTime());
136
+ const window = CodexAdapter.PROCESS_START_DAY_WINDOW_DAYS;
137
+ for (const proc of processes) {
138
+ const startTime = proc.startTime || new Date();
139
+ for (let offset = -window; offset <= window; offset++) {
140
+ const day = new Date(startTime.getTime());
209
141
  day.setDate(day.getDate() + offset);
210
142
  dayKeys.add(this.toSessionDayKey(day));
211
143
  }
212
144
  }
145
+ const dirs = [];
213
146
  for (const dayKey of dayKeys) {
214
147
  const dayDir = path.join(this.codexSessionsDir, dayKey);
215
- if (!fs.existsSync(dayDir)) {
216
- continue;
217
- }
218
- for (const entry of fs.readdirSync(dayDir, { withFileTypes: true })) {
219
- if (entry.isFile() && entry.name.endsWith('.jsonl')) {
220
- files.push(path.join(dayDir, entry.name));
148
+ try {
149
+ if (fs.statSync(dayDir).isDirectory()) {
150
+ dirs.push(dayDir);
221
151
  }
222
152
  }
153
+ catch {
154
+ continue;
155
+ }
223
156
  }
224
- return files;
157
+ return dirs;
225
158
  }
226
159
  toSessionDayKey(date) {
227
160
  const yyyy = String(date.getFullYear()).padStart(4, '0');
@@ -229,16 +162,45 @@ class CodexAdapter {
229
162
  const dd = String(date.getDate()).padStart(2, '0');
230
163
  return path.join(yyyy, mm, dd);
231
164
  }
232
- readSession(filePath) {
233
- const firstLine = this.readFirstLine(filePath);
234
- if (!firstLine) {
165
+ /**
166
+ * Parse session file content into CodexSession.
167
+ * Uses cached content if available, otherwise reads from disk.
168
+ */
169
+ parseSession(cachedContent, filePath) {
170
+ let content;
171
+ if (cachedContent !== undefined) {
172
+ content = cachedContent;
173
+ }
174
+ else {
175
+ try {
176
+ content = fs.readFileSync(filePath, 'utf-8');
177
+ }
178
+ catch {
179
+ return null;
180
+ }
181
+ }
182
+ const allLines = content.trim().split('\n');
183
+ if (!allLines[0])
235
184
  return null;
185
+ let metaEntry;
186
+ try {
187
+ metaEntry = JSON.parse(allLines[0]);
236
188
  }
237
- const metaEntry = this.parseSessionMeta(firstLine);
238
- if (!metaEntry?.payload?.id) {
189
+ catch {
239
190
  return null;
240
191
  }
241
- const entries = (0, file_1.readJsonLines)(filePath, 300);
192
+ if (metaEntry.type !== 'session_meta' || !metaEntry.payload?.id) {
193
+ return null;
194
+ }
195
+ const entries = [];
196
+ for (const line of allLines) {
197
+ try {
198
+ entries.push(JSON.parse(line));
199
+ }
200
+ catch {
201
+ continue;
202
+ }
203
+ }
242
204
  const lastEntry = this.findLastEventEntry(entries);
243
205
  const lastPayloadType = lastEntry?.payload?.type;
244
206
  const lastActive = this.parseTimestamp(lastEntry?.timestamp) ||
@@ -255,21 +217,30 @@ class CodexAdapter {
255
217
  lastPayloadType,
256
218
  };
257
219
  }
258
- readFirstLine(filePath) {
259
- const content = fs.readFileSync(filePath, 'utf-8');
260
- return content.split('\n')[0]?.trim() || '';
220
+ mapSessionToAgent(session, processInfo, filePath) {
221
+ return {
222
+ name: (0, matching_1.generateAgentName)(session.projectPath || processInfo.cwd || '', processInfo.pid),
223
+ type: this.type,
224
+ status: this.determineStatus(session),
225
+ summary: session.summary || 'Codex session active',
226
+ pid: processInfo.pid,
227
+ projectPath: session.projectPath || processInfo.cwd || '',
228
+ sessionId: session.sessionId,
229
+ lastActive: session.lastActive,
230
+ sessionFilePath: filePath,
231
+ };
261
232
  }
262
- parseSessionMeta(line) {
263
- try {
264
- const parsed = JSON.parse(line);
265
- if (parsed.type !== 'session_meta') {
266
- return null;
267
- }
268
- return parsed;
269
- }
270
- catch {
271
- return null;
272
- }
233
+ mapProcessOnlyAgent(processInfo) {
234
+ return {
235
+ name: (0, matching_1.generateAgentName)(processInfo.cwd || '', processInfo.pid),
236
+ type: this.type,
237
+ status: AgentAdapter_1.AgentStatus.RUNNING,
238
+ summary: 'Codex process running',
239
+ pid: processInfo.pid,
240
+ projectPath: processInfo.cwd || '',
241
+ sessionId: `pid-${processInfo.pid}`,
242
+ lastActive: new Date(),
243
+ };
273
244
  }
274
245
  findLastEventEntry(entries) {
275
246
  for (let i = entries.length - 1; i >= 0; i--) {
@@ -281,97 +252,23 @@ class CodexAdapter {
281
252
  return undefined;
282
253
  }
283
254
  parseTimestamp(value) {
284
- if (!value) {
255
+ if (!value)
285
256
  return null;
286
- }
287
257
  const timestamp = new Date(value);
288
258
  return Number.isNaN(timestamp.getTime()) ? null : timestamp;
289
259
  }
290
- selectBestSession(processInfo, sessions, usedSessionIds, processStartByPid, mode) {
291
- const candidates = this.filterCandidateSessions(processInfo, sessions, usedSessionIds, mode);
292
- if (candidates.length === 0) {
293
- return undefined;
294
- }
295
- const processStart = processStartByPid.get(processInfo.pid);
296
- if (!processStart) {
297
- return candidates.sort((a, b) => b.lastActive.getTime() - a.lastActive.getTime())[0];
298
- }
299
- return this.rankCandidatesByStartTime(candidates, processStart)[0];
300
- }
301
- filterCandidateSessions(processInfo, sessions, usedSessionIds, mode) {
302
- return sessions.filter((session) => {
303
- if (usedSessionIds.has(session.sessionId)) {
304
- return false;
305
- }
306
- if (mode === 'cwd') {
307
- return session.projectPath === processInfo.cwd;
308
- }
309
- if (mode === 'missing-cwd') {
310
- return !session.projectPath;
311
- }
312
- });
313
- }
314
- rankCandidatesByStartTime(candidates, processStart) {
315
- const toleranceMs = CodexAdapter.PROCESS_SESSION_TIME_TOLERANCE_MS;
316
- return candidates
317
- .map((session) => {
318
- const diffMs = Math.abs(session.sessionStart.getTime() - processStart.getTime());
319
- const outsideTolerance = diffMs > toleranceMs ? 1 : 0;
320
- return {
321
- session,
322
- rank: outsideTolerance,
323
- diffMs,
324
- recency: session.lastActive.getTime(),
325
- };
326
- })
327
- .sort((a, b) => {
328
- if (a.rank !== b.rank)
329
- return a.rank - b.rank;
330
- if (a.diffMs !== b.diffMs)
331
- return a.diffMs - b.diffMs;
332
- return b.recency - a.recency;
333
- })
334
- .map((ranked) => ranked.session);
335
- }
336
- getProcessStartTimes(pids) {
337
- if (pids.length === 0 || process.env.JEST_WORKER_ID) {
338
- return new Map();
339
- }
340
- try {
341
- const output = (0, child_process_1.execSync)(`ps -o pid=,etime= -p ${pids.join(',')}`, {
342
- encoding: 'utf-8',
343
- });
344
- const nowMs = Date.now();
345
- const startTimes = new Map();
346
- for (const rawLine of output.split('\n')) {
347
- const line = rawLine.trim();
348
- if (!line)
349
- continue;
350
- const parts = line.split(/\s+/);
351
- if (parts.length < 2)
352
- continue;
353
- const pid = Number.parseInt(parts[0], 10);
354
- const elapsedSeconds = this.parseElapsedSeconds(parts[1]);
355
- if (!Number.isFinite(pid) || elapsedSeconds === null)
356
- continue;
357
- startTimes.set(pid, new Date(nowMs - elapsedSeconds * 1000));
358
- }
359
- return startTimes;
360
- }
361
- catch {
362
- return new Map();
260
+ determineStatus(session) {
261
+ const diffMs = Date.now() - session.lastActive.getTime();
262
+ const diffMinutes = diffMs / 60000;
263
+ if (diffMinutes > CodexAdapter.IDLE_THRESHOLD_MINUTES) {
264
+ return AgentAdapter_1.AgentStatus.IDLE;
363
265
  }
364
- }
365
- parseElapsedSeconds(etime) {
366
- const match = etime.trim().match(/^(?:(\d+)-)?(?:(\d{1,2}):)?(\d{1,2}):(\d{2})$/);
367
- if (!match) {
368
- return null;
266
+ if (session.lastPayloadType === 'agent_message' ||
267
+ session.lastPayloadType === 'task_complete' ||
268
+ session.lastPayloadType === 'turn_aborted') {
269
+ return AgentAdapter_1.AgentStatus.WAITING;
369
270
  }
370
- const days = Number.parseInt(match[1] || '0', 10);
371
- const hours = Number.parseInt(match[2] || '0', 10);
372
- const minutes = Number.parseInt(match[3] || '0', 10);
373
- const seconds = Number.parseInt(match[4] || '0', 10);
374
- return (((days * 24 + hours) * 60 + minutes) * 60) + seconds;
271
+ return AgentAdapter_1.AgentStatus.RUNNING;
375
272
  }
376
273
  extractSummary(entries) {
377
274
  for (let i = entries.length - 1; i >= 0; i--) {
@@ -383,9 +280,8 @@ class CodexAdapter {
383
280
  return 'Codex session active';
384
281
  }
385
282
  truncate(value, maxLength) {
386
- if (value.length <= maxLength) {
283
+ if (value.length <= maxLength)
387
284
  return value;
388
- }
389
285
  return `${value.slice(0, maxLength - 3)}...`;
390
286
  }
391
287
  isCodexExecutable(command) {
@@ -393,38 +289,62 @@ class CodexAdapter {
393
289
  const base = path.basename(executable).toLowerCase();
394
290
  return base === 'codex' || base === 'codex.exe';
395
291
  }
396
- determineStatus(session) {
397
- const diffMs = Date.now() - session.lastActive.getTime();
398
- const diffMinutes = diffMs / 60000;
399
- if (diffMinutes > CodexAdapter.IDLE_THRESHOLD_MINUTES) {
400
- return AgentAdapter_1.AgentStatus.IDLE;
292
+ /**
293
+ * Read the full conversation from a Codex session JSONL file.
294
+ *
295
+ * Codex entries use payload.type to indicate message role and payload.message for content.
296
+ */
297
+ getConversation(sessionFilePath, options) {
298
+ const verbose = options?.verbose ?? false;
299
+ let content;
300
+ try {
301
+ content = fs.readFileSync(sessionFilePath, 'utf-8');
401
302
  }
402
- if (session.lastPayloadType === 'agent_message' ||
403
- session.lastPayloadType === 'task_complete' ||
404
- session.lastPayloadType === 'turn_aborted') {
405
- return AgentAdapter_1.AgentStatus.WAITING;
303
+ catch {
304
+ return [];
406
305
  }
407
- return AgentAdapter_1.AgentStatus.RUNNING;
408
- }
409
- generateAgentName(session, existingAgents) {
410
- const fallback = `codex-${session.sessionId.slice(0, 8)}`;
411
- const baseName = session.projectPath ? path.basename(path.normalize(session.projectPath)) : fallback;
412
- const conflict = existingAgents.some((agent) => agent.name === baseName);
413
- if (!conflict) {
414
- return baseName || fallback;
306
+ const lines = content.trim().split('\n');
307
+ const messages = [];
308
+ for (const line of lines) {
309
+ let entry;
310
+ try {
311
+ entry = JSON.parse(line);
312
+ }
313
+ catch {
314
+ continue;
315
+ }
316
+ if (entry.type === 'session_meta')
317
+ continue;
318
+ const payloadType = entry.payload?.type;
319
+ if (!payloadType)
320
+ continue;
321
+ let role;
322
+ if (payloadType === 'user_message') {
323
+ role = 'user';
324
+ }
325
+ else if (payloadType === 'agent_message' || payloadType === 'task_complete') {
326
+ role = 'assistant';
327
+ }
328
+ else if (verbose) {
329
+ role = 'system';
330
+ }
331
+ else {
332
+ continue;
333
+ }
334
+ const text = entry.payload?.message?.trim();
335
+ if (!text)
336
+ continue;
337
+ messages.push({
338
+ role,
339
+ content: text,
340
+ timestamp: entry.timestamp,
341
+ });
415
342
  }
416
- return `${baseName || fallback} (${session.sessionId.slice(0, 8)})`;
343
+ return messages;
417
344
  }
418
345
  }
419
346
  exports.CodexAdapter = CodexAdapter;
420
- /** Keep status thresholds aligned across adapters. */
421
347
  CodexAdapter.IDLE_THRESHOLD_MINUTES = 5;
422
- /** Limit session parsing per run to keep list latency bounded. */
423
- CodexAdapter.MIN_SESSION_SCAN = 12;
424
- CodexAdapter.MAX_SESSION_SCAN = 40;
425
- CodexAdapter.SESSION_SCAN_MULTIPLIER = 4;
426
- /** Also include session files around process start day to recover long-lived processes. */
348
+ /** Include session files around process start day to recover long-lived processes. */
427
349
  CodexAdapter.PROCESS_START_DAY_WINDOW_DAYS = 1;
428
- /** Matching tolerance between process start time and session start time. */
429
- CodexAdapter.PROCESS_SESSION_TIME_TOLERANCE_MS = 2 * 60 * 1000;
430
350
  //# sourceMappingURL=CodexAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodexAdapter.js","sourceRoot":"","sources":["../../src/adapters/CodexAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodexAdapter.js","sourceRoot":"","sources":["../../src/adapters/CodexAdapter.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,11 +2,9 @@ export { AgentManager } from './AgentManager';
2
2
  export { ClaudeCodeAdapter } from './adapters/ClaudeCodeAdapter';
3
3
  export { CodexAdapter } from './adapters/CodexAdapter';
4
4
  export { AgentStatus } from './adapters/AgentAdapter';
5
- export type { AgentAdapter, AgentType, AgentInfo, ProcessInfo } from './adapters/AgentAdapter';
5
+ export type { AgentAdapter, AgentType, AgentInfo, ProcessInfo, ConversationMessage } from './adapters/AgentAdapter';
6
6
  export { TerminalFocusManager, TerminalType } from './terminal/TerminalFocusManager';
7
7
  export type { TerminalLocation } from './terminal/TerminalFocusManager';
8
8
  export { TtyWriter } from './terminal/TtyWriter';
9
- export { listProcesses, getProcessCwd, getProcessTty, isProcessRunning, getProcessInfo } from './utils/process';
10
- export type { ListProcessesOptions } from './utils/process';
11
- export { readLastLines, readJsonLines, fileExists, readJson } from './utils/file';
9
+ export { getProcessTty } from './utils/process';
12
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE/F,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACrF,YAAY,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAChH,YAAY,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEpH,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACrF,YAAY,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}