agent-runtime-kit 1.2.0 → 1.2.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"agent.cjs","sources":["../src/agent.ts"],"sourcesContent":["import { type Options, query, type SDKMessage } from '@anthropic-ai/claude-agent-sdk';\nimport {\n createRuntimeClient,\n type RuntimeClient,\n type RuntimeSession,\n type RuntimeSessionContext,\n type RuntimeSessionResumeRequest,\n type RuntimeSessionRunRequest,\n type RuntimeTaskRequest,\n type RuntimeTaskResult,\n} from './runtime.js';\n\nexport type AgentQueryFn = (params: { options?: Options; prompt: string }) => AsyncIterable<SDKMessage>;\n\nexport type AgentRuntimeOptions = {\n queryFn?: AgentQueryFn;\n sdkOptions?: Omit<Options, 'cwd' | 'env'>;\n};\n\nexport type AgentRunOptions = {\n includeLogs?: boolean;\n eventFilter?: (message: SDKMessage) => boolean;\n queryOptions?: Omit<Options, 'cwd' | 'env' | 'resume'>;\n};\n\nexport type AgentTaskResult = RuntimeTaskResult<SDKMessage[], SDKMessage>;\n\nexport type AgentRuntimeSession = RuntimeSession<AgentRunOptions, AgentTaskResult, SDKMessage>;\n\nexport type AgentRuntimeClient = RuntimeClient<AgentRunOptions, AgentTaskResult, SDKMessage>;\n\ntype AgentSessionState = {\n current: string | undefined;\n};\n\nexport function createAgentRuntime(options: AgentRuntimeOptions = {}): AgentRuntimeClient {\n return createRuntimeClient('agent-sdk', {\n resumeSession: (request) => createAgentSession(request, options),\n run: (request, runOptions) => runAgentTask(request, options, undefined, runOptions),\n runStream: (request, runOptions) => streamAgentTask(request, options, undefined, runOptions),\n startSession: (context) => createAgentSession(context, options),\n });\n}\n\nasync function createAgentSession(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: AgentRuntimeOptions\n) {\n const sessionState: AgentSessionState = {\n current: 'sessionId' in request ? request.sessionId : undefined,\n };\n\n return {\n getId: () => sessionState.current,\n run: (runRequest: RuntimeSessionRunRequest, runOptions?: AgentRunOptions) =>\n runAgentTask(\n {\n cwd: request.cwd,\n env: request.env,\n instructions: runRequest.instructions,\n },\n options,\n sessionState,\n runOptions\n ),\n runStream: (runRequest: RuntimeSessionRunRequest, runOptions?: AgentRunOptions) =>\n streamAgentTask(\n {\n cwd: request.cwd,\n env: request.env,\n instructions: runRequest.instructions,\n },\n options,\n sessionState,\n runOptions\n ),\n };\n}\n\nasync function runAgentTask(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): Promise<Omit<AgentTaskResult, 'provider'>> {\n const messages: SDKMessage[] = [];\n const logs: SDKMessage[] | undefined = runOptions?.includeLogs ? [] : undefined;\n let outputText = '';\n\n for await (const message of iterateAgentMessages(request, options, sessionState, runOptions)) {\n messages.push(message);\n outputText = getLatestOutputText(message, outputText);\n if (logs && matchesAgentEventFilter(runOptions, message)) {\n logs.push(message);\n }\n }\n\n return {\n ...(logs ? { logs } : {}),\n outputText,\n raw: messages,\n };\n}\n\nasync function* streamAgentTask(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): AsyncIterable<SDKMessage> {\n for await (const message of iterateAgentMessages(request, options, sessionState, runOptions)) {\n if (matchesAgentEventFilter(runOptions, message)) {\n yield message;\n }\n }\n}\n\nasync function* iterateAgentMessages(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): AsyncIterable<SDKMessage> {\n let currentSessionId = sessionState?.current;\n\n for await (const message of (options.queryFn ?? query)({\n prompt: request.instructions,\n options: {\n ...options.sdkOptions,\n ...runOptions?.queryOptions,\n cwd: request.cwd,\n env: request.env,\n resume: currentSessionId,\n },\n })) {\n const nextSessionId = getLatestSessionId(message, currentSessionId);\n if (nextSessionId !== currentSessionId) {\n currentSessionId = nextSessionId;\n if (sessionState) {\n sessionState.current = currentSessionId;\n }\n }\n yield message;\n }\n}\n\nfunction getLatestOutputText(message: SDKMessage, previousOutput: string): string {\n const candidate = message as {\n content?: unknown;\n message?: unknown;\n result?: unknown;\n };\n if (typeof candidate.result === 'string') {\n return candidate.result;\n }\n if (typeof candidate.message === 'string') {\n return candidate.message;\n }\n if (typeof candidate.content === 'string') {\n return candidate.content;\n }\n return previousOutput;\n}\n\nfunction matchesAgentEventFilter(options: AgentRunOptions | undefined, message: SDKMessage): boolean {\n return options?.eventFilter?.(message) ?? true;\n}\n\nfunction getLatestSessionId(message: SDKMessage, previousSessionId: string | undefined): string | undefined {\n const candidate = message as {\n session_id?: unknown;\n };\n if (candidate && typeof candidate.session_id === 'string' && candidate.session_id.trim()) {\n return candidate.session_id;\n }\n return previousSessionId;\n}\n"],"names":["createAgentSession","_x9","_x0","_createAgentSession","apply","this","arguments","_asyncToGenerator","_regenerator","m","_callee3","request","options","sessionState","w","_context3","n","current","sessionId","undefined","a","getId","run","runRequest","runOptions","runAgentTask","cwd","env","instructions","runStream","streamAgentTask","_x1","_x10","_x11","_x12","_runAgentTask","_callee4","messages","logs","outputText","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","message","_t3","_context4","p","includeLogs","_asyncIterator","iterateAgentMessages","next","v","done","value","push","getLatestOutputText","matchesAgentEventFilter","f","_objectSpread","raw","_x","_x2","_x3","_x4","_streamAgentTask","_wrapAsyncGenerator","_callee","_iteratorAbruptCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","_t","_context","_awaitAsyncGenerator","_x5","_x6","_x7","_x8","_iterateAgentMessages","_callee2","currentSessionId","_iteratorAbruptCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","_options$queryFn","nextSessionId","_t2","_context2","queryFn","query","prompt","sdkOptions","queryOptions","resume","getLatestSessionId","previousOutput","candidate","result","content","_options$eventFilter","_options$eventFilter2","eventFilter","call","previousSessionId","session_id","trim","createRuntimeClient","resumeSession","startSession","context"],"mappings":"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"}
1
+ {"version":3,"file":"agent.cjs","sources":["../src/agent.ts"],"sourcesContent":["import { type Options, query, type SDKMessage } from '@anthropic-ai/claude-agent-sdk';\nimport {\n createRuntimeClient,\n type RuntimeClient,\n type RuntimeSession,\n type RuntimeSessionContext,\n type RuntimeSessionResumeRequest,\n type RuntimeSessionRunRequest,\n type RuntimeTaskRequest,\n type RuntimeTaskResult,\n} from './runtime.js';\n\nexport type AgentQueryFn = (params: { options?: Options; prompt: string }) => AsyncIterable<SDKMessage>;\n\nexport interface AgentRuntimeOptions {\n queryFn?: AgentQueryFn;\n sdkOptions?: Omit<Options, 'cwd' | 'env'>;\n}\n\nexport interface AgentRunOptions {\n includeLogs?: boolean;\n eventFilter?: (message: SDKMessage) => boolean;\n queryOptions?: Omit<Options, 'cwd' | 'env' | 'resume'>;\n}\n\nexport type AgentTaskResult = RuntimeTaskResult<SDKMessage[], SDKMessage>;\n\nexport type AgentRuntimeSession = RuntimeSession<AgentRunOptions, AgentTaskResult, SDKMessage>;\n\nexport type AgentRuntimeClient = RuntimeClient<AgentRunOptions, AgentTaskResult, SDKMessage>;\n\ninterface AgentSessionState {\n current: string | undefined;\n}\n\ninterface AgentSessionExecutor {\n getId: () => string | undefined;\n run: (request: RuntimeSessionRunRequest, options?: AgentRunOptions) => Promise<Omit<AgentTaskResult, 'provider'>>;\n runStream: (request: RuntimeSessionRunRequest, options?: AgentRunOptions) => AsyncIterable<SDKMessage>;\n}\n\nexport function createAgentRuntime(options: AgentRuntimeOptions = {}): AgentRuntimeClient {\n return createRuntimeClient('agent-sdk', {\n resumeSession: (request) => createAgentSession(request, options),\n run: (request, runOptions) => runAgentTask(request, options, undefined, runOptions),\n runStream: (request, runOptions) => streamAgentTask(request, options, undefined, runOptions),\n startSession: (context) => createAgentSession(context, options),\n });\n}\n\nasync function createAgentSession(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: AgentRuntimeOptions\n): Promise<AgentSessionExecutor> {\n const sessionState: AgentSessionState = {\n current: 'sessionId' in request ? request.sessionId : undefined,\n };\n\n return {\n getId: () => sessionState.current,\n run: (runRequest: RuntimeSessionRunRequest, runOptions?: AgentRunOptions) =>\n runAgentTask(\n {\n cwd: request.cwd,\n env: request.env,\n instructions: runRequest.instructions,\n },\n options,\n sessionState,\n runOptions\n ),\n runStream: (runRequest: RuntimeSessionRunRequest, runOptions?: AgentRunOptions) =>\n streamAgentTask(\n {\n cwd: request.cwd,\n env: request.env,\n instructions: runRequest.instructions,\n },\n options,\n sessionState,\n runOptions\n ),\n };\n}\n\nasync function runAgentTask(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): Promise<Omit<AgentTaskResult, 'provider'>> {\n const messages: SDKMessage[] = [];\n const logs: SDKMessage[] | undefined = runOptions?.includeLogs ? [] : undefined;\n let outputText = '';\n\n for await (const message of iterateAgentMessages(request, options, sessionState, runOptions)) {\n messages.push(message);\n outputText = getLatestOutputText(message, outputText);\n if (logs && matchesAgentEventFilter(runOptions, message)) {\n logs.push(message);\n }\n }\n\n return {\n ...(logs ? { logs } : {}),\n outputText,\n raw: messages,\n };\n}\n\nasync function* streamAgentTask(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): AsyncIterable<SDKMessage> {\n for await (const message of iterateAgentMessages(request, options, sessionState, runOptions)) {\n if (matchesAgentEventFilter(runOptions, message)) {\n yield message;\n }\n }\n}\n\nasync function* iterateAgentMessages(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): AsyncIterable<SDKMessage> {\n let currentSessionId = sessionState?.current;\n\n for await (const message of (options.queryFn ?? query)({\n prompt: request.instructions,\n options: {\n ...options.sdkOptions,\n ...runOptions?.queryOptions,\n cwd: request.cwd,\n env: request.env,\n resume: currentSessionId,\n },\n })) {\n const nextSessionId = getLatestSessionId(message, currentSessionId);\n if (nextSessionId !== currentSessionId) {\n currentSessionId = nextSessionId;\n if (sessionState) {\n sessionState.current = currentSessionId;\n }\n }\n yield message;\n }\n}\n\nfunction getLatestOutputText(message: SDKMessage, previousOutput: string): string {\n const candidate = message as {\n content?: unknown;\n message?: unknown;\n result?: unknown;\n };\n if (typeof candidate.result === 'string') {\n return candidate.result;\n }\n if (typeof candidate.message === 'string') {\n return candidate.message;\n }\n if (typeof candidate.content === 'string') {\n return candidate.content;\n }\n return previousOutput;\n}\n\nfunction matchesAgentEventFilter(options: AgentRunOptions | undefined, message: SDKMessage): boolean {\n return options?.eventFilter?.(message) ?? true;\n}\n\nfunction getLatestSessionId(message: SDKMessage, previousSessionId: string | undefined): string | undefined {\n const candidate = message as {\n session_id?: unknown;\n };\n if (candidate && typeof candidate.session_id === 'string' && candidate.session_id.trim()) {\n return candidate.session_id;\n }\n return previousSessionId;\n}\n"],"names":["createAgentSession","_x9","_x0","_createAgentSession","apply","this","arguments","_asyncToGenerator","_regenerator","m","_callee3","request","options","sessionState","w","_context3","n","current","sessionId","undefined","a","getId","run","runRequest","runOptions","runAgentTask","cwd","env","instructions","runStream","streamAgentTask","_x1","_x10","_x11","_x12","_runAgentTask","_callee4","messages","logs","outputText","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","message","_t3","_context4","p","includeLogs","_asyncIterator","iterateAgentMessages","next","v","done","value","push","getLatestOutputText","matchesAgentEventFilter","f","_objectSpread","raw","_x","_x2","_x3","_x4","_streamAgentTask","_wrapAsyncGenerator","_callee","_iteratorAbruptCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","_t","_context","_awaitAsyncGenerator","_x5","_x6","_x7","_x8","_iterateAgentMessages","_callee2","currentSessionId","_iteratorAbruptCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","_options$queryFn","nextSessionId","_t2","_context2","queryFn","query","prompt","sdkOptions","queryOptions","resume","getLatestSessionId","previousOutput","candidate","result","content","_options$eventFilter","_options$eventFilter2","eventFilter","call","previousSessionId","session_id","trim","createRuntimeClient","resumeSession","startSession","context"],"mappings":"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"}
package/dist/agent.d.ts CHANGED
@@ -4,15 +4,15 @@ export type AgentQueryFn = (params: {
4
4
  options?: Options;
5
5
  prompt: string;
6
6
  }) => AsyncIterable<SDKMessage>;
7
- export type AgentRuntimeOptions = {
7
+ export interface AgentRuntimeOptions {
8
8
  queryFn?: AgentQueryFn;
9
9
  sdkOptions?: Omit<Options, 'cwd' | 'env'>;
10
- };
11
- export type AgentRunOptions = {
10
+ }
11
+ export interface AgentRunOptions {
12
12
  includeLogs?: boolean;
13
13
  eventFilter?: (message: SDKMessage) => boolean;
14
14
  queryOptions?: Omit<Options, 'cwd' | 'env' | 'resume'>;
15
- };
15
+ }
16
16
  export type AgentTaskResult = RuntimeTaskResult<SDKMessage[], SDKMessage>;
17
17
  export type AgentRuntimeSession = RuntimeSession<AgentRunOptions, AgentTaskResult, SDKMessage>;
18
18
  export type AgentRuntimeClient = RuntimeClient<AgentRunOptions, AgentTaskResult, SDKMessage>;
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sources":["../src/agent.ts"],"sourcesContent":["import { type Options, query, type SDKMessage } from '@anthropic-ai/claude-agent-sdk';\nimport {\n createRuntimeClient,\n type RuntimeClient,\n type RuntimeSession,\n type RuntimeSessionContext,\n type RuntimeSessionResumeRequest,\n type RuntimeSessionRunRequest,\n type RuntimeTaskRequest,\n type RuntimeTaskResult,\n} from './runtime.js';\n\nexport type AgentQueryFn = (params: { options?: Options; prompt: string }) => AsyncIterable<SDKMessage>;\n\nexport type AgentRuntimeOptions = {\n queryFn?: AgentQueryFn;\n sdkOptions?: Omit<Options, 'cwd' | 'env'>;\n};\n\nexport type AgentRunOptions = {\n includeLogs?: boolean;\n eventFilter?: (message: SDKMessage) => boolean;\n queryOptions?: Omit<Options, 'cwd' | 'env' | 'resume'>;\n};\n\nexport type AgentTaskResult = RuntimeTaskResult<SDKMessage[], SDKMessage>;\n\nexport type AgentRuntimeSession = RuntimeSession<AgentRunOptions, AgentTaskResult, SDKMessage>;\n\nexport type AgentRuntimeClient = RuntimeClient<AgentRunOptions, AgentTaskResult, SDKMessage>;\n\ntype AgentSessionState = {\n current: string | undefined;\n};\n\nexport function createAgentRuntime(options: AgentRuntimeOptions = {}): AgentRuntimeClient {\n return createRuntimeClient('agent-sdk', {\n resumeSession: (request) => createAgentSession(request, options),\n run: (request, runOptions) => runAgentTask(request, options, undefined, runOptions),\n runStream: (request, runOptions) => streamAgentTask(request, options, undefined, runOptions),\n startSession: (context) => createAgentSession(context, options),\n });\n}\n\nasync function createAgentSession(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: AgentRuntimeOptions\n) {\n const sessionState: AgentSessionState = {\n current: 'sessionId' in request ? request.sessionId : undefined,\n };\n\n return {\n getId: () => sessionState.current,\n run: (runRequest: RuntimeSessionRunRequest, runOptions?: AgentRunOptions) =>\n runAgentTask(\n {\n cwd: request.cwd,\n env: request.env,\n instructions: runRequest.instructions,\n },\n options,\n sessionState,\n runOptions\n ),\n runStream: (runRequest: RuntimeSessionRunRequest, runOptions?: AgentRunOptions) =>\n streamAgentTask(\n {\n cwd: request.cwd,\n env: request.env,\n instructions: runRequest.instructions,\n },\n options,\n sessionState,\n runOptions\n ),\n };\n}\n\nasync function runAgentTask(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): Promise<Omit<AgentTaskResult, 'provider'>> {\n const messages: SDKMessage[] = [];\n const logs: SDKMessage[] | undefined = runOptions?.includeLogs ? [] : undefined;\n let outputText = '';\n\n for await (const message of iterateAgentMessages(request, options, sessionState, runOptions)) {\n messages.push(message);\n outputText = getLatestOutputText(message, outputText);\n if (logs && matchesAgentEventFilter(runOptions, message)) {\n logs.push(message);\n }\n }\n\n return {\n ...(logs ? { logs } : {}),\n outputText,\n raw: messages,\n };\n}\n\nasync function* streamAgentTask(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): AsyncIterable<SDKMessage> {\n for await (const message of iterateAgentMessages(request, options, sessionState, runOptions)) {\n if (matchesAgentEventFilter(runOptions, message)) {\n yield message;\n }\n }\n}\n\nasync function* iterateAgentMessages(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): AsyncIterable<SDKMessage> {\n let currentSessionId = sessionState?.current;\n\n for await (const message of (options.queryFn ?? query)({\n prompt: request.instructions,\n options: {\n ...options.sdkOptions,\n ...runOptions?.queryOptions,\n cwd: request.cwd,\n env: request.env,\n resume: currentSessionId,\n },\n })) {\n const nextSessionId = getLatestSessionId(message, currentSessionId);\n if (nextSessionId !== currentSessionId) {\n currentSessionId = nextSessionId;\n if (sessionState) {\n sessionState.current = currentSessionId;\n }\n }\n yield message;\n }\n}\n\nfunction getLatestOutputText(message: SDKMessage, previousOutput: string): string {\n const candidate = message as {\n content?: unknown;\n message?: unknown;\n result?: unknown;\n };\n if (typeof candidate.result === 'string') {\n return candidate.result;\n }\n if (typeof candidate.message === 'string') {\n return candidate.message;\n }\n if (typeof candidate.content === 'string') {\n return candidate.content;\n }\n return previousOutput;\n}\n\nfunction matchesAgentEventFilter(options: AgentRunOptions | undefined, message: SDKMessage): boolean {\n return options?.eventFilter?.(message) ?? true;\n}\n\nfunction getLatestSessionId(message: SDKMessage, previousSessionId: string | undefined): string | undefined {\n const candidate = message as {\n session_id?: unknown;\n };\n if (candidate && typeof candidate.session_id === 'string' && candidate.session_id.trim()) {\n return candidate.session_id;\n }\n return previousSessionId;\n}\n"],"names":["createAgentRuntime","options","createRuntimeClient","resumeSession","request","createAgentSession","run","runOptions","runAgentTask","undefined","runStream","streamAgentTask","startSession","context","_x9","_x0","_createAgentSession","apply","this","arguments","_asyncToGenerator","_regenerator","m","_callee3","sessionState","w","_context3","n","current","sessionId","a","getId","runRequest","cwd","env","instructions","_x1","_x10","_x11","_x12","_runAgentTask","_callee4","messages","logs","outputText","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","message","_t3","_context4","p","includeLogs","_asyncIterator","iterateAgentMessages","next","v","done","value","push","getLatestOutputText","matchesAgentEventFilter","f","_objectSpread","raw","_x","_x2","_x3","_x4","_streamAgentTask","_wrapAsyncGenerator","_callee","_iteratorAbruptCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","_t","_context","_awaitAsyncGenerator","_x5","_x6","_x7","_x8","_iterateAgentMessages","_callee2","currentSessionId","_iteratorAbruptCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","_options$queryFn","nextSessionId","_t2","_context2","queryFn","query","prompt","sdkOptions","queryOptions","resume","getLatestSessionId","previousOutput","candidate","result","content","_options$eventFilter","_options$eventFilter2","eventFilter","call","previousSessionId","session_id","trim"],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sources":["../src/agent.ts"],"sourcesContent":["import { type Options, query, type SDKMessage } from '@anthropic-ai/claude-agent-sdk';\nimport {\n createRuntimeClient,\n type RuntimeClient,\n type RuntimeSession,\n type RuntimeSessionContext,\n type RuntimeSessionResumeRequest,\n type RuntimeSessionRunRequest,\n type RuntimeTaskRequest,\n type RuntimeTaskResult,\n} from './runtime.js';\n\nexport type AgentQueryFn = (params: { options?: Options; prompt: string }) => AsyncIterable<SDKMessage>;\n\nexport interface AgentRuntimeOptions {\n queryFn?: AgentQueryFn;\n sdkOptions?: Omit<Options, 'cwd' | 'env'>;\n}\n\nexport interface AgentRunOptions {\n includeLogs?: boolean;\n eventFilter?: (message: SDKMessage) => boolean;\n queryOptions?: Omit<Options, 'cwd' | 'env' | 'resume'>;\n}\n\nexport type AgentTaskResult = RuntimeTaskResult<SDKMessage[], SDKMessage>;\n\nexport type AgentRuntimeSession = RuntimeSession<AgentRunOptions, AgentTaskResult, SDKMessage>;\n\nexport type AgentRuntimeClient = RuntimeClient<AgentRunOptions, AgentTaskResult, SDKMessage>;\n\ninterface AgentSessionState {\n current: string | undefined;\n}\n\ninterface AgentSessionExecutor {\n getId: () => string | undefined;\n run: (request: RuntimeSessionRunRequest, options?: AgentRunOptions) => Promise<Omit<AgentTaskResult, 'provider'>>;\n runStream: (request: RuntimeSessionRunRequest, options?: AgentRunOptions) => AsyncIterable<SDKMessage>;\n}\n\nexport function createAgentRuntime(options: AgentRuntimeOptions = {}): AgentRuntimeClient {\n return createRuntimeClient('agent-sdk', {\n resumeSession: (request) => createAgentSession(request, options),\n run: (request, runOptions) => runAgentTask(request, options, undefined, runOptions),\n runStream: (request, runOptions) => streamAgentTask(request, options, undefined, runOptions),\n startSession: (context) => createAgentSession(context, options),\n });\n}\n\nasync function createAgentSession(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: AgentRuntimeOptions\n): Promise<AgentSessionExecutor> {\n const sessionState: AgentSessionState = {\n current: 'sessionId' in request ? request.sessionId : undefined,\n };\n\n return {\n getId: () => sessionState.current,\n run: (runRequest: RuntimeSessionRunRequest, runOptions?: AgentRunOptions) =>\n runAgentTask(\n {\n cwd: request.cwd,\n env: request.env,\n instructions: runRequest.instructions,\n },\n options,\n sessionState,\n runOptions\n ),\n runStream: (runRequest: RuntimeSessionRunRequest, runOptions?: AgentRunOptions) =>\n streamAgentTask(\n {\n cwd: request.cwd,\n env: request.env,\n instructions: runRequest.instructions,\n },\n options,\n sessionState,\n runOptions\n ),\n };\n}\n\nasync function runAgentTask(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): Promise<Omit<AgentTaskResult, 'provider'>> {\n const messages: SDKMessage[] = [];\n const logs: SDKMessage[] | undefined = runOptions?.includeLogs ? [] : undefined;\n let outputText = '';\n\n for await (const message of iterateAgentMessages(request, options, sessionState, runOptions)) {\n messages.push(message);\n outputText = getLatestOutputText(message, outputText);\n if (logs && matchesAgentEventFilter(runOptions, message)) {\n logs.push(message);\n }\n }\n\n return {\n ...(logs ? { logs } : {}),\n outputText,\n raw: messages,\n };\n}\n\nasync function* streamAgentTask(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): AsyncIterable<SDKMessage> {\n for await (const message of iterateAgentMessages(request, options, sessionState, runOptions)) {\n if (matchesAgentEventFilter(runOptions, message)) {\n yield message;\n }\n }\n}\n\nasync function* iterateAgentMessages(\n request: RuntimeTaskRequest,\n options: AgentRuntimeOptions,\n sessionState?: AgentSessionState,\n runOptions?: AgentRunOptions\n): AsyncIterable<SDKMessage> {\n let currentSessionId = sessionState?.current;\n\n for await (const message of (options.queryFn ?? query)({\n prompt: request.instructions,\n options: {\n ...options.sdkOptions,\n ...runOptions?.queryOptions,\n cwd: request.cwd,\n env: request.env,\n resume: currentSessionId,\n },\n })) {\n const nextSessionId = getLatestSessionId(message, currentSessionId);\n if (nextSessionId !== currentSessionId) {\n currentSessionId = nextSessionId;\n if (sessionState) {\n sessionState.current = currentSessionId;\n }\n }\n yield message;\n }\n}\n\nfunction getLatestOutputText(message: SDKMessage, previousOutput: string): string {\n const candidate = message as {\n content?: unknown;\n message?: unknown;\n result?: unknown;\n };\n if (typeof candidate.result === 'string') {\n return candidate.result;\n }\n if (typeof candidate.message === 'string') {\n return candidate.message;\n }\n if (typeof candidate.content === 'string') {\n return candidate.content;\n }\n return previousOutput;\n}\n\nfunction matchesAgentEventFilter(options: AgentRunOptions | undefined, message: SDKMessage): boolean {\n return options?.eventFilter?.(message) ?? true;\n}\n\nfunction getLatestSessionId(message: SDKMessage, previousSessionId: string | undefined): string | undefined {\n const candidate = message as {\n session_id?: unknown;\n };\n if (candidate && typeof candidate.session_id === 'string' && candidate.session_id.trim()) {\n return candidate.session_id;\n }\n return previousSessionId;\n}\n"],"names":["createAgentRuntime","options","createRuntimeClient","resumeSession","request","createAgentSession","run","runOptions","runAgentTask","undefined","runStream","streamAgentTask","startSession","context","_x9","_x0","_createAgentSession","apply","this","arguments","_asyncToGenerator","_regenerator","m","_callee3","sessionState","w","_context3","n","current","sessionId","a","getId","runRequest","cwd","env","instructions","_x1","_x10","_x11","_x12","_runAgentTask","_callee4","messages","logs","outputText","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","message","_t3","_context4","p","includeLogs","_asyncIterator","iterateAgentMessages","next","v","done","value","push","getLatestOutputText","matchesAgentEventFilter","f","_objectSpread","raw","_x","_x2","_x3","_x4","_streamAgentTask","_wrapAsyncGenerator","_callee","_iteratorAbruptCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","_t","_context","_awaitAsyncGenerator","_x5","_x6","_x7","_x8","_iterateAgentMessages","_callee2","currentSessionId","_iteratorAbruptCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","_options$queryFn","nextSessionId","_t2","_context2","queryFn","query","prompt","sdkOptions","queryOptions","resume","getLatestSessionId","previousOutput","candidate","result","content","_options$eventFilter","_options$eventFilter2","eventFilter","call","previousSessionId","session_id","trim"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"codex.cjs","sources":["../src/codex.ts"],"sourcesContent":["import {\n Codex,\n type CodexOptions,\n type RunResult,\n type RunStreamedResult,\n type ThreadEvent,\n type ThreadOptions,\n type TurnOptions,\n} from '@openai/codex-sdk';\nimport {\n createRuntimeClient,\n type RuntimeClient,\n type RuntimeSession,\n type RuntimeSessionContext,\n type RuntimeSessionResumeRequest,\n type RuntimeSessionRunRequest,\n type RuntimeTaskRequest,\n type RuntimeTaskResult,\n} from './runtime.js';\n\nexport type CodexRuntimeOptions = {\n client?: Codex;\n clientOptions?: CodexOptions;\n threadOptions?: Omit<ThreadOptions, 'workingDirectory'>;\n};\n\nexport type CodexRunOptions = {\n eventFilter?: (event: ThreadEvent) => boolean;\n includeLogs?: boolean;\n turnOptions?: TurnOptions;\n};\n\nexport type CodexTaskResult = RuntimeTaskResult<RunResult, ThreadEvent>;\n\nexport type CodexRuntimeSession = RuntimeSession<CodexRunOptions, CodexTaskResult, ThreadEvent>;\n\nexport type CodexRuntimeClient = RuntimeClient<CodexRunOptions, CodexTaskResult, ThreadEvent>;\n\nexport function createCodexRuntime(options: CodexRuntimeOptions = {}): CodexRuntimeClient {\n return createRuntimeClient('codex-sdk', {\n resumeSession: (request) => createCodexSession(request, options),\n run: (request, runOptions) => runCodexTask(request, options, runOptions),\n runStream: (request, runOptions) => streamCodexTask(request, options, runOptions),\n startSession: (context) => createCodexSession(context, options),\n });\n}\n\nasync function runCodexTask(request: RuntimeTaskRequest, options: CodexRuntimeOptions, runOptions?: CodexRunOptions) {\n const thread = createCodexThread(request, options);\n return collectCodexRunResult(thread.runStreamed(request.instructions, runOptions?.turnOptions), runOptions);\n}\n\nasync function createCodexSession(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: CodexRuntimeOptions\n) {\n const thread = createCodexThread(request, options);\n\n return {\n getId: () => getValidSessionId(thread.id) ?? ('sessionId' in request ? request.sessionId : undefined),\n run: (runRequest: RuntimeSessionRunRequest, runOptions?: CodexRunOptions) =>\n collectCodexRunResult(thread.runStreamed(runRequest.instructions, runOptions?.turnOptions), runOptions),\n runStream: (runRequest: RuntimeSessionRunRequest, runOptions?: CodexRunOptions) =>\n streamCodexEvents(thread.runStreamed(runRequest.instructions, runOptions?.turnOptions), runOptions),\n };\n}\n\nasync function collectCodexRunResult(\n streamedResultPromise: Promise<RunStreamedResult>,\n options: CodexRunOptions | undefined\n): Promise<Omit<CodexTaskResult, 'provider'>> {\n const streamedResult = await streamedResultPromise;\n const logs: ThreadEvent[] | undefined = options?.includeLogs ? [] : undefined;\n const items: RunResult['items'] = [];\n let outputText = '';\n let turnFailure: { message: string } | undefined;\n let usage: RunResult['usage'] = null;\n\n for await (const event of streamedResult.events) {\n if (logs && shouldEmitCodexEvent(event, options)) {\n logs.push(event);\n }\n const state = applyCodexEvent(items, outputText, usage, event);\n outputText = state.outputText;\n turnFailure = state.turnFailure;\n usage = state.usage;\n if (turnFailure) {\n break;\n }\n }\n\n const raw: RunResult = {\n finalResponse: outputText,\n items,\n usage,\n };\n\n if (turnFailure) {\n throw new CodexRunError(turnFailure.message, {\n ...(logs ? { logs } : {}),\n raw,\n });\n }\n\n return {\n ...(logs ? { logs } : {}),\n ...formatRunResult(raw),\n };\n}\n\nasync function* streamCodexTask(\n request: RuntimeTaskRequest,\n options: CodexRuntimeOptions,\n runOptions?: CodexRunOptions\n): AsyncIterable<ThreadEvent> {\n const thread = createCodexThread(request, options);\n yield* streamCodexEvents(thread.runStreamed(request.instructions, runOptions?.turnOptions), runOptions);\n}\n\nasync function* streamCodexEvents(\n streamedResultPromise: Promise<RunStreamedResult>,\n options?: CodexRunOptions\n): AsyncIterable<ThreadEvent> {\n const streamedResult = await streamedResultPromise;\n for await (const event of streamedResult.events) {\n if (shouldEmitCodexEvent(event, options)) {\n yield event;\n }\n }\n}\n\nfunction shouldEmitCodexEvent(event: ThreadEvent, options: CodexRunOptions | undefined): boolean {\n return event.type === 'turn.failed' || (options?.eventFilter?.(event) ?? true);\n}\n\nexport class CodexRunError extends Error {\n logs?: ThreadEvent[];\n raw: RunResult;\n\n constructor(message: string, details: { logs?: ThreadEvent[]; raw: RunResult }) {\n super(message);\n this.name = 'CodexRunError';\n this.logs = details.logs;\n this.raw = details.raw;\n }\n}\n\nfunction applyCodexEvent(\n items: RunResult['items'],\n previousOutputText: string,\n previousUsage: RunResult['usage'],\n event: ThreadEvent\n): { outputText: string; turnFailure: { message: string } | undefined; usage: RunResult['usage'] } {\n if (event.type === 'item.completed') {\n items.push(event.item);\n return {\n outputText: event.item.type === 'agent_message' ? event.item.text : previousOutputText,\n turnFailure: undefined,\n usage: previousUsage,\n };\n }\n\n if (event.type === 'turn.completed') {\n return {\n outputText: previousOutputText,\n turnFailure: undefined,\n usage: event.usage,\n };\n }\n\n if (event.type === 'turn.failed') {\n return {\n outputText: previousOutputText,\n turnFailure: event.error ?? { message: 'Turn failed' },\n usage: previousUsage,\n };\n }\n\n return {\n outputText: previousOutputText,\n turnFailure: undefined,\n usage: previousUsage,\n };\n}\n\nfunction createCodexThread(request: RuntimeSessionContext | RuntimeSessionResumeRequest, options: CodexRuntimeOptions) {\n const client = options.client ?? new Codex(createCodexOptions(request.env, options.clientOptions));\n const threadOptions = {\n ...options.threadOptions,\n workingDirectory: request.cwd,\n };\n\n if ('sessionId' in request) {\n return client.resumeThread(request.sessionId, threadOptions);\n }\n\n return client.startThread(threadOptions);\n}\n\nfunction createCodexOptions(\n env: NodeJS.ProcessEnv | undefined,\n options: CodexOptions | undefined\n): CodexOptions | undefined {\n if (!env) {\n return options;\n }\n\n return {\n ...options,\n env: normalizeEnv(env),\n };\n}\n\nfunction normalizeEnv(env: NodeJS.ProcessEnv): Record<string, string> {\n return Object.fromEntries(\n Object.entries(env).filter((entry): entry is [string, string] => typeof entry[1] === 'string')\n );\n}\n\nfunction formatRunResult(result: RunResult): { outputText: string; raw: RunResult } {\n return {\n outputText: result.finalResponse,\n raw: result,\n };\n}\n\nfunction getValidSessionId(sessionId: string | null | undefined): string | undefined {\n if (typeof sessionId === 'string' && sessionId.trim()) {\n return sessionId;\n }\n\n return undefined;\n}\n"],"names":["_runCodexTask","_asyncToGenerator","_regenerator","m","_callee3","request","options","runOptions","thread","w","_context3","n","createCodexThread","a","collectCodexRunResult","runStreamed","instructions","turnOptions","apply","this","arguments","createCodexSession","_x9","_x0","_createCodexSession","_callee4","_context4","getId","_getValidSessionId","getValidSessionId","id","sessionId","undefined","run","runRequest","runStream","streamCodexEvents","_x1","_x10","_collectCodexRunResult","_callee5","streamedResultPromise","streamedResult","logs","items","outputText","turnFailure","usage","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","event","state","raw","_t2","_context5","p","v","includeLogs","_asyncIterator","events","next","done","value","shouldEmitCodexEvent","push","applyCodexEvent","f","finalResponse","CodexRunError","message","_objectSpread","formatRunResult","_streamCodexTask","_wrapAsyncGenerator","_callee","_context","d","_regeneratorValues","_asyncGeneratorDelegate","_x4","_x5","_streamCodexEvents","_callee2","_iteratorAbruptCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","_t","_context2","_awaitAsyncGenerator","_options$eventFilter","_options$eventFilter2","type","eventFilter","call","_Error","details","_this","name","_inherits","_createClass","_wrapNativeSuper","Error","previousOutputText","previousUsage","item","text","_event$error","error","_options$client","client","Codex","env","normalizeEnv","createCodexOptions","clientOptions","threadOptions","workingDirectory","cwd","resumeThread","startThread","Object","fromEntries","entries","filter","entry","result","trim","createRuntimeClient","resumeSession","_x6","_x7","_x8","runCodexTask","_x","_x2","_x3","streamCodexTask","startSession","context"],"mappings":"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"}
1
+ {"version":3,"file":"codex.cjs","sources":["../src/codex.ts"],"sourcesContent":["import {\n Codex,\n type CodexOptions,\n type RunResult,\n type RunStreamedResult,\n type Thread,\n type ThreadEvent,\n type ThreadOptions,\n type TurnOptions,\n} from '@openai/codex-sdk';\nimport {\n createRuntimeClient,\n type RuntimeClient,\n type RuntimeSession,\n type RuntimeSessionContext,\n type RuntimeSessionResumeRequest,\n type RuntimeSessionRunRequest,\n type RuntimeTaskRequest,\n type RuntimeTaskResult,\n} from './runtime.js';\n\nexport interface CodexRuntimeOptions {\n client?: Codex;\n clientOptions?: CodexOptions;\n threadOptions?: Omit<ThreadOptions, 'workingDirectory'>;\n}\n\nexport interface CodexRunOptions {\n eventFilter?: (event: ThreadEvent) => boolean;\n includeLogs?: boolean;\n turnOptions?: TurnOptions;\n}\n\nexport type CodexTaskResult = RuntimeTaskResult<RunResult, ThreadEvent>;\n\nexport type CodexRuntimeSession = RuntimeSession<CodexRunOptions, CodexTaskResult, ThreadEvent>;\n\nexport type CodexRuntimeClient = RuntimeClient<CodexRunOptions, CodexTaskResult, ThreadEvent>;\n\ninterface CodexSessionExecutor {\n getId: () => string | undefined;\n run: (request: RuntimeSessionRunRequest, options?: CodexRunOptions) => Promise<Omit<CodexTaskResult, 'provider'>>;\n runStream: (request: RuntimeSessionRunRequest, options?: CodexRunOptions) => AsyncIterable<ThreadEvent>;\n}\n\nexport function createCodexRuntime(options: CodexRuntimeOptions = {}): CodexRuntimeClient {\n return createRuntimeClient('codex-sdk', {\n resumeSession: (request) => createCodexSession(request, options),\n run: (request, runOptions) => runCodexTask(request, options, runOptions),\n runStream: (request, runOptions) => streamCodexTask(request, options, runOptions),\n startSession: (context) => createCodexSession(context, options),\n });\n}\n\nasync function runCodexTask(\n request: RuntimeTaskRequest,\n options: CodexRuntimeOptions,\n runOptions?: CodexRunOptions\n): Promise<Omit<CodexTaskResult, 'provider'>> {\n const thread = createCodexThread(request, options);\n return collectCodexRunResult(thread.runStreamed(request.instructions, runOptions?.turnOptions), runOptions);\n}\n\nasync function createCodexSession(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: CodexRuntimeOptions\n): Promise<CodexSessionExecutor> {\n const thread = createCodexThread(request, options);\n\n return {\n getId: () => getValidSessionId(thread.id) ?? ('sessionId' in request ? request.sessionId : undefined),\n run: (runRequest: RuntimeSessionRunRequest, runOptions?: CodexRunOptions) =>\n collectCodexRunResult(thread.runStreamed(runRequest.instructions, runOptions?.turnOptions), runOptions),\n runStream: (runRequest: RuntimeSessionRunRequest, runOptions?: CodexRunOptions) =>\n streamCodexEvents(thread.runStreamed(runRequest.instructions, runOptions?.turnOptions), runOptions),\n };\n}\n\nasync function collectCodexRunResult(\n streamedResultPromise: Promise<RunStreamedResult>,\n options: CodexRunOptions | undefined\n): Promise<Omit<CodexTaskResult, 'provider'>> {\n const streamedResult = await streamedResultPromise;\n const logs: ThreadEvent[] | undefined = options?.includeLogs ? [] : undefined;\n const items: RunResult['items'] = [];\n let outputText = '';\n let turnFailure: { message: string } | undefined;\n // Codex SDK represents missing usage as null in RunResult.\n // oxlint-disable-next-line eslint-plugin-unicorn/no-null\n let usage: RunResult['usage'] = null;\n\n for await (const event of streamedResult.events) {\n if (logs && shouldEmitCodexEvent(event, options)) {\n logs.push(event);\n }\n const state = applyCodexEvent(items, outputText, usage, event);\n outputText = state.outputText;\n turnFailure = state.turnFailure;\n usage = state.usage;\n if (turnFailure) {\n break;\n }\n }\n\n const raw: RunResult = {\n finalResponse: outputText,\n items,\n usage,\n };\n\n if (turnFailure) {\n throw new CodexRunError(turnFailure.message, {\n ...(logs ? { logs } : {}),\n raw,\n });\n }\n\n return {\n ...(logs ? { logs } : {}),\n ...formatRunResult(raw),\n };\n}\n\nasync function* streamCodexTask(\n request: RuntimeTaskRequest,\n options: CodexRuntimeOptions,\n runOptions?: CodexRunOptions\n): AsyncIterable<ThreadEvent> {\n const thread = createCodexThread(request, options);\n yield* streamCodexEvents(thread.runStreamed(request.instructions, runOptions?.turnOptions), runOptions);\n}\n\nasync function* streamCodexEvents(\n streamedResultPromise: Promise<RunStreamedResult>,\n options?: CodexRunOptions\n): AsyncIterable<ThreadEvent> {\n const streamedResult = await streamedResultPromise;\n for await (const event of streamedResult.events) {\n if (shouldEmitCodexEvent(event, options)) {\n yield event;\n }\n }\n}\n\nfunction shouldEmitCodexEvent(event: ThreadEvent, options: CodexRunOptions | undefined): boolean {\n return event.type === 'turn.failed' || (options?.eventFilter?.(event) ?? true);\n}\n\nexport class CodexRunError extends Error {\n logs?: ThreadEvent[];\n raw: RunResult;\n\n constructor(message: string, details: { logs?: ThreadEvent[]; raw: RunResult }) {\n super(message);\n this.name = 'CodexRunError';\n this.logs = details.logs;\n this.raw = details.raw;\n }\n}\n\nfunction applyCodexEvent(\n items: RunResult['items'],\n previousOutputText: string,\n previousUsage: RunResult['usage'],\n event: ThreadEvent\n): { outputText: string; turnFailure: { message: string } | undefined; usage: RunResult['usage'] } {\n if (event.type === 'item.completed') {\n items.push(event.item);\n return {\n outputText: event.item.type === 'agent_message' ? event.item.text : previousOutputText,\n turnFailure: undefined,\n usage: previousUsage,\n };\n }\n\n if (event.type === 'turn.completed') {\n return {\n outputText: previousOutputText,\n turnFailure: undefined,\n usage: event.usage,\n };\n }\n\n if (event.type === 'turn.failed') {\n return {\n outputText: previousOutputText,\n turnFailure: event.error ?? { message: 'Turn failed' },\n usage: previousUsage,\n };\n }\n\n return {\n outputText: previousOutputText,\n turnFailure: undefined,\n usage: previousUsage,\n };\n}\n\nfunction createCodexThread(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: CodexRuntimeOptions\n): Thread {\n const client = options.client ?? new Codex(createCodexOptions(request.env, options.clientOptions));\n const threadOptions = {\n ...options.threadOptions,\n workingDirectory: request.cwd,\n };\n\n if ('sessionId' in request) {\n return client.resumeThread(request.sessionId, threadOptions);\n }\n\n return client.startThread(threadOptions);\n}\n\nfunction createCodexOptions(\n env: NodeJS.ProcessEnv | undefined,\n options: CodexOptions | undefined\n): CodexOptions | undefined {\n if (!env) {\n return options;\n }\n\n return {\n ...options,\n env: normalizeEnv(env),\n };\n}\n\nfunction normalizeEnv(env: NodeJS.ProcessEnv): Record<string, string> {\n return Object.fromEntries(\n Object.entries(env).filter((entry): entry is [string, string] => typeof entry[1] === 'string')\n );\n}\n\nfunction formatRunResult(result: RunResult): { outputText: string; raw: RunResult } {\n return {\n outputText: result.finalResponse,\n raw: result,\n };\n}\n\nfunction getValidSessionId(sessionId: string | null | undefined): string | undefined {\n if (typeof sessionId === 'string' && sessionId.trim()) {\n return sessionId;\n }\n\n return undefined;\n}\n"],"names":["_runCodexTask","_asyncToGenerator","_regenerator","m","_callee3","request","options","runOptions","thread","w","_context3","n","createCodexThread","a","collectCodexRunResult","runStreamed","instructions","turnOptions","apply","this","arguments","createCodexSession","_x9","_x0","_createCodexSession","_callee4","_context4","getId","_getValidSessionId","getValidSessionId","id","sessionId","undefined","run","runRequest","runStream","streamCodexEvents","_x1","_x10","_collectCodexRunResult","_callee5","streamedResultPromise","streamedResult","logs","items","outputText","turnFailure","usage","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","event","state","raw","_t2","_context5","p","v","includeLogs","_asyncIterator","events","next","done","value","shouldEmitCodexEvent","push","applyCodexEvent","f","finalResponse","CodexRunError","message","_objectSpread","formatRunResult","_streamCodexTask","_wrapAsyncGenerator","_callee","_context","d","_regeneratorValues","_asyncGeneratorDelegate","_x4","_x5","_streamCodexEvents","_callee2","_iteratorAbruptCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","_t","_context2","_awaitAsyncGenerator","_options$eventFilter","_options$eventFilter2","type","eventFilter","call","_Error","details","_this","name","_inherits","_createClass","_wrapNativeSuper","Error","previousOutputText","previousUsage","item","text","_event$error","error","_options$client","client","Codex","env","normalizeEnv","createCodexOptions","clientOptions","threadOptions","workingDirectory","cwd","resumeThread","startThread","Object","fromEntries","entries","filter","entry","result","trim","createRuntimeClient","resumeSession","_x6","_x7","_x8","runCodexTask","_x","_x2","_x3","streamCodexTask","startSession","context"],"mappings":"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"}
package/dist/codex.d.ts CHANGED
@@ -1,15 +1,15 @@
1
1
  import { Codex, type CodexOptions, type RunResult, type ThreadEvent, type ThreadOptions, type TurnOptions } from '@openai/codex-sdk';
2
2
  import { type RuntimeClient, type RuntimeSession, type RuntimeTaskResult } from './runtime.js';
3
- export type CodexRuntimeOptions = {
3
+ export interface CodexRuntimeOptions {
4
4
  client?: Codex;
5
5
  clientOptions?: CodexOptions;
6
6
  threadOptions?: Omit<ThreadOptions, 'workingDirectory'>;
7
- };
8
- export type CodexRunOptions = {
7
+ }
8
+ export interface CodexRunOptions {
9
9
  eventFilter?: (event: ThreadEvent) => boolean;
10
10
  includeLogs?: boolean;
11
11
  turnOptions?: TurnOptions;
12
- };
12
+ }
13
13
  export type CodexTaskResult = RuntimeTaskResult<RunResult, ThreadEvent>;
14
14
  export type CodexRuntimeSession = RuntimeSession<CodexRunOptions, CodexTaskResult, ThreadEvent>;
15
15
  export type CodexRuntimeClient = RuntimeClient<CodexRunOptions, CodexTaskResult, ThreadEvent>;
package/dist/codex.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"codex.js","sources":["../src/codex.ts"],"sourcesContent":["import {\n Codex,\n type CodexOptions,\n type RunResult,\n type RunStreamedResult,\n type ThreadEvent,\n type ThreadOptions,\n type TurnOptions,\n} from '@openai/codex-sdk';\nimport {\n createRuntimeClient,\n type RuntimeClient,\n type RuntimeSession,\n type RuntimeSessionContext,\n type RuntimeSessionResumeRequest,\n type RuntimeSessionRunRequest,\n type RuntimeTaskRequest,\n type RuntimeTaskResult,\n} from './runtime.js';\n\nexport type CodexRuntimeOptions = {\n client?: Codex;\n clientOptions?: CodexOptions;\n threadOptions?: Omit<ThreadOptions, 'workingDirectory'>;\n};\n\nexport type CodexRunOptions = {\n eventFilter?: (event: ThreadEvent) => boolean;\n includeLogs?: boolean;\n turnOptions?: TurnOptions;\n};\n\nexport type CodexTaskResult = RuntimeTaskResult<RunResult, ThreadEvent>;\n\nexport type CodexRuntimeSession = RuntimeSession<CodexRunOptions, CodexTaskResult, ThreadEvent>;\n\nexport type CodexRuntimeClient = RuntimeClient<CodexRunOptions, CodexTaskResult, ThreadEvent>;\n\nexport function createCodexRuntime(options: CodexRuntimeOptions = {}): CodexRuntimeClient {\n return createRuntimeClient('codex-sdk', {\n resumeSession: (request) => createCodexSession(request, options),\n run: (request, runOptions) => runCodexTask(request, options, runOptions),\n runStream: (request, runOptions) => streamCodexTask(request, options, runOptions),\n startSession: (context) => createCodexSession(context, options),\n });\n}\n\nasync function runCodexTask(request: RuntimeTaskRequest, options: CodexRuntimeOptions, runOptions?: CodexRunOptions) {\n const thread = createCodexThread(request, options);\n return collectCodexRunResult(thread.runStreamed(request.instructions, runOptions?.turnOptions), runOptions);\n}\n\nasync function createCodexSession(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: CodexRuntimeOptions\n) {\n const thread = createCodexThread(request, options);\n\n return {\n getId: () => getValidSessionId(thread.id) ?? ('sessionId' in request ? request.sessionId : undefined),\n run: (runRequest: RuntimeSessionRunRequest, runOptions?: CodexRunOptions) =>\n collectCodexRunResult(thread.runStreamed(runRequest.instructions, runOptions?.turnOptions), runOptions),\n runStream: (runRequest: RuntimeSessionRunRequest, runOptions?: CodexRunOptions) =>\n streamCodexEvents(thread.runStreamed(runRequest.instructions, runOptions?.turnOptions), runOptions),\n };\n}\n\nasync function collectCodexRunResult(\n streamedResultPromise: Promise<RunStreamedResult>,\n options: CodexRunOptions | undefined\n): Promise<Omit<CodexTaskResult, 'provider'>> {\n const streamedResult = await streamedResultPromise;\n const logs: ThreadEvent[] | undefined = options?.includeLogs ? [] : undefined;\n const items: RunResult['items'] = [];\n let outputText = '';\n let turnFailure: { message: string } | undefined;\n let usage: RunResult['usage'] = null;\n\n for await (const event of streamedResult.events) {\n if (logs && shouldEmitCodexEvent(event, options)) {\n logs.push(event);\n }\n const state = applyCodexEvent(items, outputText, usage, event);\n outputText = state.outputText;\n turnFailure = state.turnFailure;\n usage = state.usage;\n if (turnFailure) {\n break;\n }\n }\n\n const raw: RunResult = {\n finalResponse: outputText,\n items,\n usage,\n };\n\n if (turnFailure) {\n throw new CodexRunError(turnFailure.message, {\n ...(logs ? { logs } : {}),\n raw,\n });\n }\n\n return {\n ...(logs ? { logs } : {}),\n ...formatRunResult(raw),\n };\n}\n\nasync function* streamCodexTask(\n request: RuntimeTaskRequest,\n options: CodexRuntimeOptions,\n runOptions?: CodexRunOptions\n): AsyncIterable<ThreadEvent> {\n const thread = createCodexThread(request, options);\n yield* streamCodexEvents(thread.runStreamed(request.instructions, runOptions?.turnOptions), runOptions);\n}\n\nasync function* streamCodexEvents(\n streamedResultPromise: Promise<RunStreamedResult>,\n options?: CodexRunOptions\n): AsyncIterable<ThreadEvent> {\n const streamedResult = await streamedResultPromise;\n for await (const event of streamedResult.events) {\n if (shouldEmitCodexEvent(event, options)) {\n yield event;\n }\n }\n}\n\nfunction shouldEmitCodexEvent(event: ThreadEvent, options: CodexRunOptions | undefined): boolean {\n return event.type === 'turn.failed' || (options?.eventFilter?.(event) ?? true);\n}\n\nexport class CodexRunError extends Error {\n logs?: ThreadEvent[];\n raw: RunResult;\n\n constructor(message: string, details: { logs?: ThreadEvent[]; raw: RunResult }) {\n super(message);\n this.name = 'CodexRunError';\n this.logs = details.logs;\n this.raw = details.raw;\n }\n}\n\nfunction applyCodexEvent(\n items: RunResult['items'],\n previousOutputText: string,\n previousUsage: RunResult['usage'],\n event: ThreadEvent\n): { outputText: string; turnFailure: { message: string } | undefined; usage: RunResult['usage'] } {\n if (event.type === 'item.completed') {\n items.push(event.item);\n return {\n outputText: event.item.type === 'agent_message' ? event.item.text : previousOutputText,\n turnFailure: undefined,\n usage: previousUsage,\n };\n }\n\n if (event.type === 'turn.completed') {\n return {\n outputText: previousOutputText,\n turnFailure: undefined,\n usage: event.usage,\n };\n }\n\n if (event.type === 'turn.failed') {\n return {\n outputText: previousOutputText,\n turnFailure: event.error ?? { message: 'Turn failed' },\n usage: previousUsage,\n };\n }\n\n return {\n outputText: previousOutputText,\n turnFailure: undefined,\n usage: previousUsage,\n };\n}\n\nfunction createCodexThread(request: RuntimeSessionContext | RuntimeSessionResumeRequest, options: CodexRuntimeOptions) {\n const client = options.client ?? new Codex(createCodexOptions(request.env, options.clientOptions));\n const threadOptions = {\n ...options.threadOptions,\n workingDirectory: request.cwd,\n };\n\n if ('sessionId' in request) {\n return client.resumeThread(request.sessionId, threadOptions);\n }\n\n return client.startThread(threadOptions);\n}\n\nfunction createCodexOptions(\n env: NodeJS.ProcessEnv | undefined,\n options: CodexOptions | undefined\n): CodexOptions | undefined {\n if (!env) {\n return options;\n }\n\n return {\n ...options,\n env: normalizeEnv(env),\n };\n}\n\nfunction normalizeEnv(env: NodeJS.ProcessEnv): Record<string, string> {\n return Object.fromEntries(\n Object.entries(env).filter((entry): entry is [string, string] => typeof entry[1] === 'string')\n );\n}\n\nfunction formatRunResult(result: RunResult): { outputText: string; raw: RunResult } {\n return {\n outputText: result.finalResponse,\n raw: result,\n };\n}\n\nfunction getValidSessionId(sessionId: string | null | undefined): string | undefined {\n if (typeof sessionId === 'string' && sessionId.trim()) {\n return sessionId;\n }\n\n return undefined;\n}\n"],"names":["createCodexRuntime","options","createRuntimeClient","resumeSession","request","createCodexSession","run","runOptions","_x6","_x7","_x8","_runCodexTask","apply","this","arguments","runCodexTask","runStream","_x","_x2","_x3","_streamCodexTask","streamCodexTask","startSession","context","_asyncToGenerator","_regenerator","m","_callee3","thread","w","_context3","n","createCodexThread","a","collectCodexRunResult","runStreamed","instructions","turnOptions","_x9","_x0","_createCodexSession","_callee4","_context4","getId","_getValidSessionId","getValidSessionId","id","sessionId","undefined","runRequest","streamCodexEvents","_x1","_x10","_collectCodexRunResult","_callee5","streamedResultPromise","streamedResult","logs","items","outputText","turnFailure","usage","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","event","state","raw","_t2","_context5","p","v","includeLogs","_asyncIterator","events","next","done","value","shouldEmitCodexEvent","push","applyCodexEvent","f","finalResponse","CodexRunError","message","_objectSpread","formatRunResult","_wrapAsyncGenerator","_callee","_context","d","_regeneratorValues","_asyncGeneratorDelegate","_x4","_x5","_streamCodexEvents","_callee2","_iteratorAbruptCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","_t","_context2","_awaitAsyncGenerator","_options$eventFilter","_options$eventFilter2","type","eventFilter","call","_Error","details","_this","name","_inherits","_createClass","_wrapNativeSuper","Error","previousOutputText","previousUsage","item","text","_event$error","error","_options$client","client","Codex","env","normalizeEnv","createCodexOptions","clientOptions","threadOptions","workingDirectory","cwd","resumeThread","startThread","Object","fromEntries","entries","filter","entry","result","trim"],"mappings":"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"}
1
+ {"version":3,"file":"codex.js","sources":["../src/codex.ts"],"sourcesContent":["import {\n Codex,\n type CodexOptions,\n type RunResult,\n type RunStreamedResult,\n type Thread,\n type ThreadEvent,\n type ThreadOptions,\n type TurnOptions,\n} from '@openai/codex-sdk';\nimport {\n createRuntimeClient,\n type RuntimeClient,\n type RuntimeSession,\n type RuntimeSessionContext,\n type RuntimeSessionResumeRequest,\n type RuntimeSessionRunRequest,\n type RuntimeTaskRequest,\n type RuntimeTaskResult,\n} from './runtime.js';\n\nexport interface CodexRuntimeOptions {\n client?: Codex;\n clientOptions?: CodexOptions;\n threadOptions?: Omit<ThreadOptions, 'workingDirectory'>;\n}\n\nexport interface CodexRunOptions {\n eventFilter?: (event: ThreadEvent) => boolean;\n includeLogs?: boolean;\n turnOptions?: TurnOptions;\n}\n\nexport type CodexTaskResult = RuntimeTaskResult<RunResult, ThreadEvent>;\n\nexport type CodexRuntimeSession = RuntimeSession<CodexRunOptions, CodexTaskResult, ThreadEvent>;\n\nexport type CodexRuntimeClient = RuntimeClient<CodexRunOptions, CodexTaskResult, ThreadEvent>;\n\ninterface CodexSessionExecutor {\n getId: () => string | undefined;\n run: (request: RuntimeSessionRunRequest, options?: CodexRunOptions) => Promise<Omit<CodexTaskResult, 'provider'>>;\n runStream: (request: RuntimeSessionRunRequest, options?: CodexRunOptions) => AsyncIterable<ThreadEvent>;\n}\n\nexport function createCodexRuntime(options: CodexRuntimeOptions = {}): CodexRuntimeClient {\n return createRuntimeClient('codex-sdk', {\n resumeSession: (request) => createCodexSession(request, options),\n run: (request, runOptions) => runCodexTask(request, options, runOptions),\n runStream: (request, runOptions) => streamCodexTask(request, options, runOptions),\n startSession: (context) => createCodexSession(context, options),\n });\n}\n\nasync function runCodexTask(\n request: RuntimeTaskRequest,\n options: CodexRuntimeOptions,\n runOptions?: CodexRunOptions\n): Promise<Omit<CodexTaskResult, 'provider'>> {\n const thread = createCodexThread(request, options);\n return collectCodexRunResult(thread.runStreamed(request.instructions, runOptions?.turnOptions), runOptions);\n}\n\nasync function createCodexSession(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: CodexRuntimeOptions\n): Promise<CodexSessionExecutor> {\n const thread = createCodexThread(request, options);\n\n return {\n getId: () => getValidSessionId(thread.id) ?? ('sessionId' in request ? request.sessionId : undefined),\n run: (runRequest: RuntimeSessionRunRequest, runOptions?: CodexRunOptions) =>\n collectCodexRunResult(thread.runStreamed(runRequest.instructions, runOptions?.turnOptions), runOptions),\n runStream: (runRequest: RuntimeSessionRunRequest, runOptions?: CodexRunOptions) =>\n streamCodexEvents(thread.runStreamed(runRequest.instructions, runOptions?.turnOptions), runOptions),\n };\n}\n\nasync function collectCodexRunResult(\n streamedResultPromise: Promise<RunStreamedResult>,\n options: CodexRunOptions | undefined\n): Promise<Omit<CodexTaskResult, 'provider'>> {\n const streamedResult = await streamedResultPromise;\n const logs: ThreadEvent[] | undefined = options?.includeLogs ? [] : undefined;\n const items: RunResult['items'] = [];\n let outputText = '';\n let turnFailure: { message: string } | undefined;\n // Codex SDK represents missing usage as null in RunResult.\n // oxlint-disable-next-line eslint-plugin-unicorn/no-null\n let usage: RunResult['usage'] = null;\n\n for await (const event of streamedResult.events) {\n if (logs && shouldEmitCodexEvent(event, options)) {\n logs.push(event);\n }\n const state = applyCodexEvent(items, outputText, usage, event);\n outputText = state.outputText;\n turnFailure = state.turnFailure;\n usage = state.usage;\n if (turnFailure) {\n break;\n }\n }\n\n const raw: RunResult = {\n finalResponse: outputText,\n items,\n usage,\n };\n\n if (turnFailure) {\n throw new CodexRunError(turnFailure.message, {\n ...(logs ? { logs } : {}),\n raw,\n });\n }\n\n return {\n ...(logs ? { logs } : {}),\n ...formatRunResult(raw),\n };\n}\n\nasync function* streamCodexTask(\n request: RuntimeTaskRequest,\n options: CodexRuntimeOptions,\n runOptions?: CodexRunOptions\n): AsyncIterable<ThreadEvent> {\n const thread = createCodexThread(request, options);\n yield* streamCodexEvents(thread.runStreamed(request.instructions, runOptions?.turnOptions), runOptions);\n}\n\nasync function* streamCodexEvents(\n streamedResultPromise: Promise<RunStreamedResult>,\n options?: CodexRunOptions\n): AsyncIterable<ThreadEvent> {\n const streamedResult = await streamedResultPromise;\n for await (const event of streamedResult.events) {\n if (shouldEmitCodexEvent(event, options)) {\n yield event;\n }\n }\n}\n\nfunction shouldEmitCodexEvent(event: ThreadEvent, options: CodexRunOptions | undefined): boolean {\n return event.type === 'turn.failed' || (options?.eventFilter?.(event) ?? true);\n}\n\nexport class CodexRunError extends Error {\n logs?: ThreadEvent[];\n raw: RunResult;\n\n constructor(message: string, details: { logs?: ThreadEvent[]; raw: RunResult }) {\n super(message);\n this.name = 'CodexRunError';\n this.logs = details.logs;\n this.raw = details.raw;\n }\n}\n\nfunction applyCodexEvent(\n items: RunResult['items'],\n previousOutputText: string,\n previousUsage: RunResult['usage'],\n event: ThreadEvent\n): { outputText: string; turnFailure: { message: string } | undefined; usage: RunResult['usage'] } {\n if (event.type === 'item.completed') {\n items.push(event.item);\n return {\n outputText: event.item.type === 'agent_message' ? event.item.text : previousOutputText,\n turnFailure: undefined,\n usage: previousUsage,\n };\n }\n\n if (event.type === 'turn.completed') {\n return {\n outputText: previousOutputText,\n turnFailure: undefined,\n usage: event.usage,\n };\n }\n\n if (event.type === 'turn.failed') {\n return {\n outputText: previousOutputText,\n turnFailure: event.error ?? { message: 'Turn failed' },\n usage: previousUsage,\n };\n }\n\n return {\n outputText: previousOutputText,\n turnFailure: undefined,\n usage: previousUsage,\n };\n}\n\nfunction createCodexThread(\n request: RuntimeSessionContext | RuntimeSessionResumeRequest,\n options: CodexRuntimeOptions\n): Thread {\n const client = options.client ?? new Codex(createCodexOptions(request.env, options.clientOptions));\n const threadOptions = {\n ...options.threadOptions,\n workingDirectory: request.cwd,\n };\n\n if ('sessionId' in request) {\n return client.resumeThread(request.sessionId, threadOptions);\n }\n\n return client.startThread(threadOptions);\n}\n\nfunction createCodexOptions(\n env: NodeJS.ProcessEnv | undefined,\n options: CodexOptions | undefined\n): CodexOptions | undefined {\n if (!env) {\n return options;\n }\n\n return {\n ...options,\n env: normalizeEnv(env),\n };\n}\n\nfunction normalizeEnv(env: NodeJS.ProcessEnv): Record<string, string> {\n return Object.fromEntries(\n Object.entries(env).filter((entry): entry is [string, string] => typeof entry[1] === 'string')\n );\n}\n\nfunction formatRunResult(result: RunResult): { outputText: string; raw: RunResult } {\n return {\n outputText: result.finalResponse,\n raw: result,\n };\n}\n\nfunction getValidSessionId(sessionId: string | null | undefined): string | undefined {\n if (typeof sessionId === 'string' && sessionId.trim()) {\n return sessionId;\n }\n\n return undefined;\n}\n"],"names":["createCodexRuntime","options","createRuntimeClient","resumeSession","request","createCodexSession","run","runOptions","_x6","_x7","_x8","_runCodexTask","apply","this","arguments","runCodexTask","runStream","_x","_x2","_x3","_streamCodexTask","streamCodexTask","startSession","context","_asyncToGenerator","_regenerator","m","_callee3","thread","w","_context3","n","createCodexThread","a","collectCodexRunResult","runStreamed","instructions","turnOptions","_x9","_x0","_createCodexSession","_callee4","_context4","getId","_getValidSessionId","getValidSessionId","id","sessionId","undefined","runRequest","streamCodexEvents","_x1","_x10","_collectCodexRunResult","_callee5","streamedResultPromise","streamedResult","logs","items","outputText","turnFailure","usage","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","event","state","raw","_t2","_context5","p","v","includeLogs","_asyncIterator","events","next","done","value","shouldEmitCodexEvent","push","applyCodexEvent","f","finalResponse","CodexRunError","message","_objectSpread","formatRunResult","_wrapAsyncGenerator","_callee","_context","d","_regeneratorValues","_asyncGeneratorDelegate","_x4","_x5","_streamCodexEvents","_callee2","_iteratorAbruptCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","_t","_context2","_awaitAsyncGenerator","_options$eventFilter","_options$eventFilter2","type","eventFilter","call","_Error","details","_this","name","_inherits","_createClass","_wrapNativeSuper","Error","previousOutputText","previousUsage","item","text","_event$error","error","_options$client","client","Codex","env","normalizeEnv","createCodexOptions","clientOptions","threadOptions","workingDirectory","cwd","resumeThread","startThread","Object","fromEntries","entries","filter","entry","result","trim"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.cjs","sources":["../src/runtime.ts"],"sourcesContent":["export const SUPPORTED_RUNTIME_PROVIDERS = ['codex-sdk', 'agent-sdk'] as const;\n\nexport type RuntimeProvider = (typeof SUPPORTED_RUNTIME_PROVIDERS)[number];\n\nexport type RuntimeSessionContext = {\n cwd: string;\n env?: NodeJS.ProcessEnv;\n};\n\nexport type RuntimeTaskRequest = RuntimeSessionContext & {\n instructions: string;\n};\n\nexport type RuntimeTaskResult<TRaw = unknown, TLog = unknown> = {\n outputText: string;\n provider: RuntimeProvider;\n raw?: TRaw;\n logs?: TLog[];\n};\n\ntype RuntimeTaskResultWithoutProvider<TRaw, TLog> = Omit<RuntimeTaskResult<TRaw, TLog>, 'provider'>;\n\nexport type RuntimeSessionRunRequest = Pick<RuntimeTaskRequest, 'instructions'>;\n\nexport type RuntimeSessionResumeRequest = RuntimeSessionContext & {\n sessionId: string;\n};\n\nexport type RuntimeSession<\n TRunOptions = never,\n TResult extends RuntimeTaskResult = RuntimeTaskResult,\n TLog = unknown,\n> = {\n readonly id: string | undefined;\n readonly provider: RuntimeProvider;\n close: () => Promise<void>;\n run: (request: RuntimeSessionRunRequest, options?: TRunOptions) => Promise<TResult>;\n runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n};\n\nexport type RuntimeClient<\n TRunOptions = never,\n TResult extends RuntimeTaskResult = RuntimeTaskResult,\n TLog = unknown,\n> = {\n provider: RuntimeProvider;\n run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<TResult>;\n runStream?: (request: RuntimeTaskRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n startSession: (context: RuntimeSessionContext) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;\n resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;\n};\n\ntype RuntimeSessionExecutor<TRunOptions, TRaw, TLog> = {\n close?: () => Promise<void> | void;\n getId: () => string | undefined;\n run: (\n request: RuntimeSessionRunRequest,\n options?: TRunOptions\n ) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;\n runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n};\n\nexport function createRuntimeClient<TRunOptions = never, TRaw = unknown, TLog = unknown>(\n provider: RuntimeProvider,\n execute: {\n resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSessionExecutor<TRunOptions, TRaw, TLog>>;\n run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;\n runStream?: (request: RuntimeTaskRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n startSession: (context: RuntimeSessionContext) => Promise<RuntimeSessionExecutor<TRunOptions, TRaw, TLog>>;\n }\n): RuntimeClient<TRunOptions, RuntimeTaskResult<TRaw, TLog>, TLog> {\n const runStream = execute.runStream;\n\n return {\n provider,\n run: async (request, options) => withProvider(provider, await execute.run(request, options)),\n runStream,\n resumeSession: async (request) => createRuntimeSession(provider, await execute.resumeSession(request)),\n startSession: async (context) => createRuntimeSession(provider, await execute.startSession(context)),\n };\n}\n\nfunction createRuntimeSession<TRunOptions, TRaw, TLog>(\n provider: RuntimeProvider,\n session: RuntimeSessionExecutor<TRunOptions, TRaw, TLog>\n): RuntimeSession<TRunOptions, RuntimeTaskResult<TRaw, TLog>, TLog> {\n const runStream = session.runStream;\n\n return {\n get id() {\n return session.getId();\n },\n provider,\n close: async () => {\n await session.close?.();\n },\n run: async (request, options) => withProvider(provider, await session.run(request, options)),\n runStream,\n };\n}\n\nfunction withProvider<TRaw, TLog>(\n provider: RuntimeProvider,\n response: Omit<RuntimeTaskResult<TRaw, TLog>, 'provider'>\n): RuntimeTaskResult<TRaw, TLog> {\n return {\n ...response,\n provider,\n };\n}\n"],"names":["createRuntimeSession","provider","session","_run2","_close","runStream","id","getId","close","_asyncToGenerator","_regenerator","m","_callee4","_session$close","w","_context4","n","call","a","apply","this","arguments","run","_callee5","request","options","_t7","_t8","_context5","withProvider","v","_x5","_x6","response","_objectSpread","execute","_startSession","_resumeSession","_run","_callee","_t","_t2","_context","_x","_x2","resumeSession","_callee2","_t3","_t4","_context2","_x3","startSession","_callee3","context","_t5","_t6","_context3","_x4"],"mappings":"uEAkFA,SAASA,EACPC,EACAC,GAEA,IAUKC,EAHEC,EAPDC,EAAYH,EAAQG,UAE1B,MAAO,CACL,MAAIC,GACF,OAAOJ,EAAQK,OACjB,EACAN,SAAAA,EACAO,OAAKJ,EAAAK,EAAAA,iBAAAC,EAAAA,cAAAC,EAAE,SAAAC,IAAA,IAAAC,EAAA,OAAAH,gBAAAI,EAAA,SAAAC,GAAA,cAAAA,EAAAC,GAAA,KAAA,EAAA,OAAAD,EAAAC,EAAA,EACc,OADdH,EACCX,EAAQM,cAARK,EAAAI,KAAAf,GAAiB,KAAA,EAAA,OAAAa,EAAAG,EAAA,GAAA,EAAAN,EAAA,IACxB,WAFI,OAAAR,EAAAe,MAAAC,KAAAC,UAAA,GAGLC,KAAGnB,EAAAM,EAAAA,iBAAAC,gBAAAC,EAAE,SAAAY,EAAOC,EAASC,GAAO,IAAAC,EAAAC,EAAA,OAAAjB,gBAAAI,EAAA,SAAAc,GAAA,cAAAA,EAAAZ,GAAA,KAAA,EAA0B,OAA1BU,EAAKG,EAAYF,EAAC1B,EAAQ2B,EAAAZ,EAAA,EAAQd,EAAQoB,IAAIE,EAASC,GAAQ,KAAA,EAAA,OAAAG,EAAAV,EAAA,EAAAQ,EAAAC,EAAAC,EAAAE,IAAA,EAAAP,EAAA,IAAC,SAAzFQ,EAAAC,GAAA,OAAA7B,EAAAgB,MAAAC,KAAAC,UAAA,GACHhB,UAAAA,EAEJ,CAEA,SAASwB,EACP5B,EACAgC,GAEA,OAAAC,EAAAA,cAAAA,EAAAA,cAAA,CAAA,EACKD,GAAQ,CAAA,EAAA,CACXhC,SAAAA,GAEJ,qCA7G2C,CAAC,YAAa,yCA8DlD,SACLA,EACAkC,GAOA,IAOcC,EADCC,EAFVC,EAJCjC,EAAY8B,EAAQ9B,UAE1B,MAAO,CACLJ,SAAAA,EACAqB,KAAGgB,EAAA7B,EAAAA,iBAAAC,gBAAAC,EAAE,SAAA4B,EAAOf,EAASC,GAAO,IAAAe,EAAAC,EAAA,OAAA/B,gBAAAI,EAAA,SAAA4B,GAAA,cAAAA,EAAA1B,GAAA,KAAA,EAA0B,OAA1BwB,EAAKX,EAAYY,EAACxC,EAAQyC,EAAA1B,EAAA,EAAQmB,EAAQb,IAAIE,EAASC,GAAQ,KAAA,EAAA,OAAAiB,EAAAxB,EAAA,EAAAsB,EAAAC,EAAAC,EAAAZ,IAAA,EAAAS,EAAA,IAAC,SAAzFI,EAAAC,GAAA,OAAAN,EAAAnB,MAAAC,KAAAC,UAAA,GACHhB,UAAAA,EACAwC,eAAaR,EAAA5B,EAAAA,iBAAAC,EAAAA,cAAAC,EAAE,SAAAmC,EAAOtB,GAAO,IAAAuB,EAAAC,EAAA,OAAAtC,gBAAAI,EAAA,SAAAmC,GAAA,cAAAA,EAAAjC,GAAA,KAAA,EAAkC,OAAlC+B,EAAK/C,EAAoBgD,EAAC/C,EAAQgD,EAAAjC,EAAA,EAAQmB,EAAQU,cAAcrB,GAAQ,KAAA,EAAA,OAAAyB,EAAA/B,EAAA,EAAA6B,EAAAC,EAAAC,EAAAnB,IAAA,EAAAgB,EAAA,IAAC,SAAzFI,GAAA,OAAAb,EAAAlB,MAAAC,KAAAC,UAAA,GACb8B,cAAYf,EAAA3B,EAAAA,iBAAAC,EAAAA,cAAAC,EAAE,SAAAyC,EAAOC,GAAO,IAAAC,EAAAC,EAAA,OAAA7C,gBAAAI,EAAA,SAAA0C,GAAA,cAAAA,EAAAxC,GAAA,KAAA,EAAkC,OAAlCsC,EAAKtD,EAAoBuD,EAACtD,EAAQuD,EAAAxC,EAAA,EAAQmB,EAAQgB,aAAaE,GAAQ,KAAA,EAAA,OAAAG,EAAAtC,EAAA,EAAAoC,EAAAC,EAAAC,EAAA1B,IAAA,EAAAsB,EAAA,IAAC,SAAxFK,GAAA,OAAArB,EAAAjB,MAAAC,KAAAC,UAAA,GAEhB"}
1
+ {"version":3,"file":"runtime.cjs","sources":["../src/runtime.ts"],"sourcesContent":["export const SUPPORTED_RUNTIME_PROVIDERS = ['codex-sdk', 'agent-sdk'] as const;\n\nexport type RuntimeProvider = (typeof SUPPORTED_RUNTIME_PROVIDERS)[number];\n\nexport interface RuntimeSessionContext {\n cwd: string;\n env?: NodeJS.ProcessEnv;\n}\n\nexport type RuntimeTaskRequest = RuntimeSessionContext & {\n instructions: string;\n};\n\nexport interface RuntimeTaskResult<TRaw = unknown, TLog = unknown> {\n outputText: string;\n provider: RuntimeProvider;\n raw?: TRaw;\n logs?: TLog[];\n}\n\ntype RuntimeTaskResultWithoutProvider<TRaw, TLog> = Omit<RuntimeTaskResult<TRaw, TLog>, 'provider'>;\n\nexport type RuntimeSessionRunRequest = Pick<RuntimeTaskRequest, 'instructions'>;\n\nexport type RuntimeSessionResumeRequest = RuntimeSessionContext & {\n sessionId: string;\n};\n\nexport interface RuntimeSession<\n TRunOptions = never,\n TResult extends RuntimeTaskResult = RuntimeTaskResult,\n TLog = unknown,\n> {\n readonly id: string | undefined;\n readonly provider: RuntimeProvider;\n close: () => Promise<void>;\n run: (request: RuntimeSessionRunRequest, options?: TRunOptions) => Promise<TResult>;\n runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n}\n\nexport interface RuntimeClient<\n TRunOptions = never,\n TResult extends RuntimeTaskResult = RuntimeTaskResult,\n TLog = unknown,\n> {\n provider: RuntimeProvider;\n run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<TResult>;\n runStream?: (request: RuntimeTaskRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n startSession: (context: RuntimeSessionContext) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;\n resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;\n}\n\ninterface RuntimeSessionExecutor<TRunOptions, TRaw, TLog> {\n close?: () => Promise<void> | void;\n getId: () => string | undefined;\n run: (\n request: RuntimeSessionRunRequest,\n options?: TRunOptions\n ) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;\n runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n}\n\nexport function createRuntimeClient<TRunOptions = never, TRaw = unknown, TLog = unknown>(\n provider: RuntimeProvider,\n execute: {\n resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSessionExecutor<TRunOptions, TRaw, TLog>>;\n run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;\n runStream?: (request: RuntimeTaskRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n startSession: (context: RuntimeSessionContext) => Promise<RuntimeSessionExecutor<TRunOptions, TRaw, TLog>>;\n }\n): RuntimeClient<TRunOptions, RuntimeTaskResult<TRaw, TLog>, TLog> {\n const runStream = execute.runStream;\n\n return {\n provider,\n run: async (request, options) => withProvider(provider, await execute.run(request, options)),\n runStream,\n resumeSession: async (request) => createRuntimeSession(provider, await execute.resumeSession(request)),\n startSession: async (context) => createRuntimeSession(provider, await execute.startSession(context)),\n };\n}\n\nfunction createRuntimeSession<TRunOptions, TRaw, TLog>(\n provider: RuntimeProvider,\n session: RuntimeSessionExecutor<TRunOptions, TRaw, TLog>\n): RuntimeSession<TRunOptions, RuntimeTaskResult<TRaw, TLog>, TLog> {\n const runStream = session.runStream;\n\n return {\n get id() {\n return session.getId();\n },\n provider,\n close: async () => {\n await session.close?.();\n },\n run: async (request, options) => withProvider(provider, await session.run(request, options)),\n runStream,\n };\n}\n\nfunction withProvider<TRaw, TLog>(\n provider: RuntimeProvider,\n response: Omit<RuntimeTaskResult<TRaw, TLog>, 'provider'>\n): RuntimeTaskResult<TRaw, TLog> {\n return {\n ...response,\n provider,\n };\n}\n"],"names":["createRuntimeSession","provider","session","_run2","_close","runStream","id","getId","close","_asyncToGenerator","_regenerator","m","_callee4","_session$close","w","_context4","n","call","a","apply","this","arguments","run","_callee5","request","options","_t7","_t8","_context5","withProvider","v","_x5","_x6","response","_objectSpread","execute","_startSession","_resumeSession","_run","_callee","_t","_t2","_context","_x","_x2","resumeSession","_callee2","_t3","_t4","_context2","_x3","startSession","_callee3","context","_t5","_t6","_context3","_x4"],"mappings":"uEAkFA,SAASA,EACPC,EACAC,GAEA,IAUKC,EAHEC,EAPDC,EAAYH,EAAQG,UAE1B,MAAO,CACL,MAAIC,GACF,OAAOJ,EAAQK,OACjB,EACAN,SAAAA,EACAO,OAAKJ,EAAAK,EAAAA,iBAAAC,EAAAA,cAAAC,EAAE,SAAAC,IAAA,IAAAC,EAAA,OAAAH,gBAAAI,EAAA,SAAAC,GAAA,cAAAA,EAAAC,GAAA,KAAA,EAAA,OAAAD,EAAAC,EAAA,EACc,OADdH,EACCX,EAAQM,cAARK,EAAAI,KAAAf,GAAiB,KAAA,EAAA,OAAAa,EAAAG,EAAA,GAAA,EAAAN,EAAA,IACxB,WAFI,OAAAR,EAAAe,MAAAC,KAAAC,UAAA,GAGLC,KAAGnB,EAAAM,EAAAA,iBAAAC,gBAAAC,EAAE,SAAAY,EAAOC,EAASC,GAAO,IAAAC,EAAAC,EAAA,OAAAjB,gBAAAI,EAAA,SAAAc,GAAA,cAAAA,EAAAZ,GAAA,KAAA,EAA0B,OAA1BU,EAAKG,EAAYF,EAAC1B,EAAQ2B,EAAAZ,EAAA,EAAQd,EAAQoB,IAAIE,EAASC,GAAQ,KAAA,EAAA,OAAAG,EAAAV,EAAA,EAAAQ,EAAAC,EAAAC,EAAAE,IAAA,EAAAP,EAAA,IAAC,SAAzFQ,EAAAC,GAAA,OAAA7B,EAAAgB,MAAAC,KAAAC,UAAA,GACHhB,UAAAA,EAEJ,CAEA,SAASwB,EACP5B,EACAgC,GAEA,OAAAC,EAAAA,cAAAA,EAAAA,cAAA,CAAA,EACKD,GAAQ,CAAA,EAAA,CACXhC,SAAAA,GAEJ,qCA7G2C,CAAC,YAAa,yCA8DlD,SACLA,EACAkC,GAOA,IAOcC,EADCC,EAFVC,EAJCjC,EAAY8B,EAAQ9B,UAE1B,MAAO,CACLJ,SAAAA,EACAqB,KAAGgB,EAAA7B,EAAAA,iBAAAC,gBAAAC,EAAE,SAAA4B,EAAOf,EAASC,GAAO,IAAAe,EAAAC,EAAA,OAAA/B,gBAAAI,EAAA,SAAA4B,GAAA,cAAAA,EAAA1B,GAAA,KAAA,EAA0B,OAA1BwB,EAAKX,EAAYY,EAACxC,EAAQyC,EAAA1B,EAAA,EAAQmB,EAAQb,IAAIE,EAASC,GAAQ,KAAA,EAAA,OAAAiB,EAAAxB,EAAA,EAAAsB,EAAAC,EAAAC,EAAAZ,IAAA,EAAAS,EAAA,IAAC,SAAzFI,EAAAC,GAAA,OAAAN,EAAAnB,MAAAC,KAAAC,UAAA,GACHhB,UAAAA,EACAwC,eAAaR,EAAA5B,EAAAA,iBAAAC,EAAAA,cAAAC,EAAE,SAAAmC,EAAOtB,GAAO,IAAAuB,EAAAC,EAAA,OAAAtC,gBAAAI,EAAA,SAAAmC,GAAA,cAAAA,EAAAjC,GAAA,KAAA,EAAkC,OAAlC+B,EAAK/C,EAAoBgD,EAAC/C,EAAQgD,EAAAjC,EAAA,EAAQmB,EAAQU,cAAcrB,GAAQ,KAAA,EAAA,OAAAyB,EAAA/B,EAAA,EAAA6B,EAAAC,EAAAC,EAAAnB,IAAA,EAAAgB,EAAA,IAAC,SAAzFI,GAAA,OAAAb,EAAAlB,MAAAC,KAAAC,UAAA,GACb8B,cAAYf,EAAA3B,EAAAA,iBAAAC,EAAAA,cAAAC,EAAE,SAAAyC,EAAOC,GAAO,IAAAC,EAAAC,EAAA,OAAA7C,gBAAAI,EAAA,SAAA0C,GAAA,cAAAA,EAAAxC,GAAA,KAAA,EAAkC,OAAlCsC,EAAKtD,EAAoBuD,EAACtD,EAAQuD,EAAAxC,EAAA,EAAQmB,EAAQgB,aAAaE,GAAQ,KAAA,EAAA,OAAAG,EAAAtC,EAAA,EAAAoC,EAAAC,EAAAC,EAAA1B,IAAA,EAAAsB,EAAA,IAAC,SAAxFK,GAAA,OAAArB,EAAAjB,MAAAC,KAAAC,UAAA,GAEhB"}
package/dist/runtime.d.ts CHANGED
@@ -1,43 +1,43 @@
1
- export declare const SUPPORTED_RUNTIME_PROVIDERS: readonly ["codex-sdk", "agent-sdk"];
1
+ export declare const SUPPORTED_RUNTIME_PROVIDERS: readonly ['codex-sdk', 'agent-sdk'];
2
2
  export type RuntimeProvider = (typeof SUPPORTED_RUNTIME_PROVIDERS)[number];
3
- export type RuntimeSessionContext = {
3
+ export interface RuntimeSessionContext {
4
4
  cwd: string;
5
5
  env?: NodeJS.ProcessEnv;
6
- };
6
+ }
7
7
  export type RuntimeTaskRequest = RuntimeSessionContext & {
8
8
  instructions: string;
9
9
  };
10
- export type RuntimeTaskResult<TRaw = unknown, TLog = unknown> = {
10
+ export interface RuntimeTaskResult<TRaw = unknown, TLog = unknown> {
11
11
  outputText: string;
12
12
  provider: RuntimeProvider;
13
13
  raw?: TRaw;
14
14
  logs?: TLog[];
15
- };
15
+ }
16
16
  type RuntimeTaskResultWithoutProvider<TRaw, TLog> = Omit<RuntimeTaskResult<TRaw, TLog>, 'provider'>;
17
17
  export type RuntimeSessionRunRequest = Pick<RuntimeTaskRequest, 'instructions'>;
18
18
  export type RuntimeSessionResumeRequest = RuntimeSessionContext & {
19
19
  sessionId: string;
20
20
  };
21
- export type RuntimeSession<TRunOptions = never, TResult extends RuntimeTaskResult = RuntimeTaskResult, TLog = unknown> = {
21
+ export interface RuntimeSession<TRunOptions = never, TResult extends RuntimeTaskResult = RuntimeTaskResult, TLog = unknown> {
22
22
  readonly id: string | undefined;
23
23
  readonly provider: RuntimeProvider;
24
24
  close: () => Promise<void>;
25
25
  run: (request: RuntimeSessionRunRequest, options?: TRunOptions) => Promise<TResult>;
26
26
  runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;
27
- };
28
- export type RuntimeClient<TRunOptions = never, TResult extends RuntimeTaskResult = RuntimeTaskResult, TLog = unknown> = {
27
+ }
28
+ export interface RuntimeClient<TRunOptions = never, TResult extends RuntimeTaskResult = RuntimeTaskResult, TLog = unknown> {
29
29
  provider: RuntimeProvider;
30
30
  run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<TResult>;
31
31
  runStream?: (request: RuntimeTaskRequest, options?: TRunOptions) => AsyncIterable<TLog>;
32
32
  startSession: (context: RuntimeSessionContext) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;
33
33
  resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;
34
- };
35
- type RuntimeSessionExecutor<TRunOptions, TRaw, TLog> = {
34
+ }
35
+ interface RuntimeSessionExecutor<TRunOptions, TRaw, TLog> {
36
36
  close?: () => Promise<void> | void;
37
37
  getId: () => string | undefined;
38
38
  run: (request: RuntimeSessionRunRequest, options?: TRunOptions) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;
39
39
  runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;
40
- };
40
+ }
41
41
  export declare function createRuntimeClient<TRunOptions = never, TRaw = unknown, TLog = unknown>(provider: RuntimeProvider, execute: {
42
42
  resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSessionExecutor<TRunOptions, TRaw, TLog>>;
43
43
  run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sources":["../src/runtime.ts"],"sourcesContent":["export const SUPPORTED_RUNTIME_PROVIDERS = ['codex-sdk', 'agent-sdk'] as const;\n\nexport type RuntimeProvider = (typeof SUPPORTED_RUNTIME_PROVIDERS)[number];\n\nexport type RuntimeSessionContext = {\n cwd: string;\n env?: NodeJS.ProcessEnv;\n};\n\nexport type RuntimeTaskRequest = RuntimeSessionContext & {\n instructions: string;\n};\n\nexport type RuntimeTaskResult<TRaw = unknown, TLog = unknown> = {\n outputText: string;\n provider: RuntimeProvider;\n raw?: TRaw;\n logs?: TLog[];\n};\n\ntype RuntimeTaskResultWithoutProvider<TRaw, TLog> = Omit<RuntimeTaskResult<TRaw, TLog>, 'provider'>;\n\nexport type RuntimeSessionRunRequest = Pick<RuntimeTaskRequest, 'instructions'>;\n\nexport type RuntimeSessionResumeRequest = RuntimeSessionContext & {\n sessionId: string;\n};\n\nexport type RuntimeSession<\n TRunOptions = never,\n TResult extends RuntimeTaskResult = RuntimeTaskResult,\n TLog = unknown,\n> = {\n readonly id: string | undefined;\n readonly provider: RuntimeProvider;\n close: () => Promise<void>;\n run: (request: RuntimeSessionRunRequest, options?: TRunOptions) => Promise<TResult>;\n runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n};\n\nexport type RuntimeClient<\n TRunOptions = never,\n TResult extends RuntimeTaskResult = RuntimeTaskResult,\n TLog = unknown,\n> = {\n provider: RuntimeProvider;\n run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<TResult>;\n runStream?: (request: RuntimeTaskRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n startSession: (context: RuntimeSessionContext) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;\n resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;\n};\n\ntype RuntimeSessionExecutor<TRunOptions, TRaw, TLog> = {\n close?: () => Promise<void> | void;\n getId: () => string | undefined;\n run: (\n request: RuntimeSessionRunRequest,\n options?: TRunOptions\n ) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;\n runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n};\n\nexport function createRuntimeClient<TRunOptions = never, TRaw = unknown, TLog = unknown>(\n provider: RuntimeProvider,\n execute: {\n resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSessionExecutor<TRunOptions, TRaw, TLog>>;\n run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;\n runStream?: (request: RuntimeTaskRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n startSession: (context: RuntimeSessionContext) => Promise<RuntimeSessionExecutor<TRunOptions, TRaw, TLog>>;\n }\n): RuntimeClient<TRunOptions, RuntimeTaskResult<TRaw, TLog>, TLog> {\n const runStream = execute.runStream;\n\n return {\n provider,\n run: async (request, options) => withProvider(provider, await execute.run(request, options)),\n runStream,\n resumeSession: async (request) => createRuntimeSession(provider, await execute.resumeSession(request)),\n startSession: async (context) => createRuntimeSession(provider, await execute.startSession(context)),\n };\n}\n\nfunction createRuntimeSession<TRunOptions, TRaw, TLog>(\n provider: RuntimeProvider,\n session: RuntimeSessionExecutor<TRunOptions, TRaw, TLog>\n): RuntimeSession<TRunOptions, RuntimeTaskResult<TRaw, TLog>, TLog> {\n const runStream = session.runStream;\n\n return {\n get id() {\n return session.getId();\n },\n provider,\n close: async () => {\n await session.close?.();\n },\n run: async (request, options) => withProvider(provider, await session.run(request, options)),\n runStream,\n };\n}\n\nfunction withProvider<TRaw, TLog>(\n provider: RuntimeProvider,\n response: Omit<RuntimeTaskResult<TRaw, TLog>, 'provider'>\n): RuntimeTaskResult<TRaw, TLog> {\n return {\n ...response,\n provider,\n };\n}\n"],"names":["SUPPORTED_RUNTIME_PROVIDERS","createRuntimeClient","provider","execute","_startSession","_resumeSession","_run","runStream","run","_asyncToGenerator","_regenerator","m","_callee","request","options","_t","_t2","w","_context","n","withProvider","a","v","_x","_x2","apply","this","arguments","resumeSession","_callee2","_t3","_t4","_context2","createRuntimeSession","_x3","startSession","_callee3","context","_t5","_t6","_context3","_x4","session","_run2","_close","id","getId","close","_callee4","_session$close","_context4","call","_callee5","_t7","_t8","_context5","_x5","_x6","response","_objectSpread"],"mappings":"mHAAaA,EAA8B,CAAC,YAAa,aA8DlD,SAASC,EACdC,EACAC,GAOA,IAOcC,EADCC,EAFVC,EAJCC,EAAYJ,EAAQI,UAE1B,MAAO,CACLL,SAAAA,EACAM,KAAGF,EAAAG,EAAAC,IAAAC,EAAE,SAAAC,EAAOC,EAASC,GAAO,IAAAC,EAAAC,EAAA,OAAAN,IAAAO,EAAA,SAAAC,GAAA,cAAAA,EAAAC,GAAA,KAAA,EAA0B,OAA1BJ,EAAKK,EAAYJ,EAACd,EAAQgB,EAAAC,EAAA,EAAQhB,EAAQK,IAAIK,EAASC,GAAQ,KAAA,EAAA,OAAAI,EAAAG,EAAA,EAAAN,EAAAC,EAAAE,EAAAI,IAAA,EAAAV,EAAA,IAAC,SAAzFW,EAAAC,GAAA,OAAAlB,EAAAmB,MAAAC,KAAAC,UAAA,GACHpB,UAAAA,EACAqB,eAAavB,EAAAI,EAAAC,IAAAC,EAAE,SAAAkB,EAAOhB,GAAO,IAAAiB,EAAAC,EAAA,OAAArB,IAAAO,EAAA,SAAAe,GAAA,cAAAA,EAAAb,GAAA,KAAA,EAAkC,OAAlCW,EAAKG,EAAoBF,EAAC7B,EAAQ8B,EAAAb,EAAA,EAAQhB,EAAQyB,cAAcf,GAAQ,KAAA,EAAA,OAAAmB,EAAAX,EAAA,EAAAS,EAAAC,EAAAC,EAAAV,IAAA,EAAAO,EAAA,IAAC,SAAzFK,GAAA,OAAA7B,EAAAoB,MAAAC,KAAAC,UAAA,GACbQ,cAAY/B,EAAAK,EAAAC,IAAAC,EAAE,SAAAyB,EAAOC,GAAO,IAAAC,EAAAC,EAAA,OAAA7B,IAAAO,EAAA,SAAAuB,GAAA,cAAAA,EAAArB,GAAA,KAAA,EAAkC,OAAlCmB,EAAKL,EAAoBM,EAACrC,EAAQsC,EAAArB,EAAA,EAAQhB,EAAQgC,aAAaE,GAAQ,KAAA,EAAA,OAAAG,EAAAnB,EAAA,EAAAiB,EAAAC,EAAAC,EAAAlB,IAAA,EAAAc,EAAA,IAAC,SAAxFK,GAAA,OAAArC,EAAAqB,MAAAC,KAAAC,UAAA,GAEhB,CAEA,SAASM,EACP/B,EACAwC,GAEA,IAUKC,EAHEC,EAPDrC,EAAYmC,EAAQnC,UAE1B,MAAO,CACL,MAAIsC,GACF,OAAOH,EAAQI,OACjB,EACA5C,SAAAA,EACA6C,OAAKH,EAAAnC,EAAAC,IAAAC,EAAE,SAAAqC,IAAA,IAAAC,EAAA,OAAAvC,IAAAO,EAAA,SAAAiC,GAAA,cAAAA,EAAA/B,GAAA,KAAA,EAAA,OAAA+B,EAAA/B,EAAA,EACc,OADd8B,EACCP,EAAQK,cAARE,EAAAE,KAAAT,GAAiB,KAAA,EAAA,OAAAQ,EAAA7B,EAAA,GAAA,EAAA2B,EAAA,IACxB,WAFI,OAAAJ,EAAAnB,MAAAC,KAAAC,UAAA,GAGLnB,KAAGmC,EAAAlC,EAAAC,IAAAC,EAAE,SAAAyC,EAAOvC,EAASC,GAAO,IAAAuC,EAAAC,EAAA,OAAA5C,IAAAO,EAAA,SAAAsC,GAAA,cAAAA,EAAApC,GAAA,KAAA,EAA0B,OAA1BkC,EAAKjC,EAAYkC,EAACpD,EAAQqD,EAAApC,EAAA,EAAQuB,EAAQlC,IAAIK,EAASC,GAAQ,KAAA,EAAA,OAAAyC,EAAAlC,EAAA,EAAAgC,EAAAC,EAAAC,EAAAjC,IAAA,EAAA8B,EAAA,IAAC,SAAzFI,EAAAC,GAAA,OAAAd,EAAAlB,MAAAC,KAAAC,UAAA,GACHpB,UAAAA,EAEJ,CAEA,SAASa,EACPlB,EACAwD,GAEA,OAAAC,EAAAA,EAAA,CAAA,EACKD,GAAQ,CAAA,EAAA,CACXxD,SAAAA,GAEJ"}
1
+ {"version":3,"file":"runtime.js","sources":["../src/runtime.ts"],"sourcesContent":["export const SUPPORTED_RUNTIME_PROVIDERS = ['codex-sdk', 'agent-sdk'] as const;\n\nexport type RuntimeProvider = (typeof SUPPORTED_RUNTIME_PROVIDERS)[number];\n\nexport interface RuntimeSessionContext {\n cwd: string;\n env?: NodeJS.ProcessEnv;\n}\n\nexport type RuntimeTaskRequest = RuntimeSessionContext & {\n instructions: string;\n};\n\nexport interface RuntimeTaskResult<TRaw = unknown, TLog = unknown> {\n outputText: string;\n provider: RuntimeProvider;\n raw?: TRaw;\n logs?: TLog[];\n}\n\ntype RuntimeTaskResultWithoutProvider<TRaw, TLog> = Omit<RuntimeTaskResult<TRaw, TLog>, 'provider'>;\n\nexport type RuntimeSessionRunRequest = Pick<RuntimeTaskRequest, 'instructions'>;\n\nexport type RuntimeSessionResumeRequest = RuntimeSessionContext & {\n sessionId: string;\n};\n\nexport interface RuntimeSession<\n TRunOptions = never,\n TResult extends RuntimeTaskResult = RuntimeTaskResult,\n TLog = unknown,\n> {\n readonly id: string | undefined;\n readonly provider: RuntimeProvider;\n close: () => Promise<void>;\n run: (request: RuntimeSessionRunRequest, options?: TRunOptions) => Promise<TResult>;\n runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n}\n\nexport interface RuntimeClient<\n TRunOptions = never,\n TResult extends RuntimeTaskResult = RuntimeTaskResult,\n TLog = unknown,\n> {\n provider: RuntimeProvider;\n run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<TResult>;\n runStream?: (request: RuntimeTaskRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n startSession: (context: RuntimeSessionContext) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;\n resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSession<TRunOptions, TResult, TLog>>;\n}\n\ninterface RuntimeSessionExecutor<TRunOptions, TRaw, TLog> {\n close?: () => Promise<void> | void;\n getId: () => string | undefined;\n run: (\n request: RuntimeSessionRunRequest,\n options?: TRunOptions\n ) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;\n runStream?: (request: RuntimeSessionRunRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n}\n\nexport function createRuntimeClient<TRunOptions = never, TRaw = unknown, TLog = unknown>(\n provider: RuntimeProvider,\n execute: {\n resumeSession: (request: RuntimeSessionResumeRequest) => Promise<RuntimeSessionExecutor<TRunOptions, TRaw, TLog>>;\n run: (request: RuntimeTaskRequest, options?: TRunOptions) => Promise<RuntimeTaskResultWithoutProvider<TRaw, TLog>>;\n runStream?: (request: RuntimeTaskRequest, options?: TRunOptions) => AsyncIterable<TLog>;\n startSession: (context: RuntimeSessionContext) => Promise<RuntimeSessionExecutor<TRunOptions, TRaw, TLog>>;\n }\n): RuntimeClient<TRunOptions, RuntimeTaskResult<TRaw, TLog>, TLog> {\n const runStream = execute.runStream;\n\n return {\n provider,\n run: async (request, options) => withProvider(provider, await execute.run(request, options)),\n runStream,\n resumeSession: async (request) => createRuntimeSession(provider, await execute.resumeSession(request)),\n startSession: async (context) => createRuntimeSession(provider, await execute.startSession(context)),\n };\n}\n\nfunction createRuntimeSession<TRunOptions, TRaw, TLog>(\n provider: RuntimeProvider,\n session: RuntimeSessionExecutor<TRunOptions, TRaw, TLog>\n): RuntimeSession<TRunOptions, RuntimeTaskResult<TRaw, TLog>, TLog> {\n const runStream = session.runStream;\n\n return {\n get id() {\n return session.getId();\n },\n provider,\n close: async () => {\n await session.close?.();\n },\n run: async (request, options) => withProvider(provider, await session.run(request, options)),\n runStream,\n };\n}\n\nfunction withProvider<TRaw, TLog>(\n provider: RuntimeProvider,\n response: Omit<RuntimeTaskResult<TRaw, TLog>, 'provider'>\n): RuntimeTaskResult<TRaw, TLog> {\n return {\n ...response,\n provider,\n };\n}\n"],"names":["SUPPORTED_RUNTIME_PROVIDERS","createRuntimeClient","provider","execute","_startSession","_resumeSession","_run","runStream","run","_asyncToGenerator","_regenerator","m","_callee","request","options","_t","_t2","w","_context","n","withProvider","a","v","_x","_x2","apply","this","arguments","resumeSession","_callee2","_t3","_t4","_context2","createRuntimeSession","_x3","startSession","_callee3","context","_t5","_t6","_context3","_x4","session","_run2","_close","id","getId","close","_callee4","_session$close","_context4","call","_callee5","_t7","_t8","_context5","_x5","_x6","response","_objectSpread"],"mappings":"mHAAaA,EAA8B,CAAC,YAAa,aA8DlD,SAASC,EACdC,EACAC,GAOA,IAOcC,EADCC,EAFVC,EAJCC,EAAYJ,EAAQI,UAE1B,MAAO,CACLL,SAAAA,EACAM,KAAGF,EAAAG,EAAAC,IAAAC,EAAE,SAAAC,EAAOC,EAASC,GAAO,IAAAC,EAAAC,EAAA,OAAAN,IAAAO,EAAA,SAAAC,GAAA,cAAAA,EAAAC,GAAA,KAAA,EAA0B,OAA1BJ,EAAKK,EAAYJ,EAACd,EAAQgB,EAAAC,EAAA,EAAQhB,EAAQK,IAAIK,EAASC,GAAQ,KAAA,EAAA,OAAAI,EAAAG,EAAA,EAAAN,EAAAC,EAAAE,EAAAI,IAAA,EAAAV,EAAA,IAAC,SAAzFW,EAAAC,GAAA,OAAAlB,EAAAmB,MAAAC,KAAAC,UAAA,GACHpB,UAAAA,EACAqB,eAAavB,EAAAI,EAAAC,IAAAC,EAAE,SAAAkB,EAAOhB,GAAO,IAAAiB,EAAAC,EAAA,OAAArB,IAAAO,EAAA,SAAAe,GAAA,cAAAA,EAAAb,GAAA,KAAA,EAAkC,OAAlCW,EAAKG,EAAoBF,EAAC7B,EAAQ8B,EAAAb,EAAA,EAAQhB,EAAQyB,cAAcf,GAAQ,KAAA,EAAA,OAAAmB,EAAAX,EAAA,EAAAS,EAAAC,EAAAC,EAAAV,IAAA,EAAAO,EAAA,IAAC,SAAzFK,GAAA,OAAA7B,EAAAoB,MAAAC,KAAAC,UAAA,GACbQ,cAAY/B,EAAAK,EAAAC,IAAAC,EAAE,SAAAyB,EAAOC,GAAO,IAAAC,EAAAC,EAAA,OAAA7B,IAAAO,EAAA,SAAAuB,GAAA,cAAAA,EAAArB,GAAA,KAAA,EAAkC,OAAlCmB,EAAKL,EAAoBM,EAACrC,EAAQsC,EAAArB,EAAA,EAAQhB,EAAQgC,aAAaE,GAAQ,KAAA,EAAA,OAAAG,EAAAnB,EAAA,EAAAiB,EAAAC,EAAAC,EAAAlB,IAAA,EAAAc,EAAA,IAAC,SAAxFK,GAAA,OAAArC,EAAAqB,MAAAC,KAAAC,UAAA,GAEhB,CAEA,SAASM,EACP/B,EACAwC,GAEA,IAUKC,EAHEC,EAPDrC,EAAYmC,EAAQnC,UAE1B,MAAO,CACL,MAAIsC,GACF,OAAOH,EAAQI,OACjB,EACA5C,SAAAA,EACA6C,OAAKH,EAAAnC,EAAAC,IAAAC,EAAE,SAAAqC,IAAA,IAAAC,EAAA,OAAAvC,IAAAO,EAAA,SAAAiC,GAAA,cAAAA,EAAA/B,GAAA,KAAA,EAAA,OAAA+B,EAAA/B,EAAA,EACc,OADd8B,EACCP,EAAQK,cAARE,EAAAE,KAAAT,GAAiB,KAAA,EAAA,OAAAQ,EAAA7B,EAAA,GAAA,EAAA2B,EAAA,IACxB,WAFI,OAAAJ,EAAAnB,MAAAC,KAAAC,UAAA,GAGLnB,KAAGmC,EAAAlC,EAAAC,IAAAC,EAAE,SAAAyC,EAAOvC,EAASC,GAAO,IAAAuC,EAAAC,EAAA,OAAA5C,IAAAO,EAAA,SAAAsC,GAAA,cAAAA,EAAApC,GAAA,KAAA,EAA0B,OAA1BkC,EAAKjC,EAAYkC,EAACpD,EAAQqD,EAAApC,EAAA,EAAQuB,EAAQlC,IAAIK,EAASC,GAAQ,KAAA,EAAA,OAAAyC,EAAAlC,EAAA,EAAAgC,EAAAC,EAAAC,EAAAjC,IAAA,EAAA8B,EAAA,IAAC,SAAzFI,EAAAC,GAAA,OAAAd,EAAAlB,MAAAC,KAAAC,UAAA,GACHpB,UAAAA,EAEJ,CAEA,SAASa,EACPlB,EACAwD,GAEA,OAAAC,EAAAA,EAAA,CAAA,EACKD,GAAQ,CAAA,EAAA,CACXxD,SAAAA,GAEJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-runtime-kit",
3
- "version": "1.2.0",
3
+ "version": "1.2.2",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/WillBooster/agent-runtime-kit.git"
@@ -22,7 +22,7 @@
22
22
  "scripts": {
23
23
  "build": "build-ts lib",
24
24
  "check-all-for-ai": "bun run check-for-ai && bun run test",
25
- "check-for-ai": "bun install > /dev/null && bun run cleanup && bun run typecheck",
25
+ "check-for-ai": "bun install > /dev/null && bun run cleanup",
26
26
  "cleanup": "bun --bun wb lint --fix --format",
27
27
  "format": "bun --bun wb lint --format",
28
28
  "lint": "bun --bun wb lint",
@@ -30,29 +30,32 @@
30
30
  "prepare": "lefthook install || true",
31
31
  "release": "semantic-release",
32
32
  "test": "bun wb test",
33
- "test:e2e-github": "bun test test/e2e/github-pr.test.ts",
33
+ "test:e2e-github": "bun test test/e2e/githubPr.test.ts",
34
34
  "typecheck": "bun --bun wb typecheck"
35
35
  },
36
36
  "prettier": "@willbooster/prettier-config",
37
37
  "dependencies": {
38
- "@anthropic-ai/claude-agent-sdk": "0.2.92",
39
- "@openai/codex-sdk": "0.118.0"
38
+ "@anthropic-ai/claude-agent-sdk": "0.2.104",
39
+ "@openai/codex-sdk": "0.120.0"
40
40
  },
41
41
  "devDependencies": {
42
- "@biomejs/biome": "2.4.10",
43
42
  "@tsconfig/bun": "1.0.10",
44
- "@types/bun": "1.3.11",
45
- "@willbooster/biome-config": "3.4.1",
43
+ "@types/bun": "1.3.12",
44
+ "@typescript/native-preview": "7.0.0-dev.20260417.1",
45
+ "@willbooster/oxfmt-config": "1.2.1",
46
+ "@willbooster/oxlint-config": "1.4.4",
46
47
  "@willbooster/prettier-config": "10.4.0",
47
- "@willbooster/wb": "13.8.1",
48
- "build-ts": "^17.0.26",
48
+ "@willbooster/wb": "13.11.5",
49
+ "build-ts": "17.1.0",
49
50
  "conventional-changelog-conventionalcommits": "9.3.1",
50
51
  "lefthook": "2.1.5",
51
- "prettier": "3.8.1",
52
+ "oxfmt": "0.45.0",
53
+ "oxlint": "1.60.0",
54
+ "oxlint-tsgolint": "0.21.0",
55
+ "prettier": "3.8.2",
52
56
  "prettier-plugin-java": "2.8.1",
53
57
  "semantic-release": "25.0.3",
54
- "sort-package-json": "3.6.1",
55
- "typescript": "^5.9.3"
58
+ "sort-package-json": "3.6.1"
56
59
  },
57
60
  "engines": {
58
61
  "node": ">=24"