@relayfx/sdk 0.0.50 → 0.2.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 (155) hide show
  1. package/README.md +5 -0
  2. package/dist/ai.js +42 -17222
  3. package/dist/index-2xztzkfr.js +20596 -0
  4. package/dist/index-bcbbm5wt.js +137 -0
  5. package/dist/index-qgt9z94q.js +2443 -0
  6. package/dist/index.js +830 -18839
  7. package/dist/migrations/20260712120000_durable_inbox/migration.sql +9 -0
  8. package/dist/migrations/20260712140000_execution_state/migration.sql +5 -0
  9. package/dist/migrations/20260712150000_durable_entities/migration.sql +15 -0
  10. package/dist/migrations/20260712160000_ephemeral_presence/migration.sql +13 -0
  11. package/dist/migrations/20260712170000_topic_subscriptions/migration.sql +3 -0
  12. package/dist/migrations/20260712180000_child_fan_out/migration.sql +27 -0
  13. package/dist/migrations/20260712190000_workflow_definitions/migration.sql +3 -0
  14. package/dist/migrations/20260712200000_workflow_runtime/migration.sql +2 -0
  15. package/dist/migrations/mysql/0003_durable_inbox.sql +3 -0
  16. package/dist/migrations/mysql/0004_execution_state.sql +3 -0
  17. package/dist/migrations/mysql/0005_durable_entities.sql +13 -0
  18. package/dist/migrations/mysql/0006_ephemeral_presence.sql +12 -0
  19. package/dist/migrations/mysql/0007_topic_subscriptions.sql +1 -0
  20. package/dist/migrations/mysql/0008_child_fan_out.sql +26 -0
  21. package/dist/migrations/mysql/0009_workflow_definitions.sql +3 -0
  22. package/dist/migrations/mysql/0010_workflow_runtime.sql +3 -0
  23. package/dist/migrations/pg/20260712120000_durable_inbox/migration.sql +9 -0
  24. package/dist/migrations/pg/20260712140000_execution_state/migration.sql +5 -0
  25. package/dist/migrations/pg/20260712150000_durable_entities/migration.sql +15 -0
  26. package/dist/migrations/pg/20260712160000_ephemeral_presence/migration.sql +13 -0
  27. package/dist/migrations/pg/20260712170000_topic_subscriptions/migration.sql +3 -0
  28. package/dist/migrations/pg/20260712180000_child_fan_out/migration.sql +27 -0
  29. package/dist/migrations/pg/20260712190000_workflow_definitions/migration.sql +3 -0
  30. package/dist/migrations/pg/20260712200000_workflow_runtime/migration.sql +2 -0
  31. package/dist/migrations/sqlite/0003_durable_inbox.sql +9 -0
  32. package/dist/migrations/sqlite/0004_execution_state.sql +3 -0
  33. package/dist/migrations/sqlite/0005_durable_entities.sql +15 -0
  34. package/dist/migrations/sqlite/0006_ephemeral_presence.sql +12 -0
  35. package/dist/migrations/sqlite/0007_topic_subscriptions.sql +3 -0
  36. package/dist/migrations/sqlite/0008_child_fan_out.sql +27 -0
  37. package/dist/migrations/sqlite/0009_workflow_definitions.sql +3 -0
  38. package/dist/migrations/sqlite/0010_workflow_runtime.sql +3 -0
  39. package/dist/sqlite.js +737 -0
  40. package/dist/types/relay/adapter-outbox.d.ts +3 -3
  41. package/dist/types/relay/client.d.ts +335 -25
  42. package/dist/types/relay/command.d.ts +41 -0
  43. package/dist/types/relay/database.d.ts +1 -0
  44. package/dist/types/relay/index.d.ts +3 -2
  45. package/dist/types/relay/operation.d.ts +1082 -7
  46. package/dist/types/relay/sqlite-migrations.d.ts +54 -0
  47. package/dist/types/relay/sqlite-runtime.d.ts +10 -0
  48. package/dist/types/relay/sqlite.d.ts +29 -0
  49. package/dist/types/runtime/address/address-book-service.d.ts +4 -4
  50. package/dist/types/runtime/address/address-resolution-service.d.ts +1 -1
  51. package/dist/types/runtime/agent/agent-loop-service.d.ts +2 -2
  52. package/dist/types/runtime/agent/agent-registry-service.d.ts +1 -1
  53. package/dist/types/runtime/agent/relay-compaction.d.ts +1 -1
  54. package/dist/types/runtime/agent/relay-permissions.d.ts +1 -1
  55. package/dist/types/runtime/agent/relay-steering.d.ts +1 -1
  56. package/dist/types/runtime/child/child-fan-out-admission-service.d.ts +30 -0
  57. package/dist/types/runtime/child/child-fan-out-runtime.d.ts +34 -0
  58. package/dist/types/runtime/child/child-fan-out-transition-service.d.ts +25 -0
  59. package/dist/types/runtime/child/child-run-service.d.ts +1 -1
  60. package/dist/types/runtime/child/parent-notifier-service.d.ts +1 -1
  61. package/dist/types/runtime/cluster/execution-entity.d.ts +5 -3
  62. package/dist/types/runtime/entity/entity-instance-service.d.ts +67 -0
  63. package/dist/types/runtime/entity/entity-registry-service.d.ts +35 -0
  64. package/dist/types/runtime/envelope/envelope-service.d.ts +7 -3
  65. package/dist/types/runtime/execution/active-execution-registry.d.ts +12 -0
  66. package/dist/types/runtime/execution/event-log-service.d.ts +1 -1
  67. package/dist/types/runtime/execution/execution-service.d.ts +2 -1
  68. package/dist/types/runtime/execution/execution-watch-service.d.ts +32 -0
  69. package/dist/types/runtime/execution/session-stream-service.d.ts +33 -0
  70. package/dist/types/runtime/inbox/inbox-service.d.ts +76 -0
  71. package/dist/types/runtime/inbox/send-message-tool.d.ts +27 -0
  72. package/dist/types/runtime/inbox/wait-for-messages-tool.d.ts +34 -0
  73. package/dist/types/runtime/index.d.ts +18 -0
  74. package/dist/types/runtime/memory/memory-service.d.ts +1 -1
  75. package/dist/types/runtime/presence/presence-service.d.ts +30 -0
  76. package/dist/types/runtime/presence/presence-tool.d.ts +20 -0
  77. package/dist/types/runtime/runner/runner-runtime-service.d.ts +18 -18
  78. package/dist/types/runtime/schedule/scheduler-service.d.ts +1 -1
  79. package/dist/types/runtime/session/session-store-service.d.ts +1 -1
  80. package/dist/types/runtime/skill/skill-registry-service.d.ts +1 -1
  81. package/dist/types/runtime/state/execution-state-service.d.ts +57 -0
  82. package/dist/types/runtime/state/state-tools.d.ts +5 -0
  83. package/dist/types/runtime/tool/tool-runtime-service.d.ts +1 -1
  84. package/dist/types/runtime/topic/publish-to-topic-tool.d.ts +24 -0
  85. package/dist/types/runtime/topic/topic-service.d.ts +50 -0
  86. package/dist/types/runtime/wait/wait-service.d.ts +2 -1
  87. package/dist/types/runtime/wait/wait-signal.d.ts +1 -1
  88. package/dist/types/runtime/workflow/definition-runtime.d.ts +78 -0
  89. package/dist/types/runtime/workflow/execution-workflow.d.ts +7 -7
  90. package/dist/types/runtime/workspace/workspace-planner-service.d.ts +1 -1
  91. package/dist/types/schema/address-schema.d.ts +6 -6
  92. package/dist/types/schema/child-orchestration-schema.d.ts +393 -0
  93. package/dist/types/schema/entity-schema.d.ts +40 -0
  94. package/dist/types/schema/envelope-schema.d.ts +1 -0
  95. package/dist/types/schema/execution-schema.d.ts +2 -2
  96. package/dist/types/schema/ids-schema.d.ts +20 -0
  97. package/dist/types/schema/inbox-schema.d.ts +81 -0
  98. package/dist/types/schema/index.d.ts +7 -0
  99. package/dist/types/schema/presence-schema.d.ts +28 -0
  100. package/dist/types/schema/state-schema.d.ts +35 -0
  101. package/dist/types/schema/wait-schema.d.ts +98 -0
  102. package/dist/types/schema/workflow-schema.d.ts +2062 -0
  103. package/dist/types/store-sql/address/address-book-repository.d.ts +1 -1
  104. package/dist/types/store-sql/child/child-fan-out-repository.d.ts +53 -0
  105. package/dist/types/store-sql/database/database-service.d.ts +4 -18
  106. package/dist/types/store-sql/database/notification-bus.d.ts +2 -0
  107. package/dist/types/store-sql/database/sql-dialect.d.ts +13 -0
  108. package/dist/types/store-sql/entity/entity-repository.d.ts +36 -0
  109. package/dist/types/store-sql/envelope/envelope-repository.d.ts +1 -0
  110. package/dist/types/store-sql/execution/execution-event-repository.d.ts +2 -1
  111. package/dist/types/store-sql/execution/execution-repository.d.ts +12 -2
  112. package/dist/types/store-sql/inbox/inbox-repository.d.ts +56 -0
  113. package/dist/types/store-sql/index.d.ts +8 -0
  114. package/dist/types/store-sql/portable.d.ts +29 -0
  115. package/dist/types/store-sql/presence/presence-repository.d.ts +51 -0
  116. package/dist/types/store-sql/schema/relay-schema.d.ts +3064 -587
  117. package/dist/types/store-sql/state/execution-state-repository.d.ts +80 -0
  118. package/dist/types/store-sql/tenant/tenant-id.d.ts +0 -2
  119. package/dist/types/store-sql/topic/topic-repository.d.ts +44 -0
  120. package/dist/types/store-sql/workflow/workflow-definition-repository.d.ts +29 -0
  121. package/package.json +26 -4
  122. package/dist/migrations/20260701002839_sour_cerebro/snapshot.json +0 -1971
  123. package/dist/migrations/20260701041134_acoustic_hulk/snapshot.json +0 -2372
  124. package/dist/migrations/20260701160543_condemned_stryfe/snapshot.json +0 -2442
  125. package/dist/migrations/20260701220315_heavy_gorgon/snapshot.json +0 -2495
  126. package/dist/migrations/20260701225444_polite_lord_hawal/snapshot.json +0 -2821
  127. package/dist/migrations/20260702030128_flaky_misty_knight/snapshot.json +0 -2821
  128. package/dist/migrations/20260705003847_nervous_banshee/snapshot.json +0 -2954
  129. package/dist/migrations/20260705012626_common_stryfe/snapshot.json +0 -3378
  130. package/dist/migrations/20260705015420_sweet_captain_marvel/snapshot.json +0 -3485
  131. package/dist/migrations/20260705023041_chunky_scalphunter/snapshot.json +0 -3753
  132. package/dist/migrations/20260705030344_short_patriot/snapshot.json +0 -3873
  133. package/dist/migrations/20260705045546_heavy_ben_grimm/snapshot.json +0 -4193
  134. package/dist/migrations/20260706185931_regular_shadow_king/snapshot.json +0 -4844
  135. package/dist/migrations/20260706233300_equal_cyclops/snapshot.json +0 -4883
  136. package/dist/migrations/20260709030349_agent_id_rename/snapshot.json +0 -4883
  137. package/dist/migrations/20260709214238_faithful_black_widow/snapshot.json +0 -5426
  138. package/dist/migrations/20260709220016_fearless_aaron_stack/snapshot.json +0 -5426
  139. package/dist/migrations/pg/20260701002839_sour_cerebro/snapshot.json +0 -1971
  140. package/dist/migrations/pg/20260701041134_acoustic_hulk/snapshot.json +0 -2372
  141. package/dist/migrations/pg/20260701160543_condemned_stryfe/snapshot.json +0 -2442
  142. package/dist/migrations/pg/20260701220315_heavy_gorgon/snapshot.json +0 -2495
  143. package/dist/migrations/pg/20260701225444_polite_lord_hawal/snapshot.json +0 -2821
  144. package/dist/migrations/pg/20260702030128_flaky_misty_knight/snapshot.json +0 -2821
  145. package/dist/migrations/pg/20260705003847_nervous_banshee/snapshot.json +0 -2954
  146. package/dist/migrations/pg/20260705012626_common_stryfe/snapshot.json +0 -3378
  147. package/dist/migrations/pg/20260705015420_sweet_captain_marvel/snapshot.json +0 -3485
  148. package/dist/migrations/pg/20260705023041_chunky_scalphunter/snapshot.json +0 -3753
  149. package/dist/migrations/pg/20260705030344_short_patriot/snapshot.json +0 -3873
  150. package/dist/migrations/pg/20260705045546_heavy_ben_grimm/snapshot.json +0 -4193
  151. package/dist/migrations/pg/20260706185931_regular_shadow_king/snapshot.json +0 -4844
  152. package/dist/migrations/pg/20260706233300_equal_cyclops/snapshot.json +0 -4883
  153. package/dist/migrations/pg/20260709030349_agent_id_rename/snapshot.json +0 -4883
  154. package/dist/migrations/pg/20260709214238_faithful_black_widow/snapshot.json +0 -5426
  155. package/dist/migrations/pg/20260709220016_fearless_aaron_stack/snapshot.json +0 -5426
@@ -1,11 +1,11 @@
1
1
  import { Context, Effect, Layer } from "effect";
2
- import { ClientError, Service as ClientService } from "./client";
2
+ import { ClientError, Service as ClientService, WaitKindMismatch } from "./client";
3
3
  import { AckEnvelopeReadyInput, ClaimEnvelopeReadyInput, EnvelopeReadyAcked, EnvelopeReadyLease, EnvelopeReadyReleased, ReleaseEnvelopeReadyInput, SubmitInboundEnvelopeAccepted, SubmitInboundEnvelopeInput } from "./operation";
4
4
  export interface Interface {
5
5
  readonly claim: (input: ClaimEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyLease | null, ClientError>;
6
6
  readonly ack: (input: AckEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyAcked, ClientError>;
7
7
  readonly release: (input: ReleaseEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyReleased, ClientError>;
8
- readonly submitInbound: (input: SubmitInboundEnvelopeInput) => Effect.Effect<SubmitInboundEnvelopeAccepted, ClientError>;
8
+ readonly submitInbound: (input: SubmitInboundEnvelopeInput) => Effect.Effect<SubmitInboundEnvelopeAccepted, WaitKindMismatch | ClientError>;
9
9
  }
10
10
  declare const Service_base: Context.ServiceClass<Service, "@relayfx/sdk/AdapterOutbox", Interface>;
11
11
  export declare class Service extends Service_base {
@@ -15,5 +15,5 @@ export declare const testLayer: (implementation: Interface) => Layer.Layer<Servi
15
15
  export declare const claim: (input: ClaimEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyLease | null, ClientError, Service>;
16
16
  export declare const ack: (input: AckEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyAcked, ClientError, Service>;
17
17
  export declare const release: (input: ReleaseEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyReleased, ClientError, Service>;
18
- export declare const submitInbound: (input: SubmitInboundEnvelopeInput) => Effect.Effect<SubmitInboundEnvelopeAccepted, ClientError, Service>;
18
+ export declare const submitInbound: (input: SubmitInboundEnvelopeInput) => Effect.Effect<SubmitInboundEnvelopeAccepted, ClientError | WaitKindMismatch, Service>;
19
19
  export {};
@@ -1,10 +1,16 @@
1
- import { AddressBook, AgentRegistry, EventLog, ExecutionService, SkillRegistry, ToolTransitionCoordinator, WaitService } from "../runtime/index";
1
+ import { AddressBook, AgentRegistry, EventLog, EntityInstanceService, EntityRegistry, ExecutionWatch, ExecutionState, ExecutionService, EnvelopeService, PresenceService, SessionStream, SkillRegistry, ToolTransitionCoordinator, TopicService, WaitService } from "../runtime/index";
2
2
  import type { Agent as BatonAgent } from "@batonfx/core";
3
- import { Address, Agent, Content, Envelope, Execution, Ids, Shared, Skill, Tool } from "../schema/index";
4
- import { ChildExecutionRepository, ClusterRegistryRepository, EnvelopeRepository, ExecutionRepository, ScheduleRepository, SessionRepository, SteeringRepository, ToolCallRepository } from "../store-sql/index";
3
+ import { Address, Agent, ChildOrchestration, Content, Entity, Envelope, Execution, Ids, Inbox, Presence, Shared, Skill, State, Tool, Workflow } from "../schema/index";
4
+ import { ChildExecutionRepository, ChildFanOutRepository, ClusterRegistryRepository, EnvelopeRepository, ExecutionRepository, InboxRepository, ScheduleRepository, SessionRepository, SteeringRepository, ToolCallRepository, WorkflowDefinitionRepository } from "../store-sql/portable";
5
5
  import { Context, Effect, Layer, Schema, Stream } from "effect";
6
6
  import { Sharding, ShardingConfig } from "effect/unstable/cluster";
7
- import type { AckEnvelopeReadyInput, CancelExecutionAccepted, CancelExecutionInput, CancelScheduleInput, CancelScheduleResult, ClaimEnvelopeReadyInput, CreateScheduleInput, CreateScheduleResult, EnvelopeReadyAcked, EnvelopeReadyLease, EnvelopeReadyReleased, ExecutionInspection, GetSessionInput, GetSessionResult, ListExecutionsInput, ListExecutionsResult, ListPendingApprovalsInput, ListRunnersResult, ListSchedulesInput, ListSchedulesResult, ListSessionsInput, ListSessionsResult, ListWaitsInput, PendingToolApprovalList, PendingToolCallList, ListPendingToolCallsInput, FulfillToolCallInput, ClaimToolWorkInput, CompleteToolWorkInput, ReleaseToolWorkInput, ListToolAttemptsInput, ToolAttemptList, ToolOutcomeAccepted, ToolWorkLease, ToolWorkReleased, ReleaseEnvelopeReadyInput, ReplayExecutionInput, ReplayExecutionResult, ResolvePermissionInput, ResolveToolApprovalInput, RouteExecutionResult, StartExecutionInput, StartExecutionResult, SpawnChildRunInput, SteerAccepted, SteerInput, StreamExecutionInput, SubmitInboundEnvelopeAccepted, SubmitInboundEnvelopeInput, WaitView, WakeAccepted, WakeInput } from "./operation";
7
+ import type { AckEnvelopeReadyInput, CancelExecutionAccepted, CancelExecutionInput, CancelScheduleInput, CancelScheduleResult, ClaimEnvelopeReadyInput, CreateScheduleInput, CreateScheduleResult, EnvelopeReadyAcked, EnvelopeReadyLease, EnvelopeReadyReleased, ExecutionInspection, ExecutionListChange, GetSessionInput, GetSessionResult, GetEntityStateInput, PutEntityStateInput, DeleteEntityStateInput, ListEntityStateInput, GetOrCreateEntityInput, GetEntityInput, DestroyEntityInput, ListEntitiesInput, ListExecutionsInput, ListExecutionsResult, ListInboxMessagesInput, ListTopicSubscriptionsInput, PublishTopicInput, SubscribeTopicInput, TopicPublishAccepted, TopicSubscription, UnsubscribeTopicInput, ListPendingApprovalsInput, SessionStreamItem, StreamSessionInput, WatchExecutionsInput, ListRunnersResult, ListSchedulesInput, ListSchedulesResult, ListSessionsInput, ListSessionsResult, ListWaitsInput, PendingToolApprovalList, PendingToolCallList, ListPendingToolCallsInput, FulfillToolCallInput, ClaimToolWorkInput, CompleteToolWorkInput, ReleaseToolWorkInput, ListToolAttemptsInput, ToolAttemptList, ToolOutcomeAccepted, ToolWorkLease, ToolWorkReleased, ReleaseEnvelopeReadyInput, ReplayExecutionInput, ReplayExecutionResult, ResolvePermissionInput, ResolveToolApprovalInput, RouteExecutionResult, StartExecutionInput, StartExecutionResult, SpawnChildRunInput, CancelChildFanOutInput, CancelChildFanOutResult, CreateChildFanOutInput, InspectChildFanOutInput, InspectChildFanOutResult, SteerAccepted, SteerInput, StreamExecutionInput, SubmitInboundEnvelopeAccepted, SubmitInboundEnvelopeInput, WaitView, WakeAccepted, WakeInput } from "./operation";
8
+ import { EventLogCursorNotFound } from "./operation";
9
+ export { EventLogCursorNotFound } from "./operation";
10
+ import { AwaitWaitInput, WaitOutcome } from "./operation";
11
+ import { FollowExecutionInput, FollowExecutionItem } from "./operation";
12
+ import { CommandReplyInvalid, CommandTimedOut, EntityNotFound } from "./command";
13
+ import type { Command } from "./command";
8
14
  declare const ClientError_base: Schema.Class<ClientError, Schema.TaggedStruct<"ClientError", {
9
15
  readonly message: Schema.String;
10
16
  }>, import("effect/Cause").YieldableError>;
@@ -17,6 +23,31 @@ declare const ExecutionNotFound_base: Schema.Class<ExecutionNotFound, Schema.Tag
17
23
  }>, import("effect/Cause").YieldableError>;
18
24
  export declare class ExecutionNotFound extends ExecutionNotFound_base {
19
25
  }
26
+ declare const EntityNamespaceReserved_base: Schema.Class<EntityNamespaceReserved, Schema.TaggedStruct<"EntityNamespaceReserved", {
27
+ readonly id: Schema.String;
28
+ readonly message: Schema.String;
29
+ }>, import("effect/Cause").YieldableError>;
30
+ export declare class EntityNamespaceReserved extends EntityNamespaceReserved_base {
31
+ }
32
+ declare const WaitKindMismatch_base: Schema.Class<WaitKindMismatch, Schema.TaggedStruct<"WaitKindMismatch", {
33
+ readonly wait_id: Schema.brand<Schema.String, "Relay.WaitId"> & {
34
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.WaitId">;
35
+ };
36
+ readonly expected: Schema.String;
37
+ readonly actual: Schema.String;
38
+ readonly message: Schema.String;
39
+ }>, import("effect/Cause").YieldableError>;
40
+ export declare class WaitKindMismatch extends WaitKindMismatch_base {
41
+ }
42
+ export interface AskEntityInput<Name extends string, I extends Schema.Top, O extends Schema.Top> {
43
+ readonly kind: Ids.EntityKindName;
44
+ readonly key: Ids.EntityKey;
45
+ readonly command: Command<Name, I, O>;
46
+ readonly input: I["Type"];
47
+ readonly from: Ids.AddressId;
48
+ readonly timeout?: string;
49
+ readonly metadata?: Shared.Metadata;
50
+ }
20
51
  export interface StartExecutionByAddressInput {
21
52
  readonly address_id: Ids.AddressId;
22
53
  readonly session_id?: Ids.SessionId;
@@ -63,6 +94,18 @@ export interface RegisterBatonAgentInput {
63
94
  }
64
95
  export type RegisterAgentInput = RegisterDefinedAgentInput | RegisterBatonAgentInput;
65
96
  export interface Interface {
97
+ readonly registerEntityKind: (input: Entity.KindDefinition) => Effect.Effect<Entity.KindDefinition, ClientError>;
98
+ readonly getOrCreateEntity: (input: GetOrCreateEntityInput) => Effect.Effect<Entity.Instance, ClientError>;
99
+ readonly getEntity: (input: GetEntityInput) => Effect.Effect<Entity.Instance | undefined, ClientError>;
100
+ readonly destroyEntity: (input: DestroyEntityInput) => Effect.Effect<Entity.Instance, ClientError>;
101
+ readonly listEntities: (input: ListEntitiesInput) => Effect.Effect<ReadonlyArray<Entity.Instance>, ClientError>;
102
+ readonly registerWorkflowDefinition: (input: Workflow.RegisterDefinitionPayload) => Effect.Effect<Workflow.DefinitionRegistered, ClientError>;
103
+ readonly getWorkflowDefinitionRevision: (id: Ids.WorkflowDefinitionId, revision?: Workflow.DefinitionRevision) => Effect.Effect<Workflow.DefinitionRevisionRecord | undefined, ClientError>;
104
+ readonly listWorkflowDefinitionRevisions: (id: Ids.WorkflowDefinitionId) => Effect.Effect<Workflow.DefinitionRevisionList, ClientError>;
105
+ readonly startWorkflowRun: (input: Workflow.StartRunPayload) => Effect.Effect<Workflow.RunRecord, ClientError>;
106
+ readonly inspectWorkflowRun: (id: Ids.ExecutionId) => Effect.Effect<Workflow.RunRecord | undefined, ClientError>;
107
+ readonly replayWorkflowRun: (id: Ids.ExecutionId) => Effect.Effect<ReadonlyArray<Workflow.LifecycleEvent>, ClientError>;
108
+ readonly cancelWorkflowRun: (id: Ids.ExecutionId) => Effect.Effect<Workflow.RunRecord | undefined, ClientError>;
66
109
  readonly registerAgent: (input: RegisterAgentInput) => Effect.Effect<Agent.DefinitionRegistered, ClientError>;
67
110
  readonly registerAgentDefinition: (input: Agent.RegisterDefinitionPayload) => Effect.Effect<Agent.DefinitionRegistered, ClientError>;
68
111
  readonly getAgentDefinition: (id: Ids.AgentId) => Effect.Effect<Agent.DefinitionRecord | undefined, ClientError>;
@@ -71,17 +114,22 @@ export interface Interface {
71
114
  readonly getSkillDefinition: (id: Ids.SkillDefinitionId) => Effect.Effect<Skill.DefinitionRecord | undefined, ClientError>;
72
115
  readonly listSkillDefinitions: () => Effect.Effect<Skill.DefinitionList, ClientError>;
73
116
  readonly listSkillDefinitionRevisions: (id: Ids.SkillDefinitionId) => Effect.Effect<Skill.DefinitionRevisionList, ClientError>;
74
- readonly registerAddressBookRoute: (input: Address.RegisterRoutePayload) => Effect.Effect<Address.RouteRegistered, ClientError>;
117
+ readonly registerAddressBookRoute: (input: Address.RegisterRoutePayload) => Effect.Effect<Address.RouteRegistered, EntityNamespaceReserved | ClientError>;
75
118
  readonly getAddressBookRoute: (id: Ids.AddressId) => Effect.Effect<Address.RouteRecord | undefined, ClientError>;
76
119
  readonly listAddressBookRoutes: () => Effect.Effect<Address.RouteList, ClientError>;
77
- readonly startExecution: (input: StartExecutionInput) => Effect.Effect<StartExecutionResult, ClientError>;
78
- readonly startExecutionByAddress: (input: StartExecutionByAddressInput) => Effect.Effect<StartExecutionResult, ClientError>;
79
- readonly startExecutionByAgentDefinition: (input: StartExecutionByAgentDefinitionInput) => Effect.Effect<StartExecutionResult, ClientError>;
120
+ readonly startExecution: (input: StartExecutionInput) => Effect.Effect<StartExecutionResult, EntityNamespaceReserved | ClientError>;
121
+ readonly startExecutionByAddress: (input: StartExecutionByAddressInput) => Effect.Effect<StartExecutionResult, EntityNamespaceReserved | ClientError>;
122
+ readonly startExecutionByAgentDefinition: (input: StartExecutionByAgentDefinitionInput) => Effect.Effect<StartExecutionResult, EntityNamespaceReserved | ClientError>;
80
123
  readonly cancelExecution: (input: CancelExecutionInput) => Effect.Effect<CancelExecutionAccepted, ClientError>;
81
124
  readonly steer: (input: SteerInput) => Effect.Effect<SteerAccepted, ClientError>;
82
125
  readonly getExecution: (id: Ids.ExecutionId) => Effect.Effect<Execution.Execution | undefined, ClientError>;
83
126
  readonly inspectExecution: (executionId: Ids.ExecutionId) => Effect.Effect<ExecutionInspection, ExecutionNotFound | ClientError>;
84
127
  readonly listExecutions: (input: ListExecutionsInput) => Effect.Effect<ListExecutionsResult, ClientError>;
128
+ readonly listInboxMessages: (input: ListInboxMessagesInput) => Effect.Effect<ReadonlyArray<Inbox.Message>, ClientError>;
129
+ readonly subscribeTopic: (input: SubscribeTopicInput) => Effect.Effect<TopicSubscription, ClientError>;
130
+ readonly unsubscribeTopic: (input: UnsubscribeTopicInput) => Effect.Effect<void, ClientError>;
131
+ readonly publishTopic: (input: PublishTopicInput) => Effect.Effect<TopicPublishAccepted, ClientError>;
132
+ readonly listTopicSubscriptions: (input: ListTopicSubscriptionsInput) => Effect.Effect<ReadonlyArray<TopicSubscription>, ClientError>;
85
133
  readonly listSessions: (input: ListSessionsInput) => Effect.Effect<ListSessionsResult, ClientError>;
86
134
  readonly getSession: (input: GetSessionInput) => Effect.Effect<GetSessionResult, ClientError>;
87
135
  readonly listWaits: (input: ListWaitsInput) => Effect.Effect<ReadonlyArray<WaitView>, ClientError>;
@@ -89,19 +137,33 @@ export interface Interface {
89
137
  readonly listRunners: () => Effect.Effect<ListRunnersResult, ClientError>;
90
138
  readonly routeExecution: (executionId: Ids.ExecutionId) => Effect.Effect<RouteExecutionResult, ClientError>;
91
139
  readonly send: (input: Envelope.SendInput) => Effect.Effect<Envelope.EnvelopeAccepted, ClientError>;
92
- readonly streamExecution: (input: StreamExecutionInput) => Stream.Stream<Execution.ExecutionEvent, ClientError>;
93
- readonly wake: (input: WakeInput) => Effect.Effect<WakeAccepted, ClientError>;
140
+ readonly askEntity: <Name extends string, I extends Schema.Top, O extends Schema.Top>(input: AskEntityInput<Name, I, O>) => Effect.Effect<O["Type"], CommandTimedOut | CommandReplyInvalid | EntityNotFound | ClientError, I["EncodingServices"] | O["DecodingServices"]>;
141
+ readonly awaitWait: (input: AwaitWaitInput) => Effect.Effect<WaitOutcome, ClientError>;
142
+ readonly streamExecution: (input: StreamExecutionInput) => Stream.Stream<Execution.ExecutionEvent, EventLogCursorNotFound | ClientError>;
143
+ readonly followExecution: (input: FollowExecutionInput) => Stream.Stream<FollowExecutionItem, EventLogCursorNotFound | ClientError>;
144
+ readonly streamSession: (input: StreamSessionInput) => Stream.Stream<SessionStreamItem, EventLogCursorNotFound | ClientError>;
145
+ readonly watchExecutions: (input: WatchExecutionsInput) => Stream.Stream<ExecutionListChange, ClientError>;
146
+ readonly getEntityState: (input: GetEntityStateInput) => Effect.Effect<State.StateRecordView | undefined, ClientError>;
147
+ readonly putEntityState: (input: PutEntityStateInput) => Effect.Effect<State.StateRecordView, ExecutionState.StateVersionConflict | ClientError>;
148
+ readonly deleteEntityState: (input: DeleteEntityStateInput) => Effect.Effect<State.StateRecordView | undefined, ExecutionState.StateVersionConflict | ClientError>;
149
+ readonly listEntityState: (input: ListEntityStateInput) => Effect.Effect<ReadonlyArray<State.StateRecordView>, ClientError>;
150
+ readonly getPresence: (scope: Presence.Scope) => Effect.Effect<Presence.View, ClientError>;
151
+ readonly watchPresence: (scope: Presence.Scope) => Stream.Stream<Presence.View, ClientError>;
152
+ readonly wake: (input: WakeInput) => Effect.Effect<WakeAccepted, WaitKindMismatch | ClientError>;
94
153
  readonly listPendingApprovals: (input: ListPendingApprovalsInput) => Effect.Effect<PendingToolApprovalList, ClientError>;
95
- readonly resolveToolApproval: (input: ResolveToolApprovalInput) => Effect.Effect<WakeAccepted, ClientError>;
96
- readonly resolvePermission: (input: ResolvePermissionInput) => Effect.Effect<WakeAccepted, ClientError>;
154
+ readonly resolveToolApproval: (input: ResolveToolApprovalInput) => Effect.Effect<WakeAccepted, WaitKindMismatch | ClientError>;
155
+ readonly resolvePermission: (input: ResolvePermissionInput) => Effect.Effect<WakeAccepted, WaitKindMismatch | ClientError>;
97
156
  readonly listPendingToolCalls: (input: ListPendingToolCallsInput) => Effect.Effect<PendingToolCallList, ClientError>;
98
157
  readonly fulfillToolCall: (input: FulfillToolCallInput) => Effect.Effect<ToolOutcomeAccepted, ClientError>;
99
158
  readonly claimToolWork: (input: ClaimToolWorkInput) => Effect.Effect<ToolWorkLease | null, ClientError>;
100
159
  readonly completeToolWork: (input: CompleteToolWorkInput) => Effect.Effect<ToolOutcomeAccepted, ClientError>;
101
160
  readonly releaseToolWork: (input: ReleaseToolWorkInput) => Effect.Effect<ToolWorkReleased, ClientError>;
102
161
  readonly listToolAttempts: (input: ListToolAttemptsInput) => Effect.Effect<ToolAttemptList, ClientError>;
103
- readonly submitInboundEnvelope: (input: SubmitInboundEnvelopeInput) => Effect.Effect<SubmitInboundEnvelopeAccepted, ClientError>;
162
+ readonly submitInboundEnvelope: (input: SubmitInboundEnvelopeInput) => Effect.Effect<SubmitInboundEnvelopeAccepted, WaitKindMismatch | ClientError>;
104
163
  readonly spawnChildRun: (input: SpawnChildRunInput) => Effect.Effect<Execution.ChildRunAccepted, ClientError>;
164
+ readonly createChildFanOut: (input: CreateChildFanOutInput) => Effect.Effect<ChildOrchestration.FanOutState, ClientError>;
165
+ readonly cancelChildFanOut: (input: CancelChildFanOutInput) => Effect.Effect<CancelChildFanOutResult, ClientError>;
166
+ readonly inspectChildFanOut: (input: InspectChildFanOutInput) => Effect.Effect<InspectChildFanOutResult, ClientError>;
105
167
  readonly claimEnvelopeReady: (input: ClaimEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyLease | null, ClientError>;
106
168
  readonly ackEnvelopeReady: (input: AckEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyAcked, ClientError>;
107
169
  readonly releaseEnvelopeReady: (input: ReleaseEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyReleased, ClientError>;
@@ -112,9 +174,20 @@ export interface Interface {
112
174
  declare const Service_base: Context.ServiceClass<Service, "@relayfx/sdk/Client", Interface>;
113
175
  export declare class Service extends Service_base {
114
176
  }
115
- export declare const layerFromRuntime: Layer.Layer<Service, never, AgentRegistry.Service | AddressBook.Service | ExecutionService.Service | WaitService.Service | EventLog.Service | EnvelopeRepository.Service | ExecutionRepository.Service | ToolCallRepository.Service | ChildExecutionRepository.Service | SessionRepository.Service | SteeringRepository.Service | ClusterRegistryRepository.Service | ScheduleRepository.Service | SkillRegistry.Service | ToolTransitionCoordinator.Service | Sharding.Sharding | ShardingConfig.ShardingConfig>;
116
- export declare const testLayer: (implementation: Interface) => Layer.Layer<Service, never, never>;
177
+ export interface FollowExecutionDependencies {
178
+ readonly getExecution: (id: Ids.ExecutionId) => Effect.Effect<Execution.Execution | undefined, ClientError>;
179
+ readonly inspectExecution: (executionId: Ids.ExecutionId) => Effect.Effect<ExecutionInspection, ExecutionNotFound | ClientError>;
180
+ readonly streamExecution: (input: StreamExecutionInput) => Stream.Stream<Execution.ExecutionEvent, EventLogCursorNotFound | ClientError>;
181
+ }
182
+ export declare const followExecutionFrom: (dependencies: FollowExecutionDependencies) => (input: FollowExecutionInput) => Stream.Stream<FollowExecutionItem, EventLogCursorNotFound | ClientError>;
183
+ export declare const layerFromRuntime: Layer.Layer<Service, never, AgentRegistry.Service | EntityRegistry.Service | EntityInstanceService.Service | AddressBook.Service | ExecutionService.Service | EnvelopeService.Service | WaitService.Service | EventLog.Service | SessionStream.Service | ExecutionWatch.Service | ExecutionState.Service | PresenceService.Service | EnvelopeRepository.Service | ExecutionRepository.Service | InboxRepository.Service | TopicService.Service | ToolCallRepository.Service | ChildExecutionRepository.Service | ChildFanOutRepository.Service | SessionRepository.Service | SteeringRepository.Service | ClusterRegistryRepository.Service | ScheduleRepository.Service | SkillRegistry.Service | ToolTransitionCoordinator.Service | WorkflowDefinitionRepository.Service | Sharding.Sharding | ShardingConfig.ShardingConfig>;
184
+ export declare const testLayer: (implementation: Omit<Interface, "registerWorkflowDefinition" | "getWorkflowDefinitionRevision" | "listWorkflowDefinitionRevisions" | "startWorkflowRun" | "inspectWorkflowRun" | "replayWorkflowRun" | "cancelWorkflowRun" | "streamSession" | "watchExecutions" | "getPresence" | "watchPresence" | "registerEntityKind" | "getOrCreateEntity" | "getEntity" | "destroyEntity" | "listEntities" | "followExecution"> & Partial<Interface>) => Layer.Layer<Service, never, never>;
117
185
  export declare const registerAgentDefinition: (input: Agent.RegisterDefinitionPayload) => Effect.Effect<Agent.DefinitionRegistered, ClientError, Service>;
186
+ export declare const registerEntityKind: (input: Entity.KindDefinition) => Effect.Effect<Entity.KindDefinition, ClientError, Service>;
187
+ export declare const getOrCreateEntity: (input: GetOrCreateEntityInput) => Effect.Effect<Entity.Instance, ClientError, Service>;
188
+ export declare const getEntity: (input: GetEntityInput) => Effect.Effect<Entity.Instance | undefined, ClientError, Service>;
189
+ export declare const destroyEntity: (input: DestroyEntityInput) => Effect.Effect<Entity.Instance, ClientError, Service>;
190
+ export declare const listEntities: (input: ListEntitiesInput) => Effect.Effect<readonly Entity.Instance[], ClientError, Service>;
118
191
  export declare const registerAgent: (input: RegisterAgentInput) => Effect.Effect<Agent.DefinitionRegistered, ClientError, Service>;
119
192
  export declare const getAgentDefinition: (id: string & import("effect/Brand").Brand<"Relay.AgentId">) => Effect.Effect<Agent.DefinitionRecord | undefined, ClientError, Service>;
120
193
  export declare const listAgentDefinitions: () => Effect.Effect<Agent.DefinitionList, ClientError, Service>;
@@ -122,12 +195,12 @@ export declare const listAgentDefinitionRevisions: (id: string & import("effect/
122
195
  export declare const getSkillDefinition: (id: string & import("effect/Brand").Brand<"Relay.SkillDefinitionId">) => Effect.Effect<Skill.DefinitionRecord | undefined, ClientError, Service>;
123
196
  export declare const listSkillDefinitions: () => Effect.Effect<Skill.DefinitionList, ClientError, Service>;
124
197
  export declare const listSkillDefinitionRevisions: (id: string & import("effect/Brand").Brand<"Relay.SkillDefinitionId">) => Effect.Effect<Skill.DefinitionRevisionList, ClientError, Service>;
125
- export declare const registerAddressBookRoute: (input: Address.RegisterRoutePayload) => Effect.Effect<Address.RouteRegistered, ClientError, Service>;
198
+ export declare const registerAddressBookRoute: (input: Address.RegisterRoutePayload) => Effect.Effect<Address.RouteRegistered, ClientError | EntityNamespaceReserved, Service>;
126
199
  export declare const getAddressBookRoute: (id: string & import("effect/Brand").Brand<"Relay.AddressId">) => Effect.Effect<Address.RouteRecord | undefined, ClientError, Service>;
127
200
  export declare const listAddressBookRoutes: () => Effect.Effect<Address.RouteList, ClientError, Service>;
128
- export declare const startExecution: (input: StartExecutionInput) => Effect.Effect<StartExecutionResult, ClientError, Service>;
129
- export declare const startExecutionByAddress: (input: StartExecutionByAddressInput) => Effect.Effect<StartExecutionResult, ClientError, Service>;
130
- export declare const startExecutionByAgentDefinition: (input: StartExecutionByAgentDefinitionInput) => Effect.Effect<StartExecutionResult, ClientError, Service>;
201
+ export declare const startExecution: (input: StartExecutionInput) => Effect.Effect<StartExecutionResult, ClientError | EntityNamespaceReserved, Service>;
202
+ export declare const startExecutionByAddress: (input: StartExecutionByAddressInput) => Effect.Effect<StartExecutionResult, ClientError | EntityNamespaceReserved, Service>;
203
+ export declare const startExecutionByAgentDefinition: (input: StartExecutionByAgentDefinitionInput) => Effect.Effect<StartExecutionResult, ClientError | EntityNamespaceReserved, Service>;
131
204
  export declare const cancelExecution: (input: CancelExecutionInput) => Effect.Effect<CancelExecutionAccepted, ClientError, Service>;
132
205
  export declare const steer: (input: SteerInput) => Effect.Effect<SteerAccepted, ClientError, Service>;
133
206
  export declare const getExecution: (id: string & import("effect/Brand").Brand<"Relay.ExecutionId">) => Effect.Effect<Execution.Execution | undefined, ClientError, Service>;
@@ -138,25 +211,262 @@ export declare const listWaits: (input: ListWaitsInput) => Effect.Effect<readonl
138
211
  export declare const replayExecution: (input: ReplayExecutionInput) => Effect.Effect<ReplayExecutionResult, ClientError, Service>;
139
212
  export declare const listRunners: () => Effect.Effect<ListRunnersResult, ClientError, Service>;
140
213
  export declare const routeExecution: (executionId: string & import("effect/Brand").Brand<"Relay.ExecutionId">) => Effect.Effect<RouteExecutionResult, ClientError, Service>;
214
+ export declare const subscribeTopic: (input: SubscribeTopicInput) => Effect.Effect<TopicSubscription, ClientError, Service>;
215
+ export declare const unsubscribeTopic: (input: UnsubscribeTopicInput) => Effect.Effect<void, ClientError, Service>;
216
+ export declare const publishTopic: (input: PublishTopicInput) => Effect.Effect<TopicPublishAccepted, ClientError, Service>;
217
+ export declare const listTopicSubscriptions: (input: ListTopicSubscriptionsInput) => Effect.Effect<readonly TopicSubscription[], ClientError, Service>;
218
+ export declare const listInboxMessages: (input: ListInboxMessagesInput) => Effect.Effect<readonly Inbox.Message[], ClientError, Service>;
141
219
  export declare const inspectExecution: (executionId: string & import("effect/Brand").Brand<"Relay.ExecutionId">) => Effect.Effect<ExecutionInspection, ClientError | ExecutionNotFound, Service>;
142
220
  export declare const send: (input: Envelope.SendInput) => Effect.Effect<Envelope.EnvelopeAccepted, ClientError, Service>;
143
- export declare const streamExecution: (input: StreamExecutionInput) => Stream.Stream<Execution.ExecutionEvent, ClientError, Service>;
144
- export declare const wake: (input: WakeInput) => Effect.Effect<WakeAccepted, ClientError, Service>;
221
+ export declare const streamExecution: (input: StreamExecutionInput) => Stream.Stream<Execution.ExecutionEvent, EventLogCursorNotFound | ClientError, Service>;
222
+ export declare const followExecution: (input: FollowExecutionInput) => Stream.Stream<Schema.Struct.ReadonlySide<{
223
+ readonly _tag: Schema.tag<"event">;
224
+ readonly event: Schema.Struct<{
225
+ readonly id: Schema.brand<Schema.String, "Relay.EventId"> & {
226
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.EventId">;
227
+ };
228
+ readonly execution_id: Schema.brand<Schema.String, "Relay.ExecutionId"> & {
229
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ExecutionId">;
230
+ };
231
+ readonly child_execution_id: Schema.optionalKey<Schema.brand<Schema.String, "Relay.ChildExecutionId"> & {
232
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ChildExecutionId">;
233
+ }>;
234
+ readonly type: Schema.Literals<readonly ["execution.accepted", "execution.started", "execution.completed", "execution.failed", "execution.cancelled", "model.input.prepared", "model.output.delta", "model.reasoning.delta", "model.output.completed", "model.usage.reported", "budget.exceeded", "tool.call.requested", "tool.result.received", "tool.approval.requested", "tool.approval.resolved", "permission.ask.requested", "permission.ask.resolved", "steering.received", "state.updated", "state.deleted", "inbox.enqueued", "inbox.drained", "entity.created", "entity.destroyed", "envelope.accepted", "envelope.routed", "envelope.ready", "delivery.attempt", "wait.created", "wait.woken", "wait.timed_out", "wait.cancelled", "child_run.spawned", "child_run.event", "child_fan_out.created", "child_fan_out.member.admitted", "child_fan_out.member.terminal", "child_fan_out.terminal", "workspace.lease.planned", "workspace.lease.acquired", "workspace.suspended", "workspace.resumed", "workspace.snapshot.created", "workspace.lease.released", "workspace.lease.failed"]>;
235
+ readonly sequence: Schema.Int;
236
+ readonly cursor: Schema.String;
237
+ readonly content: Schema.optionalKey<Schema.$Array<Schema.Union<readonly [Schema.Struct<{
238
+ readonly type: Schema.Literal<"text">;
239
+ readonly text: Schema.String;
240
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
241
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
242
+ }>, Schema.Struct<{
243
+ readonly type: Schema.Literal<"structured">;
244
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
245
+ readonly schema_ref: Schema.optionalKey<Schema.String>;
246
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
247
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
248
+ }>, Schema.Struct<{
249
+ readonly type: Schema.Literal<"blob-reference">;
250
+ readonly uri: Schema.String;
251
+ readonly media_type: Schema.String;
252
+ readonly filename: Schema.optionalKey<Schema.String>;
253
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
254
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
255
+ }>, Schema.Struct<{
256
+ readonly type: Schema.Literal<"artifact-reference">;
257
+ readonly artifact_id: Schema.String;
258
+ readonly media_type: Schema.optionalKey<Schema.String>;
259
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
260
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
261
+ }>, Schema.Struct<{
262
+ readonly type: Schema.Literal<"tool-call">;
263
+ readonly call: Schema.Struct<{
264
+ readonly id: Schema.brand<Schema.String, "Relay.ToolCallId"> & {
265
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ToolCallId">;
266
+ };
267
+ readonly name: Schema.String;
268
+ readonly input: Schema.Codec<Schema.Json, Schema.Json, never, never>;
269
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
270
+ }>;
271
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
272
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
273
+ }>, Schema.Struct<{
274
+ readonly type: Schema.Literal<"tool-result">;
275
+ readonly result: Schema.Struct<{
276
+ readonly call_id: Schema.brand<Schema.String, "Relay.ToolCallId"> & {
277
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ToolCallId">;
278
+ };
279
+ readonly output: Schema.Codec<Schema.Json, Schema.Json, never, never>;
280
+ readonly error: Schema.optionalKey<Schema.String>;
281
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
282
+ }>;
283
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
284
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
285
+ }>]>>>;
286
+ readonly data: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
287
+ readonly created_at: Schema.Int;
288
+ }>;
289
+ }, "Type"> | Schema.Struct.ReadonlySide<{
290
+ readonly _tag: Schema.tag<"reconnecting">;
291
+ readonly message: Schema.String;
292
+ readonly attempt: Schema.Int;
293
+ }, "Type"> | Schema.Struct.ReadonlySide<{
294
+ readonly _tag: Schema.tag<"stopped">;
295
+ readonly reason: Schema.Union<readonly [Schema.Struct<{
296
+ readonly _tag: Schema.tag<"terminal">;
297
+ readonly status: Schema.Literals<readonly ["queued", "running", "waiting", "completed", "failed", "cancelled"]>;
298
+ }>, Schema.Struct<{
299
+ readonly _tag: Schema.tag<"actionable_wait">;
300
+ readonly wait: Schema.Struct<{
301
+ readonly wait_id: Schema.brand<Schema.String, "Relay.WaitId"> & {
302
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.WaitId">;
303
+ };
304
+ readonly execution_id: Schema.brand<Schema.String, "Relay.ExecutionId"> & {
305
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ExecutionId">;
306
+ };
307
+ readonly envelope_id: Schema.optionalKey<Schema.brand<Schema.String, "Relay.EnvelopeId"> & {
308
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.EnvelopeId">;
309
+ }>;
310
+ readonly kind: Schema.optionalKey<Schema.Literals<readonly ["permission", "tool_approval", "tool_placement", "child_join", "inbox", "reply", "timer", "external"]>>;
311
+ readonly mode: Schema.Literals<readonly ["reply", "event", "until", "child"]>;
312
+ readonly correlation_key: Schema.optionalKey<Schema.String>;
313
+ readonly state: Schema.Literals<readonly ["open", "resolved", "timed_out", "cancelled"]>;
314
+ readonly metadata: Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>;
315
+ readonly created_at: Schema.Int;
316
+ readonly resolved_at: Schema.optionalKey<Schema.Int>;
317
+ }>;
318
+ }>]>;
319
+ readonly cursor: Schema.NullOr<Schema.String>;
320
+ }, "Type">, EventLogCursorNotFound | ClientError, Service>;
321
+ export declare const streamSession: (input: StreamSessionInput) => Stream.Stream<Schema.Struct.ReadonlySide<{
322
+ readonly _tag: Schema.tag<"execution_joined">;
323
+ readonly execution: Schema.Struct<{
324
+ readonly execution_id: Schema.brand<Schema.String, "Relay.ExecutionId"> & {
325
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ExecutionId">;
326
+ };
327
+ readonly root_address_id: Schema.brand<Schema.String, "Relay.AddressId"> & {
328
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.AddressId">;
329
+ };
330
+ readonly session_id: Schema.optionalKey<Schema.brand<Schema.String, "Relay.SessionId"> & {
331
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.SessionId">;
332
+ }>;
333
+ readonly status: Schema.Literals<readonly ["queued", "running", "waiting", "completed", "failed", "cancelled"]>;
334
+ readonly kind: Schema.Literals<readonly ["user-agent", "agent-agent"]>;
335
+ readonly agent_id: Schema.optionalKey<Schema.brand<Schema.String, "Relay.AgentId"> & {
336
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.AgentId">;
337
+ }>;
338
+ readonly metadata: Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>;
339
+ readonly created_at: Schema.Int;
340
+ readonly updated_at: Schema.Int;
341
+ }>;
342
+ }, "Type"> | Schema.Struct.ReadonlySide<{
343
+ readonly _tag: Schema.tag<"execution_event">;
344
+ readonly event: Schema.Struct<{
345
+ readonly id: Schema.brand<Schema.String, "Relay.EventId"> & {
346
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.EventId">;
347
+ };
348
+ readonly execution_id: Schema.brand<Schema.String, "Relay.ExecutionId"> & {
349
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ExecutionId">;
350
+ };
351
+ readonly child_execution_id: Schema.optionalKey<Schema.brand<Schema.String, "Relay.ChildExecutionId"> & {
352
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ChildExecutionId">;
353
+ }>;
354
+ readonly type: Schema.Literals<readonly ["execution.accepted", "execution.started", "execution.completed", "execution.failed", "execution.cancelled", "model.input.prepared", "model.output.delta", "model.reasoning.delta", "model.output.completed", "model.usage.reported", "budget.exceeded", "tool.call.requested", "tool.result.received", "tool.approval.requested", "tool.approval.resolved", "permission.ask.requested", "permission.ask.resolved", "steering.received", "state.updated", "state.deleted", "inbox.enqueued", "inbox.drained", "entity.created", "entity.destroyed", "envelope.accepted", "envelope.routed", "envelope.ready", "delivery.attempt", "wait.created", "wait.woken", "wait.timed_out", "wait.cancelled", "child_run.spawned", "child_run.event", "child_fan_out.created", "child_fan_out.member.admitted", "child_fan_out.member.terminal", "child_fan_out.terminal", "workspace.lease.planned", "workspace.lease.acquired", "workspace.suspended", "workspace.resumed", "workspace.snapshot.created", "workspace.lease.released", "workspace.lease.failed"]>;
355
+ readonly sequence: Schema.Int;
356
+ readonly cursor: Schema.String;
357
+ readonly content: Schema.optionalKey<Schema.$Array<Schema.Union<readonly [Schema.Struct<{
358
+ readonly type: Schema.Literal<"text">;
359
+ readonly text: Schema.String;
360
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
361
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
362
+ }>, Schema.Struct<{
363
+ readonly type: Schema.Literal<"structured">;
364
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
365
+ readonly schema_ref: Schema.optionalKey<Schema.String>;
366
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
367
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
368
+ }>, Schema.Struct<{
369
+ readonly type: Schema.Literal<"blob-reference">;
370
+ readonly uri: Schema.String;
371
+ readonly media_type: Schema.String;
372
+ readonly filename: Schema.optionalKey<Schema.String>;
373
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
374
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
375
+ }>, Schema.Struct<{
376
+ readonly type: Schema.Literal<"artifact-reference">;
377
+ readonly artifact_id: Schema.String;
378
+ readonly media_type: Schema.optionalKey<Schema.String>;
379
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
380
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
381
+ }>, Schema.Struct<{
382
+ readonly type: Schema.Literal<"tool-call">;
383
+ readonly call: Schema.Struct<{
384
+ readonly id: Schema.brand<Schema.String, "Relay.ToolCallId"> & {
385
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ToolCallId">;
386
+ };
387
+ readonly name: Schema.String;
388
+ readonly input: Schema.Codec<Schema.Json, Schema.Json, never, never>;
389
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
390
+ }>;
391
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
392
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
393
+ }>, Schema.Struct<{
394
+ readonly type: Schema.Literal<"tool-result">;
395
+ readonly result: Schema.Struct<{
396
+ readonly call_id: Schema.brand<Schema.String, "Relay.ToolCallId"> & {
397
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ToolCallId">;
398
+ };
399
+ readonly output: Schema.Codec<Schema.Json, Schema.Json, never, never>;
400
+ readonly error: Schema.optionalKey<Schema.String>;
401
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
402
+ }>;
403
+ readonly provider_options: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
404
+ readonly metadata: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
405
+ }>]>>>;
406
+ readonly data: Schema.optionalKey<Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>>;
407
+ readonly created_at: Schema.Int;
408
+ }>;
409
+ }, "Type">, EventLogCursorNotFound | ClientError, Service>;
410
+ export declare const watchExecutions: (input: WatchExecutionsInput) => Stream.Stream<{
411
+ readonly records: readonly {
412
+ readonly metadata: {
413
+ readonly [x: string]: Schema.Json;
414
+ };
415
+ readonly kind: "user-agent" | "agent-agent";
416
+ readonly created_at: number;
417
+ readonly updated_at: number;
418
+ readonly root_address_id: string & import("effect/Brand").Brand<"Relay.AddressId">;
419
+ readonly status: "waiting" | "running" | "completed" | "failed" | "queued" | "cancelled";
420
+ readonly execution_id: string & import("effect/Brand").Brand<"Relay.ExecutionId">;
421
+ readonly session_id?: string & import("effect/Brand").Brand<"Relay.SessionId">;
422
+ readonly agent_id?: string & import("effect/Brand").Brand<"Relay.AgentId">;
423
+ }[];
424
+ readonly _tag: "snapshot";
425
+ readonly next_cursor?: string;
426
+ } | Schema.Struct.ReadonlySide<{
427
+ readonly _tag: Schema.tag<"upsert">;
428
+ readonly record: Schema.Struct<{
429
+ readonly execution_id: Schema.brand<Schema.String, "Relay.ExecutionId"> & {
430
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.ExecutionId">;
431
+ };
432
+ readonly root_address_id: Schema.brand<Schema.String, "Relay.AddressId"> & {
433
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.AddressId">;
434
+ };
435
+ readonly session_id: Schema.optionalKey<Schema.brand<Schema.String, "Relay.SessionId"> & {
436
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.SessionId">;
437
+ }>;
438
+ readonly status: Schema.Literals<readonly ["queued", "running", "waiting", "completed", "failed", "cancelled"]>;
439
+ readonly kind: Schema.Literals<readonly ["user-agent", "agent-agent"]>;
440
+ readonly agent_id: Schema.optionalKey<Schema.brand<Schema.String, "Relay.AgentId"> & {
441
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.AgentId">;
442
+ }>;
443
+ readonly metadata: Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>;
444
+ readonly created_at: Schema.Int;
445
+ readonly updated_at: Schema.Int;
446
+ }>;
447
+ }, "Type">, ClientError, Service>;
448
+ export declare const getPresence: (scope: Presence.Scope) => Effect.Effect<Presence.View, ClientError, Service>;
449
+ export declare const watchPresence: (scope: Presence.Scope) => Stream.Stream<Presence.View, ClientError, Service>;
450
+ export declare const wake: (input: WakeInput) => Effect.Effect<WakeAccepted, ClientError | WaitKindMismatch, Service>;
145
451
  export declare const listPendingApprovals: (input: ListPendingApprovalsInput) => Effect.Effect<PendingToolApprovalList, ClientError, Service>;
146
- export declare const resolveToolApproval: (input: ResolveToolApprovalInput) => Effect.Effect<WakeAccepted, ClientError, Service>;
147
- export declare const resolvePermission: (input: ResolvePermissionInput) => Effect.Effect<WakeAccepted, ClientError, Service>;
452
+ export declare const resolveToolApproval: (input: ResolveToolApprovalInput) => Effect.Effect<WakeAccepted, ClientError | WaitKindMismatch, Service>;
453
+ export declare const resolvePermission: (input: ResolvePermissionInput) => Effect.Effect<WakeAccepted, ClientError | WaitKindMismatch, Service>;
148
454
  export declare const listPendingToolCalls: (input: ListPendingToolCallsInput) => Effect.Effect<PendingToolCallList, ClientError, Service>;
149
455
  export declare const fulfillToolCall: (input: FulfillToolCallInput) => Effect.Effect<ToolOutcomeAccepted, ClientError, Service>;
150
456
  export declare const claimToolWork: (input: ClaimToolWorkInput) => Effect.Effect<ToolWorkLease | null, ClientError, Service>;
151
457
  export declare const completeToolWork: (input: CompleteToolWorkInput) => Effect.Effect<ToolOutcomeAccepted, ClientError, Service>;
152
458
  export declare const releaseToolWork: (input: ReleaseToolWorkInput) => Effect.Effect<ToolWorkReleased, ClientError, Service>;
153
459
  export declare const listToolAttempts: (input: ListToolAttemptsInput) => Effect.Effect<ToolAttemptList, ClientError, Service>;
154
- export declare const submitInboundEnvelope: (input: SubmitInboundEnvelopeInput) => Effect.Effect<SubmitInboundEnvelopeAccepted, ClientError, Service>;
460
+ export declare const submitInboundEnvelope: (input: SubmitInboundEnvelopeInput) => Effect.Effect<SubmitInboundEnvelopeAccepted, ClientError | WaitKindMismatch, Service>;
155
461
  export declare const spawnChildRun: (input: SpawnChildRunInput) => Effect.Effect<Execution.ChildRunAccepted, ClientError, Service>;
462
+ export declare const createChildFanOut: (input: CreateChildFanOutInput) => Effect.Effect<ChildOrchestration.FanOutState, ClientError, Service>;
463
+ export declare const cancelChildFanOut: (input: CancelChildFanOutInput) => Effect.Effect<CancelChildFanOutResult, ClientError, Service>;
464
+ export declare const inspectChildFanOut: (input: InspectChildFanOutInput) => Effect.Effect<InspectChildFanOutResult, ClientError, Service>;
156
465
  export declare const claimEnvelopeReady: (input: ClaimEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyLease | null, ClientError, Service>;
157
466
  export declare const ackEnvelopeReady: (input: AckEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyAcked, ClientError, Service>;
158
467
  export declare const releaseEnvelopeReady: (input: ReleaseEnvelopeReadyInput) => Effect.Effect<EnvelopeReadyReleased, ClientError, Service>;
159
468
  export declare const createSchedule: (input: CreateScheduleInput) => Effect.Effect<CreateScheduleResult, ClientError, Service>;
160
469
  export declare const cancelSchedule: (input: CancelScheduleInput) => Effect.Effect<CancelScheduleResult, ClientError, Service>;
161
470
  export declare const listSchedules: (input: ListSchedulesInput) => Effect.Effect<ListSchedulesResult, ClientError, Service>;
162
- export {};
471
+ export declare const askEntity: <Name extends string, I extends Schema.Top, O extends Schema.Top>(input: AskEntityInput<Name, I, O>) => Effect.Effect<O["Type"], CommandTimedOut | CommandReplyInvalid | EntityNotFound | ClientError, Service | I["EncodingServices"] | O["DecodingServices"]>;
472
+ export declare const awaitWait: (input: AwaitWaitInput) => Effect.Effect<WaitOutcome, ClientError, Service>;
@@ -0,0 +1,41 @@
1
+ import { Schema } from "effect";
2
+ export interface Command<Name extends string, Input extends Schema.Top, Output extends Schema.Top> {
3
+ readonly name: Name;
4
+ readonly input: Input;
5
+ readonly output: Output;
6
+ }
7
+ export declare const make: <Name extends string, Input extends Schema.Top, Output extends Schema.Top>(name: Name, options: {
8
+ readonly input: Input;
9
+ readonly output: Output;
10
+ }) => Command<Name, Input, Output>;
11
+ export declare const inputSchemaRef: (name: string) => string;
12
+ export declare const outputSchemaRef: (name: string) => string;
13
+ declare const CommandTimedOut_base: Schema.Class<CommandTimedOut, Schema.TaggedStruct<"CommandTimedOut", {
14
+ readonly command: Schema.String;
15
+ readonly wait_id: Schema.brand<Schema.String, "Relay.WaitId"> & {
16
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.WaitId">;
17
+ };
18
+ readonly timeout: Schema.String;
19
+ }>, import("effect/Cause").YieldableError>;
20
+ export declare class CommandTimedOut extends CommandTimedOut_base {
21
+ }
22
+ declare const CommandReplyInvalid_base: Schema.Class<CommandReplyInvalid, Schema.TaggedStruct<"CommandReplyInvalid", {
23
+ readonly command: Schema.String;
24
+ readonly wait_id: Schema.brand<Schema.String, "Relay.WaitId"> & {
25
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.WaitId">;
26
+ };
27
+ readonly message: Schema.String;
28
+ }>, import("effect/Cause").YieldableError>;
29
+ export declare class CommandReplyInvalid extends CommandReplyInvalid_base {
30
+ }
31
+ declare const EntityNotFound_base: Schema.Class<EntityNotFound, Schema.TaggedStruct<"EntityNotFound", {
32
+ readonly kind: Schema.brand<Schema.String, "Relay.EntityKindName"> & {
33
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.EntityKindName">;
34
+ };
35
+ readonly key: Schema.brand<Schema.String, "Relay.EntityKey"> & {
36
+ make: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => string & import("effect/Brand").Brand<"Relay.EntityKey">;
37
+ };
38
+ }>, import("effect/Cause").YieldableError>;
39
+ export declare class EntityNotFound extends EntityNotFound_base {
40
+ }
41
+ export {};
@@ -5,6 +5,7 @@ export type PgTimestamp = Parameters<typeof Database.fromPgDate>[0];
5
5
  export type DatabaseError = Effect.Error<ReturnType<typeof Database.check>>;
6
6
  export type Dialect = typeof Database.Dialect.Type;
7
7
  export declare const Service: typeof Database.Service;
8
+ export declare const PgClientLive: import("effect/Layer").Layer<import("effect/unstable/sql/SqlClient").SqlClient | import("@effect/sql-pg/PgClient").PgClient, import("effect/unstable/sql/SqlError").SqlError | import("effect/Config").ConfigError, never>;
8
9
  export declare const layerFromPgClient: import("effect/Layer").Layer<Database.Service, never, import("@effect/sql-pg/PgClient").PgClient>;
9
10
  export declare const testLayer: (db: Database.Drizzle) => import("effect/Layer").Layer<Database.Service, never, never>;
10
11
  export declare const check: () => Effect.Effect<void, import("drizzle-orm/effect-core").EffectDrizzleQueryError, Database.Service>;
@@ -1,10 +1,11 @@
1
1
  export * as AdapterOutbox from "./adapter-outbox";
2
2
  export * as Client from "./client";
3
+ export * as Command from "./command";
3
4
  export * as Database from "./database";
4
5
  export * as Operation from "./operation";
5
6
  export * as ToolWorker from "./tool-worker";
6
- export { Address, Agent, Content, Envelope, Execution, Ids, Schedule, Shared, Skill, Tool } from "../schema/index";
7
- export { AddressBook, AddressResolution, AgentLoop, AgentRegistry, ActivityVersionRegistry, ArtifactStore, BlobStore, ChildRunService, EnvelopeService, EventLog, ExecutionEntity, ExecutionService, ExecutionWorkflow, LanguageModelService, ModelCallPolicy, PromptAssembler, SchedulerService, SchemaRegistry, SkillRegistry, ToolRuntime, WaitService, } from "../runtime/index";
7
+ export { Address, Agent, Content, Entity, Envelope, Execution, Ids, Presence, Schedule, Shared, Skill, Tool, Waits, Workflow, } from "../schema/index";
8
+ export { AddressBook, AddressResolution, AgentLoop, AgentRegistry, ActivityVersionRegistry, ArtifactStore, BlobStore, ChildRunService, ChildFanOutRuntime, EnvelopeService, EventLog, ExecutionEntity, ExecutionService, ExecutionWorkflow, LanguageModelService, ModelCallPolicy, PresenceService, PresenceTool, PromptAssembler, SchedulerService, SchemaRegistry, SkillRegistry, ToolRuntime, WaitService, WorkflowDefinitionRuntime, } from "../runtime/index";
8
9
  export { RunnerRuntime } from "../runtime/index";
9
10
  export { LanguageModelRegistration } from "../ai/index";
10
11
  export { RelaySchema, SkillDefinitionRepository } from "../store-sql/index";