@jungjaehoon/mama-os 0.8.3 → 0.9.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 (106) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/agent/agent-loop.d.ts +1 -8
  3. package/dist/agent/agent-loop.d.ts.map +1 -1
  4. package/dist/agent/agent-loop.js +44 -159
  5. package/dist/agent/agent-loop.js.map +1 -1
  6. package/dist/agent/claude-cli-wrapper.d.ts +6 -0
  7. package/dist/agent/claude-cli-wrapper.d.ts.map +1 -1
  8. package/dist/agent/claude-cli-wrapper.js +6 -0
  9. package/dist/agent/claude-cli-wrapper.js.map +1 -1
  10. package/dist/agent/codex-mcp-process.d.ts +85 -0
  11. package/dist/agent/codex-mcp-process.d.ts.map +1 -0
  12. package/dist/agent/codex-mcp-process.js +357 -0
  13. package/dist/agent/codex-mcp-process.js.map +1 -0
  14. package/dist/agent/session-pool.d.ts +17 -2
  15. package/dist/agent/session-pool.d.ts.map +1 -1
  16. package/dist/agent/session-pool.js +51 -26
  17. package/dist/agent/session-pool.js.map +1 -1
  18. package/dist/agent/types.d.ts +9 -24
  19. package/dist/agent/types.d.ts.map +1 -1
  20. package/dist/agent/types.js.map +1 -1
  21. package/dist/api/graph-api.d.ts.map +1 -1
  22. package/dist/api/graph-api.js +133 -45
  23. package/dist/api/graph-api.js.map +1 -1
  24. package/dist/cli/commands/init.d.ts +1 -1
  25. package/dist/cli/commands/init.d.ts.map +1 -1
  26. package/dist/cli/commands/init.js +14 -25
  27. package/dist/cli/commands/init.js.map +1 -1
  28. package/dist/cli/commands/run.d.ts.map +1 -1
  29. package/dist/cli/commands/run.js +3 -10
  30. package/dist/cli/commands/run.js.map +1 -1
  31. package/dist/cli/commands/start.d.ts.map +1 -1
  32. package/dist/cli/commands/start.js +143 -54
  33. package/dist/cli/commands/start.js.map +1 -1
  34. package/dist/cli/commands/status.d.ts.map +1 -1
  35. package/dist/cli/commands/status.js +2 -7
  36. package/dist/cli/commands/status.js.map +1 -1
  37. package/dist/cli/config/config-manager.d.ts.map +1 -1
  38. package/dist/cli/config/config-manager.js +9 -17
  39. package/dist/cli/config/config-manager.js.map +1 -1
  40. package/dist/cli/config/types.d.ts +19 -25
  41. package/dist/cli/config/types.d.ts.map +1 -1
  42. package/dist/cli/config/types.js.map +1 -1
  43. package/dist/cli/index.js +2 -2
  44. package/dist/cli/index.js.map +1 -1
  45. package/dist/gateways/context-injector.d.ts.map +1 -1
  46. package/dist/gateways/context-injector.js +6 -3
  47. package/dist/gateways/context-injector.js.map +1 -1
  48. package/dist/gateways/discord.d.ts +4 -0
  49. package/dist/gateways/discord.d.ts.map +1 -1
  50. package/dist/gateways/discord.js +39 -16
  51. package/dist/gateways/discord.js.map +1 -1
  52. package/dist/gateways/message-router.d.ts +6 -1
  53. package/dist/gateways/message-router.d.ts.map +1 -1
  54. package/dist/gateways/message-router.js +92 -7
  55. package/dist/gateways/message-router.js.map +1 -1
  56. package/dist/multi-agent/agent-process-manager.d.ts.map +1 -1
  57. package/dist/multi-agent/agent-process-manager.js +36 -9
  58. package/dist/multi-agent/agent-process-manager.js.map +1 -1
  59. package/dist/multi-agent/runtime-process.d.ts +4 -4
  60. package/dist/multi-agent/runtime-process.d.ts.map +1 -1
  61. package/dist/multi-agent/runtime-process.js +9 -20
  62. package/dist/multi-agent/runtime-process.js.map +1 -1
  63. package/dist/multi-agent/types.d.ts +13 -8
  64. package/dist/multi-agent/types.d.ts.map +1 -1
  65. package/dist/multi-agent/types.js.map +1 -1
  66. package/dist/setup/setup-prompt.d.ts +1 -1
  67. package/dist/setup/setup-prompt.d.ts.map +1 -1
  68. package/dist/setup/setup-prompt.js +19 -0
  69. package/dist/setup/setup-prompt.js.map +1 -1
  70. package/dist/setup/setup-server.d.ts.map +1 -1
  71. package/dist/setup/setup-server.js +39 -16
  72. package/dist/setup/setup-server.js.map +1 -1
  73. package/dist/skills/skill-registry.d.ts.map +1 -1
  74. package/dist/skills/skill-registry.js +5 -2
  75. package/dist/skills/skill-registry.js.map +1 -1
  76. package/package.json +5 -3
  77. package/public/setup.html +12 -1
  78. package/public/viewer/js/modules/chat.js +1760 -1976
  79. package/public/viewer/js/modules/dashboard.js +613 -695
  80. package/public/viewer/js/modules/graph.js +857 -970
  81. package/public/viewer/js/modules/memory.js +357 -312
  82. package/public/viewer/js/modules/settings.js +1009 -1026
  83. package/public/viewer/js/modules/skills.js +336 -355
  84. package/public/viewer/js/utils/api.js +255 -255
  85. package/public/viewer/js/utils/debug-logger.js +20 -26
  86. package/public/viewer/js/utils/dom.js +73 -60
  87. package/public/viewer/js/utils/format.js +182 -228
  88. package/public/viewer/js/utils/markdown.js +40 -0
  89. package/public/viewer/src/modules/chat.ts +2258 -0
  90. package/public/viewer/src/modules/dashboard.ts +1052 -0
  91. package/public/viewer/src/modules/graph.ts +1080 -0
  92. package/public/viewer/src/modules/memory.ts +453 -0
  93. package/public/viewer/src/modules/settings.ts +1398 -0
  94. package/public/viewer/src/modules/skills.ts +457 -0
  95. package/public/viewer/src/types/global.d.ts +168 -0
  96. package/public/viewer/src/utils/api.ts +650 -0
  97. package/public/viewer/src/utils/debug-logger.ts +36 -0
  98. package/public/viewer/src/utils/dom.ts +138 -0
  99. package/public/viewer/src/utils/format.ts +331 -0
  100. package/public/viewer/src/utils/markdown.ts +46 -0
  101. package/public/viewer/tsconfig.viewer.json +18 -0
  102. package/public/viewer/viewer.html +214 -311
  103. package/dist/agent/codex-cli-wrapper.d.ts +0 -85
  104. package/dist/agent/codex-cli-wrapper.d.ts.map +0 -1
  105. package/dist/agent/codex-cli-wrapper.js +0 -295
  106. package/dist/agent/codex-cli-wrapper.js.map +0 -1
@@ -1,85 +0,0 @@
1
- /**
2
- * Codex CLI Subprocess Wrapper
3
- *
4
- * Uses Codex CLI as a backend runner (CLI mode).
5
- * - Executes `codex exec --json` for new sessions
6
- * - Executes `codex exec resume <session_id> --json` for resumed sessions
7
- * - Captures final message via --output-last-message for reliable text extraction
8
- *
9
- * Notes:
10
- * - Codex CLI does not provide token-level streaming in exec mode.
11
- * - Tool use blocks are not supported in this wrapper.
12
- */
13
- export interface CodexCLIWrapperOptions {
14
- model?: string;
15
- sessionId?: string;
16
- systemPrompt?: string;
17
- /** Codex home directory (config/sessions/skills) */
18
- codexHome?: string;
19
- /** Working directory for Codex process */
20
- cwd?: string;
21
- /** Sandbox mode for Codex CLI */
22
- sandbox?: 'read-only' | 'workspace-write' | 'danger-full-access';
23
- /** Codex profile from config.toml */
24
- profile?: string;
25
- /** Run Codex in ephemeral mode (no session persistence) */
26
- ephemeral?: boolean;
27
- /** Additional writable directories */
28
- addDirs?: string[];
29
- /** Raw -c key=value config overrides */
30
- configOverrides?: string[];
31
- /** Skip Git repo check in Codex CLI */
32
- skipGitRepoCheck?: boolean;
33
- /** Timeout for each request in ms (default: 120000) */
34
- timeoutMs?: number;
35
- }
36
- export interface PromptCallbacks {
37
- onDelta?: (text: string) => void;
38
- onToolUse?: (name: string, input: Record<string, unknown>) => void;
39
- onFinal?: (response: {
40
- response: string;
41
- }) => void;
42
- onError?: (error: Error) => void;
43
- }
44
- export interface PromptResult {
45
- response: string;
46
- usage: {
47
- input_tokens: number;
48
- output_tokens: number;
49
- cache_creation_input_tokens?: number;
50
- cache_read_input_tokens?: number;
51
- };
52
- session_id?: string;
53
- cost_usd?: number;
54
- }
55
- export declare class CodexCLIWrapper {
56
- private sessionId;
57
- private options;
58
- constructor(options?: CodexCLIWrapperOptions);
59
- /**
60
- * Send a prompt to Codex CLI
61
- */
62
- prompt(content: string, callbacks?: PromptCallbacks, options?: {
63
- model?: string;
64
- resumeSession?: boolean;
65
- }): Promise<PromptResult>;
66
- /**
67
- * Get current session ID
68
- */
69
- getSessionId(): string;
70
- /**
71
- * Set session ID (for channel-specific conversations)
72
- */
73
- setSessionId(sessionId: string): void;
74
- /**
75
- * Set system prompt (prefixed to first prompt of a new session)
76
- */
77
- setSystemPrompt(prompt: string): void;
78
- private buildPrompt;
79
- private buildArgs;
80
- private execute;
81
- private prepareCodexHome;
82
- private readLastMessage;
83
- private parseJsonl;
84
- }
85
- //# sourceMappingURL=codex-cli-wrapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex-cli-wrapper.d.ts","sourceRoot":"","sources":["../../src/agent/codex-cli-wrapper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,OAAO,CAAC,EAAE,WAAW,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;IACjE,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,wCAAwC;IACxC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,uCAAuC;IACvC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACnE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,2BAA2B,CAAC,EAAE,MAAM,CAAC;QACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;KAClC,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAUD,qBAAa,eAAe;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAyB;gBAE5B,OAAO,GAAE,sBAA2B;IAKhD;;OAEG;IACG,MAAM,CACV,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,eAAe,EAC3B,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,GACpD,OAAO,CAAC,YAAY,CAAC;IAgCxB;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIrC,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,SAAS;IAsFjB,OAAO,CAAC,OAAO;IAiDf,OAAO,CAAC,gBAAgB;IAoCxB,OAAO,CAAC,eAAe;IAqBvB,OAAO,CAAC,UAAU;CAsCnB"}
@@ -1,295 +0,0 @@
1
- "use strict";
2
- /**
3
- * Codex CLI Subprocess Wrapper
4
- *
5
- * Uses Codex CLI as a backend runner (CLI mode).
6
- * - Executes `codex exec --json` for new sessions
7
- * - Executes `codex exec resume <session_id> --json` for resumed sessions
8
- * - Captures final message via --output-last-message for reliable text extraction
9
- *
10
- * Notes:
11
- * - Codex CLI does not provide token-level streaming in exec mode.
12
- * - Tool use blocks are not supported in this wrapper.
13
- */
14
- var __importDefault = (this && this.__importDefault) || function (mod) {
15
- return (mod && mod.__esModule) ? mod : { "default": mod };
16
- };
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.CodexCLIWrapper = void 0;
19
- const child_process_1 = require("child_process");
20
- const crypto_1 = require("crypto");
21
- const fs_1 = require("fs");
22
- const os_1 = __importDefault(require("os"));
23
- const path_1 = require("path");
24
- class CodexCLIWrapper {
25
- sessionId;
26
- options;
27
- constructor(options = {}) {
28
- this.options = options;
29
- this.sessionId = options.sessionId || (0, crypto_1.randomUUID)();
30
- }
31
- /**
32
- * Send a prompt to Codex CLI
33
- */
34
- async prompt(content, callbacks, options) {
35
- const promptText = this.buildPrompt(content);
36
- const useOutputFile = !options?.resumeSession;
37
- const tmpFile = useOutputFile ? (0, path_1.join)(os_1.default.tmpdir(), `codex_last_${(0, crypto_1.randomUUID)()}.txt`) : '';
38
- const args = this.buildArgs(options, tmpFile);
39
- const stdout = await this.execute(args, promptText);
40
- const parsed = this.parseJsonl(stdout);
41
- const response = useOutputFile
42
- ? (this.readLastMessage(tmpFile) ?? parsed.lastMessage ?? '')
43
- : (parsed.lastMessage ?? '');
44
- if (parsed.threadId) {
45
- this.sessionId = parsed.threadId;
46
- }
47
- callbacks?.onFinal?.({ response });
48
- return {
49
- response,
50
- usage: {
51
- input_tokens: parsed.usage?.input_tokens ?? 0,
52
- output_tokens: parsed.usage?.output_tokens ?? 0,
53
- cache_creation_input_tokens: parsed.usage?.cache_creation_input_tokens,
54
- cache_read_input_tokens: parsed.usage?.cache_read_input_tokens ?? parsed.usage?.cached_input_tokens,
55
- },
56
- session_id: parsed.threadId,
57
- };
58
- }
59
- /**
60
- * Get current session ID
61
- */
62
- getSessionId() {
63
- return this.sessionId;
64
- }
65
- /**
66
- * Set session ID (for channel-specific conversations)
67
- */
68
- setSessionId(sessionId) {
69
- this.sessionId = sessionId;
70
- }
71
- /**
72
- * Set system prompt (prefixed to first prompt of a new session)
73
- */
74
- setSystemPrompt(prompt) {
75
- this.options.systemPrompt = prompt;
76
- }
77
- buildPrompt(content) {
78
- if (this.options.systemPrompt) {
79
- return `${this.options.systemPrompt}\n\n${content}`;
80
- }
81
- return content;
82
- }
83
- buildArgs(options, outputFile) {
84
- const args = [];
85
- const model = options?.model ?? this.options.model;
86
- const skipGitRepoCheck = this.options.skipGitRepoCheck ?? true;
87
- const sandbox = this.options.sandbox ?? 'read-only';
88
- const profile = this.options.profile;
89
- const ephemeral = this.options.ephemeral ?? false;
90
- const addDirs = this.options.addDirs ?? [];
91
- const configOverrides = this.options.configOverrides ?? [];
92
- const cwd = this.options.cwd;
93
- if (options?.resumeSession) {
94
- args.push('exec', 'resume');
95
- }
96
- else {
97
- args.push('exec');
98
- }
99
- if (options?.resumeSession) {
100
- // Codex resume supports a limited flag set
101
- args.push('--json');
102
- if (skipGitRepoCheck) {
103
- args.push('--skip-git-repo-check');
104
- }
105
- if (sandbox === 'danger-full-access') {
106
- args.push('--dangerously-bypass-approvals-and-sandbox');
107
- }
108
- // For `codex exec resume`, keep options before positional args so they are
109
- // never parsed as PROMPT.
110
- if (this.sessionId) {
111
- args.push(this.sessionId);
112
- }
113
- else {
114
- args.push('--last');
115
- }
116
- }
117
- else {
118
- args.push('--json', '--output-last-message', outputFile, '--color', 'never');
119
- // Apply sandbox mode based on configuration
120
- if (sandbox === 'danger-full-access') {
121
- args.push('--dangerously-bypass-approvals-and-sandbox');
122
- }
123
- else if (sandbox === 'workspace-write') {
124
- args.push('--sandbox', 'workspace-write');
125
- }
126
- else if (sandbox === 'read-only') {
127
- args.push('--sandbox', 'read-only');
128
- }
129
- if (skipGitRepoCheck) {
130
- args.push('--skip-git-repo-check');
131
- }
132
- }
133
- // `codex exec resume` supports a narrower option set than `codex exec`.
134
- if (!options?.resumeSession && profile) {
135
- args.push('--profile', profile);
136
- }
137
- if (!options?.resumeSession && cwd) {
138
- args.push('--cd', cwd);
139
- }
140
- if (ephemeral && !options?.resumeSession) {
141
- args.push('--ephemeral');
142
- }
143
- if (!options?.resumeSession) {
144
- for (const dir of addDirs) {
145
- if (dir) {
146
- args.push('--add-dir', dir);
147
- }
148
- }
149
- // configOverrides and model are not supported in resume mode
150
- for (const override of configOverrides) {
151
- if (override) {
152
- args.push('-c', override);
153
- }
154
- }
155
- if (model) {
156
- args.push('--model', model);
157
- }
158
- }
159
- // Read prompt from stdin to avoid arg length issues
160
- args.push('-');
161
- return args;
162
- }
163
- execute(args, promptText) {
164
- return new Promise((resolve, reject) => {
165
- this.prepareCodexHome();
166
- const { CODEX_THREAD_ID: _ignoredThreadId, ...baseEnv } = process.env;
167
- const spawnEnv = {
168
- ...baseEnv,
169
- ...(this.options.codexHome ? { CODEX_HOME: this.options.codexHome } : {}),
170
- };
171
- const child = (0, child_process_1.spawn)('codex', args, {
172
- stdio: ['pipe', 'pipe', 'pipe'],
173
- env: spawnEnv,
174
- cwd: this.options.cwd ?? process.cwd(),
175
- });
176
- const stdoutChunks = [];
177
- const stderrChunks = [];
178
- const timeoutMs = this.options.timeoutMs ?? 120000;
179
- const timeout = setTimeout(() => {
180
- try {
181
- child.kill('SIGKILL');
182
- }
183
- catch {
184
- // ignore
185
- }
186
- reject(new Error(`Codex CLI timeout after ${timeoutMs}ms`));
187
- }, timeoutMs);
188
- child.stdout.on('data', (chunk) => stdoutChunks.push(Buffer.from(chunk)));
189
- child.stderr.on('data', (chunk) => stderrChunks.push(Buffer.from(chunk)));
190
- child.on('error', (error) => {
191
- clearTimeout(timeout);
192
- reject(new Error(`Failed to execute Codex CLI: ${error.message}`));
193
- });
194
- child.on('close', (code) => {
195
- clearTimeout(timeout);
196
- const stdout = Buffer.concat(stdoutChunks).toString('utf-8');
197
- const stderr = Buffer.concat(stderrChunks).toString('utf-8').trim();
198
- if (code !== 0) {
199
- reject(new Error(stderr || `Codex CLI exited with code ${code}`));
200
- return;
201
- }
202
- resolve(stdout);
203
- });
204
- child.stdin.write(promptText);
205
- child.stdin.end();
206
- });
207
- }
208
- prepareCodexHome() {
209
- const codexHome = this.options.codexHome;
210
- if (!codexHome) {
211
- return;
212
- }
213
- try {
214
- (0, fs_1.mkdirSync)(codexHome, { recursive: true });
215
- const legacyHome = (0, path_1.join)(os_1.default.homedir(), '.codex');
216
- const filesToMigrate = ['auth.json', 'config.toml', 'version.json'];
217
- for (const relPath of filesToMigrate) {
218
- const src = (0, path_1.join)(legacyHome, relPath);
219
- const dest = (0, path_1.join)(codexHome, relPath);
220
- if (!(0, fs_1.existsSync)(src)) {
221
- continue;
222
- }
223
- let shouldCopy = !(0, fs_1.existsSync)(dest);
224
- if (!shouldCopy) {
225
- try {
226
- shouldCopy = (0, fs_1.statSync)(src).mtimeMs > (0, fs_1.statSync)(dest).mtimeMs;
227
- }
228
- catch {
229
- shouldCopy = true;
230
- }
231
- }
232
- if (shouldCopy) {
233
- (0, fs_1.mkdirSync)((0, path_1.dirname)(dest), { recursive: true });
234
- (0, fs_1.copyFileSync)(src, dest);
235
- }
236
- }
237
- }
238
- catch {
239
- // Non-fatal: Codex may still run with existing defaults.
240
- }
241
- }
242
- readLastMessage(outputFile) {
243
- try {
244
- if (!(0, fs_1.existsSync)(outputFile)) {
245
- return null;
246
- }
247
- const text = (0, fs_1.readFileSync)(outputFile, 'utf-8').trim();
248
- if (!text) {
249
- return null;
250
- }
251
- return text;
252
- }
253
- catch {
254
- return null;
255
- }
256
- finally {
257
- try {
258
- if ((0, fs_1.existsSync)(outputFile))
259
- (0, fs_1.unlinkSync)(outputFile);
260
- }
261
- catch {
262
- // ignore cleanup errors
263
- }
264
- }
265
- }
266
- parseJsonl(stdout) {
267
- const lines = stdout
268
- .split('\n')
269
- .map((line) => line.trim())
270
- .filter((line) => line.length > 0);
271
- let threadId;
272
- let usage;
273
- let lastMessage;
274
- for (const line of lines) {
275
- try {
276
- const evt = JSON.parse(line);
277
- if (evt.type === 'thread.started' && evt.thread_id) {
278
- threadId = evt.thread_id;
279
- }
280
- if (evt.type === 'turn.completed' && evt.usage) {
281
- usage = evt.usage;
282
- }
283
- if (evt.type === 'item.completed' && evt.item?.type === 'agent_message') {
284
- lastMessage = evt.item.text;
285
- }
286
- }
287
- catch {
288
- // Ignore malformed lines
289
- }
290
- }
291
- return { threadId, usage, lastMessage };
292
- }
293
- }
294
- exports.CodexCLIWrapper = CodexCLIWrapper;
295
- //# sourceMappingURL=codex-cli-wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex-cli-wrapper.js","sourceRoot":"","sources":["../../src/agent/codex-cli-wrapper.ts"],"names":[],"mappings":"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"}