@scarn/sdk 0.0.0-stage → 0.0.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 (151) hide show
  1. package/dist/chunk-4361gxk0.js +166 -0
  2. package/dist/chunk-4vehh3dq.js +333 -0
  3. package/dist/chunk-56e4kp0a.js +162 -0
  4. package/dist/chunk-5mmj03ah.js +1074 -0
  5. package/dist/chunk-631ffb6r.js +57 -0
  6. package/dist/chunk-91p9vzcs.js +1453 -0
  7. package/dist/chunk-9s07v9r1.js +30 -0
  8. package/dist/chunk-b21233rt.js +78 -0
  9. package/dist/chunk-dnn39qt4.js +13539 -0
  10. package/dist/chunk-eg1hcvhb.js +300 -0
  11. package/dist/chunk-g0rdnn0r.js +95 -0
  12. package/dist/chunk-h9yxx0hd.js +116 -0
  13. package/dist/chunk-njd6npf0.js +35 -0
  14. package/dist/chunk-ny07ncb9.js +330 -0
  15. package/dist/chunk-p6kc9wq8.js +97 -0
  16. package/dist/chunk-qpw5wt1p.js +257 -0
  17. package/dist/chunk-rq3q8vg7.js +1094 -0
  18. package/dist/chunk-s0gap8r8.js +14 -0
  19. package/dist/chunk-tfm5hjzm.js +100 -0
  20. package/dist/chunk-ynk2bjae.js +1686 -0
  21. package/dist/chunk-zpqyjgb4.js +49 -0
  22. package/dist/client.d.ts +4 -0
  23. package/dist/client.js +57 -0
  24. package/dist/contracts/artifact-markers.d.ts +42 -0
  25. package/dist/contracts/artifact-markers.js +15 -0
  26. package/dist/contracts/artifacts.d.ts +67 -0
  27. package/dist/contracts/artifacts.js +25 -0
  28. package/dist/contracts/pipeline-document/built-ins.d.ts +23 -0
  29. package/dist/contracts/pipeline-document/conditions/operators.d.ts +8 -0
  30. package/dist/contracts/pipeline-document/index.d.ts +11 -0
  31. package/dist/contracts/pipeline-document/index.js +97 -0
  32. package/dist/contracts/pipeline-document/json.d.ts +35 -0
  33. package/dist/contracts/pipeline-document/routes.d.ts +16 -0
  34. package/dist/contracts/pipeline-document/schema.d.ts +780 -0
  35. package/dist/contracts/pipeline-document/step-contract.d.ts +11 -0
  36. package/dist/contracts/step-artifact-submissions.d.ts +71 -0
  37. package/dist/contracts/step-artifact-submissions.js +174 -0
  38. package/dist/defaults/atomic-json-file.d.ts +10 -0
  39. package/dist/defaults/auth-file.d.ts +14 -0
  40. package/dist/defaults/base-url.d.ts +1 -0
  41. package/dist/defaults/config-file.d.ts +46 -0
  42. package/dist/defaults/home-dir.d.ts +3 -0
  43. package/dist/defaults/index.d.ts +12 -0
  44. package/dist/defaults/index.js +1239 -0
  45. package/dist/defaults/legacy-config-migration.d.ts +27 -0
  46. package/dist/defaults/load-push-defaults.d.ts +25 -0
  47. package/dist/defaults/project-config.d.ts +32 -0
  48. package/dist/defaults/project-ref.d.ts +34 -0
  49. package/dist/definitions/artifacts/artifact.d.ts +62 -0
  50. package/dist/definitions/artifacts/index.d.ts +1 -0
  51. package/dist/definitions/pipelines/define-default-pipeline-assignment.d.ts +263 -0
  52. package/dist/definitions/pipelines/index.d.ts +3 -0
  53. package/dist/definitions/pipelines/index.js +24 -0
  54. package/dist/definitions/pipelines/pipeline-definitions-client.d.ts +208 -0
  55. package/dist/definitions/pipelines/work-item-fields.d.ts +93 -0
  56. package/dist/definitions/steps/compile-mcps.d.ts +34 -0
  57. package/dist/definitions/steps/define-code-step.d.ts +84 -0
  58. package/dist/definitions/steps/define-mcp.d.ts +79 -0
  59. package/dist/definitions/steps/define-step.d.ts +137 -0
  60. package/dist/definitions/steps/env.d.ts +136 -0
  61. package/dist/definitions/steps/index.d.ts +14 -0
  62. package/dist/definitions/steps/index.js +73 -0
  63. package/dist/definitions/steps/mcp-server-config.d.ts +102 -0
  64. package/dist/definitions/steps/prompt-template.d.ts +24 -0
  65. package/dist/definitions/steps/repo.d.ts +67 -0
  66. package/dist/definitions/steps/runtime.d.ts +115 -0
  67. package/dist/definitions/steps/step-definitions-client.d.ts +400 -0
  68. package/dist/definitions/steps/step-features.d.ts +109 -0
  69. package/dist/definitions/steps/step-handle.d.ts +25 -0
  70. package/dist/definitions/steps/step-ref.d.ts +19 -0
  71. package/dist/definitions/validation/index.d.ts +2 -0
  72. package/dist/definitions/validation/index.js +17 -0
  73. package/dist/definitions/validation/validate-artifact-markers.d.ts +3 -0
  74. package/dist/definitions/validation/validate-artifacts.d.ts +7 -0
  75. package/dist/definitions/validation/validate-definition-specs.d.ts +16 -0
  76. package/dist/definitions/validation/validate-env.d.ts +15 -0
  77. package/dist/definitions/validation/validate-repo.d.ts +13 -0
  78. package/dist/definitions/validation/validate-runtime.d.ts +12 -0
  79. package/dist/definitions/validation/validation-issue.d.ts +11 -0
  80. package/dist/devcontainer-config-path.d.ts +21 -0
  81. package/dist/devcontainer-config-path.js +13 -0
  82. package/dist/env-vars.d.ts +136 -0
  83. package/dist/env-vars.js +35 -0
  84. package/dist/eslint.d.ts +42 -0
  85. package/dist/eslint.js +125 -0
  86. package/dist/generated/client/client.gen.d.ts +2 -0
  87. package/dist/generated/client/index.d.ts +8 -0
  88. package/dist/generated/client/types.gen.d.ts +117 -0
  89. package/dist/generated/client/utils.gen.d.ts +33 -0
  90. package/dist/generated/client.gen.d.ts +12 -0
  91. package/dist/generated/core/auth.gen.d.ts +18 -0
  92. package/dist/generated/core/bodySerializer.gen.d.ts +25 -0
  93. package/dist/generated/core/params.gen.d.ts +43 -0
  94. package/dist/generated/core/pathSerializer.gen.d.ts +33 -0
  95. package/dist/generated/core/queryKeySerializer.gen.d.ts +18 -0
  96. package/dist/generated/core/serverSentEvents.gen.d.ts +71 -0
  97. package/dist/generated/core/types.gen.d.ts +78 -0
  98. package/dist/generated/core/utils.gen.d.ts +19 -0
  99. package/dist/generated/index.d.ts +2 -0
  100. package/dist/generated/sdk.gen.d.ts +302 -0
  101. package/dist/generated/types.gen.d.ts +18368 -0
  102. package/dist/git-url/git-remote.d.ts +30 -0
  103. package/dist/git-url/git-repo-identity.d.ts +44 -0
  104. package/dist/git-url/git-repo-identity.js +159 -0
  105. package/dist/git-url/parse-git-host.d.ts +23 -0
  106. package/dist/health-checks.d.ts +169 -0
  107. package/dist/health-checks.js +19 -0
  108. package/dist/index.d.ts +11 -0
  109. package/dist/index.js +293 -0
  110. package/dist/jsonc.d.ts +3 -0
  111. package/dist/jsonc.js +11 -0
  112. package/dist/managed-runtimes.d.ts +20 -0
  113. package/dist/managed-runtimes.js +13 -0
  114. package/dist/opencode-mcp.d.ts +313 -0
  115. package/dist/opencode-mcp.js +29 -0
  116. package/dist/pipelines/chain.d.ts +7 -0
  117. package/dist/pipelines/compile-args.d.ts +12 -0
  118. package/dist/pipelines/compile-chain.d.ts +9 -0
  119. package/dist/pipelines/compile-checks.d.ts +16 -0
  120. package/dist/pipelines/compile-state.d.ts +30 -0
  121. package/dist/pipelines/condition-data.d.ts +78 -0
  122. package/dist/pipelines/conditions.d.ts +47 -0
  123. package/dist/pipelines/context.d.ts +16 -0
  124. package/dist/pipelines/define-pipeline.d.ts +32 -0
  125. package/dist/pipelines/each.d.ts +5 -0
  126. package/dist/pipelines/errors.d.ts +26 -0
  127. package/dist/pipelines/handles.d.ts +29 -0
  128. package/dist/pipelines/index.d.ts +18 -0
  129. package/dist/pipelines/index.js +80 -0
  130. package/dist/pipelines/model.d.ts +103 -0
  131. package/dist/pipelines/nodes.d.ts +54 -0
  132. package/dist/pipelines/ref-types.d.ts +54 -0
  133. package/dist/pipelines/refs.d.ts +80 -0
  134. package/dist/pipelines/registry.d.ts +12 -0
  135. package/dist/pipelines/source.d.ts +17 -0
  136. package/dist/pipelines/types.d.ts +160 -0
  137. package/dist/push/code-step-lookup.d.ts +32 -0
  138. package/dist/push/code-step-lookup.js +11 -0
  139. package/dist/push/collect-definitions.d.ts +70 -0
  140. package/dist/push/collect-pipeline-documents.d.ts +14 -0
  141. package/dist/push/index.d.ts +6 -0
  142. package/dist/push/index.js +328 -0
  143. package/dist/push/push-from-directory.d.ts +37 -0
  144. package/dist/repo-config.d.ts +80 -0
  145. package/dist/repo-config.js +23 -0
  146. package/dist/scarn-config-parser.d.ts +29 -0
  147. package/dist/scarn-config-parser.js +9 -0
  148. package/dist/task-plane-client.d.ts +489 -0
  149. package/dist/z.d.ts +7 -0
  150. package/package.json +132 -4
  151. package/README.md +0 -3
package/dist/index.js ADDED
@@ -0,0 +1,293 @@
1
+ // @bun
2
+ import {
3
+ artifactKindSchema2,
4
+ ARTIFACT_SCHEMA_KEYWORD2,
5
+ artifactPlatforms2,
6
+ EMBEDDABLE_ARTIFACT_EXTENSIONS2,
7
+ isEmbeddableArtifactExtension2,
8
+ artifactFileExtension2,
9
+ artifactAcceptsFile2,
10
+ readArtifactKeyword2,
11
+ matchArtifactNode2,
12
+ findArtifactFields2
13
+ } from "./chunk-56e4kp0a.js";
14
+ import {
15
+ ARTIFACT_MARKER_SCHEME2,
16
+ parseArtifactMarkerRef2,
17
+ formatArtifactMarkerRef2,
18
+ buildArtifactMarker2,
19
+ findArtifactMarkers2
20
+ } from "./chunk-631ffb6r.js";
21
+ import {
22
+ Api2,
23
+ Projects2,
24
+ StepDefinitions2,
25
+ Tasks2,
26
+ TaskRuns2,
27
+ PipelineDefinitions2,
28
+ PipelineExecutions2,
29
+ WorkItems2,
30
+ Conversations2,
31
+ WorkItemComments2,
32
+ WorkItemCommentDrafts2,
33
+ WorkItemBlocks2,
34
+ ProjectArtifacts2,
35
+ UserNotifications2,
36
+ NotificationRules2,
37
+ StepDefinitionTemplates2,
38
+ ProjectIntegrations2,
39
+ GitHubIntegrations2,
40
+ ProjectInvites2,
41
+ Billing2,
42
+ Username2,
43
+ Secrets2,
44
+ ScarnClient2
45
+ } from "./chunk-ynk2bjae.js";
46
+ import {
47
+ createTaskPlaneClient2,
48
+ createScarnClient2
49
+ } from "./chunk-tfm5hjzm.js";
50
+ import"./chunk-zpqyjgb4.js";
51
+ import"./chunk-9s07v9r1.js";
52
+ import"./chunk-s0gap8r8.js";
53
+ import"./chunk-p6kc9wq8.js";
54
+ import {
55
+ ARTIFACT_BRAND2,
56
+ ArtifactTypes2,
57
+ normalizeArtifactAccept2,
58
+ artifact2,
59
+ Artifact2,
60
+ exports_z,
61
+ createPromptInputProxy2,
62
+ createPromptTemplateContext2,
63
+ renderPromptTemplate2,
64
+ isSecretLookingEnvName2,
65
+ Env2,
66
+ normalizeEnv2,
67
+ Repo2,
68
+ compileRepo2,
69
+ Runtime2,
70
+ compileEnvironment2,
71
+ isMcpHandle2,
72
+ defineMcp2,
73
+ resolveMcpChecks2,
74
+ compileMcps2,
75
+ compileStepErrors2,
76
+ compileStepRetry2,
77
+ toStepHandle2,
78
+ toStepSpec2,
79
+ defineStep2,
80
+ codeStep2,
81
+ createStepDefinitionsClient2,
82
+ Features2,
83
+ Notify2
84
+ } from "./chunk-91p9vzcs.js";
85
+ import"./chunk-b21233rt.js";
86
+ import {
87
+ openCodeMcpTimeoutSchema2,
88
+ openCodeMcpProtocolSchema2,
89
+ openCodeMcpLocalConfigSchema2,
90
+ openCodeMcpOAuthConfigSchema2,
91
+ openCodeMcpRemoteConfigSchema2,
92
+ openCodeMcpRefConfigSchema2,
93
+ openCodeResolvedMcpServerConfigSchema2,
94
+ openCodeResolvedMcpServersSchema2,
95
+ openCodeMcpServerConfigSchema2,
96
+ openCodeMcpServersSchema2,
97
+ isEnvPlaceholderValue2,
98
+ collectEnvPlaceholderNames2
99
+ } from "./chunk-g0rdnn0r.js";
100
+ import {
101
+ formatIssue2,
102
+ PipelineBuildError2
103
+ } from "./chunk-eg1hcvhb.js";
104
+ import {
105
+ PipelineDefinitionsApiError2,
106
+ createPipelineDefinitionsClient2,
107
+ WORK_ITEM_TOP_LEVEL_FIELDS2,
108
+ WORK_ITEM_FIELDS_PATH_PREFIX2,
109
+ resolveWorkItemFieldPath2,
110
+ DEFAULT_PIPELINE_ASSIGNMENT_FILENAME2,
111
+ defaultPipelineAssignment2,
112
+ serializeDefaultPipelineAssignment2,
113
+ isDefaultPipelineAssignmentSpec2
114
+ } from "./chunk-qpw5wt1p.js";
115
+ import {
116
+ definePipeline2,
117
+ decision2,
118
+ reply2,
119
+ succeed2,
120
+ fail2,
121
+ stepRef2,
122
+ workItem2,
123
+ workItemField2,
124
+ each2,
125
+ equal2,
126
+ notEqual2,
127
+ lessThan2,
128
+ lessThanInclusive2,
129
+ greaterThan2,
130
+ greaterThanInclusive2,
131
+ exists2,
132
+ isEmpty2,
133
+ contains2,
134
+ startsWith2,
135
+ endsWith2,
136
+ matches2,
137
+ before2,
138
+ after2,
139
+ all2,
140
+ any2,
141
+ not2,
142
+ some2,
143
+ every2,
144
+ none2,
145
+ sum2,
146
+ avg2,
147
+ min2,
148
+ max2,
149
+ count2
150
+ } from "./chunk-rq3q8vg7.js";
151
+ import"./chunk-4vehh3dq.js";
152
+ import {
153
+ stripJsoncComments2,
154
+ stripTrailingCommas2,
155
+ parseJsonc2
156
+ } from "./chunk-h9yxx0hd.js";
157
+ import {
158
+ SCARN_CONFIG_RELATIVE_PATH2,
159
+ parseScarnConfig2
160
+ } from "./chunk-4361gxk0.js";
161
+ export {
162
+ ARTIFACT_BRAND2 as ARTIFACT_BRAND,
163
+ ARTIFACT_MARKER_SCHEME2 as ARTIFACT_MARKER_SCHEME,
164
+ ARTIFACT_SCHEMA_KEYWORD2 as ARTIFACT_SCHEMA_KEYWORD,
165
+ Api2 as Api,
166
+ Artifact2 as Artifact,
167
+ ArtifactTypes2 as ArtifactTypes,
168
+ Billing2 as Billing,
169
+ Conversations2 as Conversations,
170
+ DEFAULT_PIPELINE_ASSIGNMENT_FILENAME2 as DEFAULT_PIPELINE_ASSIGNMENT_FILENAME,
171
+ EMBEDDABLE_ARTIFACT_EXTENSIONS2 as EMBEDDABLE_ARTIFACT_EXTENSIONS,
172
+ Env2 as Env,
173
+ Features2 as Features,
174
+ GitHubIntegrations2 as GitHubIntegrations,
175
+ NotificationRules2 as NotificationRules,
176
+ Notify2 as Notify,
177
+ PipelineBuildError2 as PipelineBuildError,
178
+ PipelineDefinitions2 as PipelineDefinitions,
179
+ PipelineDefinitionsApiError2 as PipelineDefinitionsApiError,
180
+ PipelineExecutions2 as PipelineExecutions,
181
+ ProjectArtifacts2 as ProjectArtifacts,
182
+ ProjectIntegrations2 as ProjectIntegrations,
183
+ ProjectInvites2 as ProjectInvites,
184
+ Projects2 as Projects,
185
+ Repo2 as Repo,
186
+ Runtime2 as Runtime,
187
+ SCARN_CONFIG_RELATIVE_PATH2 as SCARN_CONFIG_RELATIVE_PATH,
188
+ ScarnClient2 as ScarnClient,
189
+ Secrets2 as Secrets,
190
+ StepDefinitionTemplates2 as StepDefinitionTemplates,
191
+ StepDefinitions2 as StepDefinitions,
192
+ TaskRuns2 as TaskRuns,
193
+ Tasks2 as Tasks,
194
+ UserNotifications2 as UserNotifications,
195
+ Username2 as Username,
196
+ WORK_ITEM_FIELDS_PATH_PREFIX2 as WORK_ITEM_FIELDS_PATH_PREFIX,
197
+ WORK_ITEM_TOP_LEVEL_FIELDS2 as WORK_ITEM_TOP_LEVEL_FIELDS,
198
+ WorkItemBlocks2 as WorkItemBlocks,
199
+ WorkItemCommentDrafts2 as WorkItemCommentDrafts,
200
+ WorkItemComments2 as WorkItemComments,
201
+ WorkItems2 as WorkItems,
202
+ after2 as after,
203
+ all2 as all,
204
+ any2 as any,
205
+ artifact2 as artifact,
206
+ artifactAcceptsFile2 as artifactAcceptsFile,
207
+ artifactFileExtension2 as artifactFileExtension,
208
+ artifactKindSchema2 as artifactKindSchema,
209
+ artifactPlatforms2 as artifactPlatforms,
210
+ avg2 as avg,
211
+ before2 as before,
212
+ buildArtifactMarker2 as buildArtifactMarker,
213
+ codeStep2 as codeStep,
214
+ collectEnvPlaceholderNames2 as collectEnvPlaceholderNames,
215
+ compileEnvironment2 as compileEnvironment,
216
+ compileMcps2 as compileMcps,
217
+ compileRepo2 as compileRepo,
218
+ compileStepErrors2 as compileStepErrors,
219
+ compileStepRetry2 as compileStepRetry,
220
+ contains2 as contains,
221
+ count2 as count,
222
+ createPipelineDefinitionsClient2 as createPipelineDefinitionsClient,
223
+ createPromptInputProxy2 as createPromptInputProxy,
224
+ createPromptTemplateContext2 as createPromptTemplateContext,
225
+ createScarnClient2 as createScarnClient,
226
+ createStepDefinitionsClient2 as createStepDefinitionsClient,
227
+ createTaskPlaneClient2 as createTaskPlaneClient,
228
+ decision2 as decision,
229
+ defaultPipelineAssignment2 as defaultPipelineAssignment,
230
+ defineMcp2 as defineMcp,
231
+ definePipeline2 as definePipeline,
232
+ defineStep2 as defineStep,
233
+ each2 as each,
234
+ endsWith2 as endsWith,
235
+ equal2 as equal,
236
+ every2 as every,
237
+ exists2 as exists,
238
+ fail2 as fail,
239
+ findArtifactFields2 as findArtifactFields,
240
+ findArtifactMarkers2 as findArtifactMarkers,
241
+ formatArtifactMarkerRef2 as formatArtifactMarkerRef,
242
+ formatIssue2 as formatIssue,
243
+ greaterThan2 as greaterThan,
244
+ greaterThanInclusive2 as greaterThanInclusive,
245
+ isDefaultPipelineAssignmentSpec2 as isDefaultPipelineAssignmentSpec,
246
+ isEmbeddableArtifactExtension2 as isEmbeddableArtifactExtension,
247
+ isEmpty2 as isEmpty,
248
+ isEnvPlaceholderValue2 as isEnvPlaceholderValue,
249
+ isMcpHandle2 as isMcpHandle,
250
+ isSecretLookingEnvName2 as isSecretLookingEnvName,
251
+ lessThan2 as lessThan,
252
+ lessThanInclusive2 as lessThanInclusive,
253
+ matchArtifactNode2 as matchArtifactNode,
254
+ matches2 as matches,
255
+ max2 as max,
256
+ min2 as min,
257
+ none2 as none,
258
+ normalizeArtifactAccept2 as normalizeArtifactAccept,
259
+ normalizeEnv2 as normalizeEnv,
260
+ not2 as not,
261
+ notEqual2 as notEqual,
262
+ openCodeMcpLocalConfigSchema2 as openCodeMcpLocalConfigSchema,
263
+ openCodeMcpOAuthConfigSchema2 as openCodeMcpOAuthConfigSchema,
264
+ openCodeMcpProtocolSchema2 as openCodeMcpProtocolSchema,
265
+ openCodeMcpRefConfigSchema2 as openCodeMcpRefConfigSchema,
266
+ openCodeMcpRemoteConfigSchema2 as openCodeMcpRemoteConfigSchema,
267
+ openCodeMcpServerConfigSchema2 as openCodeMcpServerConfigSchema,
268
+ openCodeMcpServersSchema2 as openCodeMcpServersSchema,
269
+ openCodeMcpTimeoutSchema2 as openCodeMcpTimeoutSchema,
270
+ openCodeResolvedMcpServerConfigSchema2 as openCodeResolvedMcpServerConfigSchema,
271
+ openCodeResolvedMcpServersSchema2 as openCodeResolvedMcpServersSchema,
272
+ parseArtifactMarkerRef2 as parseArtifactMarkerRef,
273
+ parseJsonc2 as parseJsonc,
274
+ parseScarnConfig2 as parseScarnConfig,
275
+ readArtifactKeyword2 as readArtifactKeyword,
276
+ renderPromptTemplate2 as renderPromptTemplate,
277
+ reply2 as reply,
278
+ resolveMcpChecks2 as resolveMcpChecks,
279
+ resolveWorkItemFieldPath2 as resolveWorkItemFieldPath,
280
+ serializeDefaultPipelineAssignment2 as serializeDefaultPipelineAssignment,
281
+ some2 as some,
282
+ startsWith2 as startsWith,
283
+ stepRef2 as stepRef,
284
+ stripJsoncComments2 as stripJsoncComments,
285
+ stripTrailingCommas2 as stripTrailingCommas,
286
+ succeed2 as succeed,
287
+ sum2 as sum,
288
+ toStepHandle2 as toStepHandle,
289
+ toStepSpec2 as toStepSpec,
290
+ workItem2 as workItem,
291
+ workItemField2 as workItemField,
292
+ exports_z as z
293
+ };
@@ -0,0 +1,3 @@
1
+ export declare const stripJsoncComments: (content: string) => string;
2
+ export declare const stripTrailingCommas: (content: string) => string;
3
+ export declare const parseJsonc: (content: string) => unknown;
package/dist/jsonc.js ADDED
@@ -0,0 +1,11 @@
1
+ // @bun
2
+ import {
3
+ stripJsoncComments2,
4
+ stripTrailingCommas2,
5
+ parseJsonc2
6
+ } from "./chunk-h9yxx0hd.js";
7
+ export {
8
+ parseJsonc2 as parseJsonc,
9
+ stripJsoncComments2 as stripJsoncComments,
10
+ stripTrailingCommas2 as stripTrailingCommas
11
+ };
@@ -0,0 +1,20 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Registry of managed runtimes: worker-supplied containers a `codeStep` can run
4
+ * in instead of the project's devcontainer (`Runtime.managed.<id>()`). The
5
+ * identifier is the runtime family plus its major line. Image, distro and patch
6
+ * version are worker registry details and never appear here.
7
+ *
8
+ * This module is the single owner of the identifier list: the SDK, core and the
9
+ * worker all import from it. Adding an identifier is one entry here and one
10
+ * worker registry entry.
11
+ */
12
+ export declare const MANAGED_RUNTIME_IDS: readonly ["bun1", "node24"];
13
+ export type ManagedRuntimeId = (typeof MANAGED_RUNTIME_IDS)[number];
14
+ /** The runtime a `codeStep` gets when it declares none. */
15
+ export declare const DEFAULT_CODE_STEP_RUNTIME_ID = "bun1";
16
+ export declare const managedRuntimeIdSchema: z.ZodEnum<{
17
+ bun1: "bun1";
18
+ node24: "node24";
19
+ }>;
20
+ export declare function isManagedRuntimeId(value: string): value is ManagedRuntimeId;
@@ -0,0 +1,13 @@
1
+ // @bun
2
+ import {
3
+ MANAGED_RUNTIME_IDS2,
4
+ DEFAULT_CODE_STEP_RUNTIME_ID2,
5
+ managedRuntimeIdSchema2,
6
+ isManagedRuntimeId2
7
+ } from "./chunk-s0gap8r8.js";
8
+ export {
9
+ DEFAULT_CODE_STEP_RUNTIME_ID2 as DEFAULT_CODE_STEP_RUNTIME_ID,
10
+ MANAGED_RUNTIME_IDS2 as MANAGED_RUNTIME_IDS,
11
+ isManagedRuntimeId2 as isManagedRuntimeId,
12
+ managedRuntimeIdSchema2 as managedRuntimeIdSchema
13
+ };
@@ -0,0 +1,313 @@
1
+ /**
2
+ * Step-declared MCP servers, in OpenCode v2's native `mcp.servers.<name>` entry
3
+ * shape, plus a Scarn-only `ref` entry. The worker resolves refs before
4
+ * passing the resulting `local`/`remote` entries to the runtime overlay, so
5
+ * the `local`/`remote` schemas mirror the v2 config schema.
6
+ * `test/opencode-config-shapes.test.ts` fails typecheck if they drift from
7
+ * `@opencode/client`'s generated `ConfigEntry` type.
8
+ */
9
+ import { z } from "zod";
10
+ export declare const openCodeMcpTimeoutSchema: z.ZodObject<{
11
+ startup: z.ZodOptional<z.ZodInt>;
12
+ catalog: z.ZodOptional<z.ZodInt>;
13
+ execution: z.ZodOptional<z.ZodInt>;
14
+ }, z.core.$strict>;
15
+ export declare const openCodeMcpProtocolSchema: z.ZodEnum<{
16
+ auto: "auto";
17
+ legacy: "legacy";
18
+ "2026-07-28": "2026-07-28";
19
+ }>;
20
+ /** A `local` entry, exactly as OpenCode reads it. */
21
+ export declare const openCodeMcpLocalConfigSchema: z.ZodObject<{
22
+ disabled: z.ZodOptional<z.ZodBoolean>;
23
+ codemode: z.ZodOptional<z.ZodBoolean>;
24
+ timeout: z.ZodOptional<z.ZodObject<{
25
+ startup: z.ZodOptional<z.ZodInt>;
26
+ catalog: z.ZodOptional<z.ZodInt>;
27
+ execution: z.ZodOptional<z.ZodInt>;
28
+ }, z.core.$strict>>;
29
+ protocol: z.ZodOptional<z.ZodEnum<{
30
+ auto: "auto";
31
+ legacy: "legacy";
32
+ "2026-07-28": "2026-07-28";
33
+ }>>;
34
+ type: z.ZodLiteral<"local">;
35
+ command: z.ZodArray<z.ZodString>;
36
+ cwd: z.ZodOptional<z.ZodString>;
37
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
38
+ }, z.core.$strict>;
39
+ export declare const openCodeMcpOAuthConfigSchema: z.ZodObject<{
40
+ client_id: z.ZodOptional<z.ZodString>;
41
+ client_secret: z.ZodOptional<z.ZodString>;
42
+ scope: z.ZodOptional<z.ZodString>;
43
+ callback_port: z.ZodOptional<z.ZodInt>;
44
+ redirect_uri: z.ZodOptional<z.ZodString>;
45
+ auth_server_metadata_url: z.ZodOptional<z.ZodString>;
46
+ }, z.core.$strict>;
47
+ /** A `remote` entry, exactly as OpenCode reads it. */
48
+ export declare const openCodeMcpRemoteConfigSchema: z.ZodObject<{
49
+ disabled: z.ZodOptional<z.ZodBoolean>;
50
+ codemode: z.ZodOptional<z.ZodBoolean>;
51
+ timeout: z.ZodOptional<z.ZodObject<{
52
+ startup: z.ZodOptional<z.ZodInt>;
53
+ catalog: z.ZodOptional<z.ZodInt>;
54
+ execution: z.ZodOptional<z.ZodInt>;
55
+ }, z.core.$strict>>;
56
+ protocol: z.ZodOptional<z.ZodEnum<{
57
+ auto: "auto";
58
+ legacy: "legacy";
59
+ "2026-07-28": "2026-07-28";
60
+ }>>;
61
+ type: z.ZodLiteral<"remote">;
62
+ url: z.ZodString;
63
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
64
+ oauth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
65
+ client_id: z.ZodOptional<z.ZodString>;
66
+ client_secret: z.ZodOptional<z.ZodString>;
67
+ scope: z.ZodOptional<z.ZodString>;
68
+ callback_port: z.ZodOptional<z.ZodInt>;
69
+ redirect_uri: z.ZodOptional<z.ZodString>;
70
+ auth_server_metadata_url: z.ZodOptional<z.ZodString>;
71
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
72
+ }, z.core.$strict>;
73
+ /**
74
+ * A reference to an MCP server defined in the repository's own MCP config
75
+ * files (`.opencode/opencode.json`, `.mcp.json`, `.codex/config.toml`, …).
76
+ * `name` defaults to the step's server key. The worker resolves refs into
77
+ * `local`/`remote` entries before launch, applying the shared fields on top;
78
+ * `name` is Scarn-only and dropped during resolution, so a ref never reaches
79
+ * OpenCode.
80
+ */
81
+ export declare const openCodeMcpRefConfigSchema: z.ZodObject<{
82
+ disabled: z.ZodOptional<z.ZodBoolean>;
83
+ codemode: z.ZodOptional<z.ZodBoolean>;
84
+ timeout: z.ZodOptional<z.ZodObject<{
85
+ startup: z.ZodOptional<z.ZodInt>;
86
+ catalog: z.ZodOptional<z.ZodInt>;
87
+ execution: z.ZodOptional<z.ZodInt>;
88
+ }, z.core.$strict>>;
89
+ protocol: z.ZodOptional<z.ZodEnum<{
90
+ auto: "auto";
91
+ legacy: "legacy";
92
+ "2026-07-28": "2026-07-28";
93
+ }>>;
94
+ type: z.ZodLiteral<"ref">;
95
+ name: z.ZodOptional<z.ZodString>;
96
+ }, z.core.$strict>;
97
+ export declare const openCodeResolvedMcpServerConfigSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
98
+ disabled: z.ZodOptional<z.ZodBoolean>;
99
+ codemode: z.ZodOptional<z.ZodBoolean>;
100
+ timeout: z.ZodOptional<z.ZodObject<{
101
+ startup: z.ZodOptional<z.ZodInt>;
102
+ catalog: z.ZodOptional<z.ZodInt>;
103
+ execution: z.ZodOptional<z.ZodInt>;
104
+ }, z.core.$strict>>;
105
+ protocol: z.ZodOptional<z.ZodEnum<{
106
+ auto: "auto";
107
+ legacy: "legacy";
108
+ "2026-07-28": "2026-07-28";
109
+ }>>;
110
+ type: z.ZodLiteral<"local">;
111
+ command: z.ZodArray<z.ZodString>;
112
+ cwd: z.ZodOptional<z.ZodString>;
113
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
114
+ }, z.core.$strict>, z.ZodObject<{
115
+ disabled: z.ZodOptional<z.ZodBoolean>;
116
+ codemode: z.ZodOptional<z.ZodBoolean>;
117
+ timeout: z.ZodOptional<z.ZodObject<{
118
+ startup: z.ZodOptional<z.ZodInt>;
119
+ catalog: z.ZodOptional<z.ZodInt>;
120
+ execution: z.ZodOptional<z.ZodInt>;
121
+ }, z.core.$strict>>;
122
+ protocol: z.ZodOptional<z.ZodEnum<{
123
+ auto: "auto";
124
+ legacy: "legacy";
125
+ "2026-07-28": "2026-07-28";
126
+ }>>;
127
+ type: z.ZodLiteral<"remote">;
128
+ url: z.ZodString;
129
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
130
+ oauth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
131
+ client_id: z.ZodOptional<z.ZodString>;
132
+ client_secret: z.ZodOptional<z.ZodString>;
133
+ scope: z.ZodOptional<z.ZodString>;
134
+ callback_port: z.ZodOptional<z.ZodInt>;
135
+ redirect_uri: z.ZodOptional<z.ZodString>;
136
+ auth_server_metadata_url: z.ZodOptional<z.ZodString>;
137
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
138
+ }, z.core.$strict>], "type">;
139
+ export declare const openCodeResolvedMcpServersSchema: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
140
+ disabled: z.ZodOptional<z.ZodBoolean>;
141
+ codemode: z.ZodOptional<z.ZodBoolean>;
142
+ timeout: z.ZodOptional<z.ZodObject<{
143
+ startup: z.ZodOptional<z.ZodInt>;
144
+ catalog: z.ZodOptional<z.ZodInt>;
145
+ execution: z.ZodOptional<z.ZodInt>;
146
+ }, z.core.$strict>>;
147
+ protocol: z.ZodOptional<z.ZodEnum<{
148
+ auto: "auto";
149
+ legacy: "legacy";
150
+ "2026-07-28": "2026-07-28";
151
+ }>>;
152
+ type: z.ZodLiteral<"local">;
153
+ command: z.ZodArray<z.ZodString>;
154
+ cwd: z.ZodOptional<z.ZodString>;
155
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
156
+ }, z.core.$strict>, z.ZodObject<{
157
+ disabled: z.ZodOptional<z.ZodBoolean>;
158
+ codemode: z.ZodOptional<z.ZodBoolean>;
159
+ timeout: z.ZodOptional<z.ZodObject<{
160
+ startup: z.ZodOptional<z.ZodInt>;
161
+ catalog: z.ZodOptional<z.ZodInt>;
162
+ execution: z.ZodOptional<z.ZodInt>;
163
+ }, z.core.$strict>>;
164
+ protocol: z.ZodOptional<z.ZodEnum<{
165
+ auto: "auto";
166
+ legacy: "legacy";
167
+ "2026-07-28": "2026-07-28";
168
+ }>>;
169
+ type: z.ZodLiteral<"remote">;
170
+ url: z.ZodString;
171
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
172
+ oauth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
173
+ client_id: z.ZodOptional<z.ZodString>;
174
+ client_secret: z.ZodOptional<z.ZodString>;
175
+ scope: z.ZodOptional<z.ZodString>;
176
+ callback_port: z.ZodOptional<z.ZodInt>;
177
+ redirect_uri: z.ZodOptional<z.ZodString>;
178
+ auth_server_metadata_url: z.ZodOptional<z.ZodString>;
179
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
180
+ }, z.core.$strict>], "type">>;
181
+ /** The authored/stored shape: `local`, `remote`, or an unresolved `ref`. */
182
+ export declare const openCodeMcpServerConfigSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
183
+ disabled: z.ZodOptional<z.ZodBoolean>;
184
+ codemode: z.ZodOptional<z.ZodBoolean>;
185
+ timeout: z.ZodOptional<z.ZodObject<{
186
+ startup: z.ZodOptional<z.ZodInt>;
187
+ catalog: z.ZodOptional<z.ZodInt>;
188
+ execution: z.ZodOptional<z.ZodInt>;
189
+ }, z.core.$strict>>;
190
+ protocol: z.ZodOptional<z.ZodEnum<{
191
+ auto: "auto";
192
+ legacy: "legacy";
193
+ "2026-07-28": "2026-07-28";
194
+ }>>;
195
+ type: z.ZodLiteral<"local">;
196
+ command: z.ZodArray<z.ZodString>;
197
+ cwd: z.ZodOptional<z.ZodString>;
198
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
199
+ }, z.core.$strict>, z.ZodObject<{
200
+ disabled: z.ZodOptional<z.ZodBoolean>;
201
+ codemode: z.ZodOptional<z.ZodBoolean>;
202
+ timeout: z.ZodOptional<z.ZodObject<{
203
+ startup: z.ZodOptional<z.ZodInt>;
204
+ catalog: z.ZodOptional<z.ZodInt>;
205
+ execution: z.ZodOptional<z.ZodInt>;
206
+ }, z.core.$strict>>;
207
+ protocol: z.ZodOptional<z.ZodEnum<{
208
+ auto: "auto";
209
+ legacy: "legacy";
210
+ "2026-07-28": "2026-07-28";
211
+ }>>;
212
+ type: z.ZodLiteral<"remote">;
213
+ url: z.ZodString;
214
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
215
+ oauth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
216
+ client_id: z.ZodOptional<z.ZodString>;
217
+ client_secret: z.ZodOptional<z.ZodString>;
218
+ scope: z.ZodOptional<z.ZodString>;
219
+ callback_port: z.ZodOptional<z.ZodInt>;
220
+ redirect_uri: z.ZodOptional<z.ZodString>;
221
+ auth_server_metadata_url: z.ZodOptional<z.ZodString>;
222
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
223
+ }, z.core.$strict>, z.ZodObject<{
224
+ disabled: z.ZodOptional<z.ZodBoolean>;
225
+ codemode: z.ZodOptional<z.ZodBoolean>;
226
+ timeout: z.ZodOptional<z.ZodObject<{
227
+ startup: z.ZodOptional<z.ZodInt>;
228
+ catalog: z.ZodOptional<z.ZodInt>;
229
+ execution: z.ZodOptional<z.ZodInt>;
230
+ }, z.core.$strict>>;
231
+ protocol: z.ZodOptional<z.ZodEnum<{
232
+ auto: "auto";
233
+ legacy: "legacy";
234
+ "2026-07-28": "2026-07-28";
235
+ }>>;
236
+ type: z.ZodLiteral<"ref">;
237
+ name: z.ZodOptional<z.ZodString>;
238
+ }, z.core.$strict>], "type">;
239
+ export declare const openCodeMcpServersSchema: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
240
+ disabled: z.ZodOptional<z.ZodBoolean>;
241
+ codemode: z.ZodOptional<z.ZodBoolean>;
242
+ timeout: z.ZodOptional<z.ZodObject<{
243
+ startup: z.ZodOptional<z.ZodInt>;
244
+ catalog: z.ZodOptional<z.ZodInt>;
245
+ execution: z.ZodOptional<z.ZodInt>;
246
+ }, z.core.$strict>>;
247
+ protocol: z.ZodOptional<z.ZodEnum<{
248
+ auto: "auto";
249
+ legacy: "legacy";
250
+ "2026-07-28": "2026-07-28";
251
+ }>>;
252
+ type: z.ZodLiteral<"local">;
253
+ command: z.ZodArray<z.ZodString>;
254
+ cwd: z.ZodOptional<z.ZodString>;
255
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
256
+ }, z.core.$strict>, z.ZodObject<{
257
+ disabled: z.ZodOptional<z.ZodBoolean>;
258
+ codemode: z.ZodOptional<z.ZodBoolean>;
259
+ timeout: z.ZodOptional<z.ZodObject<{
260
+ startup: z.ZodOptional<z.ZodInt>;
261
+ catalog: z.ZodOptional<z.ZodInt>;
262
+ execution: z.ZodOptional<z.ZodInt>;
263
+ }, z.core.$strict>>;
264
+ protocol: z.ZodOptional<z.ZodEnum<{
265
+ auto: "auto";
266
+ legacy: "legacy";
267
+ "2026-07-28": "2026-07-28";
268
+ }>>;
269
+ type: z.ZodLiteral<"remote">;
270
+ url: z.ZodString;
271
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
272
+ oauth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
273
+ client_id: z.ZodOptional<z.ZodString>;
274
+ client_secret: z.ZodOptional<z.ZodString>;
275
+ scope: z.ZodOptional<z.ZodString>;
276
+ callback_port: z.ZodOptional<z.ZodInt>;
277
+ redirect_uri: z.ZodOptional<z.ZodString>;
278
+ auth_server_metadata_url: z.ZodOptional<z.ZodString>;
279
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
280
+ }, z.core.$strict>, z.ZodObject<{
281
+ disabled: z.ZodOptional<z.ZodBoolean>;
282
+ codemode: z.ZodOptional<z.ZodBoolean>;
283
+ timeout: z.ZodOptional<z.ZodObject<{
284
+ startup: z.ZodOptional<z.ZodInt>;
285
+ catalog: z.ZodOptional<z.ZodInt>;
286
+ execution: z.ZodOptional<z.ZodInt>;
287
+ }, z.core.$strict>>;
288
+ protocol: z.ZodOptional<z.ZodEnum<{
289
+ auto: "auto";
290
+ legacy: "legacy";
291
+ "2026-07-28": "2026-07-28";
292
+ }>>;
293
+ type: z.ZodLiteral<"ref">;
294
+ name: z.ZodOptional<z.ZodString>;
295
+ }, z.core.$strict>], "type">>;
296
+ /**
297
+ * Whether `value` carries nothing but `{env:VAR}` placeholders, optionally
298
+ * behind an HTTP auth scheme (`Bearer {env:TOKEN}`). Anything else is a
299
+ * literal that would be stored in plaintext, so a `local` server's
300
+ * `environment` values and a `remote` server's `headers` values must pass it.
301
+ */
302
+ export declare function isEnvPlaceholderValue(value: string): boolean;
303
+ /** A JSON-like value that may hold `{env:VAR}` placeholders in its strings. */
304
+ export type EnvPlaceholderSource = string | number | boolean | null | undefined | readonly EnvPlaceholderSource[] | {
305
+ readonly [key: string]: EnvPlaceholderSource;
306
+ };
307
+ /** Every variable name a value reads as `{env:VAR}`, at any depth, sorted. */
308
+ export declare function collectEnvPlaceholderNames(value: EnvPlaceholderSource): string[];
309
+ export type OpenCodeMcpRefConfig = z.infer<typeof openCodeMcpRefConfigSchema>;
310
+ export type OpenCodeMcpServerConfig = z.infer<typeof openCodeMcpServerConfigSchema>;
311
+ export type OpenCodeMcpServers = z.infer<typeof openCodeMcpServersSchema>;
312
+ export type ResolvedOpenCodeMcpServerConfig = z.infer<typeof openCodeResolvedMcpServerConfigSchema>;
313
+ export type ResolvedOpenCodeMcpServers = z.infer<typeof openCodeResolvedMcpServersSchema>;
@@ -0,0 +1,29 @@
1
+ // @bun
2
+ import {
3
+ openCodeMcpTimeoutSchema2,
4
+ openCodeMcpProtocolSchema2,
5
+ openCodeMcpLocalConfigSchema2,
6
+ openCodeMcpOAuthConfigSchema2,
7
+ openCodeMcpRemoteConfigSchema2,
8
+ openCodeMcpRefConfigSchema2,
9
+ openCodeResolvedMcpServerConfigSchema2,
10
+ openCodeResolvedMcpServersSchema2,
11
+ openCodeMcpServerConfigSchema2,
12
+ openCodeMcpServersSchema2,
13
+ isEnvPlaceholderValue2,
14
+ collectEnvPlaceholderNames2
15
+ } from "./chunk-g0rdnn0r.js";
16
+ export {
17
+ collectEnvPlaceholderNames2 as collectEnvPlaceholderNames,
18
+ isEnvPlaceholderValue2 as isEnvPlaceholderValue,
19
+ openCodeMcpLocalConfigSchema2 as openCodeMcpLocalConfigSchema,
20
+ openCodeMcpOAuthConfigSchema2 as openCodeMcpOAuthConfigSchema,
21
+ openCodeMcpProtocolSchema2 as openCodeMcpProtocolSchema,
22
+ openCodeMcpRefConfigSchema2 as openCodeMcpRefConfigSchema,
23
+ openCodeMcpRemoteConfigSchema2 as openCodeMcpRemoteConfigSchema,
24
+ openCodeMcpServerConfigSchema2 as openCodeMcpServerConfigSchema,
25
+ openCodeMcpServersSchema2 as openCodeMcpServersSchema,
26
+ openCodeMcpTimeoutSchema2 as openCodeMcpTimeoutSchema,
27
+ openCodeResolvedMcpServerConfigSchema2 as openCodeResolvedMcpServerConfigSchema,
28
+ openCodeResolvedMcpServersSchema2 as openCodeResolvedMcpServersSchema
29
+ };
@@ -0,0 +1,7 @@
1
+ import { type NodeDef } from "./model";
2
+ /**
3
+ * Puts the chain-starting methods on a handle as non-enumerable properties,
4
+ * so the handle's spec fields (and `toStepSpec`) are unchanged. Each call
5
+ * starts a fresh chain.
6
+ */
7
+ export declare function attachChainMethods(handle: object, node: NodeDef): void;