@capgo/cli 8.43.2 → 8.45.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.
@@ -142,6 +142,8 @@ interface CapgoConfig {
142
142
  hostWeb: string;
143
143
  hostFilesApi: string;
144
144
  hostApi: string;
145
+ minCliVersion?: string;
146
+ minCliVersionReason?: string;
145
147
  }
146
148
  export declare function getRemoteConfig(silent?: boolean, signal?: AbortSignal): Promise<{
147
149
  supaHost?: string;
@@ -150,6 +152,8 @@ export declare function getRemoteConfig(silent?: boolean, signal?: AbortSignal):
150
152
  hostWeb: string;
151
153
  hostFilesApi: string;
152
154
  hostApi: string;
155
+ minCliVersion?: string;
156
+ minCliVersionReason?: string;
153
157
  }>;
154
158
  interface CapgoFilesConfig {
155
159
  partialUpload: boolean;
@@ -520,7 +524,10 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
520
524
  onboarding_completed_at?: string | null;
521
525
  owner_org: string;
522
526
  retention?: number;
523
- stats_refresh_requested_at?: string | null;
527
+ stats_refresh_requested_at? /**
528
+ * Channel name
529
+ * example: "waitlist"
530
+ */: string | null;
524
531
  stats_updated_at?: string | null;
525
532
  transfer_history?: import("./types/supabase.types").Json[] | null;
526
533
  updated_at?: string | null;
@@ -2867,13 +2874,7 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
2867
2874
  future_uuid?: string;
2868
2875
  id?: number;
2869
2876
  invite_magic_string?: string;
2870
- last_name
2871
- /**
2872
- * Calculate checksums for iOS and Android native code in a dependency folder.
2873
- * Includes both native source files and platform configuration files
2874
- * (podspec, Package.swift, build.gradle) that define platform dependencies.
2875
- */
2876
- ?: string;
2877
+ last_name?: string;
2877
2878
  org_id?: string;
2878
2879
  rbac_role_name?: string;
2879
2880
  updated_at?: string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@capgo/cli",
3
3
  "type": "module",
4
- "version": "8.43.2",
4
+ "version": "8.45.0",
5
5
  "description": "A CLI to upload to capgo servers",
6
6
  "author": "Martin martin@capgo.app",
7
7
  "license": "Apache 2.0",
@@ -76,6 +76,7 @@
76
76
  "test:native-dependencies": "bun test/test-native-dependencies.mjs && bun test/test-get-remote-dependencies.mjs",
77
77
  "test:package-json-guard": "bun test/test-package-json-guard.mjs",
78
78
  "test:credentials": "bun test/test-credentials.mjs",
79
+ "test:credentials-export": "bun test/test-credentials-export.mjs",
79
80
  "test:asc-key-protocol": "bun test/test-asc-key-protocol.mjs",
80
81
  "test:credentials-validation": "bun test/test-credentials-validation.mjs",
81
82
  "test:android-service-account-validation": "bun test/test-android-service-account-validation.mjs",
@@ -89,6 +90,7 @@
89
90
  "test:v2-event-migration": "bun test/test-v2-event-migration.mjs",
90
91
  "test:analytics": "bun test/test-analytics.mjs",
91
92
  "test:cli-headers": "bun test/test-cli-headers.mjs",
93
+ "test:min-cli-version": "bun test/test-min-cli-version.mjs",
92
94
  "test:authenticated-command-invocation": "bun test/test-authenticated-command-invocation.mjs",
93
95
  "test:analytics-error-category": "bun test/test-analytics-error-category.mjs",
94
96
  "test:analytics-org-resolver": "bun test/test-analytics-org-resolver.mjs",
@@ -172,7 +174,7 @@
172
174
  "test:android-version": "bun test/test-android-version.mjs",
173
175
  "test:platform-flow-contract": "bun test/test-platform-flow-contract.mjs",
174
176
  "test:tail-engine-shared": "bun test/test-tail-engine-shared.mjs",
175
- "test": "bun run build && bun run test:helper-dce && bun run test:version-detection:setup && bun run test:bundle && bun run test:bundle-validation && bun run test:functional && bun run test:semver && bun run test:auto-bump-version && bun run test:auto-bump-ai-diff && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:fail-on-incompatible && bun run test:native-dependencies && bun run test:package-json-guard && bun run test:credentials && bun run test:credentials-validation && bun run test:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:cli-headers && bun run test:authenticated-command-invocation && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:supabase-perf && bun run test:preview-qr && bun run test:app-set-options && bun run test:mcp-analytics && bun run test:mcp-instructions && bun run test:mcp-live-update-onboarding && bun run test:mcp-stdout-guard && bun run test:mcp-platform-select && bun run test:mcp-explain-scopes && bun run test:mcp-oauth-reopen && bun run test:mcp-broker-oauth && bun run test:mcp-broker-session && bun run test:mcp-credentials-manage && bun run test:mcp-resume-prompt && bun run test:mcp-build-job && bun run test:mcp-build-tools && bun run test:app-created-source && bun run test:app-list-output-text && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:cli-recovery && bun run test:create-supabase-client && bun run test:build-platform-selection && bun run test:builder-project-discovery && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-monorepo-targeting && bun run test:init-app-conflict && bun run test:channel-add-exists && bun run test:wait-log && bun run test:init-guardrails && bun run test:init-replay && bun run test:init-telemetry && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:mcp-no-key-handshake && bun run test:auth-session && bun run test:version-detection && bun run test:platform-paths && bun run test:project-type-detection && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:asc-key-protocol && bun run test:apple-api-import-helpers && bun run test:apple-api-verify-key && bun run test:bundle-id-detector && bun run test:apple-api-app-list && bun run test:app-verification && bun run test:pbxproj-parser && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:cicd-failure-help && bun run test:ai-sse-parser && bun run test:ai-render-markdown && bun run test:ai-stream-markdown && bun run test:ai-onboarding-mode && bun run test:ai-fit && bun run test:platform-layout && bun run test:frame-fit && bun run test:onboarding-min-size && bun run test:min-size-gate && bun run test:shell-size-gate && bun run test:build-log-sanitize && bun run test:build-output-viewport && bun run test:diff-viewer-viewport && bun run test:build-complete-exit && bun run test:ai-analyze-stream && bun run test:support-mailto && bun run test:support-redact && bun run test:support-internal-log && bun run test:support-help-menu && bun run test:support-contact && bun run test:support-upload-prompt && bun run test:support-bundle-files && bun run test:self-update && bun run test:update-prompt && bun run test:apple-api-cert-create && bun run test:android-tail-engine && bun run test:android-tail-render && bun run test:android-tail-routing && bun run test:dev-gate-stripped && bun run test:frame-fit-ios-shared && bun run test:ios-confirm-app-id && bun run test:ios-create-new && bun run test:ios-e2e && bun run test:ios-flow-contract && bun run test:ios-import-discovery && bun run test:ios-import-export && bun run test:ios-import-pickers && bun run test:ios-import-recovery && bun run test:ios-recovery && bun run test:ios-resume && bun run test:ios-tail-handoff && bun run test:ios-tui-render && bun run test:p8-error && bun run test:ios-tui-routing && bun run test:ios-updater-sync-validation && bun run test:ios-verify-app && bun run test:ios-marketing-version && bun run test:android-version && bun run test:platform-flow-contract && bun run test:tail-engine-shared && bun run test:prescan && bun run test:android-reporting-api && bun run test:android-app-verification && bun run test:android-rename && bun run test:appflow-auth && bun run test:appflow-api-map && bun run test:appflow-validate && bun run test:appflow-flow && bun run test:appflow-gapfill && bun run test:appflow-engine && bun run test:appflow-tail && bun run test:appflow-fetch && bun run test:appflow-sa-decode && bun run test:app-permission-helper && bun run test:2fa-compliance-network && bun run test:organization-set-api-host && bun run test:trial-warning && bun run test:plan-validation",
177
+ "test": "bun run build && bun run test:helper-dce && bun run test:version-detection:setup && bun run test:bundle && bun run test:bundle-validation && bun run test:functional && bun run test:semver && bun run test:auto-bump-version && bun run test:auto-bump-ai-diff && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:fail-on-incompatible && bun run test:native-dependencies && bun run test:package-json-guard && bun run test:credentials && bun run test:credentials-export && bun run test:credentials-validation && bun run test:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:cli-headers && bun run test:min-cli-version && bun run test:authenticated-command-invocation && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:supabase-perf && bun run test:preview-qr && bun run test:app-set-options && bun run test:mcp-analytics && bun run test:mcp-instructions && bun run test:mcp-live-update-onboarding && bun run test:mcp-stdout-guard && bun run test:mcp-platform-select && bun run test:mcp-explain-scopes && bun run test:mcp-oauth-reopen && bun run test:mcp-broker-oauth && bun run test:mcp-broker-session && bun run test:mcp-credentials-manage && bun run test:mcp-resume-prompt && bun run test:mcp-build-job && bun run test:mcp-build-tools && bun run test:app-created-source && bun run test:app-list-output-text && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:cli-recovery && bun run test:create-supabase-client && bun run test:build-platform-selection && bun run test:builder-project-discovery && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-monorepo-targeting && bun run test:init-app-conflict && bun run test:channel-add-exists && bun run test:wait-log && bun run test:init-guardrails && bun run test:init-replay && bun run test:init-telemetry && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:mcp-no-key-handshake && bun run test:auth-session && bun run test:version-detection && bun run test:platform-paths && bun run test:project-type-detection && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:asc-key-protocol && bun run test:apple-api-import-helpers && bun run test:apple-api-verify-key && bun run test:bundle-id-detector && bun run test:apple-api-app-list && bun run test:app-verification && bun run test:pbxproj-parser && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:cicd-failure-help && bun run test:ai-sse-parser && bun run test:ai-render-markdown && bun run test:ai-stream-markdown && bun run test:ai-onboarding-mode && bun run test:ai-fit && bun run test:platform-layout && bun run test:frame-fit && bun run test:onboarding-min-size && bun run test:min-size-gate && bun run test:shell-size-gate && bun run test:build-log-sanitize && bun run test:build-output-viewport && bun run test:diff-viewer-viewport && bun run test:build-complete-exit && bun run test:ai-analyze-stream && bun run test:support-mailto && bun run test:support-redact && bun run test:support-internal-log && bun run test:support-help-menu && bun run test:support-contact && bun run test:support-upload-prompt && bun run test:support-bundle-files && bun run test:self-update && bun run test:update-prompt && bun run test:apple-api-cert-create && bun run test:android-tail-engine && bun run test:android-tail-render && bun run test:android-tail-routing && bun run test:dev-gate-stripped && bun run test:frame-fit-ios-shared && bun run test:ios-confirm-app-id && bun run test:ios-create-new && bun run test:ios-e2e && bun run test:ios-flow-contract && bun run test:ios-import-discovery && bun run test:ios-import-export && bun run test:ios-import-pickers && bun run test:ios-import-recovery && bun run test:ios-recovery && bun run test:ios-resume && bun run test:ios-tail-handoff && bun run test:ios-tui-render && bun run test:p8-error && bun run test:ios-tui-routing && bun run test:ios-updater-sync-validation && bun run test:ios-verify-app && bun run test:ios-marketing-version && bun run test:android-version && bun run test:platform-flow-contract && bun run test:tail-engine-shared && bun run test:prescan && bun run test:android-reporting-api && bun run test:android-app-verification && bun run test:android-rename && bun run test:appflow-auth && bun run test:appflow-api-map && bun run test:appflow-validate && bun run test:appflow-flow && bun run test:appflow-gapfill && bun run test:appflow-engine && bun run test:appflow-tail && bun run test:appflow-fetch && bun run test:appflow-sa-decode && bun run test:app-permission-helper && bun run test:2fa-compliance-network && bun run test:organization-set-api-host && bun run test:trial-warning && bun run test:plan-validation",
176
178
  "test:build-platform-selection": "bun test/test-build-platform-selection.mjs",
177
179
  "test:builder-project-discovery": "bun test/test-builder-project-discovery.mjs",
178
180
  "test:ai-log-capture": "bun test/test-ai-log-capture.mjs",
@@ -261,6 +261,25 @@ npx @capgo/cli build credentials save --platform android \
261
261
  - `--skip-build-number-bump`, `--no-skip-build-number-bump`
262
262
  - Supports the same iOS and Android credential fields as `build credentials save`.
263
263
 
264
+ ### `build credentials export <VARIABLE>`
265
+
266
+ - Exports one value from saved Builder credentials only; environment variables are never used.
267
+ - Requires `--app-id <APP_ID>`.
268
+ - Requires exactly one output mode:
269
+ - `--raw` writes only the exact stored value to stdout, with no trailing newline. Failures go to stderr and exit with status `1`.
270
+ - `--file <PATH>` creates a new `0600` file and never overwrites an existing path. Interactive runs prompt before decoding values that look like Base64; `--decode-base64` forces decoding. A negative response or non-interactive run preserves the stored text.
271
+ - Use `--local` or `--global` when the app has saved credentials in both stores. Use `--platform ios|android` when the value is ambiguous across platforms.
272
+
273
+ ```bash
274
+ # Exact value for a CI secret or pipe: no newline is added.
275
+ npx @capgo/cli@latest build credentials export P12_PASSWORD \
276
+ --app-id com.example.app --platform ios --raw
277
+
278
+ # Create a new decoded keystore file; existing paths are refused.
279
+ npx @capgo/cli@latest build credentials export ANDROID_KEYSTORE_FILE \
280
+ --app-id com.example.app --platform android --file ./release.keystore --decode-base64
281
+ ```
282
+
264
283
  ### `build credentials migrate`
265
284
 
266
285
  - Example: `npx @capgo/cli build credentials migrate --platform ios`