@ekairos/openai-reactor 1.22.33-beta.development.0 → 1.22.35-beta.development.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,41 +1,27 @@
1
1
  # @ekairos/openai-reactor
2
2
 
3
- Codex reactor for `@ekairos/events`.
4
-
5
- This package is Codex-only:
6
- - only `createCodexReactor` is exported,
7
- - no generic OpenAI model reactor is provided here.
3
+ Codex/OpenAI reactor package for `@ekairos/events`.
8
4
 
9
5
  ## Exports
10
6
 
11
- - `createCodexReactor(options)`
12
- Codex App Server reactor for direct Context execution (no tool indirection).
13
- - `mapCodexChunkType(providerChunkType)`
14
- Maps provider chunk types to canonical Context chunk types.
15
- - `defaultMapCodexChunk(providerChunk)`
16
- Default provider-chunk mapper used by the reactor.
7
+ - `createCodexReactor(...)`
8
+ - `mapCodexChunkType(...)`
9
+ - `defaultMapCodexChunk(...)`
17
10
 
18
- ## Codex Reactor Example
11
+ ## Usage
19
12
 
20
13
  ```ts
21
- import { createContext } from "@ekairos/events";
22
14
  import { createCodexReactor } from "@ekairos/openai-reactor";
23
15
 
24
16
  const reactor = createCodexReactor({
25
- resolveConfig: async ({ env, contextId }) => {
17
+ resolveConfig: async () => {
26
18
  "use step";
27
- return {
28
- appServerUrl: env.appServerUrl,
29
- repoPath: env.repoPath,
30
- providerContextId: env.providerContextId,
31
- mode: "local",
32
- };
19
+ return { mode: "local" };
33
20
  },
34
- executeTurn: async ({ config, instruction, writable }) => {
21
+ executeTurn: async () => {
35
22
  "use step";
36
- // call codex app server / stream
37
23
  return {
38
- providerContextId: config.providerContextId ?? "context_1",
24
+ providerContextId: "context_1",
39
25
  turnId: "turn_1",
40
26
  assistantText: "Done.",
41
27
  reasoningText: "",
@@ -44,45 +30,12 @@ const reactor = createCodexReactor({
44
30
  };
45
31
  },
46
32
  });
47
-
48
- const codingContext = createContext<any>("code.agent")
49
- .context((stored) => stored.content ?? {})
50
- .narrative(() => "Ekairos coding context")
51
- .actions(() => ({}))
52
- .reactor(reactor)
53
- .shouldContinue(() => false)
54
- .build();
55
33
  ```
56
34
 
57
- ## Provider stream -> Context mapping
58
-
59
- For each provider chunk you emit via `emitChunk(providerChunk)`, the reactor writes:
60
-
61
- - SSE chunk event: `data-chunk.emitted` with canonical `chunkType` (`chunk.text_delta`, `chunk.action_input_available`, etc.)
62
- - `codex-event` part metadata on the persisted output item:
63
- - `streamTrace.totalChunks`
64
- - `streamTrace.chunkTypes`
65
- - `streamTrace.providerChunkTypes`
66
- - `streamTrace.chunks[]` (configurable)
67
-
68
- Default behavior persists stream trace summary and mapped chunks in the final `codex-event`.
69
-
70
- Config options:
35
+ ## Tests
71
36
 
72
- - `includeStreamTraceInOutput` (default: `true`)
73
- - `includeRawProviderChunksInOutput` (default: `false`)
74
- - `maxPersistedStreamChunks` (default: `300`)
75
- - `onMappedChunk(chunk, params)` hook for custom telemetry pipelines
76
-
77
- ## Workflow Compatibility
78
-
79
- `resolveConfig` and `executeTurn` should be implemented as workflow-safe step functions when they perform I/O.
80
-
81
- ## AI SDK generic reactor
82
-
83
- `createAiSdkReactor(...)` is provider-agnostic and lives in `@ekairos/events`.
84
-
85
- ## TODO
86
-
87
- - Continuity across machines should be validated end-to-end with persisted session state.
88
- - Current continuity assumption in local tests is: keep the same `contextId` and reuse the same provider `providerContextId` between turns.
37
+ ```bash
38
+ pnpm --filter @ekairos/openai-reactor test
39
+ pnpm --filter @ekairos/openai-reactor test:reactor
40
+ pnpm --filter @ekairos/openai-reactor test:reactor:instant
41
+ ```
@@ -9,6 +9,32 @@ export type CodexConfig = {
9
9
  model?: string;
10
10
  approvalPolicy?: string;
11
11
  sandboxPolicy?: Record<string, unknown>;
12
+ sandbox?: CodexSandboxConfig;
13
+ };
14
+ type CodexActionSpec = {
15
+ type?: "function";
16
+ description?: string;
17
+ inputSchema?: unknown;
18
+ };
19
+ export type CodexSandboxConfig = {
20
+ sandboxId?: string;
21
+ provider?: "sprites" | "vercel";
22
+ runtime?: string;
23
+ purpose?: string;
24
+ spriteName?: string;
25
+ ports?: number[];
26
+ vercel?: Record<string, unknown>;
27
+ codexHome?: string;
28
+ authJsonPath?: string;
29
+ credentialsJsonPath?: string;
30
+ configTomlPath?: string;
31
+ bridgePort?: number;
32
+ appPort?: number;
33
+ createApp?: boolean;
34
+ installApp?: boolean;
35
+ startApp?: boolean;
36
+ checkpoint?: boolean;
37
+ debugExposeBridge?: boolean;
12
38
  };
13
39
  export type CodexTurnResult = {
14
40
  providerContextId: string;
@@ -22,6 +48,7 @@ export type CodexTurnResult = {
22
48
  };
23
49
  export type CodexExecuteTurnArgs<Context, Config extends CodexConfig = CodexConfig, Env extends ContextEnvironment = ContextEnvironment> = {
24
50
  env: Env;
51
+ runtime?: unknown;
25
52
  context: AnyRecord;
26
53
  triggerEvent: ContextItem;
27
54
  contextId: string;
@@ -30,12 +57,38 @@ export type CodexExecuteTurnArgs<Context, Config extends CodexConfig = CodexConf
30
57
  stepId: string;
31
58
  iteration: number;
32
59
  instruction: string;
60
+ systemPrompt?: string;
33
61
  config: Config;
62
+ actions: Record<string, unknown>;
63
+ actionSpecs: Record<string, CodexActionSpec>;
34
64
  skills: ContextSkillPackage[];
65
+ storedContext?: unknown;
66
+ contextIdentifier?: unknown;
67
+ contextStepStream?: WritableStream<string>;
35
68
  writable?: WritableStream<unknown>;
36
69
  silent: boolean;
37
70
  emitChunk: (providerChunk: unknown) => Promise<void>;
38
71
  };
72
+ export type CodexAppServerTurnStepArgs<Config extends CodexConfig = CodexConfig> = {
73
+ config: Config;
74
+ env?: ContextEnvironment;
75
+ runtime?: unknown;
76
+ instruction: string;
77
+ systemPrompt?: string;
78
+ contextId: string;
79
+ eventId: string;
80
+ executionId: string;
81
+ stepId: string;
82
+ iteration?: number;
83
+ context?: AnyRecord;
84
+ actions?: Record<string, unknown>;
85
+ actionSpecs?: Record<string, CodexActionSpec>;
86
+ storedContext?: unknown;
87
+ contextIdentifier?: unknown;
88
+ contextStepStream?: WritableStream<string>;
89
+ writable?: WritableStream<unknown>;
90
+ silent: boolean;
91
+ };
39
92
  export type CodexChunkMappingResult = {
40
93
  chunkType: ContextStreamChunkType;
41
94
  providerChunkType?: string;
@@ -77,7 +130,7 @@ export type CreateCodexReactorOptions<Context, Config extends CodexConfig = Code
77
130
  stepId: string;
78
131
  iteration: number;
79
132
  }) => Promise<Config>;
80
- executeTurn: (args: CodexExecuteTurnArgs<Context, Config, Env>) => Promise<CodexTurnResult>;
133
+ executeTurn?: (args: CodexExecuteTurnArgs<Context, Config, Env>) => Promise<CodexTurnResult>;
81
134
  mapChunk?: (providerChunk: unknown) => CodexChunkMappingResult | null;
82
135
  includeStreamTraceInOutput?: boolean;
83
136
  includeRawProviderChunksInOutput?: boolean;
@@ -87,6 +140,7 @@ export type CreateCodexReactorOptions<Context, Config extends CodexConfig = Code
87
140
  export declare function mapCodexChunkType(providerChunkType: string): ContextStreamChunkType;
88
141
  export declare function mapCodexAppServerNotification(providerChunk: unknown): CodexChunkMappingResult | null;
89
142
  export declare function defaultMapCodexChunk(providerChunk: unknown): CodexChunkMappingResult;
143
+ export declare function executeCodexAppServerTurnStep<Config extends CodexConfig = CodexConfig>(args: CodexAppServerTurnStepArgs<Config>): Promise<CodexTurnResult>;
90
144
  /**
91
145
  * Codex App Server reactor for @ekairos/events.
92
146
  *
@@ -98,4 +152,5 @@ export declare function defaultMapCodexChunk(providerChunk: unknown): CodexChunk
98
152
  * wrappers when they perform I/O.
99
153
  */
100
154
  export declare function createCodexReactor<Context, Config extends CodexConfig = CodexConfig, Env extends ContextEnvironment = ContextEnvironment>(options: CreateCodexReactorOptions<Context, Config, Env>): ContextReactor<Context, Env>;
155
+ export {};
101
156
  //# sourceMappingURL=codex.reactor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex.reactor.d.ts","sourceRoot":"","sources":["../src/codex.reactor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex.reactor.d.ts","sourceRoot":"","sources":["../src/codex.reactor.ts"],"names":[],"mappings":"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"}