@ai-devkit/agent-manager 0.3.0 → 0.5.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 +2 -0
  2. package/dist/adapters/AgentAdapter.d.ts.map +1 -1
  3. package/dist/adapters/ClaudeCodeAdapter.d.ts +49 -38
  4. package/dist/adapters/ClaudeCodeAdapter.d.ts.map +1 -1
  5. package/dist/adapters/ClaudeCodeAdapter.js +286 -293
  6. package/dist/adapters/ClaudeCodeAdapter.js.map +1 -1
  7. package/dist/adapters/CodexAdapter.d.ts +32 -30
  8. package/dist/adapters/CodexAdapter.d.ts.map +1 -1
  9. package/dist/adapters/CodexAdapter.js +148 -284
  10. package/dist/adapters/CodexAdapter.js.map +1 -1
  11. package/dist/index.d.ts +1 -3
  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 +103 -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 +2 -2
  32. package/src/__tests__/AgentManager.test.ts +0 -25
  33. package/src/__tests__/adapters/ClaudeCodeAdapter.test.ts +921 -205
  34. package/src/__tests__/adapters/CodexAdapter.test.ts +468 -269
  35. package/src/__tests__/utils/matching.test.ts +191 -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 +3 -0
  39. package/src/adapters/ClaudeCodeAdapter.ts +341 -418
  40. package/src/adapters/CodexAdapter.ts +155 -420
  41. package/src/index.ts +1 -3
  42. package/src/utils/index.ts +6 -3
  43. package/src/utils/matching.ts +92 -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,173 +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, then any available session.
75
- this.assignSessionsForMode('cwd', codexProcesses, sortedSessions, usedSessionIds, assignedPids, processStartByPid, agents);
76
- this.assignSessionsForMode('missing-cwd', codexProcesses, sortedSessions, usedSessionIds, assignedPids, processStartByPid, agents);
77
- this.assignSessionsForMode('any', codexProcesses, sortedSessions, usedSessionIds, assignedPids, processStartByPid, agents);
78
- // Every running codex process should still be listed.
79
- for (const processInfo of codexProcesses) {
80
- if (assignedPids.has(processInfo.pid)) {
81
- 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));
82
82
  }
83
- this.addProcessOnlyAgent(processInfo, assignedPids, agents);
84
- }
85
- return agents;
86
- }
87
- listCodexProcesses() {
88
- return (0, process_1.listProcesses)({ namePattern: 'codex' }).filter((processInfo) => this.canHandle(processInfo));
89
- }
90
- calculateSessionScanLimit(processCount) {
91
- return Math.min(Math.max(processCount * CodexAdapter.SESSION_SCAN_MULTIPLIER, CodexAdapter.MIN_SESSION_SCAN), CodexAdapter.MAX_SESSION_SCAN);
92
- }
93
- assignSessionsForMode(mode, codexProcesses, sessions, usedSessionIds, assignedPids, processStartByPid, agents) {
94
- for (const processInfo of codexProcesses) {
95
- if (assignedPids.has(processInfo.pid)) {
96
- continue;
83
+ else {
84
+ matchedPids.delete(match.process.pid);
97
85
  }
98
- const session = this.selectBestSession(processInfo, sessions, usedSessionIds, processStartByPid, mode);
99
- if (!session) {
100
- continue;
101
- }
102
- this.addMappedSessionAgent(session, processInfo, usedSessionIds, assignedPids, agents);
103
86
  }
104
- }
105
- addMappedSessionAgent(session, processInfo, usedSessionIds, assignedPids, agents) {
106
- usedSessionIds.add(session.sessionId);
107
- assignedPids.add(processInfo.pid);
108
- agents.push(this.mapSessionToAgent(session, processInfo, agents));
109
- }
110
- addProcessOnlyAgent(processInfo, assignedPids, agents) {
111
- assignedPids.add(processInfo.pid);
112
- agents.push(this.mapProcessOnlyAgent(processInfo, agents));
113
- }
114
- mapSessionToAgent(session, processInfo, existingAgents) {
115
- return {
116
- name: this.generateAgentName(session, existingAgents),
117
- type: this.type,
118
- status: this.determineStatus(session),
119
- summary: session.summary || 'Codex session active',
120
- pid: processInfo.pid,
121
- projectPath: session.projectPath || processInfo.cwd || '',
122
- sessionId: session.sessionId,
123
- lastActive: session.lastActive,
124
- };
125
- }
126
- mapProcessOnlyAgent(processInfo, existingAgents, summary = 'Codex process running') {
127
- const syntheticSession = {
128
- sessionId: `pid-${processInfo.pid}`,
129
- projectPath: processInfo.cwd || '',
130
- summary,
131
- sessionStart: new Date(),
132
- lastActive: new Date(),
133
- lastPayloadType: 'process_only',
134
- };
135
- return {
136
- name: this.generateAgentName(syntheticSession, existingAgents),
137
- type: this.type,
138
- status: AgentAdapter_1.AgentStatus.RUNNING,
139
- summary,
140
- pid: processInfo.pid,
141
- projectPath: processInfo.cwd || '',
142
- sessionId: syntheticSession.sessionId,
143
- lastActive: syntheticSession.lastActive,
144
- };
145
- }
146
- readSessions(limit, processStartByPid) {
147
- const sessionFiles = this.findSessionFiles(limit, processStartByPid);
148
- const sessions = [];
149
- for (const sessionFile of sessionFiles) {
150
- try {
151
- const session = this.readSession(sessionFile);
152
- if (session) {
153
- sessions.push(session);
154
- }
155
- }
156
- catch (error) {
157
- 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));
158
90
  }
159
91
  }
160
- return sessions;
92
+ return agents;
161
93
  }
162
- findSessionFiles(limit, processStartByPid) {
163
- if (!fs.existsSync(this.codexSessionsDir)) {
164
- return [];
165
- }
166
- const files = [];
167
- const stack = [this.codexSessionsDir];
168
- while (stack.length > 0) {
169
- const currentDir = stack.pop();
170
- if (!currentDir || !fs.existsSync(currentDir)) {
171
- continue;
172
- }
173
- for (const entry of fs.readdirSync(currentDir, { withFileTypes: true })) {
174
- const fullPath = path.join(currentDir, entry.name);
175
- if (entry.isDirectory()) {
176
- stack.push(fullPath);
177
- continue;
178
- }
179
- if (entry.isFile() && entry.name.endsWith('.jsonl')) {
180
- try {
181
- files.push({
182
- path: fullPath,
183
- mtimeMs: fs.statSync(fullPath).mtimeMs,
184
- });
185
- }
186
- catch {
187
- 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 || '';
188
121
  }
189
122
  }
190
123
  }
124
+ catch {
125
+ // Skip unreadable files
126
+ }
191
127
  }
192
- const recentFiles = files
193
- .sort((a, b) => b.mtimeMs - a.mtimeMs)
194
- .slice(0, limit)
195
- .map((file) => file.path);
196
- const processDayFiles = this.findProcessDaySessionFiles(processStartByPid);
197
- const selectedPaths = new Set(recentFiles);
198
- for (const processDayFile of processDayFiles) {
199
- selectedPaths.add(processDayFile);
200
- }
201
- return Array.from(selectedPaths);
128
+ return { sessions: files, contentCache };
202
129
  }
203
- findProcessDaySessionFiles(processStartByPid) {
204
- 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) {
205
135
  const dayKeys = new Set();
206
- const dayWindow = CodexAdapter.PROCESS_START_DAY_WINDOW_DAYS;
207
- for (const processStart of processStartByPid.values()) {
208
- for (let offset = -dayWindow; offset <= dayWindow; offset++) {
209
- 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());
210
141
  day.setDate(day.getDate() + offset);
211
142
  dayKeys.add(this.toSessionDayKey(day));
212
143
  }
213
144
  }
145
+ const dirs = [];
214
146
  for (const dayKey of dayKeys) {
215
147
  const dayDir = path.join(this.codexSessionsDir, dayKey);
216
- if (!fs.existsSync(dayDir)) {
217
- continue;
218
- }
219
- for (const entry of fs.readdirSync(dayDir, { withFileTypes: true })) {
220
- if (entry.isFile() && entry.name.endsWith('.jsonl')) {
221
- files.push(path.join(dayDir, entry.name));
148
+ try {
149
+ if (fs.statSync(dayDir).isDirectory()) {
150
+ dirs.push(dayDir);
222
151
  }
223
152
  }
153
+ catch {
154
+ continue;
155
+ }
224
156
  }
225
- return files;
157
+ return dirs;
226
158
  }
227
159
  toSessionDayKey(date) {
228
160
  const yyyy = String(date.getFullYear()).padStart(4, '0');
@@ -230,16 +162,45 @@ class CodexAdapter {
230
162
  const dd = String(date.getDate()).padStart(2, '0');
231
163
  return path.join(yyyy, mm, dd);
232
164
  }
233
- readSession(filePath) {
234
- const firstLine = this.readFirstLine(filePath);
235
- 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])
184
+ return null;
185
+ let metaEntry;
186
+ try {
187
+ metaEntry = JSON.parse(allLines[0]);
188
+ }
189
+ catch {
236
190
  return null;
237
191
  }
238
- const metaEntry = this.parseSessionMeta(firstLine);
239
- if (!metaEntry?.payload?.id) {
192
+ if (metaEntry.type !== 'session_meta' || !metaEntry.payload?.id) {
240
193
  return null;
241
194
  }
242
- const entries = (0, file_1.readJsonLines)(filePath, 300);
195
+ const entries = [];
196
+ for (const line of allLines) {
197
+ try {
198
+ entries.push(JSON.parse(line));
199
+ }
200
+ catch {
201
+ continue;
202
+ }
203
+ }
243
204
  const lastEntry = this.findLastEventEntry(entries);
244
205
  const lastPayloadType = lastEntry?.payload?.type;
245
206
  const lastActive = this.parseTimestamp(lastEntry?.timestamp) ||
@@ -256,21 +217,29 @@ class CodexAdapter {
256
217
  lastPayloadType,
257
218
  };
258
219
  }
259
- readFirstLine(filePath) {
260
- const content = fs.readFileSync(filePath, 'utf-8');
261
- return content.split('\n')[0]?.trim() || '';
220
+ mapSessionToAgent(session, processInfo) {
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
+ };
262
231
  }
263
- parseSessionMeta(line) {
264
- try {
265
- const parsed = JSON.parse(line);
266
- if (parsed.type !== 'session_meta') {
267
- return null;
268
- }
269
- return parsed;
270
- }
271
- catch {
272
- return null;
273
- }
232
+ mapProcessOnlyAgent(processInfo) {
233
+ return {
234
+ name: (0, matching_1.generateAgentName)(processInfo.cwd || '', processInfo.pid),
235
+ type: this.type,
236
+ status: AgentAdapter_1.AgentStatus.RUNNING,
237
+ summary: 'Codex process running',
238
+ pid: processInfo.pid,
239
+ projectPath: processInfo.cwd || '',
240
+ sessionId: `pid-${processInfo.pid}`,
241
+ lastActive: new Date(),
242
+ };
274
243
  }
275
244
  findLastEventEntry(entries) {
276
245
  for (let i = entries.length - 1; i >= 0; i--) {
@@ -282,98 +251,23 @@ class CodexAdapter {
282
251
  return undefined;
283
252
  }
284
253
  parseTimestamp(value) {
285
- if (!value) {
254
+ if (!value)
286
255
  return null;
287
- }
288
256
  const timestamp = new Date(value);
289
257
  return Number.isNaN(timestamp.getTime()) ? null : timestamp;
290
258
  }
291
- selectBestSession(processInfo, sessions, usedSessionIds, processStartByPid, mode) {
292
- const candidates = this.filterCandidateSessions(processInfo, sessions, usedSessionIds, mode);
293
- if (candidates.length === 0) {
294
- return undefined;
295
- }
296
- const processStart = processStartByPid.get(processInfo.pid);
297
- if (!processStart) {
298
- return candidates.sort((a, b) => b.lastActive.getTime() - a.lastActive.getTime())[0];
299
- }
300
- return this.rankCandidatesByStartTime(candidates, processStart)[0];
301
- }
302
- filterCandidateSessions(processInfo, sessions, usedSessionIds, mode) {
303
- return sessions.filter((session) => {
304
- if (usedSessionIds.has(session.sessionId)) {
305
- return false;
306
- }
307
- if (mode === 'cwd') {
308
- return session.projectPath === processInfo.cwd;
309
- }
310
- if (mode === 'missing-cwd') {
311
- return !session.projectPath;
312
- }
313
- return true;
314
- });
315
- }
316
- rankCandidatesByStartTime(candidates, processStart) {
317
- const toleranceMs = CodexAdapter.PROCESS_SESSION_TIME_TOLERANCE_MS;
318
- return candidates
319
- .map((session) => {
320
- const diffMs = Math.abs(session.sessionStart.getTime() - processStart.getTime());
321
- const outsideTolerance = diffMs > toleranceMs ? 1 : 0;
322
- return {
323
- session,
324
- rank: outsideTolerance,
325
- diffMs,
326
- recency: session.lastActive.getTime(),
327
- };
328
- })
329
- .sort((a, b) => {
330
- if (a.rank !== b.rank)
331
- return a.rank - b.rank;
332
- if (a.diffMs !== b.diffMs)
333
- return a.diffMs - b.diffMs;
334
- return b.recency - a.recency;
335
- })
336
- .map((ranked) => ranked.session);
337
- }
338
- getProcessStartTimes(pids) {
339
- if (pids.length === 0 || process.env.JEST_WORKER_ID) {
340
- return new Map();
341
- }
342
- try {
343
- const output = (0, child_process_1.execSync)(`ps -o pid=,etime= -p ${pids.join(',')}`, {
344
- encoding: 'utf-8',
345
- });
346
- const nowMs = Date.now();
347
- const startTimes = new Map();
348
- for (const rawLine of output.split('\n')) {
349
- const line = rawLine.trim();
350
- if (!line)
351
- continue;
352
- const parts = line.split(/\s+/);
353
- if (parts.length < 2)
354
- continue;
355
- const pid = Number.parseInt(parts[0], 10);
356
- const elapsedSeconds = this.parseElapsedSeconds(parts[1]);
357
- if (!Number.isFinite(pid) || elapsedSeconds === null)
358
- continue;
359
- startTimes.set(pid, new Date(nowMs - elapsedSeconds * 1000));
360
- }
361
- return startTimes;
362
- }
363
- catch {
364
- return new Map();
259
+ determineStatus(session) {
260
+ const diffMs = Date.now() - session.lastActive.getTime();
261
+ const diffMinutes = diffMs / 60000;
262
+ if (diffMinutes > CodexAdapter.IDLE_THRESHOLD_MINUTES) {
263
+ return AgentAdapter_1.AgentStatus.IDLE;
365
264
  }
366
- }
367
- parseElapsedSeconds(etime) {
368
- const match = etime.trim().match(/^(?:(\d+)-)?(?:(\d{1,2}):)?(\d{1,2}):(\d{2})$/);
369
- if (!match) {
370
- return null;
265
+ if (session.lastPayloadType === 'agent_message' ||
266
+ session.lastPayloadType === 'task_complete' ||
267
+ session.lastPayloadType === 'turn_aborted') {
268
+ return AgentAdapter_1.AgentStatus.WAITING;
371
269
  }
372
- const days = Number.parseInt(match[1] || '0', 10);
373
- const hours = Number.parseInt(match[2] || '0', 10);
374
- const minutes = Number.parseInt(match[3] || '0', 10);
375
- const seconds = Number.parseInt(match[4] || '0', 10);
376
- return (((days * 24 + hours) * 60 + minutes) * 60) + seconds;
270
+ return AgentAdapter_1.AgentStatus.RUNNING;
377
271
  }
378
272
  extractSummary(entries) {
379
273
  for (let i = entries.length - 1; i >= 0; i--) {
@@ -385,9 +279,8 @@ class CodexAdapter {
385
279
  return 'Codex session active';
386
280
  }
387
281
  truncate(value, maxLength) {
388
- if (value.length <= maxLength) {
282
+ if (value.length <= maxLength)
389
283
  return value;
390
- }
391
284
  return `${value.slice(0, maxLength - 3)}...`;
392
285
  }
393
286
  isCodexExecutable(command) {
@@ -395,38 +288,9 @@ class CodexAdapter {
395
288
  const base = path.basename(executable).toLowerCase();
396
289
  return base === 'codex' || base === 'codex.exe';
397
290
  }
398
- determineStatus(session) {
399
- const diffMs = Date.now() - session.lastActive.getTime();
400
- const diffMinutes = diffMs / 60000;
401
- if (diffMinutes > CodexAdapter.IDLE_THRESHOLD_MINUTES) {
402
- return AgentAdapter_1.AgentStatus.IDLE;
403
- }
404
- if (session.lastPayloadType === 'agent_message' ||
405
- session.lastPayloadType === 'task_complete' ||
406
- session.lastPayloadType === 'turn_aborted') {
407
- return AgentAdapter_1.AgentStatus.WAITING;
408
- }
409
- return AgentAdapter_1.AgentStatus.RUNNING;
410
- }
411
- generateAgentName(session, existingAgents) {
412
- const fallback = `codex-${session.sessionId.slice(0, 8)}`;
413
- const baseName = session.projectPath ? path.basename(path.normalize(session.projectPath)) : fallback;
414
- const conflict = existingAgents.some((agent) => agent.name === baseName);
415
- if (!conflict) {
416
- return baseName || fallback;
417
- }
418
- return `${baseName || fallback} (${session.sessionId.slice(0, 8)})`;
419
- }
420
291
  }
421
292
  exports.CodexAdapter = CodexAdapter;
422
- /** Keep status thresholds aligned across adapters. */
423
293
  CodexAdapter.IDLE_THRESHOLD_MINUTES = 5;
424
- /** Limit session parsing per run to keep list latency bounded. */
425
- CodexAdapter.MIN_SESSION_SCAN = 12;
426
- CodexAdapter.MAX_SESSION_SCAN = 40;
427
- CodexAdapter.SESSION_SCAN_MULTIPLIER = 4;
428
- /** Also include session files around process start day to recover long-lived processes. */
294
+ /** Include session files around process start day to recover long-lived processes. */
429
295
  CodexAdapter.PROCESS_START_DAY_WINDOW_DAYS = 1;
430
- /** Matching tolerance between process start time and session start time. */
431
- CodexAdapter.PROCESS_SESSION_TIME_TOLERANCE_MS = 2 * 60 * 1000;
432
296
  //# 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
@@ -6,7 +6,5 @@ export type { AgentAdapter, AgentType, AgentInfo, ProcessInfo } from './adapters
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,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,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.readJson = exports.fileExists = exports.readJsonLines = exports.readLastLines = exports.getProcessInfo = exports.isProcessRunning = exports.getProcessTty = exports.getProcessCwd = exports.listProcesses = exports.TtyWriter = exports.TerminalType = exports.TerminalFocusManager = exports.AgentStatus = exports.CodexAdapter = exports.ClaudeCodeAdapter = exports.AgentManager = void 0;
3
+ exports.getProcessTty = exports.TtyWriter = exports.TerminalType = exports.TerminalFocusManager = exports.AgentStatus = exports.CodexAdapter = exports.ClaudeCodeAdapter = exports.AgentManager = void 0;
4
4
  var AgentManager_1 = require("./AgentManager");
5
5
  Object.defineProperty(exports, "AgentManager", { enumerable: true, get: function () { return AgentManager_1.AgentManager; } });
6
6
  var ClaudeCodeAdapter_1 = require("./adapters/ClaudeCodeAdapter");
@@ -15,14 +15,5 @@ Object.defineProperty(exports, "TerminalType", { enumerable: true, get: function
15
15
  var TtyWriter_1 = require("./terminal/TtyWriter");
16
16
  Object.defineProperty(exports, "TtyWriter", { enumerable: true, get: function () { return TtyWriter_1.TtyWriter; } });
17
17
  var process_1 = require("./utils/process");
18
- Object.defineProperty(exports, "listProcesses", { enumerable: true, get: function () { return process_1.listProcesses; } });
19
- Object.defineProperty(exports, "getProcessCwd", { enumerable: true, get: function () { return process_1.getProcessCwd; } });
20
18
  Object.defineProperty(exports, "getProcessTty", { enumerable: true, get: function () { return process_1.getProcessTty; } });
21
- Object.defineProperty(exports, "isProcessRunning", { enumerable: true, get: function () { return process_1.isProcessRunning; } });
22
- Object.defineProperty(exports, "getProcessInfo", { enumerable: true, get: function () { return process_1.getProcessInfo; } });
23
- var file_1 = require("./utils/file");
24
- Object.defineProperty(exports, "readLastLines", { enumerable: true, get: function () { return file_1.readLastLines; } });
25
- Object.defineProperty(exports, "readJsonLines", { enumerable: true, get: function () { return file_1.readJsonLines; } });
26
- Object.defineProperty(exports, "fileExists", { enumerable: true, get: function () { return file_1.fileExists; } });
27
- Object.defineProperty(exports, "readJson", { enumerable: true, get: function () { return file_1.readJson; } });
28
19
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AAErB,kEAAiE;AAAxD,sHAAA,iBAAiB,OAAA;AAC1B,wDAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AAGpB,wEAAqF;AAA5E,4HAAA,oBAAoB,OAAA;AAAE,oHAAA,YAAY,OAAA;AAE3C,kDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAElB,2CAAgH;AAAvG,wGAAA,aAAa,OAAA;AAAE,wGAAA,aAAa,OAAA;AAAE,wGAAA,aAAa,OAAA;AAAE,2GAAA,gBAAgB,OAAA;AAAE,yGAAA,cAAc,OAAA;AAEtF,qCAAkF;AAAzE,qGAAA,aAAa,OAAA;AAAE,qGAAA,aAAa,OAAA;AAAE,kGAAA,UAAU,OAAA;AAAE,gGAAA,QAAQ,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AAErB,kEAAiE;AAAxD,sHAAA,iBAAiB,OAAA;AAC1B,wDAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AAGpB,wEAAqF;AAA5E,4HAAA,oBAAoB,OAAA;AAAE,oHAAA,YAAY,OAAA;AAE3C,kDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAElB,2CAAgD;AAAvC,wGAAA,aAAa,OAAA"}
@@ -1,4 +1,7 @@
1
- export { listProcesses, getProcessCwd, getProcessTty, isProcessRunning, getProcessInfo } from './process';
2
- export type { ListProcessesOptions } from './process';
3
- export { readLastLines, readJsonLines, fileExists, readJson } from './file';
1
+ export { listAgentProcesses, batchGetProcessCwds, batchGetProcessStartTimes, enrichProcesses } from './process';
2
+ export { getProcessTty } from './process';
3
+ export { batchGetSessionFileBirthtimes } from './session';
4
+ export type { SessionFile } from './session';
5
+ export { matchProcessesToSessions, generateAgentName } from './matching';
6
+ export type { MatchResult } from './matching';
4
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC1G,YAAY,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAChH,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,6BAA6B,EAAE,MAAM,WAAW,CAAC;AAC1D,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACzE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}