@h-rig/contracts 0.0.6-alpha.18 → 0.0.6-alpha.181

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 (205) hide show
  1. package/dist/index.cjs +3442 -0
  2. package/dist/index.mjs +3401 -0
  3. package/dist/src/agent-roles.d.ts +8 -0
  4. package/dist/src/artifact.d.ts +13 -0
  5. package/dist/src/artifact.js +3 -0
  6. package/dist/src/baseSchemas.d.ts +63 -0
  7. package/dist/src/baseSchemas.js +6 -0
  8. package/dist/src/blocker-classifier.d.ts +21 -0
  9. package/dist/src/blocker-classifier.js +13 -0
  10. package/dist/src/browser.d.ts +80 -0
  11. package/dist/src/browser.js +13 -0
  12. package/dist/src/capability-id.d.ts +22 -0
  13. package/dist/src/capability-id.js +8 -0
  14. package/dist/src/cli-output.d.ts +348 -0
  15. package/dist/src/cli-output.js +190 -0
  16. package/dist/src/cli-runner.d.ts +43 -0
  17. package/dist/src/cli-runner.js +13 -0
  18. package/dist/src/cockpit.d.ts +58 -0
  19. package/dist/src/cockpit.js +13 -0
  20. package/dist/src/collab-session-viewer.d.ts +36 -0
  21. package/dist/src/collab-session-viewer.js +13 -0
  22. package/dist/src/config.d.ts +553 -0
  23. package/dist/src/config.js +767 -162
  24. package/dist/src/control-plane-types.d.ts +323 -0
  25. package/dist/src/control-plane-types.js +13 -0
  26. package/dist/src/conversation.d.ts +50 -0
  27. package/dist/src/conversation.js +3 -0
  28. package/dist/src/dependency-preflight.d.ts +43 -0
  29. package/dist/src/dependency-preflight.js +13 -0
  30. package/dist/src/docs-drift.d.ts +10 -0
  31. package/dist/src/docs-drift.js +12 -0
  32. package/dist/src/doctor.d.ts +90 -0
  33. package/dist/src/doctor.js +13 -0
  34. package/dist/src/drift.d.ts +28 -0
  35. package/dist/src/drift.js +69 -0
  36. package/dist/src/editor.d.ts +25 -0
  37. package/dist/src/editor.js +3 -0
  38. package/dist/src/errors.d.ts +13 -0
  39. package/dist/src/errors.js +17 -0
  40. package/dist/src/git.d.ts +152 -0
  41. package/dist/src/git.js +3 -0
  42. package/dist/src/github.d.ts +295 -0
  43. package/dist/src/github.js +17 -0
  44. package/dist/src/graph.d.ts +360 -0
  45. package/dist/src/graph.js +137 -1
  46. package/dist/src/guard.d.ts +118 -0
  47. package/dist/src/guard.js +15 -0
  48. package/dist/src/harness-events.d.ts +8 -0
  49. package/dist/src/harness-events.js +1 -0
  50. package/dist/src/harness-profile-state.d.ts +10 -0
  51. package/dist/src/harness-profile-state.js +13 -0
  52. package/dist/src/help-catalog.d.ts +41 -0
  53. package/dist/src/help-catalog.js +13 -0
  54. package/dist/src/host.d.ts +41 -0
  55. package/dist/src/host.js +13 -0
  56. package/dist/src/identity.d.ts +44 -0
  57. package/dist/src/identity.js +1 -0
  58. package/dist/src/index.d.ts +98 -0
  59. package/dist/src/index.js +2605 -3752
  60. package/dist/src/isolation.d.ts +213 -0
  61. package/dist/src/isolation.js +13 -0
  62. package/dist/src/kernel.d.ts +200 -0
  63. package/dist/src/kernel.js +261 -0
  64. package/dist/src/keybindings.d.ts +71 -0
  65. package/dist/src/keybindings.js +3 -0
  66. package/dist/src/layout.d.ts +44 -0
  67. package/dist/src/layout.js +8 -0
  68. package/dist/src/lifecycle-capabilities.d.ts +224 -0
  69. package/dist/src/lifecycle-capabilities.js +45 -0
  70. package/dist/src/managed-repos.d.ts +339 -0
  71. package/dist/src/managed-repos.js +37 -0
  72. package/dist/src/memory.d.ts +199 -0
  73. package/dist/src/memory.js +15 -0
  74. package/dist/src/model.d.ts +13 -0
  75. package/dist/src/model.js +3 -58
  76. package/dist/src/native-toolchain.d.ts +46 -0
  77. package/dist/src/native-toolchain.js +13 -0
  78. package/dist/src/notify.d.ts +46 -0
  79. package/dist/src/notify.js +13 -0
  80. package/dist/src/orchestration.d.ts +43 -0
  81. package/dist/src/orchestration.js +28 -961
  82. package/dist/src/panel-protocol.d.ts +17 -0
  83. package/dist/src/panel-protocol.js +10 -0
  84. package/dist/src/pi-session.d.ts +113 -0
  85. package/dist/src/pi-session.js +1 -0
  86. package/dist/src/placement.d.ts +47 -0
  87. package/dist/src/placement.js +13 -0
  88. package/dist/src/planning.d.ts +64 -0
  89. package/dist/src/planning.js +90 -0
  90. package/dist/src/plugin-hooks.d.ts +51 -0
  91. package/dist/src/plugin-hooks.js +386 -0
  92. package/dist/src/plugin.d.ts +476 -0
  93. package/dist/src/plugin.js +346 -64
  94. package/dist/src/policy.d.ts +16 -0
  95. package/dist/src/policy.js +3 -0
  96. package/dist/src/product-entrypoint.d.ts +22 -0
  97. package/dist/src/product-entrypoint.js +13 -0
  98. package/dist/src/project.d.ts +71 -0
  99. package/dist/src/project.js +3 -0
  100. package/dist/src/prompt.d.ts +29 -0
  101. package/dist/src/prompt.js +13 -0
  102. package/dist/src/protocol-version.d.ts +21 -0
  103. package/dist/src/protocol-version.js +6 -0
  104. package/dist/src/provider-instructions.d.ts +41 -0
  105. package/dist/src/provider-instructions.js +13 -0
  106. package/dist/src/provider.d.ts +105 -0
  107. package/dist/src/provider.js +16 -835
  108. package/dist/src/remote-control.d.ts +93 -0
  109. package/dist/src/remote-control.js +26 -0
  110. package/dist/src/remote.d.ts +318 -0
  111. package/dist/src/remote.js +238 -1078
  112. package/dist/src/review.d.ts +18 -0
  113. package/dist/src/review.js +3 -0
  114. package/dist/src/rollups.d.ts +41 -0
  115. package/dist/src/rollups.js +70 -0
  116. package/dist/src/run-control.d.ts +164 -0
  117. package/dist/src/run-control.js +13 -0
  118. package/dist/src/run-discovery.d.ts +83 -0
  119. package/dist/src/run-discovery.js +13 -0
  120. package/dist/src/run-dispatch.d.ts +34 -0
  121. package/dist/src/run-dispatch.js +13 -0
  122. package/dist/src/run-identity.d.ts +47 -0
  123. package/dist/src/run-identity.js +13 -0
  124. package/dist/src/run-journal.d.ts +694 -0
  125. package/dist/src/run-journal.js +569 -0
  126. package/dist/src/run-queue.d.ts +36 -0
  127. package/dist/src/run-queue.js +13 -0
  128. package/dist/src/run-read-model.d.ts +200 -0
  129. package/dist/src/run-read-model.js +13 -0
  130. package/dist/src/run-record.d.ts +45 -0
  131. package/dist/src/run-record.js +1 -0
  132. package/dist/src/run-registry-backbone.d.ts +56 -0
  133. package/dist/src/run-registry-backbone.js +13 -0
  134. package/dist/src/run-session-journal.d.ts +154 -0
  135. package/dist/src/run-session-journal.js +87 -0
  136. package/dist/src/run-status.d.ts +10 -0
  137. package/dist/src/run-status.js +27 -0
  138. package/dist/src/run-timeline.d.ts +7 -0
  139. package/dist/src/run-timeline.js +1 -0
  140. package/dist/src/runtime-secrets.d.ts +10 -0
  141. package/dist/src/runtime-secrets.js +13 -0
  142. package/dist/src/runtime-task-context.d.ts +82 -0
  143. package/dist/src/runtime-task-context.js +1 -0
  144. package/dist/src/runtime.d.ts +103 -0
  145. package/dist/src/runtime.js +73 -906
  146. package/dist/src/session-asset-materializer.d.ts +35 -0
  147. package/dist/src/session-asset-materializer.js +13 -0
  148. package/dist/src/session-hook-materializer.d.ts +41 -0
  149. package/dist/src/session-hook-materializer.js +13 -0
  150. package/dist/src/setup.d.ts +154 -0
  151. package/dist/src/setup.js +13 -0
  152. package/dist/src/stage.d.ts +245 -0
  153. package/dist/src/stage.js +169 -0
  154. package/dist/src/supervisor-journal.d.ts +204 -0
  155. package/dist/src/supervisor-journal.js +336 -0
  156. package/dist/src/supervisor-loop.d.ts +40 -0
  157. package/dist/src/supervisor-loop.js +13 -0
  158. package/dist/src/task-artifacts.d.ts +53 -0
  159. package/dist/src/task-artifacts.js +13 -0
  160. package/dist/src/task-config.d.ts +22 -0
  161. package/dist/src/task-config.js +1 -0
  162. package/dist/src/task-context-renderer.d.ts +29 -0
  163. package/dist/src/task-context-renderer.js +13 -0
  164. package/dist/src/task-data.d.ts +196 -0
  165. package/dist/src/task-data.js +13 -0
  166. package/dist/src/task-graph-primitives.d.ts +47 -0
  167. package/dist/src/task-graph-primitives.js +1 -0
  168. package/dist/src/task-source.d.ts +167 -0
  169. package/dist/src/task-source.js +24 -0
  170. package/dist/src/task-state-metadata.d.ts +21 -0
  171. package/dist/src/task-state-metadata.js +1 -0
  172. package/dist/src/task-state-paths.d.ts +14 -0
  173. package/dist/src/task-state-paths.js +13 -0
  174. package/dist/src/task-state-store.d.ts +36 -0
  175. package/dist/src/task-state-store.js +17 -0
  176. package/dist/src/task-tracker-state.d.ts +101 -0
  177. package/dist/src/task-tracker-state.js +39 -0
  178. package/dist/src/terminal.d.ts +130 -0
  179. package/dist/src/terminal.js +3 -0
  180. package/dist/src/tool-materializer.d.ts +36 -0
  181. package/dist/src/tool-materializer.js +13 -0
  182. package/dist/src/tool-registry.d.ts +3 -0
  183. package/dist/src/tool-registry.js +58 -0
  184. package/dist/src/toolchain-sources.d.ts +54 -0
  185. package/dist/src/toolchain-sources.js +17 -0
  186. package/dist/src/transport-config.d.ts +161 -0
  187. package/dist/src/transport-config.js +15 -0
  188. package/dist/src/validation.d.ts +14 -0
  189. package/dist/src/validation.js +3 -0
  190. package/dist/src/workflow-journal.d.ts +125 -0
  191. package/dist/src/workflow-journal.js +27 -0
  192. package/dist/src/workspace-config.d.ts +18 -0
  193. package/dist/src/workspace-config.js +13 -0
  194. package/dist/src/workspace-service.d.ts +16 -0
  195. package/dist/src/workspace-service.js +13 -0
  196. package/dist/src/workspace.d.ts +204 -0
  197. package/dist/src/workspace.js +76 -911
  198. package/package.json +55 -4
  199. package/dist/src/engine.js +0 -2278
  200. package/dist/src/providerRuntime.js +0 -1630
  201. package/dist/src/rig.js +0 -2374
  202. package/dist/src/server.js +0 -1053
  203. package/dist/src/serviceFabric.js +0 -1066
  204. package/dist/src/ws.js +0 -2968
  205. /package/dist/src/{ipc.js → agent-roles.js} +0 -0
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Pure provider-instruction contract types.
3
+ *
4
+ * Neutral home for the agent-harness provider identity so the dumb runtime
5
+ * substrate (native/task-ops, hooks/inject-context) and the
6
+ * @rig/provider-plugin that owns the instruction text can both reference it
7
+ * without a substrate->plugin import cycle. Carries no behaviour and imports
8
+ * nothing — exactly like `memory.ts` / `lifecycle-capabilities.ts`.
9
+ *
10
+ * The plugin registers its executable `RuntimeInstructionService` impl under the
11
+ * typed id {@link RUNTIME_INSTRUCTION} (whose string value is
12
+ * {@link RUNTIME_INSTRUCTION_SERVICE_CAPABILITY_ID}) via `*.provide`; the runtime
13
+ * resolves it by id from `pluginHost.listExecutableCapabilities()` via the
14
+ * `defineCapability` seam (`@rig/core/capability`), re-exported from the thin
15
+ * `@rig/runtime/control-plane/provider-instruction-port`.
16
+ */
17
+ import type { CapabilityId } from "./capability-id";
18
+ /** Capability id the provider plugin registers its instruction service under. */
19
+ export declare const RUNTIME_INSTRUCTION_SERVICE_CAPABILITY_ID = "provider.runtime-instructions";
20
+ /** The agent harness adapter the runtime is currently wired to. */
21
+ export type RuntimeInstructionProvider = "pi";
22
+ /**
23
+ * The cohesive set of agent-harness instruction builders the runtime consumers
24
+ * depend on. This is pure capability VOCAB: the `@rig/provider-plugin` provides a
25
+ * concrete impl (statically checked against this interface via the typed
26
+ * capability seam), and the substrate only ever sees this contract — resolved by
27
+ * id off a plugin host with no `as unknown as` at any call site.
28
+ */
29
+ export interface RuntimeInstructionService {
30
+ normalizeProvider(value: string | undefined | null): RuntimeInstructionProvider;
31
+ buildTaskRunInstructionLines(provider: RuntimeInstructionProvider): string[];
32
+ buildRuntimeContextLines(provider: RuntimeInstructionProvider): string[];
33
+ }
34
+ /**
35
+ * The typed capability id the provider plugin provides and consumers require.
36
+ * Phantom-typed with `RuntimeInstructionService` so `resolve(host)` returns a
37
+ * `RuntimeInstructionService` with no cast leaking to callers. Its string value
38
+ * is {@link RUNTIME_INSTRUCTION_SERVICE_CAPABILITY_ID}, so it indexes the same
39
+ * host entry.
40
+ */
41
+ export declare const RUNTIME_INSTRUCTION: CapabilityId<RuntimeInstructionService>;
@@ -0,0 +1,13 @@
1
+ // @bun
2
+ // packages/contracts/src/capability-id.ts
3
+ function makeCapabilityId(id) {
4
+ return id;
5
+ }
6
+
7
+ // packages/contracts/src/provider-instructions.ts
8
+ var RUNTIME_INSTRUCTION_SERVICE_CAPABILITY_ID = "provider.runtime-instructions";
9
+ var RUNTIME_INSTRUCTION = makeCapabilityId(RUNTIME_INSTRUCTION_SERVICE_CAPABILITY_ID);
10
+ export {
11
+ RUNTIME_INSTRUCTION_SERVICE_CAPABILITY_ID,
12
+ RUNTIME_INSTRUCTION
13
+ };
@@ -0,0 +1,105 @@
1
+ import { Schema } from "effect";
2
+ import type { CapabilityId } from "./capability-id";
3
+ export declare const ProviderSession: Schema.Struct<{
4
+ readonly provider: Schema.Literals<readonly ["codex", "claude"]>;
5
+ readonly status: Schema.Literals<readonly ["connecting", "ready", "running", "error", "closed"]>;
6
+ readonly runtimeMode: Schema.Literals<readonly ["approval-required", "full-access"]>;
7
+ readonly cwd: Schema.optional<Schema.Trim>;
8
+ readonly model: Schema.optional<Schema.Trim>;
9
+ readonly threadId: Schema.brand<Schema.Trim, "ThreadId">;
10
+ readonly resumeCursor: Schema.optional<Schema.Unknown>;
11
+ readonly activeTurnId: Schema.optional<Schema.brand<Schema.Trim, "TurnId">>;
12
+ readonly createdAt: Schema.String;
13
+ readonly updatedAt: Schema.String;
14
+ readonly lastError: Schema.optional<Schema.Trim>;
15
+ }>;
16
+ export type ProviderSession = typeof ProviderSession.Type;
17
+ export declare const ProviderSessionStartInput: Schema.Struct<{
18
+ readonly threadId: Schema.brand<Schema.Trim, "ThreadId">;
19
+ readonly provider: Schema.optional<Schema.Literals<readonly ["codex", "claude"]>>;
20
+ readonly cwd: Schema.optional<Schema.Trim>;
21
+ readonly model: Schema.optional<Schema.Trim>;
22
+ readonly modelOptions: Schema.optional<Schema.$Record<Schema.String, Schema.Unknown>>;
23
+ readonly resumeCursor: Schema.optional<Schema.Unknown>;
24
+ readonly serviceTier: Schema.optional<Schema.NullOr<Schema.Literals<readonly ["fast", "flex"]>>>;
25
+ readonly approvalPolicy: Schema.optional<Schema.Literals<readonly ["untrusted", "on-failure", "on-request", "never"]>>;
26
+ readonly sandboxMode: Schema.optional<Schema.Literals<readonly ["read-only", "workspace-write", "danger-full-access"]>>;
27
+ readonly providerOptions: Schema.optional<Schema.Struct<{
28
+ readonly codex: Schema.optional<Schema.Struct<{
29
+ readonly binaryPath: Schema.optional<Schema.Trim>;
30
+ readonly homePath: Schema.optional<Schema.Trim>;
31
+ }>>;
32
+ }>>;
33
+ readonly runtimeMode: Schema.Literals<readonly ["approval-required", "full-access"]>;
34
+ }>;
35
+ export type ProviderSessionStartInput = typeof ProviderSessionStartInput.Type;
36
+ export declare const ProviderSendTurnInput: Schema.Struct<{
37
+ readonly threadId: Schema.brand<Schema.Trim, "ThreadId">;
38
+ readonly input: Schema.optional<Schema.Trim>;
39
+ readonly attachments: Schema.optional<Schema.$Array<Schema.Union<readonly [Schema.Struct<{
40
+ readonly type: Schema.Literal<"image">;
41
+ readonly id: Schema.Trim;
42
+ readonly name: Schema.Trim;
43
+ readonly mimeType: Schema.Trim;
44
+ readonly sizeBytes: Schema.Int;
45
+ }>]>>>;
46
+ readonly model: Schema.optional<Schema.Trim>;
47
+ readonly serviceTier: Schema.optional<Schema.NullOr<Schema.Literals<readonly ["fast", "flex"]>>>;
48
+ readonly modelOptions: Schema.optional<Schema.$Record<Schema.String, Schema.Unknown>>;
49
+ readonly interactionMode: Schema.optional<Schema.Literals<readonly ["default", "plan"]>>;
50
+ }>;
51
+ export type ProviderSendTurnInput = typeof ProviderSendTurnInput.Type;
52
+ export declare const ProviderTurnStartResult: Schema.Struct<{
53
+ readonly threadId: Schema.brand<Schema.Trim, "ThreadId">;
54
+ readonly turnId: Schema.brand<Schema.Trim, "TurnId">;
55
+ readonly resumeCursor: Schema.optional<Schema.Unknown>;
56
+ }>;
57
+ export type ProviderTurnStartResult = typeof ProviderTurnStartResult.Type;
58
+ export declare const ProviderInterruptTurnInput: Schema.Struct<{
59
+ readonly threadId: Schema.brand<Schema.Trim, "ThreadId">;
60
+ readonly turnId: Schema.optional<Schema.brand<Schema.Trim, "TurnId">>;
61
+ }>;
62
+ export type ProviderInterruptTurnInput = typeof ProviderInterruptTurnInput.Type;
63
+ export declare const ProviderStopSessionInput: Schema.Struct<{
64
+ readonly threadId: Schema.brand<Schema.Trim, "ThreadId">;
65
+ }>;
66
+ export type ProviderStopSessionInput = typeof ProviderStopSessionInput.Type;
67
+ export declare const ProviderRespondToRequestInput: Schema.Struct<{
68
+ readonly threadId: Schema.brand<Schema.Trim, "ThreadId">;
69
+ readonly requestId: Schema.brand<Schema.Trim, "ApprovalRequestId">;
70
+ readonly decision: Schema.Literals<readonly ["accept", "acceptForSession", "decline", "cancel"]>;
71
+ }>;
72
+ export type ProviderRespondToRequestInput = typeof ProviderRespondToRequestInput.Type;
73
+ export declare const ProviderRespondToUserInputInput: Schema.Struct<{
74
+ readonly threadId: Schema.brand<Schema.Trim, "ThreadId">;
75
+ readonly requestId: Schema.brand<Schema.Trim, "ApprovalRequestId">;
76
+ readonly answers: Schema.$Record<Schema.String, Schema.Unknown>;
77
+ }>;
78
+ export type ProviderRespondToUserInputInput = typeof ProviderRespondToUserInputInput.Type;
79
+ export declare const ProviderEvent: Schema.Struct<{
80
+ readonly id: Schema.brand<Schema.Trim, "EventId">;
81
+ readonly kind: Schema.Literals<readonly ["session", "notification", "request", "error"]>;
82
+ readonly provider: Schema.Literals<readonly ["codex", "claude"]>;
83
+ readonly threadId: Schema.brand<Schema.Trim, "ThreadId">;
84
+ readonly createdAt: Schema.String;
85
+ readonly method: Schema.Trim;
86
+ readonly message: Schema.optional<Schema.Trim>;
87
+ readonly turnId: Schema.optional<Schema.brand<Schema.Trim, "TurnId">>;
88
+ readonly itemId: Schema.optional<Schema.brand<Schema.Trim, "ProviderItemId">>;
89
+ readonly requestId: Schema.optional<Schema.brand<Schema.Trim, "ApprovalRequestId">>;
90
+ readonly requestKind: Schema.optional<Schema.Literals<readonly ["command", "file-read", "file-change"]>>;
91
+ readonly textDelta: Schema.optional<Schema.String>;
92
+ readonly payload: Schema.optional<Schema.Unknown>;
93
+ }>;
94
+ export type ProviderEvent = typeof ProviderEvent.Type;
95
+ export interface AgentHarnessRunWrapperInput {
96
+ readonly argv: readonly string[];
97
+ }
98
+ export interface AgentHarnessService {
99
+ /** Provider-owned source entrypoint used when a project-local rig-agent binary must be materialized from source. */
100
+ readonly resolveAgentWrapperEntrypoint: () => string;
101
+ readonly runAgentWrapper: (input: AgentHarnessRunWrapperInput) => Promise<number>;
102
+ readonly runRigAgentEntrypoint: () => Promise<void>;
103
+ }
104
+ export declare const AGENT_HARNESS_CAPABILITY_ID = "rig.provider.agent-harness";
105
+ export declare const AGENT_HARNESS: CapabilityId<AgentHarnessService>;