@shivaedev/agent-codex 0.4.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +5 -3
  3. package/dist/adapters/backend.d.ts +1 -2
  4. package/dist/adapters/backend.d.ts.map +1 -1
  5. package/dist/adapters/backend.js +1 -2
  6. package/dist/adapters/backend.js.map +1 -1
  7. package/dist/adapters/census.js +1 -1
  8. package/dist/adapters/census.js.map +1 -1
  9. package/dist/adapters/configuredBackend.d.ts +1 -4
  10. package/dist/adapters/configuredBackend.d.ts.map +1 -1
  11. package/dist/adapters/configuredBackend.js +5 -1
  12. package/dist/adapters/configuredBackend.js.map +1 -1
  13. package/dist/adapters/engine.d.ts +8 -6
  14. package/dist/adapters/engine.d.ts.map +1 -1
  15. package/dist/adapters/engine.js +5 -8
  16. package/dist/adapters/engine.js.map +1 -1
  17. package/dist/adapters/initializeCodex.d.ts +2 -765
  18. package/dist/adapters/initializeCodex.d.ts.map +1 -1
  19. package/dist/adapters/initializeCodex.js +4 -1
  20. package/dist/adapters/initializeCodex.js.map +1 -1
  21. package/dist/adapters/initializeEngine.d.ts +1 -2
  22. package/dist/adapters/initializeEngine.d.ts.map +1 -1
  23. package/dist/adapters/initializeEngine.js +2 -2
  24. package/dist/adapters/initializeEngine.js.map +1 -1
  25. package/dist/adapters/mapping.js +1 -1
  26. package/dist/adapters/mapping.js.map +1 -1
  27. package/dist/adapters/process.d.ts +4 -0
  28. package/dist/adapters/process.d.ts.map +1 -1
  29. package/dist/adapters/process.js +4 -0
  30. package/dist/adapters/process.js.map +1 -1
  31. package/dist/adapters/{rateLimits.d.ts → rateLimitEvents.d.ts} +1 -1
  32. package/dist/adapters/rateLimitEvents.d.ts.map +1 -0
  33. package/dist/adapters/{rateLimits.js → rateLimitEvents.js} +1 -1
  34. package/dist/adapters/rateLimitEvents.js.map +1 -0
  35. package/dist/adapters/server.d.ts +1 -2
  36. package/dist/adapters/server.d.ts.map +1 -1
  37. package/dist/adapters/server.js +4 -3
  38. package/dist/adapters/server.js.map +1 -1
  39. package/dist/codex/backend.d.ts +4 -0
  40. package/dist/codex/backend.d.ts.map +1 -0
  41. package/dist/codex/backend.js +7 -0
  42. package/dist/codex/backend.js.map +1 -0
  43. package/dist/codex/census.d.ts +4 -0
  44. package/dist/codex/census.d.ts.map +1 -0
  45. package/dist/codex/census.js +7 -0
  46. package/dist/codex/census.js.map +1 -0
  47. package/dist/codex/service.d.ts +9 -0
  48. package/dist/codex/service.d.ts.map +1 -0
  49. package/dist/codex/service.js +12 -0
  50. package/dist/codex/service.js.map +1 -0
  51. package/dist/codexLayer.d.ts +4 -0
  52. package/dist/codexLayer.d.ts.map +1 -0
  53. package/dist/codexLayer.js +7 -0
  54. package/dist/codexLayer.js.map +1 -0
  55. package/package.json +3 -3
  56. package/src/adapters/backend.ts +2 -3
  57. package/src/adapters/census.ts +1 -1
  58. package/src/adapters/configuredBackend.ts +5 -4
  59. package/src/adapters/engine.ts +5 -10
  60. package/src/adapters/initializeCodex.ts +4 -1
  61. package/src/adapters/initializeEngine.ts +2 -3
  62. package/src/adapters/mapping.ts +1 -1
  63. package/src/adapters/process.ts +5 -0
  64. package/src/adapters/server.ts +4 -4
  65. package/src/codex/backend.ts +7 -0
  66. package/src/codex/census.ts +7 -0
  67. package/src/codex/service.ts +12 -0
  68. package/src/codexLayer.ts +7 -0
  69. package/dist/adapters/rateLimits.d.ts.map +0 -1
  70. package/dist/adapters/rateLimits.js.map +0 -1
  71. package/dist/codex.d.ts +0 -11
  72. package/dist/codex.d.ts.map +0 -1
  73. package/dist/codex.js +0 -16
  74. package/dist/codex.js.map +0 -1
  75. package/src/codex.ts +0 -15
  76. /package/src/adapters/{rateLimits.ts → rateLimitEvents.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.6.0 - 2026-11-06
4
+
5
+ ### Breaking
6
+
7
+ - Import the rate-limit event adapter from `adapters/rateLimitEvents.ts` instead of `adapters/rateLimits.ts`.
8
+
9
+ ## 0.5.0 - 2026-11-05
10
+
11
+ ### Breaking
12
+
13
+ - Import `Codex` from `@shivaedev/agent-codex/codex/service.ts` and `codexLayer` from `@shivaedev/agent-codex/codexLayer.ts` instead of the former combined module. Provide `codexLayer` with `CodexConfig`; it supplies the adapter engine service for every Codex operation. Replace direct adapter `engine(config, spawn)` construction with this Layer; custom process adapters provide `ProcessSpawner` from `@shivaedev/agent-codex/adapters/process.ts` through a Layer.
14
+ - Replace the spawn callback arguments to the low-level `initializeEngine` and `openServer` adapters with `ProcessSpawner` provision. Use `codexLayer` instead of calling `initializeCodex` or `configuredBackend` directly; initialization now returns the configured engine interface, and backend assembly yields `Codex` from the environment.
15
+ - The low-level adapter `backend(state)` returns the configured backend directly. Remove the trailing function call and Effect execution when constructing it; application code continues to call the Effect-returning `Codex.backend()` operation.
16
+
3
17
  ## 0.4.0 - 2026-11-05
4
18
 
5
19
  ### Breaking
package/README.md CHANGED
@@ -23,14 +23,14 @@ const program = Effect.gen(function* () {
23
23
 
24
24
  ## Using the adapter
25
25
 
26
- The Layer owns one local `codex app-server` process. Keep the caller's scope open for queued delivery and event observation. A receipt identifies a provider turn and its thread; acceptance does not mean completion. `inspect` and transcript reads query provider history without resuming a thread.
26
+ The Layer owns one local `codex app-server` process and provides its adapter engine as a service. `Codex` declares that engine once; its operations yield it from the environment and keep no dependency in initializer state. Applications provide only `codexLayer` and `CodexConfig`. Keep the caller's scope open for queued delivery and event observation. A receipt identifies a provider turn and its thread; acceptance does not mean completion. `inspect` and transcript reads query provider history without resuming a thread.
27
27
 
28
28
  Provide the program above with the Codex Layer and its configuration:
29
29
 
30
30
  ```ts
31
31
  import { Effect, Layer } from "effect";
32
32
  import { CodexConfig } from "@shivaedev/agent-codex/config.ts";
33
- import { codexLayer } from "@shivaedev/agent-codex/codex.ts";
33
+ import { codexLayer } from "@shivaedev/agent-codex/codexLayer.ts";
34
34
 
35
35
  const live = codexLayer.pipe(Layer.provide(Layer.succeed(CodexConfig)({})));
36
36
  await Effect.runPromise(program.pipe(Effect.scoped, Effect.provide(live)));
@@ -42,7 +42,9 @@ The backend declares sessions, queued input, steering, interruption, transcripts
42
42
 
43
43
  `CodexConfig` accepts a command, arguments, process working directory, request timeout, sandbox, base instructions and dynamic tools. A tool supplies its name, description, JSON input schema and an Effect returning `{ ok, text }`. Tools are registered for the live root thread on start and resume. Tool inheritance by child threads is unsupported. Provider approval and interactive input consumers are unsupported; requests are declined. Cloud transport, remote endpoints, runner logs, wake scheduling, application storage and agent identity are outside this package.
44
44
 
45
- Read `Codex` from Effect's environment and call `census(rootThreadId)` to passively list descendants and claim their ownership. Child threads cannot be resumed because doing so changes their goals. Event mapping preserves item content, child attribution, rate-limit windows and raw frames when the shared vocabulary cannot express a provider item. Usage is provider-reported cumulative session usage; cost estimation is unsupported.
45
+ Custom process adapters provide `ProcessSpawner` from `@shivaedev/agent-codex/adapters/process.ts` through a Layer. Its default spawns the configured local process; the adapter Layer releases the process when it closes.
46
+
47
+ Import `Codex` from `@shivaedev/agent-codex/codex/service.ts`, yield it from Effect's environment and call `census(rootThreadId)` to passively list descendants and claim their ownership. Child threads cannot be resumed because doing so changes their goals. Event mapping preserves item content, child attribution, rate-limit windows and raw frames when the shared vocabulary cannot express a provider item. Usage is provider-reported cumulative session usage; cost estimation is unsupported.
46
48
 
47
49
  The initialize response is compared with the protocol's CLI pin and a mismatch is logged. Version drift is diagnostic, not protocol negotiation. Live provider validation belongs in the consuming application; scripted peers do not prove compatibility with a running provider.
48
50
 
@@ -1,5 +1,4 @@
1
- import { Effect } from "effect";
2
1
  import type { ConfiguredBackend } from "@shivaedev/agent/backend.ts";
3
2
  import type { EngineState } from "#adapters/initializeEngine.ts";
4
- export declare function backend(state: EngineState): () => Effect.Effect<ConfiguredBackend, never, never>;
3
+ export declare function backend(state: EngineState): ConfiguredBackend;
5
4
  //# sourceMappingURL=backend.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/adapters/backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAkB,MAAM,QAAQ,CAAC;AAChD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAEjE,wBAAgB,OAAO,CAAC,KAAK,EAAE,WAAW,wDAuBzC"}
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/adapters/backend.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAEjE,wBAAgB,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,iBAAiB,CAsB7D"}
@@ -1,6 +1,6 @@
1
1
  import { Effect, PubSub, Stream } from "effect";
2
2
  export function backend(state) {
3
- const configured = {
3
+ return {
4
4
  backend: "codex",
5
5
  events: (receipt) => Stream.unwrap(Effect.gen(function* () {
6
6
  const session = state.sessions.get(receipt.session?.value ?? "");
@@ -18,6 +18,5 @@ export function backend(state) {
18
18
  reconcile: state.reconcile,
19
19
  start: state.start,
20
20
  };
21
- return Effect.fn("Codex.backend")(() => Effect.succeed(configured));
22
21
  }
23
22
  //# sourceMappingURL=backend.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/adapters/backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhD,MAAM,UAAU,OAAO,CAAC,KAAkB;IACzC,MAAM,UAAU,GAAsB;QACrC,OAAO,EAAE,OAAO;QAChB,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CACnB,MAAM,CAAC,MAAM,CACZ,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;YACjE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,MAAM,CAAC,KAAK,CAAC;YACrB,CAAC;YACD,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC,YAAY,CAAW;gBACpC,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE;gBACjC,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE;aACvD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACnG,CAAC,CAAC,CACF;QACF,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;KAClB,CAAC;IACF,OAAO,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/adapters/backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhD,MAAM,UAAU,OAAO,CAAC,KAAkB;IACzC,OAAO;QACN,OAAO,EAAE,OAAO;QAChB,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CACnB,MAAM,CAAC,MAAM,CACZ,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;YACjE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,MAAM,CAAC,KAAK,CAAC;YACrB,CAAC;YACD,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC,YAAY,CAAW;gBACpC,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE;gBACjC,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE;aACvD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACnG,CAAC,CAAC,CACF;QACF,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;KAClB,CAAC;AACH,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { Effect } from "effect";
2
2
  import { sweepSpawnedDescendants } from "#adapters/threadSweep.ts";
3
3
  export function census(state) {
4
- return Effect.fn("Codex.census")((rootThreadId) => sweepSpawnedDescendants(state.read, rootThreadId).pipe(Effect.tap((children) => Effect.sync(() => {
4
+ return Effect.fn("CodexEngine.census")((rootThreadId) => sweepSpawnedDescendants(state.read, rootThreadId).pipe(Effect.tap((children) => Effect.sync(() => {
5
5
  for (const child of children) {
6
6
  state.claims.claim(rootThreadId, child.threadId);
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"census.js","sourceRoot":"","sources":["../../src/adapters/census.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,UAAU,MAAM,CAAC,KAA2C;IACjE,OAAO,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,YAAoB,EAAE,EAAE,CACzD,uBAAuB,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,IAAI,CACrD,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CACvB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QAChB,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC9B,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC;IACF,CAAC,CAAC,CACF,CACD,CACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"census.js","sourceRoot":"","sources":["../../src/adapters/census.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,UAAU,MAAM,CAAC,KAA2C;IACjE,OAAO,MAAM,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,YAAoB,EAAE,EAAE,CAC/D,uBAAuB,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,IAAI,CACrD,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CACvB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QAChB,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC9B,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC;IACF,CAAC,CAAC,CACF,CACD,CACD,CAAC;AACH,CAAC"}
@@ -1,6 +1,3 @@
1
1
  import { Effect } from "effect";
2
- import type { ConfiguredBackend } from "@shivaedev/agent/backend.ts";
3
- export declare const configuredBackend: (codex: {
4
- readonly backend: () => Effect.Effect<ConfiguredBackend>;
5
- }) => Effect.Effect<ConfiguredBackend, never, never>;
2
+ export declare const configuredBackend: () => Effect.Effect<import("@shivaedev/agent/backend.ts").ConfiguredBackend, never, "@shivaedev/agent-codex/Codex">;
6
3
  //# sourceMappingURL=configuredBackend.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"configuredBackend.d.ts","sourceRoot":"","sources":["../../src/adapters/configuredBackend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE,eAAO,MAAM,iBAAiB;sBAAoE,MAAM,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC;oDAEvI,CAAC"}
1
+ {"version":3,"file":"configuredBackend.d.ts","sourceRoot":"","sources":["../../src/adapters/configuredBackend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,eAAO,MAAM,iBAAiB,qHAG5B,CAAC"}
@@ -1,3 +1,7 @@
1
1
  import { Effect } from "effect";
2
- export const configuredBackend = Effect.fn("Codex.configuredBackend")((codex) => codex.backend());
2
+ import { Codex } from "#codex/service.ts";
3
+ export const configuredBackend = Effect.fn("Codex.configuredBackend")(function* () {
4
+ const codex = yield* Codex;
5
+ return yield* codex.backend();
6
+ });
3
7
  //# sourceMappingURL=configuredBackend.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configuredBackend.js","sourceRoot":"","sources":["../../src/adapters/configuredBackend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC,CAAC,KAAmE,EAAE,EAAE,CAC7I,KAAK,CAAC,OAAO,EAAE,CACf,CAAC"}
1
+ {"version":3,"file":"configuredBackend.js","sourceRoot":"","sources":["../../src/adapters/configuredBackend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC;IAC9E,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC;IAC3B,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;AAC/B,CAAC,CAAC,CAAC"}
@@ -1,8 +1,10 @@
1
- import { Effect } from "effect";
2
- import type { LineProcess } from "#adapters/process.ts";
3
- import type { CodexConfiguration } from "#config.ts";
4
- export declare const engine: (config: CodexConfiguration, spawn?: (() => LineProcess) | undefined) => Effect.Effect<{
5
- backend: () => Effect.Effect<import("@shivaedev/agent/backend.ts").ConfiguredBackend, never, never>;
1
+ import { Context, type Effect, Layer } from "effect";
2
+ declare const CodexEngine_base: Context.ServiceClass<CodexEngine, "@shivaedev/agent-codex/CodexEngine", {
3
+ backend: import("@shivaedev/agent/backend.ts").ConfiguredBackend;
6
4
  census: (rootThreadId: string) => Effect.Effect<import("./threadSweep.ts").CensusSweep, import("@shivaedev/agent/failures.ts").ReadFailure, never>;
7
- }, import("@shivaedev/agent/failures.ts").BackendUnavailable | import("@shivaedev/agent/failures.ts").ProtocolFailure | import("@shivaedev/agent/failures.ts").Rejected | import("@shivaedev/agent/failures.ts").UnknownAcceptance, import("effect/Scope").Scope>;
5
+ }>;
6
+ export declare class CodexEngine extends CodexEngine_base {
7
+ }
8
+ export declare const codexEngineLayer: Layer.Layer<CodexEngine, import("@shivaedev/agent/failures.ts").BackendUnavailable | import("@shivaedev/agent/failures.ts").ProtocolFailure | import("@shivaedev/agent/failures.ts").Rejected | import("@shivaedev/agent/failures.ts").UnknownAcceptance, import("../config.ts").CodexConfig>;
9
+ export {};
8
10
  //# sourceMappingURL=engine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/adapters/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,eAAO,MAAM,MAAM,8CAAkF,WAAW;;;iQAG9G,CAAC"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/adapters/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;;;;;AAGrD,qBAAa,WAAY,SAAQ,gBAA4G;CAAG;AAEhJ,eAAO,MAAM,gBAAgB,+RAA6C,CAAC"}
@@ -1,9 +1,6 @@
1
- import { Effect } from "effect";
2
- import { backend } from "#adapters/backend.ts";
3
- import { census } from "#adapters/census.ts";
4
- import { initializeEngine } from "#adapters/initializeEngine.ts";
5
- export const engine = Effect.fn("Codex.engine")(function* (config, spawn) {
6
- const state = yield* initializeEngine(config, spawn);
7
- return { backend: backend(state), census: census(state) };
8
- });
1
+ import { Context, Layer } from "effect";
2
+ import { initializeCodex } from "#adapters/initializeCodex.ts";
3
+ export class CodexEngine extends Context.Service()("@shivaedev/agent-codex/CodexEngine") {
4
+ }
5
+ export const codexEngineLayer = Layer.effect(CodexEngine)(initializeCodex);
9
6
  //# sourceMappingURL=engine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/adapters/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAIjE,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,EAAE,MAA0B,EAAE,KAAyB;IAC/G,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACrD,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AAC3D,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/adapters/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAe,KAAK,EAAE,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,OAAO,WAAY,SAAQ,OAAO,CAAC,OAAO,EAAuD,CAAC,oCAAoC,CAAC;CAAG;AAEhJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,eAAe,CAAC,CAAC"}