@ai-devkit/agent-manager 0.4.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 +29 -34
  4. package/dist/adapters/ClaudeCodeAdapter.d.ts.map +1 -1
  5. package/dist/adapters/ClaudeCodeAdapter.js +138 -294
  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 -282
  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 +1 -1
  32. package/src/__tests__/AgentManager.test.ts +0 -25
  33. package/src/__tests__/adapters/ClaudeCodeAdapter.test.ts +598 -845
  34. package/src/__tests__/adapters/CodexAdapter.test.ts +467 -274
  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 +177 -425
  40. package/src/adapters/CodexAdapter.ts +155 -409
  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,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;
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));
81
82
  }
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;
83
+ else {
84
+ matchedPids.delete(match.process.pid);
96
85
  }
97
- const session = this.selectBestSession(processInfo, sessions, usedSessionIds, processStartByPid, mode);
98
- if (!session) {
99
- continue;
100
- }
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])
184
+ return null;
185
+ let metaEntry;
186
+ try {
187
+ metaEntry = JSON.parse(allLines[0]);
188
+ }
189
+ catch {
235
190
  return null;
236
191
  }
237
- const metaEntry = this.parseSessionMeta(firstLine);
238
- if (!metaEntry?.payload?.id) {
192
+ if (metaEntry.type !== 'session_meta' || !metaEntry.payload?.id) {
239
193
  return null;
240
194
  }
241
- 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
+ }
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,29 @@ 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) {
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
+ };
261
231
  }
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
- }
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
+ };
273
243
  }
274
244
  findLastEventEntry(entries) {
275
245
  for (let i = entries.length - 1; i >= 0; i--) {
@@ -281,97 +251,23 @@ class CodexAdapter {
281
251
  return undefined;
282
252
  }
283
253
  parseTimestamp(value) {
284
- if (!value) {
254
+ if (!value)
285
255
  return null;
286
- }
287
256
  const timestamp = new Date(value);
288
257
  return Number.isNaN(timestamp.getTime()) ? null : timestamp;
289
258
  }
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();
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;
363
264
  }
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;
265
+ if (session.lastPayloadType === 'agent_message' ||
266
+ session.lastPayloadType === 'task_complete' ||
267
+ session.lastPayloadType === 'turn_aborted') {
268
+ return AgentAdapter_1.AgentStatus.WAITING;
369
269
  }
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;
270
+ return AgentAdapter_1.AgentStatus.RUNNING;
375
271
  }
376
272
  extractSummary(entries) {
377
273
  for (let i = entries.length - 1; i >= 0; i--) {
@@ -383,9 +279,8 @@ class CodexAdapter {
383
279
  return 'Codex session active';
384
280
  }
385
281
  truncate(value, maxLength) {
386
- if (value.length <= maxLength) {
282
+ if (value.length <= maxLength)
387
283
  return value;
388
- }
389
284
  return `${value.slice(0, maxLength - 3)}...`;
390
285
  }
391
286
  isCodexExecutable(command) {
@@ -393,38 +288,9 @@ class CodexAdapter {
393
288
  const base = path.basename(executable).toLowerCase();
394
289
  return base === 'codex' || base === 'codex.exe';
395
290
  }
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;
401
- }
402
- if (session.lastPayloadType === 'agent_message' ||
403
- session.lastPayloadType === 'task_complete' ||
404
- session.lastPayloadType === 'turn_aborted') {
405
- return AgentAdapter_1.AgentStatus.WAITING;
406
- }
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;
415
- }
416
- return `${baseName || fallback} (${session.sessionId.slice(0, 8)})`;
417
- }
418
291
  }
419
292
  exports.CodexAdapter = CodexAdapter;
420
- /** Keep status thresholds aligned across adapters. */
421
293
  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. */
294
+ /** Include session files around process start day to recover long-lived processes. */
427
295
  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
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":";AAAA;;;;;;;;;;GAUG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;AAE7B,iDAA6C;AAC7C,8CAAuE;AACvE,8CAAiE;AAEjE,gDAAgF;AAuBhF,MAAa,YAAY;IASrB;QARS,SAAI,GAAG,OAAgB,CAAC;QAS7B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;QAClE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACrE,CAAC;IAED,SAAS,CAAC,WAAwB;QAC9B,OAAO,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY;QACd,MAAM,SAAS,GAAG,IAAA,yBAAe,EAAC,IAAA,4BAAkB,EAAC,OAAO,CAAC,CAAC,CAAC;QAC/D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEtC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,mCAAwB,EAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAgB,EAAE,CAAC;QAE/B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC7E,IAAI,WAAW,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YACpE,CAAC;iBAAM,CAAC;gBACJ,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC1C,CAAC;QACL,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;YAChD,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;;;OAOG;IACK,gBAAgB,CAAC,SAAwB;QAI7C,MAAM,KAAK,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,GAAG,EAAkB,EAAE,CAAC;QACxE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAAE,OAAO,KAAK,CAAC;QAExD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAExC,MAAM,KAAK,GAAG,IAAA,uCAA6B,EAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;QAE/C,iFAAiF;QACjF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC;gBACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACxD,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAEzC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBACjD,IAAI,SAAS,EAAE,CAAC;oBACZ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;oBACrC,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;wBACjC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;oBACjD,CAAC;gBACL,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACL,wBAAwB;YAC5B,CAAC;QACL,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACK,WAAW,CAAC,SAAwB;QACxC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,MAAM,GAAG,YAAY,CAAC,6BAA6B,CAAC;QAE1D,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC;YAC/C,KAAK,IAAI,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;gBACpD,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1C,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;gBACpC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;YACxD,IAAI,CAAC;gBACD,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;oBACpC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACtB,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACL,SAAS;YACb,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,eAAe,CAAC,IAAU;QAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACzD,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACxD,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnC,CAAC;IAED;;;OAGG;IACK,YAAY,CAAC,aAAiC,EAAE,QAAgB;QACpE,IAAI,OAAe,CAAC;QACpB,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,GAAG,aAAa,CAAC;QAC5B,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC;gBACD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACjD,CAAC;YAAC,MAAM,CAAC;gBACL,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAE9B,IAAI,SAA0B,CAAC;QAC/B,IAAI,CAAC;YACD,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC;YAC9D,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,OAAO,GAAsB,EAAE,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACnC,CAAC;YAAC,MAAM,CAAC;gBACL,SAAS;YACb,CAAC;QACL,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,eAAe,GAAG,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC;QAEjD,MAAM,UAAU,GACZ,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC;YACzC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;YAChD,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;QAChC,MAAM,YAAY,GACd,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;YAChD,UAAU,CAAC;QAEf,OAAO;YACH,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE;YAC/B,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE;YACxC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YACrC,YAAY;YACZ,UAAU;YACV,eAAe;SAClB,CAAC;IACN,CAAC;IAEO,iBAAiB,CAAC,OAAqB,EAAE,WAAwB;QACrE,OAAO;YACH,IAAI,EAAE,IAAA,4BAAiB,EAAC,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC,GAAG,IAAI,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC;YACtF,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,sBAAsB;YAClD,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC,GAAG,IAAI,EAAE;YACzD,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;SACjC,CAAC;IACN,CAAC;IAEO,mBAAmB,CAAC,WAAwB;QAChD,OAAO;YACH,IAAI,EAAE,IAAA,4BAAiB,EAAC,WAAW,CAAC,GAAG,IAAI,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC;YAC/D,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,0BAAW,CAAC,OAAO;YAC3B,OAAO,EAAE,uBAAuB;YAChC,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,WAAW,EAAE,WAAW,CAAC,GAAG,IAAI,EAAE;YAClC,SAAS,EAAE,OAAO,WAAW,CAAC,GAAG,EAAE;YACnC,UAAU,EAAE,IAAI,IAAI,EAAE;SACzB,CAAC;IACN,CAAC;IAEO,kBAAkB,CAAC,OAA0B;QACjD,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1C,OAAO,KAAK,CAAC;YACjB,CAAC;QACL,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,cAAc,CAAC,KAAc;QACjC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACxB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAChE,CAAC;IAEO,eAAe,CAAC,OAAqB;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACzD,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;QAEnC,IAAI,WAAW,GAAG,YAAY,CAAC,sBAAsB,EAAE,CAAC;YACpD,OAAO,0BAAW,CAAC,IAAI,CAAC;QAC5B,CAAC;QAED,IACI,OAAO,CAAC,eAAe,KAAK,eAAe;YAC3C,OAAO,CAAC,eAAe,KAAK,eAAe;YAC3C,OAAO,CAAC,eAAe,KAAK,cAAc,EAC5C,CAAC;YACC,OAAO,0BAAW,CAAC,OAAO,CAAC;QAC/B,CAAC;QAED,OAAO,0BAAW,CAAC,OAAO,CAAC;IAC/B,CAAC;IAEO,cAAc,CAAC,OAA0B;QAC7C,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;YAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3D,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;YAC9C,CAAC;QACL,CAAC;QAED,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAEO,QAAQ,CAAC,KAAa,EAAE,SAAiB;QAC7C,IAAI,KAAK,CAAC,MAAM,IAAI,SAAS;YAAE,OAAO,KAAK,CAAC;QAC5C,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC;IACjD,CAAC;IAEO,iBAAiB,CAAC,OAAe;QACrC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QACrD,OAAO,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,WAAW,CAAC;IACpD,CAAC;;AAnRL,oCAoRC;AAjR2B,mCAAsB,GAAG,CAAC,AAAJ,CAAK;AACnD,sFAAsF;AAC9D,0CAA6B,GAAG,CAAC,AAAJ,CAAK"}
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"}