@dharta/cli 0.6.77 → 0.6.78

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 (293) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +215 -11
  3. package/dist/agent.js +3 -2
  4. package/dist/agent.js.map +1 -1
  5. package/dist/api-error.js +6 -6
  6. package/dist/api-error.js.map +1 -1
  7. package/dist/cli.d.ts +3 -0
  8. package/dist/cli.js +860 -149
  9. package/dist/cli.js.map +1 -1
  10. package/dist/command-tree.d.ts +3 -0
  11. package/dist/command-tree.js +10 -0
  12. package/dist/command-tree.js.map +1 -0
  13. package/dist/commands/agents.d.ts +54 -17
  14. package/dist/commands/agents.js +246 -136
  15. package/dist/commands/agents.js.map +1 -1
  16. package/dist/commands/analytics.js +6 -5
  17. package/dist/commands/analytics.js.map +1 -1
  18. package/dist/commands/api.js +71 -86
  19. package/dist/commands/api.js.map +1 -1
  20. package/dist/commands/appearance.js +5 -6
  21. package/dist/commands/appearance.js.map +1 -1
  22. package/dist/commands/artifact.js +7 -6
  23. package/dist/commands/artifact.js.map +1 -1
  24. package/dist/commands/audit-log.js +2 -1
  25. package/dist/commands/audit-log.js.map +1 -1
  26. package/dist/commands/auth.js +26 -6
  27. package/dist/commands/auth.js.map +1 -1
  28. package/dist/commands/caps.js +11 -15
  29. package/dist/commands/caps.js.map +1 -1
  30. package/dist/commands/deploy.js +25 -10
  31. package/dist/commands/deploy.js.map +1 -1
  32. package/dist/commands/dev.d.ts +10 -1
  33. package/dist/commands/dev.js +56 -25
  34. package/dist/commands/dev.js.map +1 -1
  35. package/dist/commands/doctor.d.ts +2 -0
  36. package/dist/commands/doctor.js +60 -0
  37. package/dist/commands/doctor.js.map +1 -1
  38. package/dist/commands/embed-keys.js +4 -13
  39. package/dist/commands/embed-keys.js.map +1 -1
  40. package/dist/commands/env.js +4 -7
  41. package/dist/commands/env.js.map +1 -1
  42. package/dist/commands/files.js +3 -4
  43. package/dist/commands/files.js.map +1 -1
  44. package/dist/commands/fleet.d.ts +129 -0
  45. package/dist/commands/fleet.js +408 -0
  46. package/dist/commands/fleet.js.map +1 -0
  47. package/dist/commands/genui.d.ts +2 -0
  48. package/dist/commands/genui.js +53 -0
  49. package/dist/commands/genui.js.map +1 -0
  50. package/dist/commands/git-credential.js +2 -3
  51. package/dist/commands/git-credential.js.map +1 -1
  52. package/dist/commands/kartas.d.ts +9 -0
  53. package/dist/commands/kartas.js +33 -11
  54. package/dist/commands/kartas.js.map +1 -1
  55. package/dist/commands/keys.d.ts +17 -18
  56. package/dist/commands/keys.js +108 -19
  57. package/dist/commands/keys.js.map +1 -1
  58. package/dist/commands/login.js +2 -1
  59. package/dist/commands/login.js.map +1 -1
  60. package/dist/commands/members.d.ts +10 -0
  61. package/dist/commands/members.js +20 -6
  62. package/dist/commands/members.js.map +1 -1
  63. package/dist/commands/model-connections.d.ts +44 -0
  64. package/dist/commands/model-connections.js +435 -0
  65. package/dist/commands/model-connections.js.map +1 -0
  66. package/dist/commands/open.d.ts +2 -2
  67. package/dist/commands/open.js +4 -3
  68. package/dist/commands/open.js.map +1 -1
  69. package/dist/commands/org.d.ts +9 -0
  70. package/dist/commands/org.js +42 -0
  71. package/dist/commands/org.js.map +1 -0
  72. package/dist/commands/organization.d.ts +16 -0
  73. package/dist/commands/organization.js +118 -0
  74. package/dist/commands/organization.js.map +1 -0
  75. package/dist/commands/parity.js +1 -3
  76. package/dist/commands/parity.js.map +1 -1
  77. package/dist/commands/repos.d.ts +4 -0
  78. package/dist/commands/repos.js +17 -0
  79. package/dist/commands/repos.js.map +1 -0
  80. package/dist/commands/rollback.js +2 -3
  81. package/dist/commands/rollback.js.map +1 -1
  82. package/dist/commands/schedules.js +26 -21
  83. package/dist/commands/schedules.js.map +1 -1
  84. package/dist/commands/scopes.js +8 -1
  85. package/dist/commands/scopes.js.map +1 -1
  86. package/dist/commands/sessions.js +9 -3
  87. package/dist/commands/sessions.js.map +1 -1
  88. package/dist/commands/setup.js +5 -4
  89. package/dist/commands/setup.js.map +1 -1
  90. package/dist/commands/update.d.ts +1 -0
  91. package/dist/commands/update.js +24 -11
  92. package/dist/commands/update.js.map +1 -1
  93. package/dist/commands/webhooks.d.ts +4 -1
  94. package/dist/commands/webhooks.js +21 -16
  95. package/dist/commands/webhooks.js.map +1 -1
  96. package/dist/completions.js +24 -13
  97. package/dist/completions.js.map +1 -1
  98. package/dist/config.d.ts +12 -0
  99. package/dist/config.js +121 -7
  100. package/dist/config.js.map +1 -1
  101. package/dist/context.d.ts +2 -0
  102. package/dist/context.js +23 -7
  103. package/dist/context.js.map +1 -1
  104. package/dist/docs/cli-reference.d.ts +2 -0
  105. package/dist/docs/cli-reference.js +191 -0
  106. package/dist/docs/cli-reference.js.map +1 -0
  107. package/dist/exit-codes.d.ts +25 -0
  108. package/dist/exit-codes.js +107 -0
  109. package/dist/exit-codes.js.map +1 -0
  110. package/dist/genui.d.ts +178 -0
  111. package/dist/genui.js +1130 -0
  112. package/dist/genui.js.map +1 -0
  113. package/dist/harnesses.js +2 -1
  114. package/dist/harnesses.js.map +1 -1
  115. package/dist/jq.d.ts +4 -0
  116. package/dist/jq.js +91 -0
  117. package/dist/jq.js.map +1 -0
  118. package/dist/login-offer.js +6 -2
  119. package/dist/login-offer.js.map +1 -1
  120. package/dist/manifest.d.ts +12 -0
  121. package/dist/manifest.js +126 -0
  122. package/dist/manifest.js.map +1 -1
  123. package/dist/model-auth.d.ts +29 -0
  124. package/dist/model-auth.js +117 -0
  125. package/dist/model-auth.js.map +1 -0
  126. package/dist/model-settings.d.ts +23 -0
  127. package/dist/model-settings.js +186 -0
  128. package/dist/model-settings.js.map +1 -0
  129. package/dist/money.js +2 -1
  130. package/dist/money.js.map +1 -1
  131. package/dist/output.d.ts +6 -0
  132. package/dist/output.js +54 -0
  133. package/dist/output.js.map +1 -1
  134. package/dist/runtime.d.ts +1 -1
  135. package/dist/runtime.js +1 -1
  136. package/dist/scaffold.js +2 -1
  137. package/dist/scaffold.js.map +1 -1
  138. package/dist/validators.js +17 -11
  139. package/dist/validators.js.map +1 -1
  140. package/dist/version-check.d.ts +1 -1
  141. package/dist/version-check.js +1 -1
  142. package/dist/version-check.js.map +1 -1
  143. package/node_modules/@dharta/contracts/LICENSE +21 -0
  144. package/node_modules/@dharta/contracts/README.md +45 -0
  145. package/node_modules/@dharta/contracts/artifact-runtime.json +750 -0
  146. package/node_modules/@dharta/contracts/dist/activity.d.ts +62 -0
  147. package/node_modules/@dharta/contracts/dist/activity.d.ts.map +1 -0
  148. package/node_modules/@dharta/contracts/dist/activity.js +178 -0
  149. package/node_modules/@dharta/contracts/dist/activity.js.map +1 -0
  150. package/node_modules/@dharta/contracts/dist/artifact-runtime-formats.d.ts +20 -0
  151. package/node_modules/@dharta/contracts/dist/artifact-runtime-formats.d.ts.map +1 -0
  152. package/node_modules/@dharta/contracts/dist/artifact-runtime-formats.js +53 -0
  153. package/node_modules/@dharta/contracts/dist/artifact-runtime-formats.js.map +1 -0
  154. package/node_modules/@dharta/contracts/dist/artifact-runtime-validators.generated.d.ts +37 -0
  155. package/node_modules/@dharta/contracts/dist/artifact-runtime-validators.generated.d.ts.map +1 -0
  156. package/node_modules/@dharta/contracts/dist/artifact-runtime-validators.generated.js +5107 -0
  157. package/node_modules/@dharta/contracts/dist/artifact-runtime-validators.generated.js.map +1 -0
  158. package/node_modules/@dharta/contracts/dist/artifact-runtime.d.ts +154 -0
  159. package/node_modules/@dharta/contracts/dist/artifact-runtime.d.ts.map +1 -0
  160. package/node_modules/@dharta/contracts/dist/artifact-runtime.generated.d.ts +1670 -0
  161. package/node_modules/@dharta/contracts/dist/artifact-runtime.generated.d.ts.map +1 -0
  162. package/node_modules/@dharta/contracts/dist/artifact-runtime.generated.js +1903 -0
  163. package/node_modules/@dharta/contracts/dist/artifact-runtime.generated.js.map +1 -0
  164. package/node_modules/@dharta/contracts/dist/artifact-runtime.js +377 -0
  165. package/node_modules/@dharta/contracts/dist/artifact-runtime.js.map +1 -0
  166. package/node_modules/@dharta/contracts/dist/index.d.ts +6 -0
  167. package/node_modules/@dharta/contracts/dist/index.d.ts.map +1 -0
  168. package/node_modules/@dharta/contracts/dist/index.js +6 -0
  169. package/node_modules/@dharta/contracts/dist/index.js.map +1 -0
  170. package/node_modules/@dharta/contracts/dist/model-auth.d.ts +31 -0
  171. package/node_modules/@dharta/contracts/dist/model-auth.d.ts.map +1 -0
  172. package/node_modules/@dharta/contracts/dist/model-auth.js +45 -0
  173. package/node_modules/@dharta/contracts/dist/model-auth.js.map +1 -0
  174. package/node_modules/@dharta/contracts/dist/tasks.d.ts +44 -0
  175. package/node_modules/@dharta/contracts/dist/tasks.d.ts.map +1 -0
  176. package/node_modules/@dharta/contracts/dist/tasks.js +127 -0
  177. package/node_modules/@dharta/contracts/dist/tasks.js.map +1 -0
  178. package/node_modules/@dharta/contracts/dist/wire-events.d.ts +71 -0
  179. package/node_modules/@dharta/contracts/dist/wire-events.d.ts.map +1 -0
  180. package/node_modules/@dharta/contracts/dist/wire-events.js +48 -0
  181. package/node_modules/@dharta/contracts/dist/wire-events.js.map +1 -0
  182. package/node_modules/@dharta/contracts/model-auth-capabilities-v1.json +168 -0
  183. package/node_modules/@dharta/contracts/model-auth-reasons-v1.json +38 -0
  184. package/node_modules/@dharta/contracts/package.json +44 -0
  185. package/node_modules/@dharta/contracts/src/activity.ts +215 -0
  186. package/node_modules/@dharta/contracts/src/artifact-runtime-formats.ts +54 -0
  187. package/node_modules/@dharta/contracts/src/artifact-runtime-validators.generated.ts +29 -0
  188. package/node_modules/@dharta/contracts/src/artifact-runtime.generated.ts +2093 -0
  189. package/node_modules/@dharta/contracts/src/artifact-runtime.ts +520 -0
  190. package/node_modules/@dharta/contracts/src/index.ts +5 -0
  191. package/node_modules/@dharta/contracts/src/model-auth.ts +82 -0
  192. package/node_modules/@dharta/contracts/src/tasks.ts +142 -0
  193. package/node_modules/@dharta/contracts/src/wire-events.ts +150 -0
  194. package/node_modules/@dharta/contracts/wire-events.json +29 -0
  195. package/node_modules/@dharta/sdk/LICENSE +1 -1
  196. package/node_modules/@dharta/sdk/README.md +22 -8
  197. package/node_modules/@dharta/sdk/dist/errors.d.ts +9 -7
  198. package/node_modules/@dharta/sdk/dist/errors.d.ts.map +1 -1
  199. package/node_modules/@dharta/sdk/dist/errors.js +36 -18
  200. package/node_modules/@dharta/sdk/dist/errors.js.map +1 -1
  201. package/node_modules/@dharta/sdk/dist/fleet.d.ts +69 -0
  202. package/node_modules/@dharta/sdk/dist/fleet.d.ts.map +1 -0
  203. package/node_modules/@dharta/sdk/dist/fleet.js +240 -0
  204. package/node_modules/@dharta/sdk/dist/fleet.js.map +1 -0
  205. package/node_modules/@dharta/sdk/dist/http.d.ts +6 -2
  206. package/node_modules/@dharta/sdk/dist/http.d.ts.map +1 -1
  207. package/node_modules/@dharta/sdk/dist/http.js +71 -12
  208. package/node_modules/@dharta/sdk/dist/http.js.map +1 -1
  209. package/node_modules/@dharta/sdk/dist/idempotency.d.ts +12 -0
  210. package/node_modules/@dharta/sdk/dist/idempotency.d.ts.map +1 -0
  211. package/node_modules/@dharta/sdk/dist/idempotency.js +72 -0
  212. package/node_modules/@dharta/sdk/dist/idempotency.js.map +1 -0
  213. package/node_modules/@dharta/sdk/dist/index.d.ts +20 -6
  214. package/node_modules/@dharta/sdk/dist/index.d.ts.map +1 -1
  215. package/node_modules/@dharta/sdk/dist/index.js +27 -4
  216. package/node_modules/@dharta/sdk/dist/index.js.map +1 -1
  217. package/node_modules/@dharta/sdk/dist/resources.d.ts +108 -13
  218. package/node_modules/@dharta/sdk/dist/resources.d.ts.map +1 -1
  219. package/node_modules/@dharta/sdk/dist/resources.js +403 -57
  220. package/node_modules/@dharta/sdk/dist/resources.js.map +1 -1
  221. package/node_modules/@dharta/sdk/dist/types.d.ts +436 -16
  222. package/node_modules/@dharta/sdk/dist/types.d.ts.map +1 -1
  223. package/node_modules/@dharta/sdk/dist/types.js +31 -2
  224. package/node_modules/@dharta/sdk/dist/types.js.map +1 -1
  225. package/node_modules/@dharta/sdk/package.json +9 -3
  226. package/node_modules/@dharta/sdk/src/errors.ts +41 -18
  227. package/node_modules/@dharta/sdk/src/fleet.ts +339 -0
  228. package/node_modules/@dharta/sdk/src/http.ts +110 -17
  229. package/node_modules/@dharta/sdk/src/idempotency.ts +101 -0
  230. package/node_modules/@dharta/sdk/src/index.ts +50 -11
  231. package/node_modules/@dharta/sdk/src/resources.ts +549 -68
  232. package/node_modules/@dharta/sdk/src/types.ts +629 -20
  233. package/package.json +16 -6
  234. package/src/agent.ts +3 -2
  235. package/src/api-error.ts +6 -5
  236. package/src/cli.ts +978 -163
  237. package/src/command-tree.ts +13 -0
  238. package/src/commands/agents.ts +365 -167
  239. package/src/commands/analytics.ts +6 -5
  240. package/src/commands/api.ts +73 -92
  241. package/src/commands/appearance.ts +5 -6
  242. package/src/commands/artifact.ts +7 -6
  243. package/src/commands/audit-log.ts +2 -1
  244. package/src/commands/auth.ts +25 -5
  245. package/src/commands/caps.ts +11 -15
  246. package/src/commands/deploy.ts +18 -4
  247. package/src/commands/dev.ts +86 -25
  248. package/src/commands/doctor.ts +69 -0
  249. package/src/commands/embed-keys.ts +4 -14
  250. package/src/commands/env.ts +4 -7
  251. package/src/commands/files.ts +3 -4
  252. package/src/commands/fleet.ts +672 -0
  253. package/src/commands/genui.ts +59 -0
  254. package/src/commands/git-credential.ts +2 -3
  255. package/src/commands/kartas.ts +45 -11
  256. package/src/commands/keys.ts +152 -35
  257. package/src/commands/login.ts +2 -1
  258. package/src/commands/members.ts +31 -6
  259. package/src/commands/model-connections.ts +547 -0
  260. package/src/commands/open.ts +5 -4
  261. package/src/commands/org.ts +57 -0
  262. package/src/commands/organization.ts +153 -0
  263. package/src/commands/parity.ts +1 -3
  264. package/src/commands/repos.ts +23 -0
  265. package/src/commands/rollback.ts +2 -3
  266. package/src/commands/schedules.ts +33 -22
  267. package/src/commands/scopes.ts +8 -1
  268. package/src/commands/sessions.ts +9 -3
  269. package/src/commands/setup.ts +5 -4
  270. package/src/commands/update.ts +28 -12
  271. package/src/commands/webhooks.ts +30 -19
  272. package/src/completions.ts +25 -13
  273. package/src/config.ts +141 -9
  274. package/src/context.ts +34 -7
  275. package/src/docs/cli-reference.ts +206 -0
  276. package/src/exit-codes.ts +122 -0
  277. package/src/genui.ts +1398 -0
  278. package/src/harnesses.ts +2 -1
  279. package/src/jq.ts +109 -0
  280. package/src/login-offer.ts +6 -2
  281. package/src/manifest.ts +134 -0
  282. package/src/model-auth.ts +173 -0
  283. package/src/model-settings.ts +222 -0
  284. package/src/money.ts +5 -1
  285. package/src/output.ts +60 -0
  286. package/src/runtime.ts +1 -1
  287. package/src/scaffold.ts +2 -1
  288. package/src/validators.ts +18 -11
  289. package/src/version-check.ts +1 -1
  290. package/dist/commands/model-keys.d.ts +0 -22
  291. package/dist/commands/model-keys.js +0 -222
  292. package/dist/commands/model-keys.js.map +0 -1
  293. package/src/commands/model-keys.ts +0 -278
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genui.js","sourceRoot":"","sources":["../src/genui.ts"],"names":[],"mappings":"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"}
package/dist/harnesses.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { existsSync } from "node:fs";
2
2
  import * as path from "node:path";
3
3
  import TOML from "@iarna/toml";
4
+ import { CliUsageError } from "./exit-codes.js";
4
5
  import { closestChoice, normalizeNonBlank } from "./validators.js";
5
6
  export const HARNESS_TYPES = ["claude-code", "opencode", "deepagents", "goose", "codex-cli"];
6
7
  export const DEFAULT_CREATE_HARNESS = "claude-code";
@@ -33,7 +34,7 @@ export function parseHarnessType(value, label = "--harness") {
33
34
  if (HARNESS_TYPES.includes(normalized))
34
35
  return normalized;
35
36
  const suggestion = closestChoice(normalized, HARNESS_TYPES);
36
- throw new Error(`${label} must be one of ${HARNESS_TYPES.join(", ")}.` +
37
+ throw new CliUsageError(`${label} must be one of ${HARNESS_TYPES.join(", ")}.` +
37
38
  (suggestion ? ` Did you mean ${suggestion}?` : ""));
38
39
  }
39
40
  export function nativeInstructionFile(harness) {
@@ -1 +1 @@
1
- {"version":3,"file":"harnesses.js","sourceRoot":"","sources":["../src/harnesses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harnesses.js","sourceRoot":"","sources":["../src/harnesses.ts"],"names":[],"mappings":"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"}
package/dist/jq.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ export declare function jqExpression(): string | null;
2
+ export declare function armJqFilter(expr: string | undefined): Promise<void>;
3
+ export declare function disarmJqFilter(): void;
4
+ export declare function applyJqFilter(payload: unknown): Promise<string>;
package/dist/jq.js ADDED
@@ -0,0 +1,91 @@
1
+ // `--jq <expr>` (RFC 0048 P5): filter the JSON a command would print, without
2
+ // making the user install jq. The filter runs in-process on a WebAssembly jq
3
+ // (jq-wasm), so `dharta … --jq` behaves the same on a developer laptop, a
4
+ // container, and the standalone tarball, and `dharta` keeps its single-binary
5
+ // promise.
6
+ //
7
+ // Package choice: jq-wasm, pinned to 3.0.0-jq-1.8.2 (the current line). It is
8
+ // the only maintained WebAssembly jq on npm that ships a prebuilt artifact - no
9
+ // node-gyp, no emscripten toolchain, no postinstall script - with TypeScript
10
+ // types and zero runtime dependencies. Its `engines.node >= 20` is below this
11
+ // package's own floor, which commander 15 sets at 22.12.
12
+ import { CliUsageError } from "./exit-codes.js";
13
+ // -c only: one compact JSON value per line, so multiple results stay
14
+ // one-per-line for `while read`.
15
+ //
16
+ // jq's own -r is deliberately NOT used. jq-wasm trims the whole of stdout, so
17
+ // `--jq .v` over {"v":" padded "} would print `padded` and quietly lose the
18
+ // value's own whitespace. Compact JSON never carries leading or trailing
19
+ // whitespace, so the same trim is harmless here, and rawLine() below does what
20
+ // -r does: a result that is a string prints without quotes, so
21
+ // `--jq .name | xargs` works the way people expect from jq itself.
22
+ const JQ_FLAGS = ["-c"];
23
+ // jq's own exit code for a program that does not compile, as opposed to one
24
+ // that compiles and then fails on the data (5) or hits a system error (2).
25
+ const JQ_COMPILE_ERROR = 3;
26
+ let expression = null;
27
+ let jqRaw = null;
28
+ export function jqExpression() {
29
+ return expression;
30
+ }
31
+ // Load jq and compile the expression BEFORE the command does its work. A
32
+ // mistyped filter must not cost a mutation that then has nowhere to print.
33
+ export async function armJqFilter(expr) {
34
+ expression = null;
35
+ jqRaw = null;
36
+ if (expr === undefined)
37
+ return;
38
+ const query = expr.trim();
39
+ if (!query) {
40
+ throw new CliUsageError("--jq needs an expression, for example --jq '.data[].id'.");
41
+ }
42
+ jqRaw = await loadJqRaw();
43
+ const probe = await jqRaw("null", query, JQ_FLAGS);
44
+ if (probe.exitCode === JQ_COMPILE_ERROR) {
45
+ throw new CliUsageError(`--jq expression did not compile.\n${probe.stderr.trim()}`);
46
+ }
47
+ expression = query;
48
+ }
49
+ // Reset between runs. Tests drive the program repeatedly in one process, and a
50
+ // leftover filter would silently rewrite the next command's output.
51
+ export function disarmJqFilter() {
52
+ expression = null;
53
+ jqRaw = null;
54
+ }
55
+ export async function applyJqFilter(payload) {
56
+ if (expression === null || jqRaw === null) {
57
+ throw new Error("applyJqFilter called with no armed --jq expression.");
58
+ }
59
+ const result = await jqRaw(JSON.stringify(payload) ?? "null", expression, JQ_FLAGS);
60
+ if (result.exitCode !== 0) {
61
+ // Every non-zero exit here is the expression's fault given this payload
62
+ // (`.a.b` on a string, `.[0]` on an object), so it reads as a usage error.
63
+ throw new CliUsageError(`--jq failed on the response.\n${result.stderr.trim()}`);
64
+ }
65
+ // jq terminates every result with a newline; console.log adds its own.
66
+ const stdout = result.stdout.replace(/\n$/, "");
67
+ if (stdout === "")
68
+ return "";
69
+ // One compact JSON value per line, so splitting on newlines is safe: a
70
+ // newline inside a string is escaped until rawLine() unescapes it.
71
+ return stdout.split("\n").map(rawLine).join("\n");
72
+ }
73
+ // What jq's -r does, done here so the library's trim cannot reach inside a
74
+ // string. A line that is a JSON string prints as the string; anything else
75
+ // (object, array, number, boolean, null) prints as it came out.
76
+ function rawLine(line) {
77
+ try {
78
+ const value = JSON.parse(line);
79
+ return typeof value === "string" ? value : line;
80
+ }
81
+ catch {
82
+ return line;
83
+ }
84
+ }
85
+ // Imported lazily: the wasm build is about a megabyte, and a CLI run that never
86
+ // passes --jq should never pay to load it.
87
+ async function loadJqRaw() {
88
+ const mod = (await import("jq-wasm"));
89
+ return mod.raw;
90
+ }
91
+ //# sourceMappingURL=jq.js.map
package/dist/jq.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jq.js","sourceRoot":"","sources":["../src/jq.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  // logged in, it offers login ONCE at the end as the bridge to `dharta deploy`
4
4
  // (which does need auth). --login forces it; otherwise we only prompt an
5
5
  // interactive terminal. It never blocks setup.
6
- import { activeProfile } from "./config.js";
6
+ import { activeProfile, requestedProfileName } from "./config.js";
7
7
  import { login } from "./commands/login.js";
8
8
  export async function offerLogin(opts) {
9
9
  // Non-interactive and not forced: stay silent (don't even read the config).
@@ -21,7 +21,11 @@ export async function offerLogin(opts) {
21
21
  opts.log("Setup is complete. You're not logged in - run `dharta login`, then `dharta deploy`.");
22
22
  return "skipped";
23
23
  }
24
- await (opts.runLogin ?? (() => login({ log: opts.log }).then(() => undefined)))();
24
+ // The global --profile names the profile this writes, the same as a bare
25
+ // `dharta login`: `dharta setup --login --profile staging` must not store the
26
+ // key as `default`.
27
+ await (opts.runLogin ??
28
+ (() => login({ log: opts.log, profile: requestedProfileName() }).then(() => undefined)))();
25
29
  return "completed";
26
30
  }
27
31
  async function defaultIsLoggedIn() {
@@ -1 +1 @@
1
- {"version":3,"file":"login-offer.js","sourceRoot":"","sources":["../src/login-offer.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,wEAAwE;AACxE,8EAA8E;AAC9E,yEAAyE;AACzE,+CAA+C;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAa5C,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAuB;IACtD,4EAA4E;IAC5E,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAE/C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,IAAI,iBAAiB,CAAC;IACtD,IAAI,MAAM,QAAQ,EAAE;QAAE,OAAO,WAAW,CAAC;IAEzC,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;IAC7B,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACpB,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAClH,EAAE,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,CAAC;IAChC,CAAC;IACD,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,CAAC,qFAAqF,CAAC,CAAC;QAChG,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,iBAAiB;IAC9B,IAAI,CAAC;QACH,MAAM,aAAa,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"login-offer.js","sourceRoot":"","sources":["../src/login-offer.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,wEAAwE;AACxE,8EAA8E;AAC9E,yEAAyE;AACzE,+CAA+C;AAE/C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAa5C,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAuB;IACtD,4EAA4E;IAC5E,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAE/C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,IAAI,iBAAiB,CAAC;IACtD,IAAI,MAAM,QAAQ,EAAE;QAAE,OAAO,WAAW,CAAC;IAEzC,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;IAC7B,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACpB,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAClH,EAAE,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,CAAC;IAChC,CAAC;IACD,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,CAAC,qFAAqF,CAAC,CAAC;QAChG,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,yEAAyE;IACzE,8EAA8E;IAC9E,oBAAoB;IACpB,MAAM,CAAC,IAAI,CAAC,QAAQ;QAClB,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7F,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,iBAAiB;IAC9B,IAAI,CAAC;QACH,MAAM,aAAa,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -8,6 +8,18 @@ export declare function renderManifest(o: {
8
8
  harnessVersion?: string;
9
9
  }): string;
10
10
  export declare function patchScalar(src: string, key: string, literal: string): string;
11
+ /**
12
+ * The RAW right-hand side of `key` inside `[table]`, comment stripped, or null
13
+ * when the table or the key is not written in that plain form.
14
+ *
15
+ * Callers need the literal, not the parsed value, when TOML's type distinctions
16
+ * survive in Python and not in JavaScript: `version = 1.0` is a float to
17
+ * `tomllib` (and rejected by the data plane) but an indistinguishable `1` once
18
+ * `@iarna/toml` has handed it back as a JS number.
19
+ */
20
+ export declare function tableScalarLiteral(src: string, table: string, key: string): string | null;
21
+ export declare function patchTableScalar(src: string, table: string, key: string, literal: string): string;
22
+ export declare function setGenuiBundleSha256(src: string, digest: string): string;
11
23
  export declare function patchManifest(src: string, o: {
12
24
  name?: string;
13
25
  deploy?: boolean;
package/dist/manifest.js CHANGED
@@ -73,6 +73,30 @@ export function renderManifest(o) {
73
73
  '# setup = "scripts/setup.sh"',
74
74
  '# network = "full"',
75
75
  "",
76
+ "# --- Generative UI (RFC 0056) ----------------------------------------------",
77
+ "# Opt in to agent-driven UI in the embedded widget. No [genui] section = the",
78
+ "# agent answers in text only and pays no token cost for a catalog.",
79
+ "# catalog_id - stable id for this agent's component catalog.",
80
+ "# version - bump when the catalog changes (integer >= 1; 1.0 is a float",
81
+ "# and is rejected).",
82
+ "# components - every component the agent may render, with its trust tier:",
83
+ "# 1 = a Dharta builtin, 2 = your JavaScript in a Web Worker,",
84
+ "# 3 = your HTML in a sandboxed iframe. Tiers 2-3 need a bundle.",
85
+ "# bundle, bundle_sha256 - written by `dharta genui build`. Do not hand-edit",
86
+ "# the digest; the deploy verifies it against the bundle bytes.",
87
+ "# Run `dharta genui build --help` for the source layout it compiles.",
88
+ "# [genui]",
89
+ '# catalog_id = "support-bot-ui"',
90
+ "# version = 1",
91
+ '# components = [{ name = "Card", tier = 1 }, { name = "Pentagraph", tier = 2 }]',
92
+ '# bundle = "genui/bundle.json"',
93
+ '# bundle_sha256 = "<64 hex characters>"',
94
+ "",
95
+ "# Build-time only, never part of the release contract: where",
96
+ "# `dharta genui build` reads component sources from.",
97
+ "# [genui.build]",
98
+ '# source = "genui/components" # this is the default',
99
+ "",
76
100
  ].join("\n");
77
101
  }
78
102
  function harnessVersionExample(harness) {
@@ -107,6 +131,108 @@ export function patchScalar(src, key, literal) {
107
131
  return src.slice(0, tbl) + line + src.slice(tbl);
108
132
  return (src.endsWith("\n") ? src : src + "\n") + line;
109
133
  }
134
+ // Locate ONE `[table]`'s own lines: from its header to the next line that
135
+ // starts a table. A multi-line inline array whose elements start a line with
136
+ // `[` would end the region early; an edit built on that produces invalid TOML,
137
+ // which the round-trip in `setGenuiBundleSha256` catches loudly rather than
138
+ // writing out. `table` is always a literal we control ("genui").
139
+ function tableRegion(lines, table) {
140
+ // `\r?` for the same reason assignmentPattern carries it: splitting a CRLF
141
+ // file on "\n" leaves the carriage return at the end of every line, and `.`
142
+ // never matches it, so `[genui] # comment\r` would not be recognized as a
143
+ // header and the whole table would read as absent.
144
+ const header = new RegExp(`^\\s*\\[\\s*${table}\\s*\\]\\s*(?:#.*?)?\\r?$`);
145
+ const start = lines.findIndex((line) => header.test(line));
146
+ if (start < 0)
147
+ return null;
148
+ let end = lines.length;
149
+ for (let i = start + 1; i < lines.length; i++) {
150
+ if (/^\s*\[/.test(lines[i])) {
151
+ end = i;
152
+ break;
153
+ }
154
+ }
155
+ return { start, end };
156
+ }
157
+ // Anchored to a line start, so a commented `# key = ...` is never matched. The
158
+ // third group captures a CRLF file's carriage return, which lives at the end of
159
+ // each line once the text is split on "\n" and would otherwise be swallowed by
160
+ // the value group and dropped on replace, leaving one lone LF line in a CRLF
161
+ // manifest.
162
+ function assignmentPattern(key) {
163
+ return new RegExp(`^(\\s*${key}\\s*=)(.*?)(\\r?)$`);
164
+ }
165
+ /**
166
+ * The RAW right-hand side of `key` inside `[table]`, comment stripped, or null
167
+ * when the table or the key is not written in that plain form.
168
+ *
169
+ * Callers need the literal, not the parsed value, when TOML's type distinctions
170
+ * survive in Python and not in JavaScript: `version = 1.0` is a float to
171
+ * `tomllib` (and rejected by the data plane) but an indistinguishable `1` once
172
+ * `@iarna/toml` has handed it back as a JS number.
173
+ */
174
+ export function tableScalarLiteral(src, table, key) {
175
+ const lines = src.split("\n");
176
+ const region = tableRegion(lines, table);
177
+ if (!region)
178
+ return null;
179
+ const assignment = assignmentPattern(key);
180
+ for (let i = region.start + 1; i < region.end; i++) {
181
+ const match = lines[i].match(assignment);
182
+ if (match)
183
+ return match[2].replace(/\s+#.*$/, "").trim();
184
+ }
185
+ return null;
186
+ }
187
+ // The same surgical edit as patchScalar, but scoped to ONE [table]: replace the
188
+ // key in place if the table already has it, else append it as the table's last
189
+ // key. `patchScalar` cannot do this - it deliberately stops at the first table
190
+ // header to keep top-level keys top-level.
191
+ //
192
+ // `table` and `key` are always literals we control ("genui", "bundle_sha256").
193
+ export function patchTableScalar(src, table, key, literal) {
194
+ const lines = src.split("\n");
195
+ const region = tableRegion(lines, table);
196
+ if (!region)
197
+ throw new Error(`No [${table}] table to patch.`);
198
+ const { start, end } = region;
199
+ const assignment = assignmentPattern(key);
200
+ for (let i = start + 1; i < end; i++) {
201
+ if (assignment.test(lines[i])) {
202
+ lines[i] = lines[i].replace(assignment, `$1 ${literal}$3`);
203
+ return lines.join("\n");
204
+ }
205
+ }
206
+ // Not present: insert straight after the table's last real line. Trailing
207
+ // blanks and comments are skipped because they usually introduce the NEXT
208
+ // table (`# --- Environment ---` above `[env]`), and a key wedged in there
209
+ // reads as if it belonged to that section.
210
+ let insert = end;
211
+ while (insert > start + 1) {
212
+ const previous = lines[insert - 1].trim();
213
+ if (previous !== "" && !previous.startsWith("#"))
214
+ break;
215
+ insert--;
216
+ }
217
+ const eol = src.includes("\r\n") ? "\r" : "";
218
+ lines.splice(insert, 0, `${key} = ${literal}${eol}`);
219
+ return lines.join("\n");
220
+ }
221
+ // Record a freshly built RFC 0056 component bundle's digest in [genui],
222
+ // preserving the manifest's comments and every other table. Round-trips through
223
+ // the parser and re-reads the value, so an exotic layout that patchTableScalar
224
+ // cannot edit correctly fails here instead of writing a manifest whose digest
225
+ // silently does not match the bundle.
226
+ export function setGenuiBundleSha256(src, digest) {
227
+ const out = patchTableScalar(src, "genui", "bundle_sha256", JSON.stringify(digest));
228
+ const parsed = TOML.parse(out); // throws on an invalid result
229
+ const genui = parsed.genui;
230
+ if (!genui || genui.bundle_sha256 !== digest) {
231
+ throw new Error("Could not record bundle_sha256 in the [genui] table of dharta.toml. " +
232
+ `Set \`bundle_sha256 = "${digest}"\` there by hand.`);
233
+ }
234
+ return out;
235
+ }
110
236
  function hasTopLevelScalar(src, key) {
111
237
  const tbl = src.search(/^\s*\[/m);
112
238
  const top = tbl >= 0 ? src.slice(0, tbl) : src;
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { ModelAuthCapability } from "@dharta/contracts";
2
+ import type { ModelConnectionProvider } from "@dharta/sdk";
3
+ export declare const MODEL_AUTH_MISSING: string;
4
+ export declare const MODEL_AUTH_CAPABILITY_DISABLED: string;
5
+ export declare const DEV_MODEL_AUTH_VALUES: readonly ["api-key", "claude"];
6
+ export type DevModelAuth = (typeof DEV_MODEL_AUTH_VALUES)[number];
7
+ export declare const MODEL_CONNECTION_PROVIDERS: ModelConnectionProvider[];
8
+ export interface ClaudeAuthStatus {
9
+ installed: boolean;
10
+ authenticated: boolean;
11
+ detail?: string;
12
+ }
13
+ export interface CommandStatus {
14
+ status: number | null;
15
+ stdout?: string;
16
+ stderr?: string;
17
+ error?: Error;
18
+ }
19
+ export type RunCommandStatus = (command: string, args: string[], env: NodeJS.ProcessEnv) => CommandStatus;
20
+ export declare function checkClaudeAuth(env?: NodeJS.ProcessEnv, run?: RunCommandStatus): ClaudeAuthStatus;
21
+ export interface ResolvedDevModelAuth {
22
+ selection: DevModelAuth;
23
+ capability: ModelAuthCapability;
24
+ env: NodeJS.ProcessEnv;
25
+ }
26
+ export declare function resolveDevModelAuth(requested: DevModelAuth | undefined, env?: NodeJS.ProcessEnv, run?: RunCommandStatus): ResolvedDevModelAuth;
27
+ export declare function capabilityFor(selection: DevModelAuth): ModelAuthCapability;
28
+ export declare function runtimeSwitchOpen(capability: ModelAuthCapability, env?: NodeJS.ProcessEnv): boolean;
29
+ export declare function formatModelAuthCapability(capability: ModelAuthCapability): string;
@@ -0,0 +1,117 @@
1
+ import { spawnSync } from "node:child_process";
2
+ import { createRequire } from "node:module";
3
+ const require = createRequire(import.meta.url);
4
+ const catalog = require("@dharta/contracts/model-auth-capabilities-v1.json");
5
+ const reasonCatalog = require("@dharta/contracts/model-auth-reasons-v1.json");
6
+ export const MODEL_AUTH_MISSING = modelAuthReason("model_auth_missing");
7
+ export const MODEL_AUTH_CAPABILITY_DISABLED = modelAuthReason("model_auth_capability_disabled");
8
+ export const DEV_MODEL_AUTH_VALUES = ["api-key", "claude"];
9
+ export const MODEL_CONNECTION_PROVIDERS = catalog.capabilities
10
+ .filter((capability) => capability.admission === "enabled" && capability.credential_kind === "api_key")
11
+ .map((capability) => capability.provider);
12
+ const CAPABILITY_IDS = {
13
+ "api-key": "anthropic_api_key",
14
+ claude: "anthropic_claude_local_subscription",
15
+ };
16
+ const COPIED_PROVIDER_CREDENTIALS = ["ANTHROPIC_API_KEY", "ANTHROPIC_AUTH_TOKEN", "CLAUDE_CODE_OAUTH_TOKEN"];
17
+ function withoutCopiedProviderCredentials(env) {
18
+ const clean = { ...env };
19
+ for (const name of COPIED_PROVIDER_CREDENTIALS)
20
+ delete clean[name];
21
+ return clean;
22
+ }
23
+ const runCommandStatus = (command, args, env) => {
24
+ const result = spawnSync(command, args, { encoding: "utf8", env });
25
+ return {
26
+ status: result.status,
27
+ stdout: result.stdout,
28
+ stderr: result.stderr,
29
+ error: result.error,
30
+ };
31
+ };
32
+ export function checkClaudeAuth(env = process.env, run = runCommandStatus) {
33
+ const result = run("claude", ["auth", "status"], withoutCopiedProviderCredentials(env));
34
+ if (result.error && result.error.code === "ENOENT") {
35
+ return { installed: false, authenticated: false, detail: "Claude client is not installed or is not on PATH." };
36
+ }
37
+ const detail = (result.stderr || result.stdout || result.error?.message || "").trim() || undefined;
38
+ return { installed: true, authenticated: result.status === 0, detail };
39
+ }
40
+ export function resolveDevModelAuth(requested, env = process.env, run = runCommandStatus) {
41
+ const claude = requested === "api-key"
42
+ ? { installed: false, authenticated: false }
43
+ : checkClaudeAuth(env, run);
44
+ const apiKeyCapability = capabilityFor("api-key");
45
+ const claudeCapability = capabilityFor("claude");
46
+ const apiKeyPresent = Boolean(env.ANTHROPIC_API_KEY?.trim());
47
+ const apiKeyAvailable = apiKeyPresent && capabilityEnabled(apiKeyCapability, env);
48
+ const claudeAvailable = claude.authenticated && capabilityEnabled(claudeCapability, env);
49
+ let selection = requested;
50
+ if (!selection) {
51
+ const available = [];
52
+ if (apiKeyAvailable)
53
+ available.push("api-key");
54
+ if (claudeAvailable)
55
+ available.push("claude");
56
+ if (available.length > 1) {
57
+ throw new Error("Multiple Anthropic model authentication methods are ready. Choose one with `dharta dev --model-auth api-key` or `dharta dev --model-auth claude`.");
58
+ }
59
+ selection = available[0];
60
+ }
61
+ if (!selection) {
62
+ throw new Error(`${MODEL_AUTH_MISSING}: No Anthropic model authentication is ready. Export ANTHROPIC_API_KEY and use \`--model-auth api-key\`, ` +
63
+ "or run `claude auth login` and use `--model-auth claude`.");
64
+ }
65
+ if (selection === "api-key" && !apiKeyPresent) {
66
+ throw new Error(`${MODEL_AUTH_MISSING}: \`--model-auth api-key\` requires ANTHROPIC_API_KEY in the dev environment.`);
67
+ }
68
+ if (selection === "claude" && !claude.authenticated) {
69
+ const prefix = claude.installed ? "Claude is not logged in." : "Claude client is not available.";
70
+ throw new Error(`${MODEL_AUTH_MISSING}: ${prefix} Run \`claude auth login\`, then retry \`dharta dev --model-auth claude\`.`);
71
+ }
72
+ const capability = selection === "api-key" ? apiKeyCapability : claudeCapability;
73
+ if (!capabilityEnabled(capability, env)) {
74
+ throw new Error(`Model authentication capability ${capability.id} is disabled (${MODEL_AUTH_CAPABILITY_DISABLED}). ` +
75
+ `provider=${capability.provider}; credential-kind=${capability.credential_kind}; ` +
76
+ `funding=${capability.funding_source}; scope=${capability.execution_scopes.join(",") || "none"}.`);
77
+ }
78
+ const childEnv = { ...env };
79
+ delete childEnv.ANTHROPIC_AUTH_TOKEN;
80
+ delete childEnv.CLAUDE_CODE_OAUTH_TOKEN;
81
+ if (selection === "claude")
82
+ delete childEnv.ANTHROPIC_API_KEY;
83
+ return { selection, capability, env: childEnv };
84
+ }
85
+ function capabilityEnabled(capability, env) {
86
+ return capability.admission === "enabled" && runtimeSwitchOpen(capability, env);
87
+ }
88
+ export function capabilityFor(selection) {
89
+ const id = CAPABILITY_IDS[selection];
90
+ const capability = catalog.capabilities.find((entry) => entry.id === id);
91
+ if (!capability)
92
+ throw new Error(`Model authentication catalog is missing capability ${id}.`);
93
+ return capability;
94
+ }
95
+ export function runtimeSwitchOpen(capability, env = process.env) {
96
+ const key = `DHARTA_MODEL_AUTH_${capability.runtime_switch.toUpperCase()}_ENABLED`;
97
+ const raw = env[key];
98
+ if (raw === undefined)
99
+ return true;
100
+ const value = raw.trim().toLowerCase();
101
+ if (["1", "true", "yes", "on"].includes(value))
102
+ return true;
103
+ if (["0", "false", "no", "off"].includes(value))
104
+ return false;
105
+ throw new Error(`${key} must be true or false.`);
106
+ }
107
+ function modelAuthReason(code) {
108
+ const reason = reasonCatalog.reasons.find((entry) => entry.code === code);
109
+ if (!reason)
110
+ throw new Error(`Model authentication reason catalog is missing ${code}.`);
111
+ return reason.code;
112
+ }
113
+ export function formatModelAuthCapability(capability) {
114
+ return (`provider=${capability.provider}; credential-kind=${capability.credential_kind}; ` +
115
+ `funding=${capability.funding_source}; scope=${capability.execution_scopes.join(",") || "none"}`);
116
+ }
117
+ //# sourceMappingURL=model-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-auth.js","sourceRoot":"","sources":["../src/model-auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAI5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,mDAAmD,CAE1E,CAAC;AACF,MAAM,aAAa,GAAG,OAAO,CAAC,8CAA8C,CAE3E,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,8BAA8B,GAAG,eAAe,CAAC,gCAAgC,CAAC,CAAC;AAEhG,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAU,CAAC;AAGpE,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC,YAAY;KAC3D,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,KAAK,SAAS,IAAI,UAAU,CAAC,eAAe,KAAK,SAAS,CAAC;KACtG,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAA8B,CAAC;AAEzE,MAAM,cAAc,GAAiC;IACnD,SAAS,EAAE,mBAAmB;IAC9B,MAAM,EAAE,qCAAqC;CAC9C,CAAC;AAiBF,MAAM,2BAA2B,GAAG,CAAC,mBAAmB,EAAE,sBAAsB,EAAE,yBAAyB,CAAU,CAAC;AAEtH,SAAS,gCAAgC,CAAC,GAAsB;IAC9D,MAAM,KAAK,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IACzB,KAAK,MAAM,IAAI,IAAI,2BAA2B;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;IACnE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,gBAAgB,GAAqB,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;IAChE,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACnE,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,eAAe,CAC7B,MAAyB,OAAO,CAAC,GAAG,EACpC,MAAwB,gBAAgB;IAExC,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,gCAAgC,CAAC,GAAG,CAAC,CAAC,CAAC;IACxF,IAAI,MAAM,CAAC,KAAK,IAAK,MAAM,CAAC,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,mDAAmD,EAAE,CAAC;IACjH,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;IACnG,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;AACzE,CAAC;AAQD,MAAM,UAAU,mBAAmB,CACjC,SAAmC,EACnC,MAAyB,OAAO,CAAC,GAAG,EACpC,MAAwB,gBAAgB;IAExC,MAAM,MAAM,GAAG,SAAS,KAAK,SAAS;QACpC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE;QAC5C,CAAC,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9B,MAAM,gBAAgB,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,gBAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,aAAa,IAAI,iBAAiB,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAClF,MAAM,eAAe,GAAG,MAAM,CAAC,aAAa,IAAI,iBAAiB,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAEzF,IAAI,SAAS,GAAG,SAAS,CAAC;IAC1B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,SAAS,GAAmB,EAAE,CAAC;QACrC,IAAI,eAAe;YAAE,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,eAAe;YAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,mJAAmJ,CAAC,CAAC;QACvK,CAAC;QACD,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,GAAG,kBAAkB,2GAA2G;YAC9H,2DAA2D,CAC9D,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,GAAG,kBAAkB,+EAA+E,CAAC,CAAC;IACxH,CAAC;IACD,IAAI,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,iCAAiC,CAAC;QACjG,MAAM,IAAI,KAAK,CAAC,GAAG,kBAAkB,KAAK,MAAM,4EAA4E,CAAC,CAAC;IAChI,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC;IACjF,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CACb,mCAAmC,UAAU,CAAC,EAAE,iBAAiB,8BAA8B,KAAK;YAClG,YAAY,UAAU,CAAC,QAAQ,qBAAqB,UAAU,CAAC,eAAe,IAAI;YAClF,WAAW,UAAU,CAAC,cAAc,WAAW,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,GAAG,CACpG,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IAC5B,OAAO,QAAQ,CAAC,oBAAoB,CAAC;IACrC,OAAO,QAAQ,CAAC,uBAAuB,CAAC;IACxC,IAAI,SAAS,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC,iBAAiB,CAAC;IAC9D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,iBAAiB,CACxB,UAA+B,EAC/B,GAAsB;IAEtB,OAAO,UAAU,CAAC,SAAS,KAAK,SAAS,IAAI,iBAAiB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,SAAuB;IACnD,MAAM,EAAE,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACzE,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,EAAE,GAAG,CAAC,CAAC;IAC9F,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,UAA+B,EAC/B,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,GAAG,GAAG,qBAAqB,UAAU,CAAC,cAAc,CAAC,WAAW,EAAE,UAAU,CAAC;IACnF,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACvC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,yBAAyB,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACnC,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC1E,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,IAAI,GAAG,CAAC,CAAC;IACxF,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,UAA+B;IACvE,OAAO,CACL,YAAY,UAAU,CAAC,QAAQ,qBAAqB,UAAU,CAAC,eAAe,IAAI;QAClF,WAAW,UAAU,CAAC,cAAc,WAAW,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,EAAE,CACjG,CAAC;AACJ,CAAC"}