@spinabot/brigade 1.22.1 → 1.24.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 (92) hide show
  1. package/README.md +1 -1
  2. package/dist/agents/agent-loop.d.ts.map +1 -1
  3. package/dist/agents/agent-loop.js +73 -3
  4. package/dist/agents/agent-loop.js.map +1 -1
  5. package/dist/agents/channels/inbound-pipeline.d.ts.map +1 -1
  6. package/dist/agents/channels/inbound-pipeline.js +6 -0
  7. package/dist/agents/channels/inbound-pipeline.js.map +1 -1
  8. package/dist/agents/claude-cli/availability.d.ts +12 -0
  9. package/dist/agents/claude-cli/availability.d.ts.map +1 -0
  10. package/dist/agents/claude-cli/availability.js +79 -0
  11. package/dist/agents/claude-cli/availability.js.map +1 -0
  12. package/dist/agents/claude-cli/catalog.d.ts +91 -0
  13. package/dist/agents/claude-cli/catalog.d.ts.map +1 -0
  14. package/dist/agents/claude-cli/catalog.js +260 -0
  15. package/dist/agents/claude-cli/catalog.js.map +1 -0
  16. package/dist/agents/claude-cli/claude-config.d.ts +38 -0
  17. package/dist/agents/claude-cli/claude-config.d.ts.map +1 -0
  18. package/dist/agents/claude-cli/claude-config.js +111 -0
  19. package/dist/agents/claude-cli/claude-config.js.map +1 -0
  20. package/dist/agents/claude-cli/register.d.ts +32 -0
  21. package/dist/agents/claude-cli/register.d.ts.map +1 -0
  22. package/dist/agents/claude-cli/register.js +68 -0
  23. package/dist/agents/claude-cli/register.js.map +1 -0
  24. package/dist/agents/claude-cli/spawn.d.ts +42 -0
  25. package/dist/agents/claude-cli/spawn.d.ts.map +1 -0
  26. package/dist/agents/claude-cli/spawn.js +179 -0
  27. package/dist/agents/claude-cli/spawn.js.map +1 -0
  28. package/dist/agents/claude-cli/stream-json.d.ts +129 -0
  29. package/dist/agents/claude-cli/stream-json.d.ts.map +1 -0
  30. package/dist/agents/claude-cli/stream-json.js +84 -0
  31. package/dist/agents/claude-cli/stream-json.js.map +1 -0
  32. package/dist/agents/claude-cli/stream.d.ts +27 -0
  33. package/dist/agents/claude-cli/stream.d.ts.map +1 -0
  34. package/dist/agents/claude-cli/stream.js +380 -0
  35. package/dist/agents/claude-cli/stream.js.map +1 -0
  36. package/dist/agents/error-classifier.d.ts +2 -2
  37. package/dist/agents/error-classifier.d.ts.map +1 -1
  38. package/dist/agents/error-classifier.js +43 -0
  39. package/dist/agents/error-classifier.js.map +1 -1
  40. package/dist/agents/model-resolution.d.ts +36 -0
  41. package/dist/agents/model-resolution.d.ts.map +1 -1
  42. package/dist/agents/model-resolution.js +59 -0
  43. package/dist/agents/model-resolution.js.map +1 -1
  44. package/dist/agents/retry-policy.d.ts.map +1 -1
  45. package/dist/agents/retry-policy.js +25 -1
  46. package/dist/agents/retry-policy.js.map +1 -1
  47. package/dist/agents/tools/sessions/shared.d.ts.map +1 -1
  48. package/dist/agents/tools/sessions/shared.js +4 -0
  49. package/dist/agents/tools/sessions/shared.js.map +1 -1
  50. package/dist/auth/auth-health.d.ts +107 -1
  51. package/dist/auth/auth-health.d.ts.map +1 -1
  52. package/dist/auth/auth-health.js +245 -2
  53. package/dist/auth/auth-health.js.map +1 -1
  54. package/dist/buildstamp.json +1 -1
  55. package/dist/cli/commands/auth.js +18 -0
  56. package/dist/cli/commands/auth.js.map +1 -1
  57. package/dist/cli/commands/doctor.d.ts.map +1 -1
  58. package/dist/cli/commands/doctor.js +46 -0
  59. package/dist/cli/commands/doctor.js.map +1 -1
  60. package/dist/cli/commands/gateway.d.ts +4 -0
  61. package/dist/cli/commands/gateway.d.ts.map +1 -1
  62. package/dist/cli/commands/gateway.js +52 -6
  63. package/dist/cli/commands/gateway.js.map +1 -1
  64. package/dist/cli/commands/login.d.ts.map +1 -1
  65. package/dist/cli/commands/login.js +107 -19
  66. package/dist/cli/commands/login.js.map +1 -1
  67. package/dist/cli/commands/secrets-audit.d.ts.map +1 -1
  68. package/dist/cli/commands/secrets-audit.js +1 -0
  69. package/dist/cli/commands/secrets-audit.js.map +1 -1
  70. package/dist/core/auth-bridge.d.ts.map +1 -1
  71. package/dist/core/auth-bridge.js +16 -0
  72. package/dist/core/auth-bridge.js.map +1 -1
  73. package/dist/core/server.d.ts.map +1 -1
  74. package/dist/core/server.js +13 -0
  75. package/dist/core/server.js.map +1 -1
  76. package/dist/logging/redact.d.ts +12 -8
  77. package/dist/logging/redact.d.ts.map +1 -1
  78. package/dist/logging/redact.js +13 -8
  79. package/dist/logging/redact.js.map +1 -1
  80. package/dist/providers/catalog.d.ts +13 -0
  81. package/dist/providers/catalog.d.ts.map +1 -1
  82. package/dist/providers/catalog.js +31 -0
  83. package/dist/providers/catalog.js.map +1 -1
  84. package/dist/system-prompt/runtime-params.d.ts +5 -0
  85. package/dist/system-prompt/runtime-params.d.ts.map +1 -1
  86. package/dist/system-prompt/runtime-params.js +2 -1
  87. package/dist/system-prompt/runtime-params.js.map +1 -1
  88. package/dist/ui/onboarding.d.ts +11 -0
  89. package/dist/ui/onboarding.d.ts.map +1 -1
  90. package/dist/ui/onboarding.js +397 -6
  91. package/dist/ui/onboarding.js.map +1 -1
  92. package/package.json +2 -1
@@ -1,12 +1,14 @@
1
1
  /**
2
2
  * Sensitive-text redactor for transcript fetches + audit logs.
3
3
  *
4
- * Used by `sessions_history` before returning transcript chunks to a
5
- * cross-session caller, and by any log line that could carry a token /
6
- * key / phone number. The redaction is opportunistic — false negatives
7
- * are acceptable (caller must still consider the visibility policy),
8
- * but false positives must be RARE so the model still gets useful
9
- * context.
4
+ * Used by the cron isolated-agent run summariser
5
+ * (`cron/isolated-agent/run-executor.ts`) its redacted stdout flows to the
6
+ * persistent run-log and to announce-delivery chat channels. NOTE:
7
+ * `sessions_history` redacts through its OWN copy in
8
+ * `agents/tools/sessions/shared.ts`, not this module. The redaction is
9
+ * opportunistic — false negatives are acceptable (caller must still consider
10
+ * the visibility policy), but false positives must be RARE so the model still
11
+ * gets useful context.
10
12
  *
11
13
  * Patterns redacted (case-insensitive where relevant):
12
14
  *
@@ -15,8 +17,10 @@
15
17
  * - AWS access keys (`AKIA…`, `ASIA…`) → `<redacted:aws-key>`
16
18
  * - GitHub PATs (`ghp_`, `gho_`, `ghu_`, `ghs_`, `ghr_` + 36 alnum) →
17
19
  * `<redacted:github-token>`
18
- * - OpenAI / Anthropic / Google AI keys (`sk-…`, `sk-ant-…`, `AIza…`) →
19
- * `<redacted:provider-key>`
20
+ * - OpenAI / Anthropic / Google AI keys (`sk-…`, `sk-ant-…`, `AIza…`,
21
+ * `AQ.…`) → `<redacted:provider-key>`. Google issues both the legacy
22
+ * `AIza…` and the newer `AQ.…` prefixes for Gemini / AI Studio keys;
23
+ * both shapes must be caught so a fresh key doesn't leak into logs.
20
24
  * - Phone numbers in `+CCNNNNNNNNNN` form (≥10 digits after `+`) →
21
25
  * `<redacted:phone>`
22
26
  * - Email addresses → `<redacted:email>`
@@ -1 +1 @@
1
- {"version":3,"file":"redact.d.ts","sourceRoot":"","sources":["../../src/logging/redact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAaH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYzD"}
1
+ {"version":3,"file":"redact.d.ts","sourceRoot":"","sources":["../../src/logging/redact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAcH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYzD"}
@@ -1,12 +1,14 @@
1
1
  /**
2
2
  * Sensitive-text redactor for transcript fetches + audit logs.
3
3
  *
4
- * Used by `sessions_history` before returning transcript chunks to a
5
- * cross-session caller, and by any log line that could carry a token /
6
- * key / phone number. The redaction is opportunistic — false negatives
7
- * are acceptable (caller must still consider the visibility policy),
8
- * but false positives must be RARE so the model still gets useful
9
- * context.
4
+ * Used by the cron isolated-agent run summariser
5
+ * (`cron/isolated-agent/run-executor.ts`) its redacted stdout flows to the
6
+ * persistent run-log and to announce-delivery chat channels. NOTE:
7
+ * `sessions_history` redacts through its OWN copy in
8
+ * `agents/tools/sessions/shared.ts`, not this module. The redaction is
9
+ * opportunistic — false negatives are acceptable (caller must still consider
10
+ * the visibility policy), but false positives must be RARE so the model still
11
+ * gets useful context.
10
12
  *
11
13
  * Patterns redacted (case-insensitive where relevant):
12
14
  *
@@ -15,8 +17,10 @@
15
17
  * - AWS access keys (`AKIA…`, `ASIA…`) → `<redacted:aws-key>`
16
18
  * - GitHub PATs (`ghp_`, `gho_`, `ghu_`, `ghs_`, `ghr_` + 36 alnum) →
17
19
  * `<redacted:github-token>`
18
- * - OpenAI / Anthropic / Google AI keys (`sk-…`, `sk-ant-…`, `AIza…`) →
19
- * `<redacted:provider-key>`
20
+ * - OpenAI / Anthropic / Google AI keys (`sk-…`, `sk-ant-…`, `AIza…`,
21
+ * `AQ.…`) → `<redacted:provider-key>`. Google issues both the legacy
22
+ * `AIza…` and the newer `AQ.…` prefixes for Gemini / AI Studio keys;
23
+ * both shapes must be caught so a fresh key doesn't leak into logs.
20
24
  * - Phone numbers in `+CCNNNNNNNNNN` form (≥10 digits after `+`) →
21
25
  * `<redacted:phone>`
22
26
  * - Email addresses → `<redacted:email>`
@@ -31,6 +35,7 @@ const PATTERNS = [
31
35
  { re: /\bgh[opusr]_[A-Za-z0-9]{36}\b/g, replacement: "<redacted:github-token>" },
32
36
  { re: /\bsk-(?:ant-)?[A-Za-z0-9_\-]{20,}\b/g, replacement: "<redacted:provider-key>" },
33
37
  { re: /\bAIza[A-Za-z0-9_\-]{35}\b/g, replacement: "<redacted:provider-key>" },
38
+ { re: /(?<![\w./\\-])AQ\.[A-Za-z0-9_-]{30,}/g, replacement: "<redacted:provider-key>" },
34
39
  { re: /\+\d{10,15}\b/g, replacement: "<redacted:phone>" },
35
40
  { re: /\b[A-Za-z0-9._%+\-]+@[A-Za-z0-9.\-]+\.[A-Za-z]{2,}\b/g, replacement: "<redacted:email>" },
36
41
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"redact.js","sourceRoot":"","sources":["../../src/logging/redact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,MAAM,QAAQ,GAA+C;IAC5D,EAAE,EAAE,EAAE,0CAA0C,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAC1F,EAAE,EAAE,EAAE,kEAAkE,EAAE,WAAW,EAAE,mBAAmB,EAAE;IAC5G,EAAE,EAAE,EAAE,8BAA8B,EAAE,WAAW,EAAE,oBAAoB,EAAE;IACzE,EAAE,EAAE,EAAE,gCAAgC,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAChF,EAAE,EAAE,EAAE,sCAAsC,EAAE,WAAW,EAAE,yBAAyB,EAAE;IACtF,EAAE,EAAE,EAAE,6BAA6B,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAC7E,EAAE,EAAE,EAAE,gBAAgB,EAAE,WAAW,EAAE,kBAAkB,EAAE;IACzD,EAAE,EAAE,EAAE,uDAAuD,EAAE,WAAW,EAAE,kBAAkB,EAAE;CAChG,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QAC1C,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAClB,OAAO,GAAG,IAAI,CAAC;YACf,GAAG,GAAG,IAAI,CAAC;QACZ,CAAC;IACF,CAAC;IACD,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"redact.js","sourceRoot":"","sources":["../../src/logging/redact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,MAAM,QAAQ,GAA+C;IAC5D,EAAE,EAAE,EAAE,0CAA0C,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAC1F,EAAE,EAAE,EAAE,kEAAkE,EAAE,WAAW,EAAE,mBAAmB,EAAE;IAC5G,EAAE,EAAE,EAAE,8BAA8B,EAAE,WAAW,EAAE,oBAAoB,EAAE;IACzE,EAAE,EAAE,EAAE,gCAAgC,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAChF,EAAE,EAAE,EAAE,sCAAsC,EAAE,WAAW,EAAE,yBAAyB,EAAE;IACtF,EAAE,EAAE,EAAE,6BAA6B,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAC7E,EAAE,EAAE,EAAE,uCAAuC,EAAE,WAAW,EAAE,yBAAyB,EAAE;IACvF,EAAE,EAAE,EAAE,gBAAgB,EAAE,WAAW,EAAE,kBAAkB,EAAE;IACzD,EAAE,EAAE,EAAE,uDAAuD,EAAE,WAAW,EAAE,kBAAkB,EAAE;CAChG,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QAC1C,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAClB,OAAO,GAAG,IAAI,CAAC;YACf,GAAG,GAAG,IAAI,CAAC;QACZ,CAAC;IACF,CAAC;IACD,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;AAC9B,CAAC"}
@@ -97,6 +97,19 @@ export interface ProviderInfo {
97
97
  }
98
98
  export declare const PROVIDERS: ProviderInfo[];
99
99
  export declare function findProvider(id: string): ProviderInfo | undefined;
100
+ /**
101
+ * Whether onboarding routes a picked provider through `ensureCustomProvider`
102
+ * (which writes `models.json` so the model resolves at gateway boot) instead of
103
+ * the plain API-key path. ANY `custom` catalog entry routes here — including the
104
+ * generic "Custom (OpenAI-compatible)" entry that has NO pre-set `baseUrl` (its
105
+ * URL is prompted for). The old gate also required `baseUrl`, which wrongly
106
+ * excluded the generic entry and left its model unresolvable at boot. Kept here
107
+ * (not in onboarding.ts) so tests assert the REAL predicate the gate uses
108
+ * without importing the TUI module — see onboarding-custom-url.test.ts.
109
+ */
110
+ export declare function routesToCustomProvider(p: ProviderInfo | undefined): p is ProviderInfo & {
111
+ custom: true;
112
+ };
100
113
  /**
101
114
  * Look for the provider's API key across `envVar` and any `envVarFallbacks`,
102
115
  * in order. Returns the first non-empty value found, or `undefined` if none
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/providers/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,YAAY;IAC5B,iGAAiG;IACjG,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC;IACf,yFAAyF;IACzF,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oGAAoG;IACpG,YAAY,CAAC,EAAE;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1D;;;;;OAKG;IACH,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD;;;;;OAKG;IACH,GAAG,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,CAAC;IAClD,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,SAAS,EAAE,YAAY,EAwLnC,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAEjE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAE7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CAC1C,QAAQ,EAAE,YAAY,GACpB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAW7C"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/providers/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,YAAY;IAC5B,iGAAiG;IACjG,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC;IACf,yFAAyF;IACzF,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oGAAoG;IACpG,YAAY,CAAC,EAAE;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1D;;;;;OAKG;IACH,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD;;;;;OAKG;IACH,GAAG,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,CAAC;IAClD,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,SAAS,EAAE,YAAY,EA0MnC,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAEjE;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS,GAAG,CAAC,IAAI,YAAY,GAAG;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,CAExG;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAE7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CAC1C,QAAQ,EAAE,YAAY,GACpB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAW7C"}
@@ -37,6 +37,24 @@ export const PROVIDERS = [
37
37
  subscription: { oauthProviderId: "anthropic", label: "Log in with Claude Pro / Max" },
38
38
  cliLogin: { read: "claude", label: "Use your existing Claude Code login" },
39
39
  },
40
+ {
41
+ // The claude-cli backend: Brigade drives the installed `claude` binary as
42
+ // the inference transport, so a turn bills against the Claude subscription
43
+ // EXACTLY like the Claude Code CLI / IDE extension (the binary uses its own
44
+ // login; Anthropic never routes it into the metered "extra usage" tier the
45
+ // raw-HTTP OAuth path can hit). No key + no browser flow here — the binary
46
+ // authenticates itself; if it isn't logged in, the operator runs
47
+ // `claude` once (or `claude /login`). `local:true` makes onboarding skip
48
+ // key entry and validate the binary instead; models are synthesized (see
49
+ // src/agents/claude-cli), so there's no catalog/models.json entry to seed.
50
+ id: "claude-cli",
51
+ name: "Claude (via Claude Code CLI)",
52
+ description: "Run on your Claude subscription through the installed claude binary — no key, no extra-usage",
53
+ keyUrl: "https://claude.ai/download",
54
+ envVar: "",
55
+ noAuth: true,
56
+ local: true,
57
+ },
40
58
  {
41
59
  id: "openai",
42
60
  name: "OpenAI",
@@ -199,6 +217,19 @@ export const PROVIDERS = [
199
217
  export function findProvider(id) {
200
218
  return PROVIDERS.find((p) => p.id === id);
201
219
  }
220
+ /**
221
+ * Whether onboarding routes a picked provider through `ensureCustomProvider`
222
+ * (which writes `models.json` so the model resolves at gateway boot) instead of
223
+ * the plain API-key path. ANY `custom` catalog entry routes here — including the
224
+ * generic "Custom (OpenAI-compatible)" entry that has NO pre-set `baseUrl` (its
225
+ * URL is prompted for). The old gate also required `baseUrl`, which wrongly
226
+ * excluded the generic entry and left its model unresolvable at boot. Kept here
227
+ * (not in onboarding.ts) so tests assert the REAL predicate the gate uses
228
+ * without importing the TUI module — see onboarding-custom-url.test.ts.
229
+ */
230
+ export function routesToCustomProvider(p) {
231
+ return !!p?.custom;
232
+ }
202
233
  /**
203
234
  * Look for the provider's API key across `envVar` and any `envVarFallbacks`,
204
235
  * in order. Returns the first non-empty value found, or `undefined` if none
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/providers/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAiFH,MAAM,CAAC,MAAM,SAAS,GAAmB;IACxC;QACC,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,wCAAwC;QACrD,MAAM,EAAE,6CAA6C;QACrD,MAAM,EAAE,mBAAmB;QAC3B,yEAAyE;QACzE,2EAA2E;QAC3E,4EAA4E;QAC5E,iDAAiD;QACjD,eAAe,EAAE,CAAC,uBAAuB,CAAC;KAC1C;IACD;QACC,2EAA2E;QAC3E,yEAAyE;QACzE,0EAA0E;QAC1E,EAAE,EAAE,aAAa;QACjB,UAAU,EAAE,WAAW;QACvB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,qDAAqD;QAClE,MAAM,EAAE,mBAAmB;QAC3B,MAAM,EAAE,EAAE;QACV,YAAY,EAAE,EAAE,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,8BAA8B,EAAE;QACrF,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,qCAAqC,EAAE;KAC1E;IACD;QACC,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,eAAe;QAC5B,MAAM,EAAE,sCAAsC;QAC9C,MAAM,EAAE,gBAAgB;KACxB;IACD;QACC,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,iCAAiC;QAC9C,MAAM,EAAE,oCAAoC;QAC5C,MAAM,EAAE,gBAAgB;KACxB;IACD;QACC,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,0BAA0B;QACvC,MAAM,EAAE,qCAAqC;QAC7C,MAAM,EAAE,oBAAoB;KAC5B;IACD;QACC,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,yCAAyC;QACtD,MAAM,EAAE,+BAA+B;QACvC,MAAM,EAAE,cAAc;KACtB;IACD;QACC,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,0BAA0B;QACvC,MAAM,EAAE,2BAA2B;QACnC,MAAM,EAAE,kBAAkB;KAC1B;IACD;QACC,EAAE,EAAE,KAAK;QACT,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,aAAa;QAC1B,MAAM,EAAE,sBAAsB;QAC9B,MAAM,EAAE,aAAa;KACrB;IACD;QACC,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,wBAAwB;QACrC,MAAM,EAAE,wCAAwC;QAChD,MAAM,EAAE,kBAAkB;KAC1B;IACD;QACC,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,oCAAoC;QACjD,MAAM,EAAE,qCAAqC;QAC7C,MAAM,EAAE,iBAAiB;KACzB;IACD;QACC,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,wCAAwC;QACrD,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE,EAAE;QACV,YAAY,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,EAAE,gCAAgC,EAAE;QAC1F,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,+BAA+B,EAAE;KACnE;IACD;QACC,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,qDAAqD;QAClE,MAAM,EAAE,qCAAqC;QAC7C,MAAM,EAAE,EAAE;QACV,YAAY,EAAE,EAAE,eAAe,EAAE,gBAAgB,EAAE,KAAK,EAAE,4BAA4B,EAAE;KACxF;IACD;QACC,EAAE,EAAE,KAAK;QACT,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,mCAAmC;QAChD,MAAM,EAAE,wCAAwC;QAChD,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,IAAI;QACZ,GAAG,EAAE,oBAAoB;QACzB,OAAO,EAAE,gCAAgC;QACzC,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC;KAC7C;IACD;QACC,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,8BAA8B;QAC3C,MAAM,EAAE,+CAA+C;QACvD,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,IAAI;QACZ,GAAG,EAAE,oBAAoB;QACzB,OAAO,EAAE,mCAAmC;QAC5C,MAAM,EAAE,CAAC,gBAAgB,EAAE,WAAW,CAAC;KACvC;IACD;QACC,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,gCAAgC;QAC7C,MAAM,EAAE,0CAA0C;QAClD,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,IAAI;QACZ,GAAG,EAAE,oBAAoB;QACzB,OAAO,EAAE,oDAAoD;QAC7D,MAAM,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;KAChD;IACD;QACC,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EAAE,sBAAsB;QACnC,MAAM,EAAE,6BAA6B;QACrC,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,IAAI;QACZ,GAAG,EAAE,oBAAoB;QACzB,OAAO,EAAE,kCAAkC;QAC3C,MAAM,EAAE,CAAC,cAAc,EAAE,YAAY,CAAC;KACtC;IACD;QACC,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,uBAAuB;QACpC,MAAM,EAAE,wCAAwC;QAChD,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,IAAI;QACZ,GAAG,EAAE,oBAAoB;QACzB,OAAO,EAAE,oCAAoC;QAC7C,MAAM,EAAE,CAAC,mBAAmB,EAAE,iBAAiB,CAAC;KAChD;IACD;QACC,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,6EAA6E;QAC1F,MAAM,EAAE,0BAA0B;QAClC,MAAM,EAAE,gBAAgB;QACxB,eAAe,EAAE,CAAC,oBAAoB,EAAE,aAAa,CAAC;QACtD,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,IAAI,EAAE,oDAAoD;QACtE,GAAG,EAAE,oBAAoB;QACzB,OAAO,EAAE,qCAAqC;KAC9C;IACD;QACC,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,gDAAgD;QAC7D,MAAM,EAAE,6BAA6B;QACrC,MAAM,EAAE,EAAE,EAAE,aAAa;QACzB,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,wBAAwB;KACjC;IACD;QACC,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,4BAA4B;QAClC,WAAW,EAAE,uEAAuE;QACpF,MAAM,EAAE,GAAG;QACX,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,IAAI;KACZ;CACD,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,EAAU;IACtC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAsB;IACxD,OAAO,2BAA2B,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;AACrD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,2BAA2B,CAC1C,QAAsB;IAEtB,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC;IAChC,IAAI,OAAO,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACtF,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,eAAe,IAAI,EAAE,EAAE,CAAC;QACvD,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACvF,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/providers/catalog.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,11 @@ export interface RuntimeParams {
5
5
  hostName: string;
6
6
  platform: NodeJS.Platform;
7
7
  arch: string;
8
+ /** Operator override (BRIGADE_HOST_ENV) for the DISPLAYED host tag in the
9
+ * runtime line — e.g. "windows" or "prod-container". Display-only: the
10
+ * `platform` field above stays the real `process.platform`, so behavioural
11
+ * branching (e.g. the Windows shell-hygiene guidance) is unaffected. */
12
+ hostEnvLabel?: string;
8
13
  nodeVersion: string;
9
14
  shell: string | undefined;
10
15
  modelLabel: string;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-params.d.ts","sourceRoot":"","sources":["../../src/system-prompt/runtime-params.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,MAAM,EAAE,MAAM,CAAC;IACf;;yDAEqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAoB5E;AAMD,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAe1D;AAID,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAS7D;AAcD,wBAAgB,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CA0B5D"}
1
+ {"version":3,"file":"runtime-params.d.ts","sourceRoot":"","sources":["../../src/system-prompt/runtime-params.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb;;;6EAGyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,MAAM,EAAE,MAAM,CAAC;IACf;;yDAEqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAqB5E;AAMD,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAe1D;AAID,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAS7D;AAcD,wBAAgB,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CA0B5D"}
@@ -11,6 +11,7 @@ export function resolveRuntimeParams(args) {
11
11
  hostName: safeHostName(),
12
12
  platform: process.platform,
13
13
  arch: process.arch,
14
+ hostEnvLabel: process.env.BRIGADE_HOST_ENV?.trim() || undefined,
14
15
  nodeVersion: process.versions.node,
15
16
  shell: process.env.SHELL ?? process.env.ComSpec,
16
17
  modelLabel: args.modelLabel,
@@ -30,7 +31,7 @@ export function formatRuntimeLine(p) {
30
31
  const parts = [
31
32
  `agent=${p.agentId}`,
32
33
  `host=${p.hostName}`,
33
- `os=${p.platform}/${p.arch}`,
34
+ `os=${p.hostEnvLabel ?? `${p.platform}/${p.arch}`}`,
34
35
  `node=${p.nodeVersion}`,
35
36
  `shell=${p.shell ?? "?"}`,
36
37
  `tz=${p.timezone}`,
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-params.js","sourceRoot":"","sources":["../../src/system-prompt/runtime-params.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-params.js","sourceRoot":"","sources":["../../src/system-prompt/runtime-params.ts"],"names":[],"mappings":"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"}
@@ -98,6 +98,17 @@ export declare function ensureApiKey(tui: TUI, authStorage: AuthStorage, provide
98
98
  * provider.
99
99
  */
100
100
  export declare function ensureSubscriptionLogin(tui: TUI, authStorage: AuthStorage, provider: ProviderInfo): Promise<"ok" | "back">;
101
+ /**
102
+ * Connect the claude-cli backend end to end — no terminal, no token paste:
103
+ * 1. Ensure the `claude` binary is installed (offer to `npm i -g` it).
104
+ * 2. Ensure a login exists — if not, drive the SAME browser OAuth Brigade uses
105
+ * for Claude Pro/Max and write the result into Brigade's OWN Claude config
106
+ * dir (a dedicated grant, isolated from the operator's personal ~/.claude).
107
+ * Turns then run on the Claude subscription via the binary (no extra-usage).
108
+ *
109
+ * Returns "ok" to proceed to model selection, or "back" to re-pick the provider.
110
+ */
111
+ export declare function ensureClaudeCli(tui: TUI, authStorage: AuthStorage): Promise<"ok" | "back">;
101
112
  /**
102
113
  * Render an API key in a form safe to splat to the terminal/log: shows the
103
114
  * first 4 and last 4 characters separated by an ellipsis, e.g. `sk-o…2b5x`.
@@ -1 +1 @@
1
- {"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../src/ui/onboarding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAYH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAA+D,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAa1G,OAAO,EAKN,KAAK,YAAY,EACjB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAWpF,MAAM,WAAW,gBAAgB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB;+DAC2D;IAC3D,OAAO,EAAE,iBAAiB,CAAC;CAC3B;AAiGD,MAAM,WAAW,iBAAiB;IACjC;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,eAAe,CAAC,EAAE,WAAW,GAAG,KAAK,CAAC;IACtC;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED,wBAAsB,aAAa,CAClC,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAC5B,IAAI,GAAE,iBAAsB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,CA8N3B;AA4GD;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CACjC,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,MAAM,EAClB,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,WAAW,GAAG,KAAK,CAAA;CAAO,GACzE,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAoLxB;AAkND;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CAC5C,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,YAAY,GACpB,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CA+MxB;AA4WD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CASpG"}
1
+ {"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../src/ui/onboarding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAYH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAA+D,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAgB1G,OAAO,EAMN,KAAK,YAAY,EACjB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAWpF,MAAM,WAAW,gBAAgB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB;+DAC2D;IAC3D,OAAO,EAAE,iBAAiB,CAAC;CAC3B;AAiGD,MAAM,WAAW,iBAAiB;IACjC;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,eAAe,CAAC,EAAE,WAAW,GAAG,KAAK,CAAC;IACtC;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED,wBAAsB,aAAa,CAClC,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAC5B,IAAI,GAAE,iBAAsB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,CA4P3B;AAuHD;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CACjC,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,MAAM,EAClB,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,WAAW,GAAG,KAAK,CAAA;CAAO,GACzE,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAoLxB;AAkND;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CAC5C,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,YAAY,GACpB,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CA+MxB;AAQD;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CA4GhG;AA+lBD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CASpG"}