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

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;
@@ -21,7 +47,7 @@ export type CodexTurnResult = {
21
47
  usage?: Record<string, unknown>;
22
48
  };
23
49
  export type CodexExecuteTurnArgs<Context, Config extends CodexConfig = CodexConfig, Env extends ContextEnvironment = ContextEnvironment> = {
24
- env: Env;
50
+ runtime?: unknown;
25
51
  context: AnyRecord;
26
52
  triggerEvent: ContextItem;
27
53
  contextId: string;
@@ -30,15 +56,42 @@ export type CodexExecuteTurnArgs<Context, Config extends CodexConfig = CodexConf
30
56
  stepId: string;
31
57
  iteration: number;
32
58
  instruction: string;
59
+ systemPrompt?: string;
33
60
  config: Config;
61
+ actions: Record<string, unknown>;
62
+ actionSpecs: Record<string, CodexActionSpec>;
34
63
  skills: ContextSkillPackage[];
64
+ storedContext?: unknown;
65
+ contextIdentifier?: unknown;
66
+ contextStepStream?: WritableStream<string>;
35
67
  writable?: WritableStream<unknown>;
36
- silent: boolean;
37
68
  emitChunk: (providerChunk: unknown) => Promise<void>;
38
69
  };
70
+ export type CodexAppServerTurnStepArgs<Config extends CodexConfig = CodexConfig> = {
71
+ config: Config;
72
+ env?: ContextEnvironment;
73
+ runtime?: unknown;
74
+ instruction: string;
75
+ systemPrompt?: string;
76
+ contextId: string;
77
+ eventId: string;
78
+ executionId: string;
79
+ stepId: string;
80
+ iteration?: number;
81
+ context?: AnyRecord;
82
+ actions?: Record<string, unknown>;
83
+ actionSpecs?: Record<string, CodexActionSpec>;
84
+ storedContext?: unknown;
85
+ contextIdentifier?: unknown;
86
+ contextStepStream?: WritableStream<string>;
87
+ writable?: WritableStream<unknown>;
88
+ };
39
89
  export type CodexChunkMappingResult = {
40
90
  chunkType: ContextStreamChunkType;
41
91
  providerChunkType?: string;
92
+ providerPartId?: string;
93
+ partType?: string;
94
+ partSlot?: string;
42
95
  actionRef?: string;
43
96
  data?: unknown;
44
97
  raw?: unknown;
@@ -49,6 +102,10 @@ export type CodexMappedChunk = {
49
102
  sequence: number;
50
103
  chunkType: ContextStreamChunkType;
51
104
  providerChunkType?: string;
105
+ providerPartId?: string;
106
+ partId?: string;
107
+ partType?: string;
108
+ partSlot?: string;
52
109
  actionRef?: string;
53
110
  data?: unknown;
54
111
  raw?: unknown;
@@ -63,12 +120,11 @@ export type CreateCodexReactorOptions<Context, Config extends CodexConfig = Code
63
120
  toolName?: string;
64
121
  includeReasoningPart?: boolean;
65
122
  buildInstruction?: (params: {
66
- env: Env;
67
123
  context: AnyRecord;
68
124
  triggerEvent: ContextItem;
69
125
  }) => string | Promise<string>;
70
126
  resolveConfig: (params: {
71
- env: Env;
127
+ runtime: ContextReactorParams<Context, Env>["runtime"];
72
128
  context: AnyRecord;
73
129
  triggerEvent: ContextItem;
74
130
  contextId: string;
@@ -77,7 +133,7 @@ export type CreateCodexReactorOptions<Context, Config extends CodexConfig = Code
77
133
  stepId: string;
78
134
  iteration: number;
79
135
  }) => Promise<Config>;
80
- executeTurn: (args: CodexExecuteTurnArgs<Context, Config, Env>) => Promise<CodexTurnResult>;
136
+ executeTurn?: (args: CodexExecuteTurnArgs<Context, Config, Env>) => Promise<CodexTurnResult>;
81
137
  mapChunk?: (providerChunk: unknown) => CodexChunkMappingResult | null;
82
138
  includeStreamTraceInOutput?: boolean;
83
139
  includeRawProviderChunksInOutput?: boolean;
@@ -87,6 +143,7 @@ export type CreateCodexReactorOptions<Context, Config extends CodexConfig = Code
87
143
  export declare function mapCodexChunkType(providerChunkType: string): ContextStreamChunkType;
88
144
  export declare function mapCodexAppServerNotification(providerChunk: unknown): CodexChunkMappingResult | null;
89
145
  export declare function defaultMapCodexChunk(providerChunk: unknown): CodexChunkMappingResult;
146
+ export declare function executeCodexAppServerTurnStep<Config extends CodexConfig = CodexConfig>(args: CodexAppServerTurnStepArgs<Config>): Promise<CodexTurnResult>;
90
147
  /**
91
148
  * Codex App Server reactor for @ekairos/events.
92
149
  *
@@ -98,4 +155,5 @@ export declare function defaultMapCodexChunk(providerChunk: unknown): CodexChunk
98
155
  * wrappers when they perform I/O.
99
156
  */
100
157
  export declare function createCodexReactor<Context, Config extends CodexConfig = CodexConfig, Env extends ContextEnvironment = ContextEnvironment>(options: CreateCodexReactorOptions<Context, Config, Env>): ContextReactor<Context, Env>;
158
+ export {};
101
159
  //# sourceMappingURL=codex.reactor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex.reactor.d.ts","sourceRoot":"","sources":["../src/codex.reactor.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAEhB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC5B,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAEjE,OAAO,EAAsE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAA;AAEhH,MAAM,MAAM,WAAW,GAAG;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAA;IACrC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACxC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,iBAAiB,EAAE,MAAM,CAAA;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,OAAO,EAAE,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,oBAAoB,CAC9B,OAAO,EACP,MAAM,SAAS,WAAW,GAAG,WAAW,EACxC,GAAG,SAAS,kBAAkB,GAAG,kBAAkB,IACjD;IACF,GAAG,EAAE,GAAG,CAAA;IACR,OAAO,EAAE,SAAS,CAAA;IAClB,YAAY,EAAE,WAAW,CAAA;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,mBAAmB,EAAE,CAAA;IAC7B,QAAQ,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAA;IAClC,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,CAAC,aAAa,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACrD,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,EAAE,sBAAsB,CAAA;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,sBAAsB,CAAA;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,GAAG,CAAC,EAAE,OAAO,CAAA;CACd,CAAA;AASD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAClC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,yBAAyB,CACnC,OAAO,EACP,MAAM,SAAS,WAAW,GAAG,WAAW,EACxC,GAAG,SAAS,kBAAkB,GAAG,kBAAkB,IACjD;IACF,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE;QAC1B,GAAG,EAAE,GAAG,CAAA;QACR,OAAO,EAAE,SAAS,CAAA;QAClB,YAAY,EAAE,WAAW,CAAA;KAC1B,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC9B,aAAa,EAAE,CAAC,MAAM,EAAE;QACtB,GAAG,EAAE,GAAG,CAAA;QACR,OAAO,EAAE,SAAS,CAAA;QAClB,YAAY,EAAE,WAAW,CAAA;QACzB,SAAS,EAAE,MAAM,CAAA;QACjB,OAAO,EAAE,MAAM,CAAA;QACf,WAAW,EAAE,MAAM,CAAA;QACnB,MAAM,EAAE,MAAM,CAAA;QACd,SAAS,EAAE,MAAM,CAAA;KAClB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACrB,WAAW,EAAE,CACX,IAAI,EAAE,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,KAC7C,OAAO,CAAC,eAAe,CAAC,CAAA;IAC7B,QAAQ,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,KAAK,uBAAuB,GAAG,IAAI,CAAA;IACrE,0BAA0B,CAAC,EAAE,OAAO,CAAA;IACpC,gCAAgC,CAAC,EAAE,OAAO,CAAA;IAC1C,wBAAwB,CAAC,EAAE,MAAM,CAAA;IACjC,aAAa,CAAC,EAAE,CACd,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,oBAAoB,CAAC,OAAO,EAAE,GAAG,CAAC,KACvC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC1B,CAAA;AAUD,wBAAgB,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,GAAG,sBAAsB,CA8CnF;AA+BD,wBAAgB,6BAA6B,CAC3C,aAAa,EAAE,OAAO,GACrB,uBAAuB,GAAG,IAAI,CA6GhC;AAED,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,OAAO,GAAG,uBAAuB,CAyBpF;AAwDD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EACP,MAAM,SAAS,WAAW,GAAG,WAAW,EACxC,GAAG,SAAS,kBAAkB,GAAG,kBAAkB,EAEnD,OAAO,EAAE,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,GACvD,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC,CA8S9B"}
1
+ {"version":3,"file":"codex.reactor.d.ts","sourceRoot":"","sources":["../src/codex.reactor.ts"],"names":[],"mappings":"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"}