anypick 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +589 -0
- package/dist/adapters.d.ts +4 -0
- package/dist/adapters.d.ts.map +1 -0
- package/dist/adapters.js +2 -0
- package/dist/catalog/model-fetch.d.ts +34 -0
- package/dist/catalog/model-fetch.d.ts.map +1 -0
- package/dist/catalog/model-fetch.js +99 -0
- package/dist/catalog/model-fetch.js.map +1 -0
- package/dist/catalog/providers.d.ts +42 -0
- package/dist/catalog/providers.d.ts.map +1 -0
- package/dist/catalog/providers.js +424 -0
- package/dist/catalog/providers.js.map +1 -0
- package/dist/cli/bootstrap.d.ts +3 -0
- package/dist/cli/bootstrap.d.ts.map +1 -0
- package/dist/cli/bootstrap.js +78 -0
- package/dist/cli/bootstrap.js.map +1 -0
- package/dist/cli/commands.d.ts +29 -0
- package/dist/cli/commands.d.ts.map +1 -0
- package/dist/cli/commands.js +1043 -0
- package/dist/cli/commands.js.map +1 -0
- package/dist/cli/completion.d.ts +6 -0
- package/dist/cli/completion.d.ts.map +1 -0
- package/dist/cli/completion.js +202 -0
- package/dist/cli/completion.js.map +1 -0
- package/dist/cli/errors.d.ts +20 -0
- package/dist/cli/errors.d.ts.map +1 -0
- package/dist/cli/errors.js +47 -0
- package/dist/cli/errors.js.map +1 -0
- package/dist/cli/format.d.ts +6 -0
- package/dist/cli/format.d.ts.map +1 -0
- package/dist/cli/format.js +75 -0
- package/dist/cli/format.js.map +1 -0
- package/dist/cli/help.d.ts +6 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +66 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/interactive-accounts.d.ts +3 -0
- package/dist/cli/interactive-accounts.d.ts.map +1 -0
- package/dist/cli/interactive-accounts.js +86 -0
- package/dist/cli/interactive-accounts.js.map +1 -0
- package/dist/cli/interactive-maintenance.d.ts +4 -0
- package/dist/cli/interactive-maintenance.d.ts.map +1 -0
- package/dist/cli/interactive-maintenance.js +30 -0
- package/dist/cli/interactive-maintenance.js.map +1 -0
- package/dist/cli/interactive.d.ts +14 -0
- package/dist/cli/interactive.d.ts.map +1 -0
- package/dist/cli/interactive.js +242 -0
- package/dist/cli/interactive.js.map +1 -0
- package/dist/cli/launch-client.d.ts +18 -0
- package/dist/cli/launch-client.d.ts.map +1 -0
- package/dist/cli/launch-client.js +117 -0
- package/dist/cli/launch-client.js.map +1 -0
- package/dist/cli/launcher-model.d.ts +64 -0
- package/dist/cli/launcher-model.d.ts.map +1 -0
- package/dist/cli/launcher-model.js +200 -0
- package/dist/cli/launcher-model.js.map +1 -0
- package/dist/cli/launcher-render.d.ts +22 -0
- package/dist/cli/launcher-render.d.ts.map +1 -0
- package/dist/cli/launcher-render.js +113 -0
- package/dist/cli/launcher-render.js.map +1 -0
- package/dist/cli/launcher.d.ts +27 -0
- package/dist/cli/launcher.d.ts.map +1 -0
- package/dist/cli/launcher.js +93 -0
- package/dist/cli/launcher.js.map +1 -0
- package/dist/cli/local-health.d.ts +17 -0
- package/dist/cli/local-health.d.ts.map +1 -0
- package/dist/cli/local-health.js +31 -0
- package/dist/cli/local-health.js.map +1 -0
- package/dist/cli/plugin-commands.d.ts +4 -0
- package/dist/cli/plugin-commands.d.ts.map +1 -0
- package/dist/cli/plugin-commands.js +160 -0
- package/dist/cli/plugin-commands.js.map +1 -0
- package/dist/cli/primary.d.ts +18 -0
- package/dist/cli/primary.d.ts.map +1 -0
- package/dist/cli/primary.js +593 -0
- package/dist/cli/primary.js.map +1 -0
- package/dist/cli/render-util.d.ts +24 -0
- package/dist/cli/render-util.d.ts.map +1 -0
- package/dist/cli/render-util.js +58 -0
- package/dist/cli/render-util.js.map +1 -0
- package/dist/cli/ux.d.ts +43 -0
- package/dist/cli/ux.d.ts.map +1 -0
- package/dist/cli/ux.js +114 -0
- package/dist/cli/ux.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +35 -0
- package/dist/cli.js.map +1 -0
- package/dist/clients/claude-client-apply.d.ts +8 -0
- package/dist/clients/claude-client-apply.d.ts.map +1 -0
- package/dist/clients/claude-client-apply.js +108 -0
- package/dist/clients/claude-client-apply.js.map +1 -0
- package/dist/clients/claude-code.d.ts +5 -0
- package/dist/clients/claude-code.d.ts.map +1 -0
- package/dist/clients/claude-code.js +189 -0
- package/dist/clients/claude-code.js.map +1 -0
- package/dist/clients/claude-settings-guard.d.ts +18 -0
- package/dist/clients/claude-settings-guard.d.ts.map +1 -0
- package/dist/clients/codex-desktop-catalog.d.ts +67 -0
- package/dist/clients/codex-desktop-catalog.d.ts.map +1 -0
- package/dist/clients/codex-desktop-catalog.js +212 -0
- package/dist/clients/codex-desktop-catalog.js.map +1 -0
- package/dist/clients/codex.d.ts +181 -0
- package/dist/clients/codex.d.ts.map +1 -0
- package/dist/clients/codex.js +783 -0
- package/dist/clients/codex.js.map +1 -0
- package/dist/clients/env-files.d.ts +14 -0
- package/dist/clients/env-files.d.ts.map +1 -0
- package/dist/clients/env-files.js +50 -0
- package/dist/clients/env-files.js.map +1 -0
- package/dist/clients/gemini-client-utils.d.ts +4 -0
- package/dist/clients/gemini-client-utils.d.ts.map +1 -0
- package/dist/clients/gemini-client-utils.js +33 -0
- package/dist/clients/gemini-client-utils.js.map +1 -0
- package/dist/clients/gemini.d.ts +16 -0
- package/dist/clients/gemini.d.ts.map +1 -0
- package/dist/clients/gemini.js +233 -0
- package/dist/clients/gemini.js.map +1 -0
- package/dist/clients/index.d.ts +14 -0
- package/dist/clients/index.d.ts.map +1 -0
- package/dist/clients/index.js +18 -0
- package/dist/clients/index.js.map +1 -0
- package/dist/clients/isolation.d.ts +28 -0
- package/dist/clients/isolation.d.ts.map +1 -0
- package/dist/clients/isolation.js +131 -0
- package/dist/clients/isolation.js.map +1 -0
- package/dist/clients/kiro.d.ts +10 -0
- package/dist/clients/kiro.d.ts.map +1 -0
- package/dist/clients/kiro.js +168 -0
- package/dist/clients/kiro.js.map +1 -0
- package/dist/clients/model-roles.d.ts +58 -0
- package/dist/clients/model-roles.d.ts.map +1 -0
- package/dist/clients/model-roles.js +139 -0
- package/dist/clients/model-roles.js.map +1 -0
- package/dist/clients/registry.d.ts +7 -0
- package/dist/clients/registry.d.ts.map +1 -0
- package/dist/clients/registry.js +16 -0
- package/dist/clients/registry.js.map +1 -0
- package/dist/clients/resolve.d.ts +27 -0
- package/dist/clients/resolve.d.ts.map +1 -0
- package/dist/clients/resolve.js +49 -0
- package/dist/clients/resolve.js.map +1 -0
- package/dist/core/account-codec.d.ts +32 -0
- package/dist/core/account-codec.d.ts.map +1 -0
- package/dist/core/account-codec.js +134 -0
- package/dist/core/account-codec.js.map +1 -0
- package/dist/core/account-transfer.d.ts +20 -0
- package/dist/core/account-transfer.d.ts.map +1 -0
- package/dist/core/account-transfer.js +136 -0
- package/dist/core/account-transfer.js.map +1 -0
- package/dist/core/activation-executor.d.ts +72 -0
- package/dist/core/activation-executor.d.ts.map +1 -0
- package/dist/core/activation-executor.js +690 -0
- package/dist/core/activation-executor.js.map +1 -0
- package/dist/core/activation-models.d.ts +6 -0
- package/dist/core/activation-models.d.ts.map +1 -0
- package/dist/core/activation-models.js +33 -0
- package/dist/core/activation-models.js.map +1 -0
- package/dist/core/activation-planner.d.ts +38 -0
- package/dist/core/activation-planner.d.ts.map +1 -0
- package/dist/core/activation-planner.js +248 -0
- package/dist/core/activation-planner.js.map +1 -0
- package/dist/core/activation-protocol.d.ts +3 -0
- package/dist/core/activation-protocol.d.ts.map +1 -0
- package/dist/core/activation-protocol.js +9 -0
- package/dist/core/activation-protocol.js.map +1 -0
- package/dist/core/activation-transport.d.ts +15 -0
- package/dist/core/activation-transport.d.ts.map +1 -0
- package/dist/core/activation-transport.js +23 -0
- package/dist/core/activation-transport.js.map +1 -0
- package/dist/core/app.d.ts +149 -0
- package/dist/core/app.d.ts.map +1 -0
- package/dist/core/app.js +372 -0
- package/dist/core/app.js.map +1 -0
- package/dist/core/binding-service.d.ts +93 -0
- package/dist/core/binding-service.d.ts.map +1 -0
- package/dist/core/binding-service.js +281 -0
- package/dist/core/binding-service.js.map +1 -0
- package/dist/core/binding-store.d.ts +23 -0
- package/dist/core/binding-store.d.ts.map +1 -0
- package/dist/core/binding-store.js +154 -0
- package/dist/core/binding-store.js.map +1 -0
- package/dist/core/brand.d.ts +18 -0
- package/dist/core/brand.d.ts.map +1 -0
- package/dist/core/brand.js +22 -0
- package/dist/core/brand.js.map +1 -0
- package/dist/core/capabilities.d.ts +30 -0
- package/dist/core/capabilities.d.ts.map +1 -0
- package/dist/core/capabilities.js +27 -0
- package/dist/core/capabilities.js.map +1 -0
- package/dist/core/client-state-store.d.ts +17 -0
- package/dist/core/client-state-store.d.ts.map +1 -0
- package/dist/core/client-state-store.js +47 -0
- package/dist/core/client-state-store.js.map +1 -0
- package/dist/core/codec/account.d.ts +52 -0
- package/dist/core/codec/account.d.ts.map +1 -0
- package/dist/core/codec/account.js +69 -0
- package/dist/core/codec/account.js.map +1 -0
- package/dist/core/codec/bindings.d.ts +38 -0
- package/dist/core/codec/bindings.d.ts.map +1 -0
- package/dist/core/codec/bindings.js +79 -0
- package/dist/core/codec/bindings.js.map +1 -0
- package/dist/core/codec/operations.d.ts +36 -0
- package/dist/core/codec/operations.d.ts.map +1 -0
- package/dist/core/codec/operations.js +82 -0
- package/dist/core/codec/operations.js.map +1 -0
- package/dist/core/codec/primitives.d.ts +59 -0
- package/dist/core/codec/primitives.d.ts.map +1 -0
- package/dist/core/codec/primitives.js +123 -0
- package/dist/core/codec/primitives.js.map +1 -0
- package/dist/core/codec/proxy-hub.d.ts +43 -0
- package/dist/core/codec/proxy-hub.d.ts.map +1 -0
- package/dist/core/codec/proxy-hub.js +69 -0
- package/dist/core/codec/proxy-hub.js.map +1 -0
- package/dist/core/codec/runtime.d.ts +41 -0
- package/dist/core/codec/runtime.d.ts.map +1 -0
- package/dist/core/codec/runtime.js +66 -0
- package/dist/core/codec/runtime.js.map +1 -0
- package/dist/core/codec.d.ts +43 -0
- package/dist/core/codec.d.ts.map +1 -0
- package/dist/core/codec.js +69 -0
- package/dist/core/codec.js.map +1 -0
- package/dist/core/codex-live-config.d.ts +92 -0
- package/dist/core/codex-live-config.d.ts.map +1 -0
- package/dist/core/codex-live-config.js +263 -0
- package/dist/core/codex-live-config.js.map +1 -0
- package/dist/core/config-service.d.ts +35 -0
- package/dist/core/config-service.d.ts.map +1 -0
- package/dist/core/config-service.js +87 -0
- package/dist/core/config-service.js.map +1 -0
- package/dist/core/config.d.ts +14 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +45 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/db-schema.d.ts +30 -0
- package/dist/core/db-schema.d.ts.map +1 -0
- package/dist/core/db-schema.js +278 -0
- package/dist/core/db-schema.js.map +1 -0
- package/dist/core/db.d.ts +72 -0
- package/dist/core/db.d.ts.map +1 -0
- package/dist/core/db.js +192 -0
- package/dist/core/db.js.map +1 -0
- package/dist/core/doctor-fixes.d.ts +3 -0
- package/dist/core/doctor-fixes.d.ts.map +1 -0
- package/dist/core/doctor-fixes.js +102 -0
- package/dist/core/doctor-fixes.js.map +1 -0
- package/dist/core/doctor-format.d.ts +10 -0
- package/dist/core/doctor-format.d.ts.map +1 -0
- package/dist/core/doctor-format.js +45 -0
- package/dist/core/doctor-format.js.map +1 -0
- package/dist/core/doctor-report.d.ts +3 -0
- package/dist/core/doctor-report.d.ts.map +1 -0
- package/dist/core/doctor-report.js +174 -0
- package/dist/core/doctor-report.js.map +1 -0
- package/dist/core/doctor-scan.d.ts +7 -0
- package/dist/core/doctor-scan.d.ts.map +1 -0
- package/dist/core/doctor-scan.js +139 -0
- package/dist/core/doctor-scan.js.map +1 -0
- package/dist/core/doctor-types.d.ts +89 -0
- package/dist/core/doctor-types.d.ts.map +1 -0
- package/dist/core/doctor-types.js +14 -0
- package/dist/core/doctor-types.js.map +1 -0
- package/dist/core/doctor-utils.d.ts +3 -0
- package/dist/core/doctor-utils.d.ts.map +1 -0
- package/dist/core/doctor-utils.js +36 -0
- package/dist/core/doctor-utils.js.map +1 -0
- package/dist/core/doctor.d.ts +14 -0
- package/dist/core/doctor.d.ts.map +1 -0
- package/dist/core/doctor.js +127 -0
- package/dist/core/doctor.js.map +1 -0
- package/dist/core/events.d.ts +58 -0
- package/dist/core/events.d.ts.map +1 -0
- package/dist/core/events.js +88 -0
- package/dist/core/events.js.map +1 -0
- package/dist/core/journal.d.ts +23 -0
- package/dist/core/journal.d.ts.map +1 -0
- package/dist/core/journal.js +93 -0
- package/dist/core/journal.js.map +1 -0
- package/dist/core/lease-store.d.ts +22 -0
- package/dist/core/lease-store.d.ts.map +1 -0
- package/dist/core/lease-store.js +81 -0
- package/dist/core/lease-store.js.map +1 -0
- package/dist/core/migrate-bindings.d.ts +10 -0
- package/dist/core/migrate-bindings.d.ts.map +1 -0
- package/dist/core/migrate-bindings.js +98 -0
- package/dist/core/migrate-bindings.js.map +1 -0
- package/dist/core/migrate-fs.d.ts +11 -0
- package/dist/core/migrate-fs.d.ts.map +1 -0
- package/dist/core/migrate-fs.js +184 -0
- package/dist/core/migrate-fs.js.map +1 -0
- package/dist/core/model-cache-store.d.ts +27 -0
- package/dist/core/model-cache-store.d.ts.map +1 -0
- package/dist/core/model-cache-store.js +50 -0
- package/dist/core/model-cache-store.js.map +1 -0
- package/dist/core/model-discovery.d.ts +66 -0
- package/dist/core/model-discovery.d.ts.map +1 -0
- package/dist/core/model-discovery.js +127 -0
- package/dist/core/model-discovery.js.map +1 -0
- package/dist/core/model-policy.d.ts +40 -0
- package/dist/core/model-policy.d.ts.map +1 -0
- package/dist/core/model-policy.js +77 -0
- package/dist/core/model-policy.js.map +1 -0
- package/dist/core/model-roles.d.ts +9 -0
- package/dist/core/model-roles.d.ts.map +1 -0
- package/dist/core/model-roles.js +20 -0
- package/dist/core/model-roles.js.map +1 -0
- package/dist/core/mutation-lock.d.ts +31 -0
- package/dist/core/mutation-lock.d.ts.map +1 -0
- package/dist/core/mutation-lock.js +69 -0
- package/dist/core/mutation-lock.js.map +1 -0
- package/dist/core/paths.d.ts +49 -0
- package/dist/core/paths.d.ts.map +1 -0
- package/dist/core/paths.js +110 -0
- package/dist/core/paths.js.map +1 -0
- package/dist/core/plugin-loader.d.ts +40 -0
- package/dist/core/plugin-loader.d.ts.map +1 -0
- package/dist/core/plugin-loader.js +184 -0
- package/dist/core/plugin-loader.js.map +1 -0
- package/dist/core/plugin-service.d.ts +32 -0
- package/dist/core/plugin-service.d.ts.map +1 -0
- package/dist/core/plugin-service.js +110 -0
- package/dist/core/plugin-service.js.map +1 -0
- package/dist/core/plugin-store.d.ts +18 -0
- package/dist/core/plugin-store.d.ts.map +1 -0
- package/dist/core/plugin-store.js +50 -0
- package/dist/core/plugin-store.js.map +1 -0
- package/dist/core/pool-store.d.ts +44 -0
- package/dist/core/pool-store.d.ts.map +1 -0
- package/dist/core/pool-store.js +198 -0
- package/dist/core/pool-store.js.map +1 -0
- package/dist/core/preset-store.d.ts +29 -0
- package/dist/core/preset-store.d.ts.map +1 -0
- package/dist/core/preset-store.js +105 -0
- package/dist/core/preset-store.js.map +1 -0
- package/dist/core/profile-service.d.ts +50 -0
- package/dist/core/profile-service.d.ts.map +1 -0
- package/dist/core/profile-service.js +149 -0
- package/dist/core/profile-service.js.map +1 -0
- package/dist/core/profile-store.d.ts +20 -0
- package/dist/core/profile-store.d.ts.map +1 -0
- package/dist/core/profile-store.js +92 -0
- package/dist/core/profile-store.js.map +1 -0
- package/dist/core/profile-synth.d.ts +24 -0
- package/dist/core/profile-synth.d.ts.map +1 -0
- package/dist/core/profile-synth.js +30 -0
- package/dist/core/profile-synth.js.map +1 -0
- package/dist/core/project-root.d.ts +7 -0
- package/dist/core/project-root.d.ts.map +1 -0
- package/dist/core/project-root.js +23 -0
- package/dist/core/project-root.js.map +1 -0
- package/dist/core/proxy-hub-cli.d.ts +3 -0
- package/dist/core/proxy-hub-cli.d.ts.map +1 -0
- package/dist/core/proxy-hub-cli.js +80 -0
- package/dist/core/proxy-hub-cli.js.map +1 -0
- package/dist/core/proxy-hub-routes.d.ts +22 -0
- package/dist/core/proxy-hub-routes.d.ts.map +1 -0
- package/dist/core/proxy-hub-routes.js +92 -0
- package/dist/core/proxy-hub-routes.js.map +1 -0
- package/dist/core/proxy-hub-server.d.ts +59 -0
- package/dist/core/proxy-hub-server.d.ts.map +1 -0
- package/dist/core/proxy-hub-server.js +409 -0
- package/dist/core/proxy-hub-server.js.map +1 -0
- package/dist/core/proxy-hub-service.d.ts +97 -0
- package/dist/core/proxy-hub-service.d.ts.map +1 -0
- package/dist/core/proxy-hub-service.js +553 -0
- package/dist/core/proxy-hub-service.js.map +1 -0
- package/dist/core/proxy-hub-store.d.ts +28 -0
- package/dist/core/proxy-hub-store.d.ts.map +1 -0
- package/dist/core/proxy-hub-store.js +152 -0
- package/dist/core/proxy-hub-store.js.map +1 -0
- package/dist/core/proxy-lifecycle.d.ts +26 -0
- package/dist/core/proxy-lifecycle.d.ts.map +1 -0
- package/dist/core/proxy-lifecycle.js +33 -0
- package/dist/core/proxy-lifecycle.js.map +1 -0
- package/dist/core/proxy-ports.d.ts +50 -0
- package/dist/core/proxy-ports.d.ts.map +1 -0
- package/dist/core/proxy-ports.js +86 -0
- package/dist/core/proxy-ports.js.map +1 -0
- package/dist/core/proxy-service.d.ts +184 -0
- package/dist/core/proxy-service.d.ts.map +1 -0
- package/dist/core/proxy-service.js +860 -0
- package/dist/core/proxy-service.js.map +1 -0
- package/dist/core/quota-guard-policy.d.ts +8 -0
- package/dist/core/quota-guard-policy.d.ts.map +1 -0
- package/dist/core/quota-guard-policy.js +21 -0
- package/dist/core/quota-guard-policy.js.map +1 -0
- package/dist/core/realign-proxy-clients.d.ts +19 -0
- package/dist/core/realign-proxy-clients.d.ts.map +1 -0
- package/dist/core/realign-proxy-clients.js +40 -0
- package/dist/core/realign-proxy-clients.js.map +1 -0
- package/dist/core/refs.d.ts +84 -0
- package/dist/core/refs.d.ts.map +1 -0
- package/dist/core/refs.js +250 -0
- package/dist/core/refs.js.map +1 -0
- package/dist/core/registry.d.ts +46 -0
- package/dist/core/registry.d.ts.map +1 -0
- package/dist/core/registry.js +70 -0
- package/dist/core/registry.js.map +1 -0
- package/dist/core/resolve-source.d.ts +54 -0
- package/dist/core/resolve-source.d.ts.map +1 -0
- package/dist/core/resolve-source.js +148 -0
- package/dist/core/resolve-source.js.map +1 -0
- package/dist/core/runtime-service.d.ts +158 -0
- package/dist/core/runtime-service.d.ts.map +1 -0
- package/dist/core/runtime-service.js +422 -0
- package/dist/core/runtime-service.js.map +1 -0
- package/dist/core/service.d.ts +200 -0
- package/dist/core/service.d.ts.map +1 -0
- package/dist/core/service.js +643 -0
- package/dist/core/service.js.map +1 -0
- package/dist/core/store-snapshot.d.ts +10 -0
- package/dist/core/store-snapshot.d.ts.map +1 -0
- package/dist/core/store-snapshot.js +79 -0
- package/dist/core/store-snapshot.js.map +1 -0
- package/dist/core/store.d.ts +68 -0
- package/dist/core/store.d.ts.map +1 -0
- package/dist/core/store.js +159 -0
- package/dist/core/store.js.map +1 -0
- package/dist/core/tray-runtime.d.ts +15 -0
- package/dist/core/tray-runtime.d.ts.map +1 -0
- package/dist/core/tray-runtime.js +33 -0
- package/dist/core/tray-runtime.js.map +1 -0
- package/dist/core/tray-settings-service.d.ts +7 -0
- package/dist/core/tray-settings-service.d.ts.map +1 -0
- package/dist/core/tray-settings-service.js +24 -0
- package/dist/core/tray-settings-service.js.map +1 -0
- package/dist/core/update.d.ts +26 -0
- package/dist/core/update.d.ts.map +1 -0
- package/dist/core/update.js +128 -0
- package/dist/core/update.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/network/egress/allowlist.d.ts +2 -0
- package/dist/network/egress/allowlist.d.ts.map +1 -0
- package/dist/network/egress/allowlist.js +14 -0
- package/dist/network/egress/allowlist.js.map +1 -0
- package/dist/network/egress/direct.d.ts +17 -0
- package/dist/network/egress/direct.d.ts.map +1 -0
- package/dist/network/egress/direct.js +28 -0
- package/dist/network/egress/direct.js.map +1 -0
- package/dist/network/egress/errors.d.ts +4 -0
- package/dist/network/egress/errors.d.ts.map +1 -0
- package/dist/network/egress/errors.js +8 -0
- package/dist/network/egress/errors.js.map +1 -0
- package/dist/network/egress/index.d.ts +6 -0
- package/dist/network/egress/index.d.ts.map +1 -0
- package/dist/network/egress/index.js +11 -0
- package/dist/network/egress/index.js.map +1 -0
- package/dist/network/egress/types.d.ts +16 -0
- package/dist/network/egress/types.d.ts.map +1 -0
- package/dist/presentation/client-name.d.ts +14 -0
- package/dist/presentation/client-name.d.ts.map +1 -0
- package/dist/presentation/client-name.js +22 -0
- package/dist/presentation/client-name.js.map +1 -0
- package/dist/presentation/layout.d.ts +7 -0
- package/dist/presentation/layout.d.ts.map +1 -0
- package/dist/presentation/layout.js +10 -0
- package/dist/presentation/layout.js.map +1 -0
- package/dist/providers/auth-fingerprint.d.ts +56 -0
- package/dist/providers/auth-fingerprint.d.ts.map +1 -0
- package/dist/providers/auth-fingerprint.js +163 -0
- package/dist/providers/auth-fingerprint.js.map +1 -0
- package/dist/providers/claude.d.ts +43 -0
- package/dist/providers/claude.d.ts.map +1 -0
- package/dist/providers/claude.js +191 -0
- package/dist/providers/claude.js.map +1 -0
- package/dist/providers/codex-identity.d.ts +13 -0
- package/dist/providers/codex-identity.d.ts.map +1 -0
- package/dist/providers/codex-identity.js +69 -0
- package/dist/providers/codex-identity.js.map +1 -0
- package/dist/providers/codex-refresh.d.ts +30 -0
- package/dist/providers/codex-refresh.d.ts.map +1 -0
- package/dist/providers/codex-refresh.js +64 -0
- package/dist/providers/codex-refresh.js.map +1 -0
- package/dist/providers/codex-usage.d.ts +3 -0
- package/dist/providers/codex-usage.d.ts.map +1 -0
- package/dist/providers/codex-usage.js +42 -0
- package/dist/providers/codex-usage.js.map +1 -0
- package/dist/providers/codex.d.ts +61 -0
- package/dist/providers/codex.d.ts.map +1 -0
- package/dist/providers/codex.js +212 -0
- package/dist/providers/codex.js.map +1 -0
- package/dist/providers/gemini-antigravity-oauth.d.ts +83 -0
- package/dist/providers/gemini-antigravity-oauth.d.ts.map +1 -0
- package/dist/providers/gemini-antigravity-oauth.js +343 -0
- package/dist/providers/gemini-antigravity-oauth.js.map +1 -0
- package/dist/providers/gemini-antigravity-state.d.ts +35 -0
- package/dist/providers/gemini-antigravity-state.d.ts.map +1 -0
- package/dist/providers/gemini-antigravity-state.js +433 -0
- package/dist/providers/gemini-antigravity-state.js.map +1 -0
- package/dist/providers/gemini-env.d.ts +8 -0
- package/dist/providers/gemini-env.d.ts.map +1 -0
- package/dist/providers/gemini-env.js +78 -0
- package/dist/providers/gemini-env.js.map +1 -0
- package/dist/providers/gemini-identity.d.ts +2 -0
- package/dist/providers/gemini-identity.d.ts.map +1 -0
- package/dist/providers/gemini-identity.js +14 -0
- package/dist/providers/gemini-identity.js.map +1 -0
- package/dist/providers/gemini-proxy/main.d.ts +3 -0
- package/dist/providers/gemini-proxy/main.d.ts.map +1 -0
- package/dist/providers/gemini-proxy/main.js +176 -0
- package/dist/providers/gemini-proxy/main.js.map +1 -0
- package/dist/providers/gemini-proxy/server.d.ts +57 -0
- package/dist/providers/gemini-proxy/server.d.ts.map +1 -0
- package/dist/providers/gemini-proxy/server.js +1240 -0
- package/dist/providers/gemini-proxy/server.js.map +1 -0
- package/dist/providers/gemini-proxy-entry.d.ts +2 -0
- package/dist/providers/gemini-proxy-entry.d.ts.map +1 -0
- package/dist/providers/gemini-proxy-entry.js +16 -0
- package/dist/providers/gemini-proxy-entry.js.map +1 -0
- package/dist/providers/gemini-proxy-lifecycle.d.ts +11 -0
- package/dist/providers/gemini-proxy-lifecycle.d.ts.map +1 -0
- package/dist/providers/gemini-proxy-lifecycle.js +131 -0
- package/dist/providers/gemini-proxy-lifecycle.js.map +1 -0
- package/dist/providers/gemini.d.ts +137 -0
- package/dist/providers/gemini.d.ts.map +1 -0
- package/dist/providers/gemini.js +471 -0
- package/dist/providers/gemini.js.map +1 -0
- package/dist/providers/grok-proxy/auth.d.ts +27 -0
- package/dist/providers/grok-proxy/auth.d.ts.map +1 -0
- package/dist/providers/grok-proxy/auth.js +123 -0
- package/dist/providers/grok-proxy/auth.js.map +1 -0
- package/dist/providers/grok-proxy/main.d.ts +3 -0
- package/dist/providers/grok-proxy/main.d.ts.map +1 -0
- package/dist/providers/grok-proxy/main.js +111 -0
- package/dist/providers/grok-proxy/main.js.map +1 -0
- package/dist/providers/grok-proxy/server.d.ts +46 -0
- package/dist/providers/grok-proxy/server.d.ts.map +1 -0
- package/dist/providers/grok-proxy/server.js +595 -0
- package/dist/providers/grok-proxy/server.js.map +1 -0
- package/dist/providers/grok.d.ts +38 -0
- package/dist/providers/grok.d.ts.map +1 -0
- package/dist/providers/grok.js +250 -0
- package/dist/providers/grok.js.map +1 -0
- package/dist/providers/index.d.ts +14 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +23 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/kiro-secret-store.d.ts +39 -0
- package/dist/providers/kiro-secret-store.d.ts.map +1 -0
- package/dist/providers/kiro-secret-store.js +168 -0
- package/dist/providers/kiro-secret-store.js.map +1 -0
- package/dist/providers/kiro.d.ts +50 -0
- package/dist/providers/kiro.d.ts.map +1 -0
- package/dist/providers/kiro.js +373 -0
- package/dist/providers/kiro.js.map +1 -0
- package/dist/providers/model-policy.d.ts +15 -0
- package/dist/providers/model-policy.d.ts.map +1 -0
- package/dist/providers/model-policy.js +26 -0
- package/dist/providers/model-policy.js.map +1 -0
- package/dist/providers/opencode-auth.d.ts +67 -0
- package/dist/providers/opencode-auth.d.ts.map +1 -0
- package/dist/providers/opencode-auth.js +146 -0
- package/dist/providers/opencode-auth.js.map +1 -0
- package/dist/providers/opencode-cli-entry.d.ts +36 -0
- package/dist/providers/opencode-cli-entry.d.ts.map +1 -0
- package/dist/providers/opencode-cli-entry.js +90 -0
- package/dist/providers/opencode-cli-entry.js.map +1 -0
- package/dist/providers/opencode-proxy/abort.d.ts +8 -0
- package/dist/providers/opencode-proxy/abort.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/abort.js +42 -0
- package/dist/providers/opencode-proxy/abort.js.map +1 -0
- package/dist/providers/opencode-proxy/anthropic-handler.d.ts +4 -0
- package/dist/providers/opencode-proxy/anthropic-handler.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/anthropic-handler.js +108 -0
- package/dist/providers/opencode-proxy/anthropic-handler.js.map +1 -0
- package/dist/providers/opencode-proxy/auth.d.ts +38 -0
- package/dist/providers/opencode-proxy/auth.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/auth.js +128 -0
- package/dist/providers/opencode-proxy/auth.js.map +1 -0
- package/dist/providers/opencode-proxy/body.d.ts +9 -0
- package/dist/providers/opencode-proxy/body.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/body.js +69 -0
- package/dist/providers/opencode-proxy/body.js.map +1 -0
- package/dist/providers/opencode-proxy/catalog-handlers.d.ts +7 -0
- package/dist/providers/opencode-proxy/catalog-handlers.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/catalog-handlers.js +132 -0
- package/dist/providers/opencode-proxy/catalog-handlers.js.map +1 -0
- package/dist/providers/opencode-proxy/catalog.d.ts +41 -0
- package/dist/providers/opencode-proxy/catalog.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/catalog.js +146 -0
- package/dist/providers/opencode-proxy/catalog.js.map +1 -0
- package/dist/providers/opencode-proxy/cli.d.ts +2 -0
- package/dist/providers/opencode-proxy/cli.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/cli.js +162 -0
- package/dist/providers/opencode-proxy/cli.js.map +1 -0
- package/dist/providers/opencode-proxy/constants.d.ts +13 -0
- package/dist/providers/opencode-proxy/constants.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/constants.js +15 -0
- package/dist/providers/opencode-proxy/constants.js.map +1 -0
- package/dist/providers/opencode-proxy/context-budget.d.ts +31 -0
- package/dist/providers/opencode-proxy/context-budget.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/context-budget.js +165 -0
- package/dist/providers/opencode-proxy/context-budget.js.map +1 -0
- package/dist/providers/opencode-proxy/errors.d.ts +5 -0
- package/dist/providers/opencode-proxy/errors.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/errors.js +45 -0
- package/dist/providers/opencode-proxy/errors.js.map +1 -0
- package/dist/providers/opencode-proxy/forwarders.d.ts +7 -0
- package/dist/providers/opencode-proxy/forwarders.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/forwarders.js +214 -0
- package/dist/providers/opencode-proxy/forwarders.js.map +1 -0
- package/dist/providers/opencode-proxy/http.d.ts +11 -0
- package/dist/providers/opencode-proxy/http.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/http.js +97 -0
- package/dist/providers/opencode-proxy/http.js.map +1 -0
- package/dist/providers/opencode-proxy/models.d.ts +42 -0
- package/dist/providers/opencode-proxy/models.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/models.js +148 -0
- package/dist/providers/opencode-proxy/models.js.map +1 -0
- package/dist/providers/opencode-proxy/openai-handler.d.ts +5 -0
- package/dist/providers/opencode-proxy/openai-handler.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/openai-handler.js +115 -0
- package/dist/providers/opencode-proxy/openai-handler.js.map +1 -0
- package/dist/providers/opencode-proxy/router.d.ts +4 -0
- package/dist/providers/opencode-proxy/router.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/router.js +65 -0
- package/dist/providers/opencode-proxy/router.js.map +1 -0
- package/dist/providers/opencode-proxy/runtime.d.ts +23 -0
- package/dist/providers/opencode-proxy/runtime.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/runtime.js +158 -0
- package/dist/providers/opencode-proxy/runtime.js.map +1 -0
- package/dist/providers/opencode-proxy/server.d.ts +13 -0
- package/dist/providers/opencode-proxy/server.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/server.js +52 -0
- package/dist/providers/opencode-proxy/server.js.map +1 -0
- package/dist/providers/opencode-proxy/stream.d.ts +4 -0
- package/dist/providers/opencode-proxy/stream.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/stream.js +71 -0
- package/dist/providers/opencode-proxy/stream.js.map +1 -0
- package/dist/providers/opencode-proxy/translate-stream.d.ts +3 -0
- package/dist/providers/opencode-proxy/translate-stream.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/translate-stream.js +205 -0
- package/dist/providers/opencode-proxy/translate-stream.js.map +1 -0
- package/dist/providers/opencode-proxy/translate.d.ts +11 -0
- package/dist/providers/opencode-proxy/translate.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/translate.js +250 -0
- package/dist/providers/opencode-proxy/translate.js.map +1 -0
- package/dist/providers/opencode-proxy/types.d.ts +110 -0
- package/dist/providers/opencode-proxy/types.d.ts.map +1 -0
- package/dist/providers/opencode-proxy/types.js +38 -0
- package/dist/providers/opencode-proxy/types.js.map +1 -0
- package/dist/providers/opencode-proxy-lifecycle.d.ts +11 -0
- package/dist/providers/opencode-proxy-lifecycle.d.ts.map +1 -0
- package/dist/providers/opencode-proxy-lifecycle.js +144 -0
- package/dist/providers/opencode-proxy-lifecycle.js.map +1 -0
- package/dist/providers/opencode.d.ts +40 -0
- package/dist/providers/opencode.d.ts.map +1 -0
- package/dist/providers/opencode.js +190 -0
- package/dist/providers/opencode.js.map +1 -0
- package/dist/providers/protocol/anthropic-convert.d.ts +12 -0
- package/dist/providers/protocol/anthropic-convert.d.ts.map +1 -0
- package/dist/providers/protocol/anthropic-convert.js +113 -0
- package/dist/providers/protocol/anthropic-convert.js.map +1 -0
- package/dist/providers/protocol/anthropic-helpers.d.ts +13 -0
- package/dist/providers/protocol/anthropic-helpers.d.ts.map +1 -0
- package/dist/providers/protocol/anthropic-helpers.js +179 -0
- package/dist/providers/protocol/anthropic-helpers.js.map +1 -0
- package/dist/providers/protocol/anthropic-stream-reader.d.ts +13 -0
- package/dist/providers/protocol/anthropic-stream-reader.d.ts.map +1 -0
- package/dist/providers/protocol/anthropic-stream-reader.js +46 -0
- package/dist/providers/protocol/anthropic-stream-reader.js.map +1 -0
- package/dist/providers/protocol/anthropic-stream.d.ts +7 -0
- package/dist/providers/protocol/anthropic-stream.d.ts.map +1 -0
- package/dist/providers/protocol/anthropic-stream.js +318 -0
- package/dist/providers/protocol/anthropic-stream.js.map +1 -0
- package/dist/providers/protocol/anthropic-types.d.ts +240 -0
- package/dist/providers/protocol/anthropic-types.d.ts.map +1 -0
- package/dist/providers/protocol/anthropic.d.ts +20 -0
- package/dist/providers/protocol/anthropic.d.ts.map +1 -0
- package/dist/providers/protocol/gemini/translate-anthropic.d.ts +15 -0
- package/dist/providers/protocol/gemini/translate-anthropic.d.ts.map +1 -0
- package/dist/providers/protocol/gemini/translate-anthropic.js +84 -0
- package/dist/providers/protocol/gemini/translate-anthropic.js.map +1 -0
- package/dist/providers/protocol/gemini/translate-chat.d.ts +5 -0
- package/dist/providers/protocol/gemini/translate-chat.d.ts.map +1 -0
- package/dist/providers/protocol/gemini/translate-chat.js +142 -0
- package/dist/providers/protocol/gemini/translate-chat.js.map +1 -0
- package/dist/providers/protocol/gemini/translate-models.d.ts +40 -0
- package/dist/providers/protocol/gemini/translate-models.d.ts.map +1 -0
- package/dist/providers/protocol/gemini/translate-models.js +186 -0
- package/dist/providers/protocol/gemini/translate-models.js.map +1 -0
- package/dist/providers/protocol/gemini/translate-responses.d.ts +6 -0
- package/dist/providers/protocol/gemini/translate-responses.d.ts.map +1 -0
- package/dist/providers/protocol/gemini/translate-responses.js +187 -0
- package/dist/providers/protocol/gemini/translate-responses.js.map +1 -0
- package/dist/providers/protocol/gemini/translate-schema.d.ts +9 -0
- package/dist/providers/protocol/gemini/translate-schema.d.ts.map +1 -0
- package/dist/providers/protocol/gemini/translate-schema.js +48 -0
- package/dist/providers/protocol/gemini/translate-schema.js.map +1 -0
- package/dist/providers/protocol/gemini/translate-shared.d.ts +8 -0
- package/dist/providers/protocol/gemini/translate-shared.d.ts.map +1 -0
- package/dist/providers/protocol/gemini/translate-shared.js +47 -0
- package/dist/providers/protocol/gemini/translate-shared.js.map +1 -0
- package/dist/providers/protocol/gemini/translate-thinking.d.ts +7 -0
- package/dist/providers/protocol/gemini/translate-thinking.d.ts.map +1 -0
- package/dist/providers/protocol/gemini/translate-thinking.js +65 -0
- package/dist/providers/protocol/gemini/translate-thinking.js.map +1 -0
- package/dist/providers/protocol/gemini/translate-types.d.ts +133 -0
- package/dist/providers/protocol/gemini/translate-types.d.ts.map +1 -0
- package/dist/providers/protocol/gemini/translate.d.ts +7 -0
- package/dist/providers/protocol/gemini/translate.d.ts.map +1 -0
- package/dist/providers/protocol/json-schema.d.ts +52 -0
- package/dist/providers/protocol/json-schema.d.ts.map +1 -0
- package/dist/providers/protocol/json-schema.js +189 -0
- package/dist/providers/protocol/json-schema.js.map +1 -0
- package/dist/providers/protocol/token-estimate.d.ts +15 -0
- package/dist/providers/protocol/token-estimate.d.ts.map +1 -0
- package/dist/providers/protocol/token-estimate.js +34 -0
- package/dist/providers/protocol/token-estimate.js.map +1 -0
- package/dist/providers/proxy-hub-backend.d.ts +4 -0
- package/dist/providers/proxy-hub-backend.d.ts.map +1 -0
- package/dist/providers/proxy-hub-backend.js +11 -0
- package/dist/providers/proxy-hub-backend.js.map +1 -0
- package/dist/providers/proxy-process.d.ts +35 -0
- package/dist/providers/proxy-process.d.ts.map +1 -0
- package/dist/providers/proxy-process.js +119 -0
- package/dist/providers/proxy-process.js.map +1 -0
- package/dist/providers/proxy-shared.d.ts +43 -0
- package/dist/providers/proxy-shared.d.ts.map +1 -0
- package/dist/providers/proxy-shared.js +128 -0
- package/dist/providers/proxy-shared.js.map +1 -0
- package/dist/providers/quota-guard.d.ts +49 -0
- package/dist/providers/quota-guard.d.ts.map +1 -0
- package/dist/providers/quota-guard.js +107 -0
- package/dist/providers/quota-guard.js.map +1 -0
- package/dist/providers/reasoning.d.ts +27 -0
- package/dist/providers/reasoning.d.ts.map +1 -0
- package/dist/providers/reasoning.js +61 -0
- package/dist/providers/reasoning.js.map +1 -0
- package/dist/providers/upstream-policy.d.ts +33 -0
- package/dist/providers/upstream-policy.d.ts.map +1 -0
- package/dist/providers/upstream-policy.js +97 -0
- package/dist/providers/upstream-policy.js.map +1 -0
- package/dist/public-types.d.ts +3 -0
- package/dist/public-types.d.ts.map +1 -0
- package/dist/public.d.ts +19 -0
- package/dist/public.d.ts.map +1 -0
- package/dist/public.js +16 -0
- package/dist/public.js.map +1 -0
- package/dist/sources/account-adapters.d.ts +64 -0
- package/dist/sources/account-adapters.d.ts.map +1 -0
- package/dist/sources/account-adapters.js +205 -0
- package/dist/sources/account-adapters.js.map +1 -0
- package/dist/sources/gateway-adapters.d.ts +26 -0
- package/dist/sources/gateway-adapters.d.ts.map +1 -0
- package/dist/sources/gateway-adapters.js +43 -0
- package/dist/sources/gateway-adapters.js.map +1 -0
- package/dist/sources/kiro-proxy-bin.d.ts +41 -0
- package/dist/sources/kiro-proxy-bin.d.ts.map +1 -0
- package/dist/sources/kiro-proxy-bin.js +140 -0
- package/dist/sources/kiro-proxy-bin.js.map +1 -0
- package/dist/sources/proxy-hub-adapters.d.ts +7 -0
- package/dist/sources/proxy-hub-adapters.d.ts.map +1 -0
- package/dist/sources/proxy-hub-adapters.js +26 -0
- package/dist/sources/proxy-hub-adapters.js.map +1 -0
- package/dist/testing.d.ts +9 -0
- package/dist/testing.d.ts.map +1 -0
- package/dist/testing.js +6 -0
- package/dist/tray/AnyPickTray.swift +3 -0
- package/dist/tray/activity.d.ts +18 -0
- package/dist/tray/activity.d.ts.map +1 -0
- package/dist/tray/activity.js +51 -0
- package/dist/tray/activity.js.map +1 -0
- package/dist/tray/app-icons/icon-1024.png +0 -0
- package/dist/tray/app-icons/icon-128.png +0 -0
- package/dist/tray/app-icons/icon-16.png +0 -0
- package/dist/tray/app-icons/icon-256.png +0 -0
- package/dist/tray/app-icons/icon-32.png +0 -0
- package/dist/tray/app-icons/icon-512.png +0 -0
- package/dist/tray/app-icons/icon-64.png +0 -0
- package/dist/tray/icons/claude.svg +1 -0
- package/dist/tray/icons/googlegemini.svg +1 -0
- package/dist/tray/icons/grok.svg +1 -0
- package/dist/tray/icons/kiro.svg +1 -0
- package/dist/tray/icons/openai.svg +1 -0
- package/dist/tray/icons/opencode.svg +1 -0
- package/dist/tray/icons/openrouter.svg +1 -0
- package/dist/tray/model-role-actions.d.ts +15 -0
- package/dist/tray/model-role-actions.d.ts.map +1 -0
- package/dist/tray/model-role-actions.js +41 -0
- package/dist/tray/model-role-actions.js.map +1 -0
- package/dist/tray/native/AccountsPanel.swift +434 -0
- package/dist/tray/native/AppEntry.swift +229 -0
- package/dist/tray/native/MainWindow.swift +300 -0
- package/dist/tray/native/ManageFormChrome.swift +332 -0
- package/dist/tray/native/ManageForms.swift +472 -0
- package/dist/tray/native/ManagePanel.swift +356 -0
- package/dist/tray/native/Models.swift +259 -0
- package/dist/tray/native/ModelsEditor.swift +390 -0
- package/dist/tray/native/ModelsOverview.swift +76 -0
- package/dist/tray/native/ModelsPickers.swift +273 -0
- package/dist/tray/native/ModelsRoutePickers.swift +718 -0
- package/dist/tray/native/MonitorPanel.swift +375 -0
- package/dist/tray/native/ProxyPanel.swift +326 -0
- package/dist/tray/native/QuickActivityRow.swift +40 -0
- package/dist/tray/native/QuickNav.swift +62 -0
- package/dist/tray/native/QuickPanel.swift +447 -0
- package/dist/tray/native/QuickRouteRow.swift +189 -0
- package/dist/tray/native/QuickServiceRows.swift +292 -0
- package/dist/tray/native/RoutingIssues.swift +293 -0
- package/dist/tray/native/SettingsPanel.swift +225 -0
- package/dist/tray/native/SharedUI.swift +681 -0
- package/dist/tray/native/Store.swift +540 -0
- package/dist/tray/native/Theme.swift +139 -0
- package/dist/tray/native/TrayChrome.swift +657 -0
- package/dist/tray/native/TrayControls.swift +475 -0
- package/dist/tray/native/TrayPreferences.swift +46 -0
- package/dist/tray/native/sources.txt +26 -0
- package/dist/tray/native-sources.d.ts +8 -0
- package/dist/tray/native-sources.d.ts.map +1 -0
- package/dist/tray/native-sources.js +19 -0
- package/dist/tray/native-sources.js.map +1 -0
- package/dist/tray/protocol.d.ts +79 -0
- package/dist/tray/protocol.d.ts.map +1 -0
- package/dist/tray/protocol.js +145 -0
- package/dist/tray/protocol.js.map +1 -0
- package/dist/tray/settings.d.ts +15 -0
- package/dist/tray/settings.d.ts.map +1 -0
- package/dist/tray/settings.js +72 -0
- package/dist/tray/settings.js.map +1 -0
- package/dist/tray/snapshot-client-routes.d.ts +11 -0
- package/dist/tray/snapshot-client-routes.d.ts.map +1 -0
- package/dist/tray/snapshot-client-routes.js +305 -0
- package/dist/tray/snapshot-client-routes.js.map +1 -0
- package/dist/tray/snapshot-helpers.d.ts +20 -0
- package/dist/tray/snapshot-helpers.d.ts.map +1 -0
- package/dist/tray/snapshot-helpers.js +74 -0
- package/dist/tray/snapshot-helpers.js.map +1 -0
- package/dist/tray/snapshot-hub.d.ts +7 -0
- package/dist/tray/snapshot-hub.d.ts.map +1 -0
- package/dist/tray/snapshot-hub.js +93 -0
- package/dist/tray/snapshot-hub.js.map +1 -0
- package/dist/tray/snapshot-resources.d.ts +19 -0
- package/dist/tray/snapshot-resources.d.ts.map +1 -0
- package/dist/tray/snapshot-resources.js +216 -0
- package/dist/tray/snapshot-resources.js.map +1 -0
- package/dist/tray/snapshot-types.d.ts +229 -0
- package/dist/tray/snapshot-types.d.ts.map +1 -0
- package/dist/tray/snapshot-usage.d.ts +9 -0
- package/dist/tray/snapshot-usage.d.ts.map +1 -0
- package/dist/tray/snapshot-usage.js +35 -0
- package/dist/tray/snapshot-usage.js.map +1 -0
- package/dist/tray/snapshot.d.ts +7 -0
- package/dist/tray/snapshot.d.ts.map +1 -0
- package/dist/tray/snapshot.js +48 -0
- package/dist/tray/snapshot.js.map +1 -0
- package/dist/tray/supervisor-actions.d.ts +19 -0
- package/dist/tray/supervisor-actions.d.ts.map +1 -0
- package/dist/tray/supervisor-actions.js +224 -0
- package/dist/tray/supervisor-actions.js.map +1 -0
- package/dist/tray/supervisor-activity.d.ts +5 -0
- package/dist/tray/supervisor-activity.d.ts.map +1 -0
- package/dist/tray/supervisor-activity.js +19 -0
- package/dist/tray/supervisor-activity.js.map +1 -0
- package/dist/tray/supervisor-errors.d.ts +9 -0
- package/dist/tray/supervisor-errors.d.ts.map +1 -0
- package/dist/tray/supervisor-errors.js +91 -0
- package/dist/tray/supervisor-errors.js.map +1 -0
- package/dist/tray/supervisor-logs.d.ts +6 -0
- package/dist/tray/supervisor-logs.d.ts.map +1 -0
- package/dist/tray/supervisor-logs.js +52 -0
- package/dist/tray/supervisor-logs.js.map +1 -0
- package/dist/tray/supervisor-mutations.d.ts +14 -0
- package/dist/tray/supervisor-mutations.d.ts.map +1 -0
- package/dist/tray/supervisor-mutations.js +218 -0
- package/dist/tray/supervisor-mutations.js.map +1 -0
- package/dist/tray/supervisor-native.d.ts +22 -0
- package/dist/tray/supervisor-native.d.ts.map +1 -0
- package/dist/tray/supervisor-native.js +227 -0
- package/dist/tray/supervisor-native.js.map +1 -0
- package/dist/tray/supervisor-proxies.d.ts +6 -0
- package/dist/tray/supervisor-proxies.d.ts.map +1 -0
- package/dist/tray/supervisor-proxies.js +37 -0
- package/dist/tray/supervisor-proxies.js.map +1 -0
- package/dist/tray/supervisor-tauri.d.ts +13 -0
- package/dist/tray/supervisor-tauri.d.ts.map +1 -0
- package/dist/tray/supervisor-tauri.js +36 -0
- package/dist/tray/supervisor-tauri.js.map +1 -0
- package/dist/tray/supervisor.d.ts +17 -0
- package/dist/tray/supervisor.d.ts.map +1 -0
- package/dist/tray/supervisor.js +372 -0
- package/dist/tray/supervisor.js.map +1 -0
- package/dist/tray/terminal-launcher.d.ts +12 -0
- package/dist/tray/terminal-launcher.d.ts.map +1 -0
- package/dist/tray/terminal-launcher.js +130 -0
- package/dist/tray/terminal-launcher.js.map +1 -0
- package/dist/tui/actions/ensure-proxy-up.d.ts +15 -0
- package/dist/tui/actions/ensure-proxy-up.d.ts.map +1 -0
- package/dist/tui/actions/ensure-proxy-up.js +41 -0
- package/dist/tui/actions/ensure-proxy-up.js.map +1 -0
- package/dist/tui/actions/use-account-actions.d.ts +35 -0
- package/dist/tui/actions/use-account-actions.d.ts.map +1 -0
- package/dist/tui/actions/use-account-actions.js +527 -0
- package/dist/tui/actions/use-account-actions.js.map +1 -0
- package/dist/tui/actions/use-app-bindings.d.ts +83 -0
- package/dist/tui/actions/use-app-bindings.d.ts.map +1 -0
- package/dist/tui/actions/use-app-bindings.js +472 -0
- package/dist/tui/actions/use-app-bindings.js.map +1 -0
- package/dist/tui/actions/use-gateway-actions.d.ts +45 -0
- package/dist/tui/actions/use-gateway-actions.d.ts.map +1 -0
- package/dist/tui/actions/use-gateway-actions.js +370 -0
- package/dist/tui/actions/use-gateway-actions.js.map +1 -0
- package/dist/tui/actions/use-home-filter.d.ts +24 -0
- package/dist/tui/actions/use-home-filter.d.ts.map +1 -0
- package/dist/tui/actions/use-home-filter.js +48 -0
- package/dist/tui/actions/use-home-filter.js.map +1 -0
- package/dist/tui/actions/use-model-role-editor.d.ts +44 -0
- package/dist/tui/actions/use-model-role-editor.d.ts.map +1 -0
- package/dist/tui/actions/use-model-role-editor.js +68 -0
- package/dist/tui/actions/use-model-role-editor.js.map +1 -0
- package/dist/tui/actions/use-provider-filter.d.ts +10 -0
- package/dist/tui/actions/use-provider-filter.d.ts.map +1 -0
- package/dist/tui/actions/use-provider-filter.js +22 -0
- package/dist/tui/actions/use-provider-filter.js.map +1 -0
- package/dist/tui/actions/use-proxy-actions.d.ts +31 -0
- package/dist/tui/actions/use-proxy-actions.d.ts.map +1 -0
- package/dist/tui/actions/use-proxy-actions.js +474 -0
- package/dist/tui/actions/use-proxy-actions.js.map +1 -0
- package/dist/tui/actions/use-text-input-submit.d.ts +16 -0
- package/dist/tui/actions/use-text-input-submit.d.ts.map +1 -0
- package/dist/tui/actions/use-text-input-submit.js +96 -0
- package/dist/tui/actions/use-text-input-submit.js.map +1 -0
- package/dist/tui/actions/use-tray-runtime-actions.d.ts +18 -0
- package/dist/tui/actions/use-tray-runtime-actions.d.ts.map +1 -0
- package/dist/tui/actions/use-tray-runtime-actions.js +78 -0
- package/dist/tui/actions/use-tray-runtime-actions.js.map +1 -0
- package/dist/tui/app-ui-helpers.d.ts +14 -0
- package/dist/tui/app-ui-helpers.d.ts.map +1 -0
- package/dist/tui/app-ui-helpers.js +48 -0
- package/dist/tui/app-ui-helpers.js.map +1 -0
- package/dist/tui/app-ui.d.ts +19 -0
- package/dist/tui/app-ui.d.ts.map +1 -0
- package/dist/tui/app-ui.js +98 -0
- package/dist/tui/app-ui.js.map +1 -0
- package/dist/tui/components/chrome/header.d.ts +39 -0
- package/dist/tui/components/chrome/header.d.ts.map +1 -0
- package/dist/tui/components/chrome/header.js +161 -0
- package/dist/tui/components/chrome/header.js.map +1 -0
- package/dist/tui/components/chrome/inputs.d.ts +34 -0
- package/dist/tui/components/chrome/inputs.d.ts.map +1 -0
- package/dist/tui/components/chrome/inputs.js +82 -0
- package/dist/tui/components/chrome/inputs.js.map +1 -0
- package/dist/tui/components/chrome/layout.d.ts +61 -0
- package/dist/tui/components/chrome/layout.d.ts.map +1 -0
- package/dist/tui/components/chrome/layout.js +119 -0
- package/dist/tui/components/chrome/layout.js.map +1 -0
- package/dist/tui/components/chrome/legacy.d.ts +84 -0
- package/dist/tui/components/chrome/legacy.d.ts.map +1 -0
- package/dist/tui/components/chrome/legacy.js +6 -0
- package/dist/tui/components/chrome/rows.d.ts +89 -0
- package/dist/tui/components/chrome/rows.d.ts.map +1 -0
- package/dist/tui/components/chrome/rows.js +151 -0
- package/dist/tui/components/chrome/rows.js.map +1 -0
- package/dist/tui/components/chrome/status.d.ts +50 -0
- package/dist/tui/components/chrome/status.d.ts.map +1 -0
- package/dist/tui/components/chrome/status.js +157 -0
- package/dist/tui/components/chrome/status.js.map +1 -0
- package/dist/tui/components/chrome.d.ts +7 -0
- package/dist/tui/components/chrome.d.ts.map +1 -0
- package/dist/tui/components/chrome.js +7 -0
- package/dist/tui/components.d.ts +26 -0
- package/dist/tui/components.d.ts.map +1 -0
- package/dist/tui/components.js +182 -0
- package/dist/tui/components.js.map +1 -0
- package/dist/tui/model/anypick.d.ts +106 -0
- package/dist/tui/model/anypick.d.ts.map +1 -0
- package/dist/tui/model/anypick.js +116 -0
- package/dist/tui/model/anypick.js.map +1 -0
- package/dist/tui/model/bindings.d.ts +39 -0
- package/dist/tui/model/bindings.d.ts.map +1 -0
- package/dist/tui/model/bindings.js +102 -0
- package/dist/tui/model/bindings.js.map +1 -0
- package/dist/tui/model/detail.d.ts +6 -0
- package/dist/tui/model/detail.d.ts.map +1 -0
- package/dist/tui/model/detail.js +85 -0
- package/dist/tui/model/detail.js.map +1 -0
- package/dist/tui/model/gateway.d.ts +46 -0
- package/dist/tui/model/gateway.d.ts.map +1 -0
- package/dist/tui/model/gateway.js +134 -0
- package/dist/tui/model/gateway.js.map +1 -0
- package/dist/tui/model/home-format.d.ts +52 -0
- package/dist/tui/model/home-format.d.ts.map +1 -0
- package/dist/tui/model/home-format.js +64 -0
- package/dist/tui/model/home-format.js.map +1 -0
- package/dist/tui/model/home-load.d.ts +8 -0
- package/dist/tui/model/home-load.d.ts.map +1 -0
- package/dist/tui/model/home-load.js +244 -0
- package/dist/tui/model/home-load.js.map +1 -0
- package/dist/tui/model/identity.d.ts +53 -0
- package/dist/tui/model/identity.d.ts.map +1 -0
- package/dist/tui/model/identity.js +176 -0
- package/dist/tui/model/identity.js.map +1 -0
- package/dist/tui/model/line-editor.d.ts +99 -0
- package/dist/tui/model/line-editor.d.ts.map +1 -0
- package/dist/tui/model/line-editor.js +186 -0
- package/dist/tui/model/line-editor.js.map +1 -0
- package/dist/tui/model/names.d.ts +28 -0
- package/dist/tui/model/names.d.ts.map +1 -0
- package/dist/tui/model/names.js +42 -0
- package/dist/tui/model/names.js.map +1 -0
- package/dist/tui/model/pool.d.ts +11 -0
- package/dist/tui/model/pool.d.ts.map +1 -0
- package/dist/tui/model/pool.js +115 -0
- package/dist/tui/model/pool.js.map +1 -0
- package/dist/tui/model/provider-filter.d.ts +14 -0
- package/dist/tui/model/provider-filter.d.ts.map +1 -0
- package/dist/tui/model/provider-filter.js +46 -0
- package/dist/tui/model/provider-filter.js.map +1 -0
- package/dist/tui/model/proxy-hub.d.ts +23 -0
- package/dist/tui/model/proxy-hub.d.ts.map +1 -0
- package/dist/tui/model/proxy-hub.js +69 -0
- package/dist/tui/model/proxy-hub.js.map +1 -0
- package/dist/tui/model/proxy-labels.d.ts +5 -0
- package/dist/tui/model/proxy-labels.d.ts.map +1 -0
- package/dist/tui/model/proxy-labels.js +18 -0
- package/dist/tui/model/proxy-labels.js.map +1 -0
- package/dist/tui/model/proxy.d.ts +15 -0
- package/dist/tui/model/proxy.d.ts.map +1 -0
- package/dist/tui/model/proxy.js +214 -0
- package/dist/tui/model/proxy.js.map +1 -0
- package/dist/tui/model/root.d.ts +20 -0
- package/dist/tui/model/root.d.ts.map +1 -0
- package/dist/tui/model/root.js +126 -0
- package/dist/tui/model/root.js.map +1 -0
- package/dist/tui/model/route-builder.d.ts +25 -0
- package/dist/tui/model/route-builder.d.ts.map +1 -0
- package/dist/tui/model/route-builder.js +199 -0
- package/dist/tui/model/route-builder.js.map +1 -0
- package/dist/tui/model/screen.d.ts +260 -0
- package/dist/tui/model/screen.d.ts.map +1 -0
- package/dist/tui/model/types.d.ts +179 -0
- package/dist/tui/model/types.d.ts.map +1 -0
- package/dist/tui/model.d.ts +18 -0
- package/dist/tui/model.d.ts.map +1 -0
- package/dist/tui/model.js +17 -0
- package/dist/tui/proxy-models-fetch.d.ts +34 -0
- package/dist/tui/proxy-models-fetch.d.ts.map +1 -0
- package/dist/tui/proxy-models-fetch.js +87 -0
- package/dist/tui/proxy-models-fetch.js.map +1 -0
- package/dist/tui/routes/account.d.ts +4 -0
- package/dist/tui/routes/account.d.ts.map +1 -0
- package/dist/tui/routes/account.js +327 -0
- package/dist/tui/routes/account.js.map +1 -0
- package/dist/tui/routes/apps.d.ts +3 -0
- package/dist/tui/routes/apps.d.ts.map +1 -0
- package/dist/tui/routes/apps.js +296 -0
- package/dist/tui/routes/apps.js.map +1 -0
- package/dist/tui/routes/common.d.ts +4 -0
- package/dist/tui/routes/common.d.ts.map +1 -0
- package/dist/tui/routes/common.js +117 -0
- package/dist/tui/routes/common.js.map +1 -0
- package/dist/tui/routes/context.d.ts +43 -0
- package/dist/tui/routes/context.d.ts.map +1 -0
- package/dist/tui/routes/gateway.d.ts +3 -0
- package/dist/tui/routes/gateway.d.ts.map +1 -0
- package/dist/tui/routes/gateway.js +199 -0
- package/dist/tui/routes/gateway.js.map +1 -0
- package/dist/tui/routes/proxy.d.ts +3 -0
- package/dist/tui/routes/proxy.d.ts.map +1 -0
- package/dist/tui/routes/proxy.js +234 -0
- package/dist/tui/routes/proxy.js.map +1 -0
- package/dist/tui/screens/account-detail.d.ts +14 -0
- package/dist/tui/screens/account-detail.d.ts.map +1 -0
- package/dist/tui/screens/account-detail.js +98 -0
- package/dist/tui/screens/account-detail.js.map +1 -0
- package/dist/tui/screens/accounts-home.d.ts +42 -0
- package/dist/tui/screens/accounts-home.d.ts.map +1 -0
- package/dist/tui/screens/accounts-home.js +321 -0
- package/dist/tui/screens/accounts-home.js.map +1 -0
- package/dist/tui/screens/add-account.d.ts +70 -0
- package/dist/tui/screens/add-account.d.ts.map +1 -0
- package/dist/tui/screens/add-account.js +323 -0
- package/dist/tui/screens/add-account.js.map +1 -0
- package/dist/tui/screens/anypick-home.d.ts +39 -0
- package/dist/tui/screens/anypick-home.d.ts.map +1 -0
- package/dist/tui/screens/anypick-home.js +253 -0
- package/dist/tui/screens/anypick-home.js.map +1 -0
- package/dist/tui/screens/anypick-preview.d.ts +13 -0
- package/dist/tui/screens/anypick-preview.d.ts.map +1 -0
- package/dist/tui/screens/anypick-preview.js +49 -0
- package/dist/tui/screens/anypick-preview.js.map +1 -0
- package/dist/tui/screens/app-route-preview.d.ts +14 -0
- package/dist/tui/screens/app-route-preview.d.ts.map +1 -0
- package/dist/tui/screens/app-route-preview.js +35 -0
- package/dist/tui/screens/app-route-preview.js.map +1 -0
- package/dist/tui/screens/app-route-source.d.ts +15 -0
- package/dist/tui/screens/app-route-source.d.ts.map +1 -0
- package/dist/tui/screens/app-route-source.js +97 -0
- package/dist/tui/screens/app-route-source.js.map +1 -0
- package/dist/tui/screens/apps-home.d.ts +22 -0
- package/dist/tui/screens/apps-home.d.ts.map +1 -0
- package/dist/tui/screens/apps-home.js +111 -0
- package/dist/tui/screens/apps-home.js.map +1 -0
- package/dist/tui/screens/confirm.d.ts +19 -0
- package/dist/tui/screens/confirm.d.ts.map +1 -0
- package/dist/tui/screens/confirm.js +42 -0
- package/dist/tui/screens/confirm.js.map +1 -0
- package/dist/tui/screens/credential-form.d.ts +30 -0
- package/dist/tui/screens/credential-form.d.ts.map +1 -0
- package/dist/tui/screens/credential-form.js +241 -0
- package/dist/tui/screens/credential-form.js.map +1 -0
- package/dist/tui/screens/gateway-connection-form.d.ts +16 -0
- package/dist/tui/screens/gateway-connection-form.d.ts.map +1 -0
- package/dist/tui/screens/gateway-connection-form.js +127 -0
- package/dist/tui/screens/gateway-connection-form.js.map +1 -0
- package/dist/tui/screens/gateway-pick-provider.d.ts +19 -0
- package/dist/tui/screens/gateway-pick-provider.d.ts.map +1 -0
- package/dist/tui/screens/gateway-pick-provider.js +62 -0
- package/dist/tui/screens/gateway-pick-provider.js.map +1 -0
- package/dist/tui/screens/gateways-home.d.ts +38 -0
- package/dist/tui/screens/gateways-home.d.ts.map +1 -0
- package/dist/tui/screens/gateways-home.js +247 -0
- package/dist/tui/screens/gateways-home.js.map +1 -0
- package/dist/tui/screens/health.d.ts +16 -0
- package/dist/tui/screens/health.d.ts.map +1 -0
- package/dist/tui/screens/health.js +109 -0
- package/dist/tui/screens/health.js.map +1 -0
- package/dist/tui/screens/help.d.ts +10 -0
- package/dist/tui/screens/help.d.ts.map +1 -0
- package/dist/tui/screens/help.js +213 -0
- package/dist/tui/screens/help.js.map +1 -0
- package/dist/tui/screens/manage-apps.d.ts +29 -0
- package/dist/tui/screens/manage-apps.d.ts.map +1 -0
- package/dist/tui/screens/manage-apps.js +165 -0
- package/dist/tui/screens/manage-apps.js.map +1 -0
- package/dist/tui/screens/proxy-board-helpers.d.ts +9 -0
- package/dist/tui/screens/proxy-board-helpers.d.ts.map +1 -0
- package/dist/tui/screens/proxy-board-helpers.js +70 -0
- package/dist/tui/screens/proxy-board-helpers.js.map +1 -0
- package/dist/tui/screens/proxy-board.d.ts +43 -0
- package/dist/tui/screens/proxy-board.d.ts.map +1 -0
- package/dist/tui/screens/proxy-board.js +351 -0
- package/dist/tui/screens/proxy-board.js.map +1 -0
- package/dist/tui/screens/proxy-hub.d.ts +21 -0
- package/dist/tui/screens/proxy-hub.d.ts.map +1 -0
- package/dist/tui/screens/proxy-hub.js +150 -0
- package/dist/tui/screens/proxy-hub.js.map +1 -0
- package/dist/tui/screens/proxy-models-utils.d.ts +13 -0
- package/dist/tui/screens/proxy-models-utils.d.ts.map +1 -0
- package/dist/tui/screens/proxy-models-utils.js +53 -0
- package/dist/tui/screens/proxy-models-utils.js.map +1 -0
- package/dist/tui/screens/proxy-models.d.ts +65 -0
- package/dist/tui/screens/proxy-models.d.ts.map +1 -0
- package/dist/tui/screens/proxy-models.js +252 -0
- package/dist/tui/screens/proxy-models.js.map +1 -0
- package/dist/tui/screens/proxy.d.ts +26 -0
- package/dist/tui/screens/proxy.d.ts.map +1 -0
- package/dist/tui/screens/text-input.d.ts +18 -0
- package/dist/tui/screens/text-input.d.ts.map +1 -0
- package/dist/tui/screens/text-input.js +67 -0
- package/dist/tui/screens/text-input.js.map +1 -0
- package/dist/tui/screens/tray-runtime.d.ts +19 -0
- package/dist/tui/screens/tray-runtime.d.ts.map +1 -0
- package/dist/tui/screens/tray-runtime.js +108 -0
- package/dist/tui/screens/tray-runtime.js.map +1 -0
- package/dist/tui/use-tui-nav.d.ts +40 -0
- package/dist/tui/use-tui-nav.d.ts.map +1 -0
- package/dist/tui/use-tui-nav.js +256 -0
- package/dist/tui/use-tui-nav.js.map +1 -0
- package/dist/tui/use-tui-shell.d.ts +46 -0
- package/dist/tui/use-tui-shell.d.ts.map +1 -0
- package/dist/tui/use-tui-shell.js +95 -0
- package/dist/tui/use-tui-shell.js.map +1 -0
- package/dist/types/account.d.ts +410 -0
- package/dist/types/account.d.ts.map +1 -0
- package/dist/types/account.js +7 -0
- package/dist/types/account.js.map +1 -0
- package/dist/types/bindings.d.ts +300 -0
- package/dist/types/bindings.d.ts.map +1 -0
- package/dist/types/catalog.d.ts +165 -0
- package/dist/types/catalog.d.ts.map +1 -0
- package/dist/types/clients.d.ts +174 -0
- package/dist/types/clients.d.ts.map +1 -0
- package/dist/types/clients.js +11 -0
- package/dist/types/clients.js.map +1 -0
- package/dist/types/plugins.d.ts +89 -0
- package/dist/types/plugins.d.ts.map +1 -0
- package/dist/types/plugins.js +14 -0
- package/dist/types/plugins.js.map +1 -0
- package/dist/types/proxy-hub.d.ts +109 -0
- package/dist/types/proxy-hub.d.ts.map +1 -0
- package/dist/types.d.ts +7 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +1 -0
- package/dist/utils/errors.d.ts +61 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +119 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/fs.d.ts +39 -0
- package/dist/utils/fs.d.ts.map +1 -0
- package/dist/utils/fs.js +126 -0
- package/dist/utils/fs.js.map +1 -0
- package/dist/utils/lock.d.ts +33 -0
- package/dist/utils/lock.d.ts.map +1 -0
- package/dist/utils/lock.js +95 -0
- package/dist/utils/lock.js.map +1 -0
- package/dist/utils/log.d.ts +10 -0
- package/dist/utils/log.d.ts.map +1 -0
- package/dist/utils/log.js +21 -0
- package/dist/utils/log.js.map +1 -0
- package/dist/utils/network.d.ts +3 -0
- package/dist/utils/network.d.ts.map +1 -0
- package/dist/utils/network.js +13 -0
- package/dist/utils/network.js.map +1 -0
- package/dist/utils/process/binary.d.ts +14 -0
- package/dist/utils/process/binary.d.ts.map +1 -0
- package/dist/utils/process/binary.js +29 -0
- package/dist/utils/process/binary.js.map +1 -0
- package/dist/utils/process/follow.d.ts +2 -0
- package/dist/utils/process/follow.d.ts.map +1 -0
- package/dist/utils/process/follow.js +90 -0
- package/dist/utils/process/follow.js.map +1 -0
- package/dist/utils/process/health.d.ts +43 -0
- package/dist/utils/process/health.d.ts.map +1 -0
- package/dist/utils/process/health.js +132 -0
- package/dist/utils/process/health.js.map +1 -0
- package/dist/utils/process/pid.d.ts +95 -0
- package/dist/utils/process/pid.d.ts.map +1 -0
- package/dist/utils/process/pid.js +243 -0
- package/dist/utils/process/pid.js.map +1 -0
- package/dist/utils/process.d.ts +5 -0
- package/dist/utils/process.d.ts.map +1 -0
- package/dist/utils/process.js +5 -0
- package/dist/utils/slug.d.ts +18 -0
- package/dist/utils/slug.d.ts.map +1 -0
- package/dist/utils/slug.js +42 -0
- package/dist/utils/slug.js.map +1 -0
- package/package.json +121 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","names":[],"sources":["../../src/cli/commands.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { createRequire } from 'node:module';\nimport type { AnyPickApp } from '../core/app';\nimport type { ProxyHandle } from '../types';\nimport { printAccounts, printProviders, printProxyStatus } from './format';\nimport { MARK, setUxMode, withSpin, printError, next, success, info, warn } from './ux';\nimport { runInteractive } from './interactive';\nimport { afterHelpText, proxyHelp } from './help';\nimport { completionScript, type Shell } from './completion';\nimport { registerPrimaryCommands, type GlobalOpts as PrimaryGlobalOpts } from './primary';\nimport { registerPluginGroup } from './plugin-commands';\nimport { BRAND_TAGLINE } from '../core/brand';\nimport { providerCanProxy } from '../core/capabilities';\nimport { ExitCode, isAnyPickError, anypickError } from '../utils/errors';\nimport pc from 'picocolors';\nimport { desktopTraySurfaceAvailable, launchSurface, type LaunchSurface } from '../tray/settings';\n\nexport interface GlobalOpts extends PrimaryGlobalOpts {\n json?: boolean;\n verbose?: boolean;\n dryRun?: boolean;\n reveal?: boolean;\n quiet?: boolean;\n /** Commander exposes a negated --no-input option as `input: false`. */\n input?: boolean;\n yes?: boolean;\n trace?: boolean;\n tui?: boolean;\n tray?: boolean;\n}\n\nfunction globals(program: Command): GlobalOpts {\n return program.optsWithGlobals() as GlobalOpts;\n}\n\nfunction applyUxFromProgram(program: Command): void {\n const g = globals(program);\n setUxMode({\n json: Boolean(g.json),\n quiet: Boolean(g.quiet),\n verbose: Boolean(g.verbose),\n interactive: Boolean(process.stdout.isTTY && !g.json && !g.quiet),\n });\n}\n\nfunction pkgVersion(): string {\n try {\n const require = createRequire(import.meta.url);\n const pkg = require('../../package.json') as { version?: string };\n return pkg.version ?? '0.0.0';\n } catch {\n return '0.0.0';\n }\n}\n\n/**\n * Proxy handles contain the per-instance bearer token used by local clients.\n * That token is intentionally transient and must never cross a CLI output\n * boundary (especially JSON, which is routinely captured in CI logs).\n */\nfunction publicProxyHandle(\n handle: ProxyHandle | undefined,\n): Omit<ProxyHandle, 'token'> | undefined {\n if (!handle) {\n return undefined;\n }\n const { token: _token, ...safe } = handle;\n return safe;\n}\n\nfunction printDryRunCommand(\n program: Command,\n action: string,\n detail: string,\n extra?: Record<string, unknown>,\n): void {\n const g = globals(program);\n if (g.json) {\n console.log(JSON.stringify({ dryRun: true, action, ...extra }));\n } else {\n info(`[dry-run] ${detail}`);\n }\n}\n\nexport function requestedLaunchSurface(\n options: { tui?: boolean; tray?: boolean },\n envValue: string | undefined,\n configured: LaunchSurface | undefined,\n): LaunchSurface | undefined {\n if (options.tui && options.tray) {\n throw anypickError('Choose only one of --tui or --tray.', 'INVALID_USAGE', {\n exitCode: ExitCode.INVALID_USAGE,\n suggestions: ['anypick --tui', 'anypick --tray'],\n });\n }\n if (options.tui) {\n return 'tui';\n }\n if (options.tray) {\n return 'tray';\n }\n if (envValue != null && envValue !== '') {\n if (envValue === 'tui' || envValue === 'tray') {\n return envValue;\n }\n throw anypickError('ANYPICK_UI must be \"tui\" or \"tray\".', 'INVALID_USAGE', {\n exitCode: ExitCode.INVALID_USAGE,\n });\n }\n return configured;\n}\n\nasync function saveLaunchSurface(app: AnyPickApp, surface: LaunchSurface): Promise<void> {\n await app.config.setLaunchSurface(surface);\n}\n\nasync function chooseLaunchSurface(): Promise<LaunchSurface | undefined> {\n if (!desktopTraySurfaceAvailable()) {\n return 'tui';\n }\n const { isCancel, select } = await import('@clack/prompts');\n const selected = await select<LaunchSurface>({\n message: 'How do you want to use AnyPick by default?',\n options: [\n {\n value: 'tray',\n label: 'Menu bar Tray',\n hint: 'recommended for daily switching',\n },\n { value: 'tui', label: 'Terminal UI', hint: 'stay in this terminal' },\n ],\n });\n if (isCancel(selected)) {\n process.exitCode = ExitCode.CANCELLED;\n return undefined;\n }\n return selected;\n}\n\nasync function openTui(app: AnyPickApp): Promise<void> {\n const { runTuiApp } = await import('../tui/app-ui');\n runTuiApp(app);\n}\n\nasync function openTray(app: AnyPickApp, json = false): Promise<void> {\n if (!desktopTraySurfaceAvailable()) {\n throw anypickError(\n 'The desktop Tray is not available on this installation.',\n 'UNSUPPORTED_PLATFORM',\n {\n suggestions: ['anypick tui'],\n },\n );\n }\n const { startTray } = await import('../tray/supervisor');\n const result = await startTray(app.root, process.argv[1] ?? '');\n if (json) {\n console.log(JSON.stringify({ surface: 'tray', running: true, ...result }));\n return;\n }\n success(\n result.started\n ? `AnyPick Tray started (pid ${result.pid}). Look for it in the menu bar.`\n : `AnyPick Tray is already running (pid ${result.pid}).`,\n );\n}\n\n/**\n * CLI surface (DX redesign §5):\n * use / run / current / list / add / link / unlink / reset / preset\n * doctor / proxy / providers / clients / completion\n */\nexport function buildProgram(app: AnyPickApp): Command {\n const program = new Command();\n const { accounts, profiles, catalog, clients, doctor } = app;\n\n program\n .name('anypick')\n .description(BRAND_TAGLINE)\n .version(pkgVersion())\n .option('--json', 'JSON output', false)\n .option('-v, --verbose', 'Verbose logging', false)\n .option('-q, --quiet', 'Minimal output', false)\n .option('--dry-run', 'Plan only; no writes', false)\n .option('--reveal', 'Show secrets (dangerous)', false)\n .option('--no-input', 'Never prompt')\n .option('-y, --yes', 'Skip destructive confirmation', false)\n .option('--trace', 'Internal step names (no secrets)', false)\n .option('--tui', 'Open the Terminal UI for this run', false)\n .option('--tray', 'Open the desktop Tray for this run', false)\n .showSuggestionAfterError(true)\n .action(async () => {\n applyUxFromProgram(program);\n if (!process.stdin.isTTY || !process.stdout.isTTY) {\n program.outputHelp();\n process.exitCode = 2;\n return;\n }\n if (process.env.ANYPICK_TUI === '0') {\n await runInteractive(app);\n return;\n }\n const configured = launchSurface(await app.config.read());\n const requested = requestedLaunchSurface(\n globals(program),\n process.env.ANYPICK_UI,\n configured,\n );\n const surface = requested ?? (await chooseLaunchSurface());\n if (!surface) {\n return;\n }\n if (surface === 'tray') {\n await openTray(app, Boolean(globals(program).json));\n } else {\n if (!requested) {\n await saveLaunchSurface(app, surface);\n }\n await openTui(app);\n }\n if (!requested && surface === 'tray') {\n await saveLaunchSurface(app, surface);\n }\n })\n .addHelpText('after', afterHelpText());\n\n program.hook('preAction', (_thisCommand, actionCommand) => {\n const root = actionCommand.parent ?? actionCommand;\n let p: Command | null = actionCommand;\n while (p?.parent) {\n p = p.parent;\n }\n applyUxFromProgram(p ?? root);\n });\n\n registerPrimaryCommands(program, app, () => globals(program));\n\n program\n .command('tui')\n .description('Open the AnyPick Terminal UI')\n .action(async () => {\n if (!process.stdin.isTTY || !process.stdout.isTTY) {\n throw anypickError('The Terminal UI requires an interactive terminal.', 'TTY_REQUIRED', {\n exitCode: ExitCode.INVALID_USAGE,\n });\n }\n await openTui(app);\n });\n\n const tray = program\n .command('tray')\n .description('Open the AnyPick Tray or manage its background supervisor')\n .action(async () => {\n await openTray(app, Boolean(globals(program).json));\n });\n\n tray\n .command('start')\n .description('Start the AnyPick proxy supervisor (menu-bar icon on macOS)')\n .action(async () => {\n const g = globals(program);\n if (g.dryRun) {\n printDryRunCommand(program, 'tray.start', 'Would start the AnyPick tray supervisor');\n return;\n }\n try {\n const { startTray } = await import('../tray/supervisor');\n const result = await startTray(app.root, process.argv[1] ?? '');\n if (g.json) {\n console.log(JSON.stringify({ running: true, ...result }));\n return;\n }\n const subject = process.platform === 'darwin' ? 'AnyPick tray' : 'AnyPick supervisor';\n success(\n result.started\n ? `${subject} started (pid ${result.pid})`\n : `${subject} already running (pid ${result.pid})`,\n );\n } catch (err) {\n printError(err);\n process.exitCode = 1;\n }\n });\n\n tray\n .command('status')\n .description('Show proxy supervisor status')\n .action(async () => {\n const { trayStatus } = await import('../tray/supervisor');\n const status = await trayStatus(app.root);\n if (globals(program).json) {\n console.log(JSON.stringify(status, null, 2));\n return;\n }\n if (!status.running) {\n info(\n `${process.platform === 'darwin' ? 'AnyPick tray' : 'AnyPick supervisor'} is stopped.`,\n );\n return;\n }\n const mode =\n status.mode === 'headless'\n ? 'headless'\n : status.mode === 'tauri'\n ? 'Tauri tray'\n : 'menu-bar';\n success(\n `AnyPick supervisor running (pid ${status.pid}, ${status.proxyCount ?? '?'} proxies, ${mode})`,\n );\n });\n\n tray\n .command('stop')\n .description('Stop the supervisor and gracefully stop all AnyPick proxies')\n .action(async () => {\n const g = globals(program);\n if (g.dryRun) {\n printDryRunCommand(\n program,\n 'tray.stop',\n 'Would stop the AnyPick tray supervisor and proxies',\n );\n return;\n }\n const { stopTray } = await import('../tray/supervisor');\n const stopped = await stopTray(app.root);\n if (g.json) {\n console.log(JSON.stringify({ stopped }));\n return;\n }\n if (stopped) {\n success(\n `${process.platform === 'darwin' ? 'AnyPick tray' : 'AnyPick supervisor'} and proxies stopped.`,\n );\n } else {\n info(\n `${process.platform === 'darwin' ? 'AnyPick tray' : 'AnyPick supervisor'} is not running.`,\n );\n }\n });\n\n tray\n .command('run', { hidden: true })\n .description('Run the foreground proxy supervisor')\n .action(async () => {\n const { runTraySupervisor } = await import('../tray/supervisor');\n await runTraySupervisor(app);\n });\n\n // Dynamic completion helper\n program\n .command('__complete', { hidden: true })\n .argument('<kind>', 'providers | accounts | gateways | clients')\n .argument('[arg]', 'provider id for accounts')\n .action(async (kind: string, arg?: string) => {\n setUxMode({ quiet: true, json: false, interactive: false });\n if (kind === 'providers') {\n for (const p of accounts.listProviders()) {\n console.log(p.id);\n }\n return;\n }\n if (kind === 'clients') {\n for (const c of clients.list()) {\n console.log(c.id);\n }\n return;\n }\n if (kind === 'gateways' || kind === 'profiles') {\n for (const p of await profiles.list()) {\n console.log(p.meta.name);\n }\n return;\n }\n if (kind === 'accounts') {\n const list = await accounts.list(arg);\n for (const a of list) {\n console.log(a.name);\n }\n return;\n }\n process.exitCode = 1;\n });\n\n program\n .command('update')\n .description('Update AnyPick to the latest npm release')\n .option('--check', 'Only report whether a newer release exists', false)\n .action(async (opts: { check?: boolean }) => {\n const g = globals(program);\n const { checkForUpdate, installCommand, installLatest } = await import('../core/update');\n const status = await withSpin('Checking npm for a newer release', () =>\n checkForUpdate(pkgVersion()),\n );\n const command = installCommand(status.latest);\n\n if (!status.updateAvailable) {\n if (g.json) {\n console.log(JSON.stringify({ ...status, updated: false }, null, 2));\n } else {\n success(`Already on the latest release (${status.current})`);\n }\n return;\n }\n\n if (opts.check) {\n if (g.json) {\n console.log(JSON.stringify({ ...status, updated: false }, null, 2));\n return;\n }\n info(`Update available: ${status.current} → ${pc.bold(status.latest)}`);\n next('anypick update');\n return;\n }\n\n if (g.dryRun) {\n printDryRunCommand(program, 'update', `Would run ${command}`, { latest: status.latest });\n return;\n }\n\n info(`Updating ${status.current} → ${pc.bold(status.latest)} via ${command}`);\n await installLatest({\n version: status.latest,\n silent: Boolean(g.json || g.quiet),\n });\n if (g.json) {\n console.log(JSON.stringify({ ...status, updated: true }, null, 2));\n return;\n }\n success(`Updated to ${status.latest}`);\n next('anypick --version');\n });\n\n program\n .command('completion')\n .description('Shell completion (zsh | bash | fish)')\n .argument('<shell>', 'zsh | bash | fish')\n .action((shell: string) => {\n const s = shell.toLowerCase() as Shell;\n if (!['zsh', 'bash', 'fish'].includes(s)) {\n console.error(pc.red(MARK.fail), `Unknown shell \"${shell}\"`);\n console.error(pc.dim(' → Use one of: anypick completion zsh|bash|fish'));\n process.exitCode = 1;\n return;\n }\n process.stdout.write(completionScript(s));\n });\n\n program\n .command('doctor')\n .description('Diagnose setup; auto-fix only safe AnyPick-owned state')\n .argument('[target]', 'Optional filter (client, provider, …)')\n .option('--fix', 'Apply hard-allowlisted fixes only', false)\n .action(async (target: string | undefined, opts: { fix?: boolean }) => {\n const g = globals(program);\n const report = await doctor.run(target);\n\n if (g.json && !opts.fix) {\n console.log(JSON.stringify(report, null, 2));\n if (!report.ok) {\n process.exitCode = 1;\n }\n return;\n }\n\n if (!opts.fix) {\n console.log(pc.bold('anypick doctor'));\n console.log(pc.dim(report.root));\n console.log();\n for (const c of report.checks) {\n console.log(`${c.ok ? pc.green(MARK.ok) : pc.red(MARK.fail)} ${c.message}`);\n if (c.detail && g.verbose) {\n console.log(pc.dim(` ${c.detail}`));\n }\n if (!c.ok && c.forbidden && c.suggestions?.length) {\n console.log(pc.dim(' Doctor will not auto-fix this. Manual:'));\n for (const s of c.suggestions) {\n console.log(pc.dim(` ${s}`));\n }\n }\n }\n console.log();\n if (report.ok) {\n success('All checks passed');\n } else {\n warn('Some checks failed — re-run with --fix for safe repairs');\n process.exitCode = 1;\n }\n return;\n }\n\n const { enrichFixPlan, formatForbiddenManual } = await import('../core/doctor');\n const plan = enrichFixPlan(await doctor.planFixes(target));\n\n if (g.json) {\n if (!g.dryRun && !g.yes) {\n console.log(\n JSON.stringify(\n {\n error: {\n code: 'CONFIRMATION_REQUIRED',\n message: 'doctor --fix in JSON/non-interactive mode requires --yes',\n plan,\n mutated: false,\n },\n },\n null,\n 2,\n ),\n );\n process.exitCode = 2;\n return;\n }\n const result = await doctor.applyFixes(plan, {\n dryRun: g.dryRun,\n yes: g.yes,\n });\n console.log(JSON.stringify(result, null, 2));\n if (result.applied.some((a) => !a.ok)) {\n process.exitCode = 1;\n }\n return;\n }\n\n console.log(pc.bold('anypick doctor --fix'));\n console.log(pc.dim(report.root));\n console.log();\n\n if (plan.manual.length) {\n console.log(pc.bold('Will not auto-fix (manual required):'));\n for (const m of plan.manual) {\n console.log();\n console.log(formatForbiddenManual(m));\n }\n console.log();\n }\n\n if (plan.actions.length === 0) {\n if (plan.manual.length === 0 && report.ok) {\n success('Nothing to fix');\n } else {\n info('No allowlisted auto-fixes available');\n }\n if (!report.ok) {\n process.exitCode = 1;\n }\n return;\n }\n\n console.log(pc.bold('Allowlisted fix plan:'));\n for (const a of plan.actions) {\n console.log(` · [${a.kind}] ${a.description}`);\n if (g.verbose) {\n console.log(pc.dim(` target: ${a.target}`));\n }\n }\n console.log();\n\n if (g.dryRun) {\n const result = await doctor.applyFixes(plan, { dryRun: true });\n for (const a of result.applied) {\n console.log(pc.dim(a.message));\n }\n info('Dry run — no changes made');\n return;\n }\n\n if (!g.yes) {\n if (!process.stdin.isTTY || !process.stderr.isTTY) {\n warn('Non-interactive doctor --fix requires --yes (or --dry-run)');\n process.exitCode = 2;\n return;\n }\n const ok = await confirmDelete(`${plan.actions.length} allowlisted fix(es)`, false);\n if (!ok) {\n info('Cancelled.');\n process.exitCode = 130;\n return;\n }\n }\n\n const result = await doctor.applyFixes(plan, { dryRun: false, yes: true });\n for (const a of result.applied) {\n if (a.ok) {\n success(a.message);\n } else {\n warn(a.message);\n }\n }\n if (result.applied.some((a) => !a.ok)) {\n process.exitCode = 1;\n }\n });\n\n registerProxyGroup(program, app);\n registerAccountGroup(program, app);\n registerGatewayGroup(program, app);\n registerPluginGroup(program, app);\n\n program\n .command('providers')\n .description('List account providers + gateway catalog')\n .action(() => {\n const auth = accounts.listProviders();\n if (globals(program).json) {\n console.log(\n JSON.stringify(\n {\n accounts: auth.map((p) => ({\n id: p.id,\n name: p.name,\n proxy: providerCanProxy(p),\n })),\n catalog: catalog.list().map((c) => ({\n id: c.id,\n name: c.name,\n apiStyle: c.apiStyle,\n })),\n },\n null,\n 2,\n ),\n );\n return;\n }\n console.log(pc.bold('Accounts') + pc.dim(' (native logins)'));\n printProviders(auth, false);\n console.log();\n console.log(pc.bold('Catalog') + pc.dim(' (gateways)'));\n for (const c of catalog.list()) {\n console.log(`${pc.bold(c.id.padEnd(12))} ${pc.dim(c.name)}`);\n }\n });\n\n program\n .command('clients')\n .description('List supported clients')\n .action(() => {\n if (globals(program).json) {\n console.log(\n JSON.stringify(\n clients.list().map((c) => ({\n id: c.id,\n name: c.name,\n description: c.description,\n })),\n null,\n 2,\n ),\n );\n return;\n }\n for (const c of clients.list()) {\n console.log(`${pc.bold(c.id.padEnd(10))} ${pc.dim(c.name)}`);\n if (c.description) {\n console.log(`${''.padEnd(10)} ${pc.dim(c.description)}`);\n }\n }\n });\n\n return program;\n}\n\n// ── account (CRUD helpers beyond `add account`) ──────────────────\n\nfunction registerAccountGroup(program: Command, app: AnyPickApp): void {\n const { accounts } = app;\n const account = program.command('account').description('Manage saved accounts');\n\n account\n .command('list')\n .alias('ls')\n .description('List saved accounts')\n .argument('[provider]', 'Filter by provider')\n .action(async (provider?: string) => {\n const list = await accounts.list(provider);\n if (globals(program).json) {\n console.log(JSON.stringify(list, null, 2));\n return;\n }\n printAccounts(list, false);\n });\n\n account\n .command('remove')\n .alias('rm')\n .description('Delete a saved account')\n .argument('<provider>')\n .argument('<name>')\n .action(async (provider: string, name: string) => {\n const g = globals(program);\n if (g.dryRun) {\n printDryRunCommand(program, 'account.remove', `Would remove ${provider}/${name}`, {\n provider,\n name,\n });\n return;\n }\n if (!(await confirmDelete(`${provider}/${name}`, g.yes))) {\n return;\n }\n await accounts.delete(provider, name);\n success(`Removed ${provider}/${name}`);\n });\n\n account\n .command('refresh')\n .description('Refresh OAuth tokens (live or saved)')\n .argument('<provider>', 'codex | grok | opencode | …')\n .argument('[name]', 'Saved account (default: live)')\n .option('--all', 'Every saved account', false)\n .action(async (provider: string, name: string | undefined, opts: { all?: boolean }) => {\n if (globals(program).dryRun) {\n printDryRunCommand(\n program,\n 'account.refresh',\n `Would refresh ${provider}${name ? `/${name}` : opts.all ? ' (all)' : ' live'}`,\n { provider, name: name ?? null, all: Boolean(opts.all) },\n );\n return;\n }\n const results = await withSpin(\n `Refreshing ${provider}${name ? `/${name}` : opts.all ? ' (all)' : ' live'}…`,\n () => accounts.refresh(provider, name, { all: opts.all }),\n { success: 'Refresh done' },\n );\n if (globals(program).json) {\n console.log(JSON.stringify(results, null, 2));\n return;\n }\n let failed = 0;\n for (const r of results) {\n if (r.ok) {\n success(`Refreshed ${r.target}` + (r.identity ? ` (${r.identity})` : ''));\n } else {\n failed += 1;\n console.error(pc.red(MARK.fail), `${r.target}: ${r.error}`);\n }\n }\n if (failed > 0) {\n process.exitCode = 1;\n }\n });\n\n account\n .command('export')\n .description('Export a saved account snapshot')\n .argument('<provider>')\n .argument('<name>')\n .requiredOption('-o, --out <path>', 'Output path')\n .action(async (provider: string, name: string, opts: { out: string }) => {\n if (globals(program).dryRun) {\n printDryRunCommand(\n program,\n 'account.export',\n `Would export ${provider}/${name} → ${opts.out}`,\n {\n provider,\n name,\n out: opts.out,\n },\n );\n return;\n }\n await accounts.exportAccount(provider, name, opts.out);\n success(`Exported ${provider}/${name} → ${opts.out}`);\n });\n\n account\n .command('import')\n .description('Import an account snapshot')\n .argument('<provider>')\n .argument('<name>')\n .requiredOption('-i, --in <path>', 'Input path')\n .option('-f, --force', 'Overwrite existing', false)\n .action(async (provider: string, name: string, opts: { in: string; force?: boolean }) => {\n if (globals(program).dryRun) {\n printDryRunCommand(\n program,\n 'account.import',\n `Would import ${provider}/${name} from ${opts.in}`,\n {\n provider,\n name,\n input: opts.in,\n force: Boolean(opts.force),\n },\n );\n return;\n }\n const meta = await accounts.importAccount(provider, name, opts.in, {\n force: Boolean(opts.force),\n });\n success(`Imported ${provider}/${meta.name}`);\n });\n}\n\n// ── gateway (CRUD helpers beyond `add gateway`) ──────────────────\n\nfunction registerGatewayGroup(program: Command, app: AnyPickApp): void {\n const { profiles } = app;\n const gateway = program.command('gateway').description('Manage API gateways');\n\n gateway\n .command('list')\n .alias('ls')\n .description('List gateways')\n .action(async () => {\n const list = await profiles.list();\n if (globals(program).json) {\n console.log(\n JSON.stringify(\n list.map((p) => ({\n name: p.meta.name,\n provider: p.meta.provider,\n endpoint: p.meta.endpoint,\n defaultModel: p.meta.defaultModel,\n })),\n null,\n 2,\n ),\n );\n return;\n }\n if (list.length === 0) {\n console.log(pc.dim('No gateways.'));\n console.log(pc.dim(' → anypick add gateway <name> --provider openrouter --endpoint …'));\n return;\n }\n for (const p of list) {\n const key = p.secrets.apiKey ? pc.green('key') : pc.yellow('no-key');\n console.log(\n ` ${pc.bold(p.meta.name.padEnd(18))} ${pc.cyan(p.meta.provider.padEnd(10))} ${key} ${pc.dim(p.meta.defaultModel ?? '')}`,\n );\n }\n });\n\n gateway\n .command('show')\n .description('Show a gateway')\n .argument('<name>')\n .action(async (name: string) => {\n const p = await profiles.get(name);\n const redacted = profiles.redact(p, globals(program).reveal);\n if (globals(program).json) {\n console.log(JSON.stringify(redacted, null, 2));\n return;\n }\n console.log(pc.bold(p.meta.name));\n console.log(` provider ${p.meta.provider}`);\n console.log(` endpoint ${p.meta.endpoint ?? '—'}`);\n console.log(` apiKey ${redacted.secrets.apiKey ?? '—'}`);\n console.log(` model ${p.meta.defaultModel ?? '—'}`);\n });\n\n gateway\n .command('edit')\n .description('Edit gateway fields')\n .argument('<name>')\n .option('--endpoint <url>')\n .option('--api-key <key>')\n .option('-m, --model <id>', 'Default model')\n .option('--models <id...>', 'Models to expose in Codex /model')\n .action(\n async (\n name: string,\n opts: { endpoint?: string; apiKey?: string; model?: string; models?: string[] },\n ) => {\n if (globals(program).dryRun) {\n printDryRunCommand(program, 'gateway.edit', `Would update gateway ${name}`, {\n name,\n endpoint: opts.endpoint,\n model: opts.model,\n models: opts.models,\n hasApiKey: opts.apiKey !== undefined,\n });\n return;\n }\n const edited = await profiles.edit(name, {\n endpoint: opts.endpoint,\n apiKey: opts.apiKey,\n defaultModel: opts.model,\n models: modelMap(opts.models),\n });\n success(`Updated gateway ${edited.meta.name}`);\n },\n );\n\n gateway\n .command('remove')\n .alias('rm')\n .description('Delete a gateway')\n .argument('<name>')\n .action(async (name: string) => {\n const g = globals(program);\n if (g.dryRun) {\n if (g.json) {\n console.log(JSON.stringify({ dryRun: true, action: 'gateway.remove', name }));\n } else {\n info(`[dry-run] Would remove gateway ${name}`);\n }\n return;\n }\n if (!(await confirmDelete(`gateway ${name}`, g.yes))) {\n return;\n }\n await profiles.delete(name);\n success(`Removed gateway ${name}`);\n });\n\n gateway\n .command('reset')\n .description('Clear AnyPick-managed client config that pointed at a gateway')\n .option('-c, --client <id>', 'Client id', 'claude')\n .action(async (opts: { client: string }) => {\n // Route through bindingService.reset so binding + runtime client config are\n // reconciled together (runtime.reset alone leaves the binding store stale).\n const result = await app.bindingService.reset(opts.client, {\n dryRun: globals(program).dryRun,\n });\n if (globals(program).json) {\n console.log(JSON.stringify(result));\n return;\n }\n if (result.dryRun) {\n info(`[dry-run] reset ${result.client}`);\n } else {\n success(`Reset ${result.client}`);\n }\n });\n}\n\nfunction modelMap(modelIds: readonly string[] | undefined): Record<string, string> | undefined {\n const models = [...new Set((modelIds ?? []).map((model) => model.trim()).filter(Boolean))];\n return models.length ? Object.fromEntries(models.map((model) => [model, model])) : undefined;\n}\n\n// ── proxy ────────────────────────────────────────────────────────\n\nfunction registerProxyGroup(program: Command, app: AnyPickApp): void {\n const proxy = program\n .command('proxy')\n .description('Local compatibility proxies')\n .addHelpText('after', proxyHelp())\n .action(async () => {\n await printProxyOverview(app, globals(program).json);\n });\n\n proxy\n .command('status')\n .description('Show proxy status (default: all)')\n .argument('[provider]', 'codex | grok | gemini | kiro | …')\n .argument('[name]', 'Account (default: active)')\n .action(async (provider?: string, name?: string) => {\n const g = globals(program);\n if (provider && name) {\n const p = app.proxy.requireProxyProvider(provider);\n const status = await app.proxy.proxyStatus(provider, name);\n printProxyStatus(provider, name, p.name, status, g.json);\n return;\n }\n if (provider && !name) {\n try {\n const active = (await app.accounts.current(provider)).active;\n if (active) {\n const p = app.proxy.requireProxyProvider(provider);\n const status = await app.proxy.proxyStatus(provider, active);\n printProxyStatus(provider, active, p.name, status, g.json);\n return;\n }\n } catch {\n // fall through\n }\n }\n await printProxyOverview(app, g.json, provider);\n });\n\n const hub = proxy.command('hub').description('Unified local Proxy Hub (opt-in)');\n\n hub\n .command('status')\n .description('Show unified Proxy Hub status')\n .action(async () => {\n const status = await app.hub.status();\n if (globals(program).json) {\n console.log(JSON.stringify(status, null, 2));\n return;\n }\n console.log(\n `Proxy Hub ${status.running ? pc.green('running') : status.enabled ? pc.yellow('enabled') : pc.dim('off')}`,\n );\n if (status.endpoint) {\n console.log(` ${pc.cyan(status.endpoint)}`);\n }\n console.log(\n ` ${status.sourceCount} sources · ${status.modelCount} routed models · ${status.conflictCount} conflicts`,\n );\n });\n\n hub\n .command('enable')\n .description('Enable the unified Hub without changing existing bindings')\n .option('-p, --port <port>', 'Public Hub port', (value: string) => Number(value))\n .option('--host <host>', 'Loopback bind host')\n .option('--start', 'Start the Hub now')\n .action(async (opts: { port?: number; host?: string; start?: boolean }) => {\n try {\n const current = await app.hub.get();\n if (globals(program).dryRun) {\n printDryRunCommand(program, 'proxy.hub.enable', 'Would enable the unified Proxy Hub', {\n host: opts.host ?? current.host,\n port: opts.port ?? current.port,\n start: opts.start === true,\n });\n return;\n }\n const nextHub = await app.hub.save({\n ...current,\n enabled: true,\n host: opts.host ?? current.host,\n port: opts.port ?? current.port,\n });\n const started = opts.start ? await app.hub.ensureRunning(nextHub.name) : undefined;\n if (globals(program).json) {\n console.log(\n JSON.stringify(\n {\n hub: { ...nextHub, endpoint: started?.endpoint },\n started: Boolean(started?.startedNow),\n },\n null,\n 2,\n ),\n );\n return;\n }\n success(`Proxy Hub enabled at ${nextHub.host}:${nextHub.port}`);\n info('Add sources, then bind an app with: anypick use claude --with hub:default');\n } catch (error) {\n printError(error);\n process.exitCode = 1;\n }\n });\n\n hub\n .command('source')\n .description('Enable or disable a saved account behind Proxy Hub')\n .argument('<provider>')\n .argument('<account>')\n .argument('<on|off>')\n .action(async (provider: string, account: string, state: string) => {\n const enabled = state === 'on' || state === 'enable' || state === '1';\n if (!enabled && state !== 'off' && state !== 'disable' && state !== '0') {\n throw anypickError('Expected on or off.', 'INVALID_USAGE', {\n exitCode: ExitCode.INVALID_USAGE,\n });\n }\n const current = await app.hub.get();\n const ref = { kind: 'account' as const, provider, name: account };\n const sourceId = `account/${provider}/${account}`;\n const sources = current.sources.filter(\n (source) =>\n !(\n source.ref.kind === 'account' &&\n `account/${source.ref.provider}/${source.ref.name}` === sourceId\n ),\n );\n sources.push({ ref, enabled });\n if (globals(program).dryRun) {\n printDryRunCommand(\n program,\n 'proxy.hub.source',\n `Would ${enabled ? 'enable' : 'disable'} ${provider}/${account} behind Proxy Hub`,\n { provider, account, enabled },\n );\n return;\n }\n const nextHub = await app.hub.setSources(current.name, sources);\n if (globals(program).json) {\n console.log(JSON.stringify({ hub: nextHub, source: ref, enabled }, null, 2));\n return;\n }\n success(`${provider}/${account} ${enabled ? 'enabled' : 'disabled'} in Proxy Hub`);\n });\n\n hub\n .command('owner')\n .description('Choose the source for a duplicate raw model id')\n .argument('<model>')\n .argument('<provider>')\n .argument('<account>')\n .action(async (model: string, provider: string, account: string) => {\n const current = await app.hub.get();\n if (globals(program).dryRun) {\n printDryRunCommand(\n program,\n 'proxy.hub.owner',\n `Would route ${model} through ${provider}/${account}`,\n {\n model,\n provider,\n account,\n },\n );\n return;\n }\n const source = {\n kind: 'account',\n provider,\n name: account,\n } as const;\n const nextHub = await app.hub.setModelOwner(current.name, model, source);\n if (globals(program).json) {\n console.log(JSON.stringify({ hub: nextHub, model, source }, null, 2));\n return;\n }\n success(`${model} → ${provider}/${account}`);\n });\n\n hub\n .command('preview')\n .description('Refresh source catalogs and show routed models/conflicts')\n .action(async () => {\n const preview = await withSpin('Refreshing Proxy Hub catalogs…', () => app.hub.preview());\n if (globals(program).json) {\n console.log(JSON.stringify(preview, null, 2));\n return;\n }\n console.log(`${preview.routes.length} routed models`);\n for (const conflict of preview.conflicts) {\n console.log(\n pc.yellow(\n ` conflict ${conflict.model} ${conflict.candidates\n .map((source) =>\n source.kind === 'account'\n ? `${source.provider}/${source.name}`\n : `pool:${source.provider}`,\n )\n .join(' · ')}`,\n ),\n );\n }\n for (const unavailable of preview.unavailable) {\n console.log(pc.red(` unavailable ${unavailable.reason}`));\n }\n });\n\n hub\n .command('start')\n .description('Start the unified Proxy Hub')\n .action(async () => {\n const started = await app.hub.ensureRunning();\n if (globals(program).json) {\n console.log(\n JSON.stringify({ endpoint: started.endpoint, started: started.startedNow }, null, 2),\n );\n return;\n }\n success(`${started.startedNow ? 'Started' : 'Using'} Proxy Hub at ${started.endpoint}`);\n });\n\n hub\n .command('stop')\n .description('Stop the unified Proxy Hub')\n .action(async () => {\n if (globals(program).dryRun) {\n printDryRunCommand(program, 'proxy.hub.stop', 'Would stop the unified Proxy Hub');\n return;\n }\n await app.hub.stop();\n if (globals(program).json) {\n console.log(JSON.stringify({ stopped: true }));\n return;\n }\n success('Proxy Hub stopped');\n });\n\n // Multi-account pool (opt-in; default remains single account proxy)\n const pool = proxy.command('pool').description('Multi-account proxy pool (opt-in)');\n\n pool\n .command('status')\n .description('Show pool mode and members')\n .argument('<provider>', 'Proxy-capable provider')\n .action(async (provider: string) => {\n const p = await app.proxy.getPool(provider);\n if (globals(program).json) {\n console.log(JSON.stringify(p, null, 2));\n return;\n }\n console.log(`${provider} pool mode=${p.mode} enabled=${p.enabled}`);\n if (p.port) {\n console.log(` listen ${p.host ?? '127.0.0.1'}:${p.port}`);\n }\n if (p.members.length === 0) {\n console.log(pc.dim(' (no members)'));\n return;\n }\n for (const m of p.members) {\n console.log(` ${m.enabled ? '[x]' : '[ ]'} ${m.account}`);\n }\n if (p.mode === 'single') {\n console.log(\n pc.dim(\n '\\nDefault is single account. Enable multi: anypick proxy pool enable ' + provider,\n ),\n );\n }\n });\n\n pool\n .command('enable')\n .description('Opt-in multi-account pool for a provider')\n .argument('<provider>')\n .option('-p, --port <port>', 'Shared listen port', (v: string) => Number(v))\n .option('--host <host>', 'Listen host')\n .option('--no-start', 'Configure only; do not start')\n .action(async (provider: string, opts: { port?: number; host?: string; start?: boolean }) => {\n try {\n if (globals(program).dryRun) {\n printDryRunCommand(\n program,\n 'proxy.pool.enable',\n `Would enable the ${provider} multi-account pool`,\n {\n provider,\n port: opts.port,\n host: opts.host,\n start: opts.start !== false,\n },\n );\n return;\n }\n const { pool: p, started } = await withSpin(\n 'Enabling multi-account pool…',\n () =>\n app.proxy.enablePoolMulti(provider, {\n port: opts.port,\n host: opts.host,\n start: opts.start !== false,\n }),\n { success: 'Pool multi-mode on' },\n );\n if (globals(program).json) {\n console.log(JSON.stringify({ pool: p, started: publicProxyHandle(started) }, null, 2));\n return;\n }\n success(\n `${provider} pool multi ${p.members.filter((m) => m.enabled).length}/${p.members.length} accounts` +\n (started?.endpoint ? ` ${pc.cyan(started.endpoint)}` : ''),\n );\n info(`Bind apps with: anypick use claude --with pool:${provider}`);\n } catch (err) {\n printError(err);\n process.exitCode = 1;\n }\n });\n\n pool\n .command('disable')\n .description('Back to single-account proxies (default)')\n .argument('<provider>')\n .action(async (provider: string) => {\n try {\n if (globals(program).dryRun) {\n printDryRunCommand(program, 'proxy.pool.disable', `Would disable the ${provider} pool`, {\n provider,\n });\n return;\n }\n await app.proxy.disablePoolMulti(provider);\n success(`${provider} pool → single-account mode`);\n } catch (err) {\n printError(err);\n process.exitCode = 1;\n }\n });\n\n pool\n .command('member')\n .description('Enable or pause a pool member')\n .argument('<provider>')\n .argument('<account>')\n .argument('<on|off>', 'on = in rotation, off = paused')\n .action(async (provider: string, account: string, state: string) => {\n const enabled = state === 'on' || state === 'enable' || state === '1';\n if (!enabled && state !== 'off' && state !== 'disable' && state !== '0') {\n console.error(pc.red(MARK.fail), `Unknown state \"${state}\"`);\n console.error(pc.dim(` → anypick proxy pool member ${provider} ${account} on|off`));\n process.exitCode = 1;\n return;\n }\n try {\n if (globals(program).dryRun) {\n printDryRunCommand(\n program,\n 'proxy.pool.member',\n `Would ${enabled ? 'enable' : 'pause'} ${provider}/${account}`,\n {\n provider,\n account,\n enabled,\n },\n );\n return;\n }\n const p = await app.proxy.setPoolMemberEnabled(provider, account, enabled);\n success(\n `${provider}/${account} ${enabled ? 'in pool' : 'paused'} (${p.members.filter((m) => m.enabled).length} active)`,\n );\n } catch (err) {\n printError(err);\n process.exitCode = 1;\n }\n });\n\n proxy\n .command('start')\n .description('Start proxy (default: active accounts with proxy enabled)')\n .argument('[provider]')\n .argument('[name]')\n .option('-p, --port <port>', 'Set listen port (persisted)', (v: string) => Number(v))\n .option('--host <host>', 'Set listen host (persisted)')\n .action(\n async (\n provider: string | undefined,\n name: string | undefined,\n opts: { port?: number; host?: string },\n ) => {\n if (globals(program).dryRun) {\n printDryRunCommand(\n program,\n 'proxy.start',\n `Would start ${provider ? `${provider}/${name ?? 'active'}` : 'configured proxies'}`,\n {\n provider: provider ?? null,\n name: name ?? null,\n port: opts.port,\n host: opts.host,\n },\n );\n return;\n }\n if ((opts.port != null || opts.host != null) && provider) {\n try {\n const handle = await withSpin(\n 'Starting proxy…',\n () =>\n app.proxy.startProxy(provider, name, {\n port: opts.port,\n host: opts.host,\n }),\n { success: 'Proxy started' },\n );\n if (globals(program).json) {\n console.log(JSON.stringify(publicProxyHandle(handle), null, 2));\n return;\n }\n success(`${provider}/${name ?? 'active'} ${pc.cyan(handle.endpoint)}`);\n if (handle.realignedClients?.length) {\n info(\n ` clients updated → ${handle.realignedClients.join(', ')} (${handle.endpoint})`,\n );\n }\n } catch (err) {\n printError(err);\n process.exitCode = 1;\n }\n return;\n }\n\n const results = await withSpin(\n 'Starting proxy…',\n () => app.proxy.startProxies(provider, name),\n { success: 'Proxy start done' },\n );\n if (globals(program).json) {\n console.log(JSON.stringify(results, null, 2));\n return;\n }\n if (results.length === 0) {\n info('Nothing to start. Enable first: anypick proxy enable <provider> <name> -p <port>');\n return;\n }\n for (const r of results) {\n if (r.ok) {\n success(`${r.provider}/${r.name} ${pc.cyan(r.endpoint ?? '')}`);\n if (r.realignedClients?.length) {\n info(` clients updated → ${r.realignedClients.join(', ')} (${r.endpoint})`);\n }\n } else {\n console.error(pc.red(MARK.fail), `${r.provider}/${r.name}: ${r.error}`);\n process.exitCode = 1;\n }\n }\n },\n );\n\n proxy\n .command('stop')\n .description('Stop proxy (default: running proxies)')\n .argument('[provider]')\n .argument('[name]')\n .action(async (provider?: string, name?: string) => {\n if (globals(program).dryRun) {\n printDryRunCommand(\n program,\n 'proxy.stop',\n `Would stop ${provider ? `${provider}/${name ?? 'active'}` : 'running proxies'}`,\n {\n provider: provider ?? null,\n name: name ?? null,\n },\n );\n return;\n }\n const results = await withSpin(\n 'Stopping proxy…',\n () => app.proxy.stopProxies(provider, name),\n { success: 'Proxy stop done' },\n );\n if (globals(program).json) {\n console.log(JSON.stringify(results, null, 2));\n return;\n }\n if (results.length === 0) {\n info('No proxy running.');\n return;\n }\n for (const r of results) {\n if (r.ok) {\n success(`Stopped ${r.provider}/${r.name}`);\n } else {\n console.error(pc.red(MARK.fail), `${r.provider}/${r.name}: ${r.error}`);\n process.exitCode = 1;\n }\n }\n });\n\n proxy\n .command('enable')\n .description('Enable proxy for an account')\n .argument('<provider>')\n .argument('<name>')\n .option('-p, --port <port>', 'Listen port (auto free port if omitted)', (v: string) =>\n Number(v),\n )\n .option('--host <host>', 'Listen host', '127.0.0.1')\n .option('--auth-mode <mode>', 'OpenCode auth mode: auto|public|api')\n .option('--oauth-source <source>', 'Gemini OAuth source: auto|gemini-cli|antigravity')\n .option('--no-start', 'Config only')\n .action(\n async (\n provider: string,\n name: string,\n opts: {\n port?: number;\n host?: string;\n start?: boolean;\n authMode?: string;\n oauthSource?: string;\n },\n ) => {\n if (globals(program).dryRun) {\n printDryRunCommand(program, 'proxy.enable', `Would enable ${provider}/${name}`, {\n provider,\n name,\n port: opts.port,\n host: opts.host,\n start: opts.start !== false,\n });\n return;\n }\n const providerOptions = {\n ...(opts.authMode ? { authMode: opts.authMode } : {}),\n ...(opts.oauthSource ? { oauthSource: opts.oauthSource } : {}),\n };\n const { config, started } = await app.proxy.enableProxy(provider, name, {\n port: opts.port,\n host: opts.host,\n options: Object.keys(providerOptions).length ? providerOptions : undefined,\n start: opts.start !== false,\n });\n const bind = `${config.host ?? '127.0.0.1'}:${config.port}`;\n success(`Enabled ${provider}/${name} ${pc.cyan(bind)}`);\n if (started) {\n console.log(` ${pc.green('running')} ${pc.cyan(started.endpoint)}`);\n } else if (config.enabled) {\n next(`anypick proxy start ${provider} ${name}`, 'start when ready');\n }\n },\n );\n\n proxy\n .command('config')\n .alias('set')\n .description('Set proxy port/host for an account (restarts if running)')\n .argument('<provider>')\n .argument('<name>')\n .option('-p, --port <port>', 'Listen port', (v: string) => Number(v))\n .option('--host <host>', 'Listen host')\n .option('--auth-mode <mode>', 'OpenCode auth mode: auto|public|api')\n .option('--oauth-source <source>', 'Gemini OAuth source: auto|gemini-cli|antigravity')\n .option('--no-restart', 'Save only; do not restart a running proxy')\n .action(\n async (\n provider: string,\n name: string,\n opts: {\n port?: number;\n host?: string;\n restart?: boolean;\n authMode?: string;\n oauthSource?: string;\n },\n ) => {\n if (globals(program).dryRun) {\n printDryRunCommand(program, 'proxy.config', `Would configure ${provider}/${name}`, {\n provider,\n name,\n port: opts.port,\n host: opts.host,\n restart: opts.restart !== false,\n });\n return;\n }\n const providerOptions = {\n ...(opts.authMode ? { authMode: opts.authMode } : {}),\n ...(opts.oauthSource ? { oauthSource: opts.oauthSource } : {}),\n };\n const { config, restarted, wasRunning } = await app.proxy.configureProxy(provider, name, {\n port: opts.port,\n host: opts.host,\n restart: opts.restart !== false,\n options: Object.keys(providerOptions).length ? providerOptions : undefined,\n });\n const bind = `${config.host ?? '127.0.0.1'}:${config.port}`;\n success(`Configured ${provider}/${name} ${pc.cyan(bind)}`);\n if (restarted) {\n console.log(` ${pc.green('restarted')} ${pc.cyan(restarted.endpoint)}`);\n } else if (wasRunning && opts.restart === false) {\n info(`Port saved; restart later: anypick proxy start ${provider} ${name}`);\n }\n },\n );\n\n proxy\n .command('disable')\n .description('Disable + stop proxy for an account')\n .argument('<provider>')\n .argument('<name>')\n .action(async (provider: string, name: string) => {\n if (globals(program).dryRun) {\n printDryRunCommand(program, 'proxy.disable', `Would disable ${provider}/${name}`, {\n provider,\n name,\n });\n return;\n }\n await app.proxy.disableProxy(provider, name);\n success(`Disabled ${provider}/${name}`);\n });\n\n proxy\n .command('logs')\n .description('Show proxy logs (use -f to stream live)')\n .argument('<provider>')\n .argument('[name]')\n .option('-n, --lines <n>', 'Lines to show before following', (v: string) => Number(v), 50)\n .option('-f, --follow', 'Stream new log lines live (Ctrl-C to stop)')\n .action(\n async (\n provider: string,\n name: string | undefined,\n opts: { lines: number; follow?: boolean },\n ) => {\n if (!opts.follow) {\n console.log(await app.proxy.proxyLogs(provider, name, opts.lines));\n return;\n }\n const ac = new AbortController();\n process.once('SIGINT', () => ac.abort());\n process.once('SIGTERM', () => ac.abort());\n console.log(\n pc.dim(`— following ${provider}/${name ?? 'active'} proxy log (Ctrl-C to stop) —`),\n );\n await app.proxy.proxyLogsFollow(provider, name, (line) => console.log(line), {\n lines: opts.lines,\n signal: ac.signal,\n });\n },\n );\n}\n\nasync function printProxyOverview(\n app: AnyPickApp,\n json?: boolean,\n providerId?: string,\n): Promise<void> {\n const rows = await app.proxy.listProxyRows(providerId);\n if (json) {\n console.log(JSON.stringify(rows, null, 2));\n return;\n }\n if (rows.length === 0) {\n console.log(pc.dim('No proxies configured.'));\n console.log(\n pc.dim(' → anypick proxy enable grok <account> -p 8080 then anypick proxy start'),\n );\n return;\n }\n for (const r of rows) {\n const mark = r.active ? pc.green(MARK.live) : pc.dim(MARK.open);\n const run = r.status.running\n ? pc.green('running')\n : r.status.enabled\n ? pc.yellow('enabled')\n : pc.dim('off');\n const bind =\n r.status.port != null ? pc.dim(` ${r.status.host ?? '127.0.0.1'}:${r.status.port}`) : '';\n const ep = r.status.running && r.status.endpoint ? pc.cyan(` ${r.status.endpoint}`) : '';\n console.log(` ${mark} ${pc.bold(`${r.provider}/${r.name}`)} ${run}${bind}${ep}`);\n }\n}\n\nasync function confirmDelete(label: string, yes?: boolean): Promise<boolean> {\n if (yes) {\n return true;\n }\n if (!process.stdin.isTTY || !process.stdout.isTTY) {\n throw anypickError(\n `Deleting ${label} requires --yes in non-interactive mode.`,\n 'CONFIRMATION_REQUIRED',\n { exitCode: ExitCode.INVALID_USAGE, mutated: false },\n );\n }\n const readline = await import('node:readline/promises');\n const rl = readline.createInterface({\n input: process.stdin,\n output: process.stdout,\n });\n const answer = await rl.question(`Delete ${label}? [y/N] `);\n rl.close();\n if (!/^y(es)?$/i.test(answer.trim())) {\n info('Cancelled.');\n return false;\n }\n return true;\n}\n\nexport async function runCli(app: AnyPickApp, argv = process.argv): Promise<void> {\n const program = buildProgram(app);\n program.exitOverride();\n\n try {\n await program.parseAsync(argv);\n } catch (err) {\n if (err && typeof err === 'object' && 'code' in err) {\n const code = (err as { code?: string }).code;\n if (code === 'commander.helpDisplayed' || code === 'commander.version') {\n return;\n }\n if (\n code === 'commander.unknownCommand' ||\n code === 'commander.unknownOption' ||\n code === 'commander.missingArgument' ||\n code === 'commander.invalidArgument'\n ) {\n process.exitCode = 2;\n return;\n }\n }\n if (isAnyPickError(err)) {\n const mode = (await import('./ux')).getUxMode();\n if (mode.json) {\n console.log(JSON.stringify(err.toJson()));\n } else {\n printError(err.toHuman());\n }\n process.exitCode = err.exitCode;\n return;\n }\n printError(err);\n process.exitCode = 1;\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/cli/completion.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAE5C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAWrD"}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
//#region src/cli/completion.ts
|
|
2
|
+
function completionScript(shell) {
|
|
3
|
+
switch (shell) {
|
|
4
|
+
case "zsh": return zsh();
|
|
5
|
+
case "bash": return bash();
|
|
6
|
+
case "fish": return fish();
|
|
7
|
+
default: throw new Error(`Unsupported shell: ${shell}. Use zsh | bash | fish`);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
var PRIMARY_CMDS = "use run current list ls add link unlink reset preset account gateway proxy plugin doctor providers clients update completion";
|
|
11
|
+
function zsh() {
|
|
12
|
+
return `#compdef anypick
|
|
13
|
+
# anypick zsh completion — source <(anypick completion zsh)
|
|
14
|
+
|
|
15
|
+
_anypick() {
|
|
16
|
+
local -a commands
|
|
17
|
+
commands=(
|
|
18
|
+
'use:Set default client source'
|
|
19
|
+
'run:Launch a client'
|
|
20
|
+
'current:Show effective bindings'
|
|
21
|
+
'list:List accounts, gateways, clients, presets'
|
|
22
|
+
'add:Add an account or gateway'
|
|
23
|
+
'link:Set project binding'
|
|
24
|
+
'unlink:Remove project binding'
|
|
25
|
+
'reset:Remove AnyPick-managed client config'
|
|
26
|
+
'preset:Manage presets'
|
|
27
|
+
'account:Manage accounts'
|
|
28
|
+
'gateway:Manage gateways'
|
|
29
|
+
'proxy:Proxy lifecycle'
|
|
30
|
+
'plugin:Manage plugins'
|
|
31
|
+
'doctor:Health checks'
|
|
32
|
+
'providers:List providers'
|
|
33
|
+
'clients:List clients'
|
|
34
|
+
'update:Update to the latest npm release'
|
|
35
|
+
'completion:Shell completion'
|
|
36
|
+
)
|
|
37
|
+
|
|
38
|
+
local context state state_descr line
|
|
39
|
+
typeset -A opt_args
|
|
40
|
+
|
|
41
|
+
_arguments -C \\
|
|
42
|
+
'(-h --help)'{-h,--help}'[Help]' \\
|
|
43
|
+
'(-V --version)'{-V,--version}'[Version]' \\
|
|
44
|
+
'--json[JSON output]' \\
|
|
45
|
+
'(-v --verbose)'{-v,--verbose}'[Verbose]' \\
|
|
46
|
+
'--dry-run[Plan only]' \\
|
|
47
|
+
'(-q --quiet)'{-q,--quiet}'[Quiet]' \\
|
|
48
|
+
'1: :->cmds' \\
|
|
49
|
+
'*:: :->args'
|
|
50
|
+
|
|
51
|
+
case $state in
|
|
52
|
+
cmds)
|
|
53
|
+
_describe 'command' commands
|
|
54
|
+
;;
|
|
55
|
+
args)
|
|
56
|
+
case $line[1] in
|
|
57
|
+
use|run|link|unlink|reset)
|
|
58
|
+
if (( CURRENT == 2 )); then
|
|
59
|
+
_values 'client' \${(f)"$(anypick __complete clients 2>/dev/null)"}
|
|
60
|
+
fi
|
|
61
|
+
;;
|
|
62
|
+
list|ls)
|
|
63
|
+
_values 'kind' accounts gateways clients presets
|
|
64
|
+
;;
|
|
65
|
+
plugin)
|
|
66
|
+
if (( CURRENT == 2 )); then
|
|
67
|
+
_values 'action' list add remove enable disable trust
|
|
68
|
+
fi
|
|
69
|
+
;;
|
|
70
|
+
add)
|
|
71
|
+
if (( CURRENT == 2 )); then
|
|
72
|
+
_values 'kind' account gateway
|
|
73
|
+
elif (( CURRENT == 3 )) && [[ $line[2] == account ]]; then
|
|
74
|
+
_values 'provider' \${(f)"$(anypick __complete providers 2>/dev/null)"}
|
|
75
|
+
fi
|
|
76
|
+
;;
|
|
77
|
+
account)
|
|
78
|
+
if (( CURRENT == 2 )); then
|
|
79
|
+
_values 'action' list remove refresh export import
|
|
80
|
+
elif (( CURRENT == 3 )); then
|
|
81
|
+
_values 'provider' \${(f)"$(anypick __complete providers 2>/dev/null)"}
|
|
82
|
+
elif (( CURRENT == 4 )); then
|
|
83
|
+
_values 'account' \${(f)"$(anypick __complete accounts $line[3] 2>/dev/null)"}
|
|
84
|
+
fi
|
|
85
|
+
;;
|
|
86
|
+
gateway)
|
|
87
|
+
if (( CURRENT == 2 )); then
|
|
88
|
+
_values 'action' list show edit remove
|
|
89
|
+
elif (( CURRENT >= 3 )); then
|
|
90
|
+
_values 'gateway' \${(f)"$(anypick __complete gateways 2>/dev/null)"}
|
|
91
|
+
fi
|
|
92
|
+
;;
|
|
93
|
+
proxy)
|
|
94
|
+
if (( CURRENT == 2 )); then
|
|
95
|
+
_values 'action' status start stop enable disable logs config
|
|
96
|
+
elif (( CURRENT == 3 )); then
|
|
97
|
+
_values 'provider' \${(f)"$(anypick __complete providers 2>/dev/null)"}
|
|
98
|
+
elif (( CURRENT == 4 )); then
|
|
99
|
+
_values 'account' \${(f)"$(anypick __complete accounts $line[3] 2>/dev/null)"}
|
|
100
|
+
fi
|
|
101
|
+
;;
|
|
102
|
+
esac
|
|
103
|
+
;;
|
|
104
|
+
esac
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
compdef _anypick anypick
|
|
108
|
+
`;
|
|
109
|
+
}
|
|
110
|
+
function bash() {
|
|
111
|
+
return `# anypick bash completion — source <(anypick completion bash)
|
|
112
|
+
|
|
113
|
+
_anypick() {
|
|
114
|
+
local cur prev
|
|
115
|
+
COMPREPLY=()
|
|
116
|
+
cur="\${COMP_WORDS[COMP_CWORD]}"
|
|
117
|
+
prev="\${COMP_WORDS[COMP_CWORD-1]}"
|
|
118
|
+
local cmds="${PRIMARY_CMDS}"
|
|
119
|
+
|
|
120
|
+
if [[ \${COMP_CWORD} -eq 1 ]]; then
|
|
121
|
+
COMPREPLY=( $(compgen -W "\${cmds}" -- "\${cur}") )
|
|
122
|
+
return
|
|
123
|
+
fi
|
|
124
|
+
|
|
125
|
+
local cmd="\${COMP_WORDS[1]}"
|
|
126
|
+
case "\${cmd}" in
|
|
127
|
+
use|run|link|unlink|reset)
|
|
128
|
+
if [[ \${COMP_CWORD} -eq 2 ]]; then
|
|
129
|
+
COMPREPLY=( $(compgen -W "$(anypick __complete clients 2>/dev/null)" -- "\${cur}") )
|
|
130
|
+
fi
|
|
131
|
+
;;
|
|
132
|
+
list|ls)
|
|
133
|
+
COMPREPLY=( $(compgen -W "accounts gateways clients presets" -- "\${cur}") )
|
|
134
|
+
;;
|
|
135
|
+
plugin)
|
|
136
|
+
if [[ \${COMP_CWORD} -eq 2 ]]; then
|
|
137
|
+
COMPREPLY=( $(compgen -W "list add remove enable disable trust" -- "\${cur}") )
|
|
138
|
+
fi
|
|
139
|
+
;;
|
|
140
|
+
add)
|
|
141
|
+
if [[ \${COMP_CWORD} -eq 2 ]]; then
|
|
142
|
+
COMPREPLY=( $(compgen -W "account gateway" -- "\${cur}") )
|
|
143
|
+
elif [[ \${COMP_CWORD} -eq 3 && \${COMP_WORDS[2]} == account ]]; then
|
|
144
|
+
COMPREPLY=( $(compgen -W "$(anypick __complete providers 2>/dev/null)" -- "\${cur}") )
|
|
145
|
+
fi
|
|
146
|
+
;;
|
|
147
|
+
account)
|
|
148
|
+
if [[ \${COMP_CWORD} -eq 2 ]]; then
|
|
149
|
+
COMPREPLY=( $(compgen -W "list remove refresh export import" -- "\${cur}") )
|
|
150
|
+
elif [[ \${COMP_CWORD} -eq 3 ]]; then
|
|
151
|
+
COMPREPLY=( $(compgen -W "$(anypick __complete providers 2>/dev/null)" -- "\${cur}") )
|
|
152
|
+
fi
|
|
153
|
+
;;
|
|
154
|
+
gateway)
|
|
155
|
+
if [[ \${COMP_CWORD} -eq 2 ]]; then
|
|
156
|
+
COMPREPLY=( $(compgen -W "list show edit remove" -- "\${cur}") )
|
|
157
|
+
else
|
|
158
|
+
COMPREPLY=( $(compgen -W "$(anypick __complete gateways 2>/dev/null)" -- "\${cur}") )
|
|
159
|
+
fi
|
|
160
|
+
;;
|
|
161
|
+
proxy)
|
|
162
|
+
if [[ \${COMP_CWORD} -eq 2 ]]; then
|
|
163
|
+
COMPREPLY=( $(compgen -W "status start stop enable disable logs config" -- "\${cur}") )
|
|
164
|
+
elif [[ \${COMP_CWORD} -eq 3 ]]; then
|
|
165
|
+
COMPREPLY=( $(compgen -W "$(anypick __complete providers 2>/dev/null)" -- "\${cur}") )
|
|
166
|
+
fi
|
|
167
|
+
;;
|
|
168
|
+
esac
|
|
169
|
+
}
|
|
170
|
+
complete -F _anypick anypick
|
|
171
|
+
`;
|
|
172
|
+
}
|
|
173
|
+
function fish() {
|
|
174
|
+
return `# anypick fish completion — anypick completion fish > ~/.config/fish/completions/anypick.fish
|
|
175
|
+
|
|
176
|
+
complete -c anypick -f
|
|
177
|
+
complete -c anypick -n __fish_use_subcommand -a use -d 'Set default client source'
|
|
178
|
+
complete -c anypick -n __fish_use_subcommand -a run -d 'Launch a client'
|
|
179
|
+
complete -c anypick -n __fish_use_subcommand -a current -d 'Show bindings'
|
|
180
|
+
complete -c anypick -n __fish_use_subcommand -a list -d 'List resources'
|
|
181
|
+
complete -c anypick -n __fish_use_subcommand -a add -d 'Add account or gateway'
|
|
182
|
+
complete -c anypick -n __fish_use_subcommand -a link -d 'Project binding'
|
|
183
|
+
complete -c anypick -n __fish_use_subcommand -a unlink -d 'Remove project binding'
|
|
184
|
+
complete -c anypick -n __fish_use_subcommand -a reset -d 'Reset client'
|
|
185
|
+
complete -c anypick -n __fish_use_subcommand -a preset -d 'Presets'
|
|
186
|
+
complete -c anypick -n __fish_use_subcommand -a account -d 'Accounts'
|
|
187
|
+
complete -c anypick -n __fish_use_subcommand -a gateway -d 'Gateways'
|
|
188
|
+
complete -c anypick -n __fish_use_subcommand -a proxy -d 'Proxy'
|
|
189
|
+
complete -c anypick -n __fish_use_subcommand -a plugin -d 'Plugins'
|
|
190
|
+
complete -c anypick -n __fish_use_subcommand -a doctor -d 'Health check'
|
|
191
|
+
complete -c anypick -n __fish_use_subcommand -a update -d 'Update to latest release'
|
|
192
|
+
|
|
193
|
+
complete -c anypick -n '__fish_seen_subcommand_from use run link unlink reset' -a '(anypick __complete clients 2>/dev/null)'
|
|
194
|
+
complete -c anypick -n '__fish_seen_subcommand_from list' -a 'accounts gateways clients presets'
|
|
195
|
+
complete -c anypick -n '__fish_seen_subcommand_from add' -a 'account gateway'
|
|
196
|
+
complete -c anypick -n '__fish_seen_subcommand_from plugin' -a 'list add remove enable disable trust'
|
|
197
|
+
`;
|
|
198
|
+
}
|
|
199
|
+
//#endregion
|
|
200
|
+
export { completionScript };
|
|
201
|
+
|
|
202
|
+
//# sourceMappingURL=completion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"completion.js","names":[],"sources":["../../src/cli/completion.ts"],"sourcesContent":["/**\n * Shell completion scripts for the primary DX surface.\n */\n\nexport type Shell = 'zsh' | 'bash' | 'fish';\n\nexport function completionScript(shell: Shell): string {\n switch (shell) {\n case 'zsh':\n return zsh();\n case 'bash':\n return bash();\n case 'fish':\n return fish();\n default:\n throw new Error(`Unsupported shell: ${shell}. Use zsh | bash | fish`);\n }\n}\n\nconst PRIMARY_CMDS =\n 'use run current list ls add link unlink reset preset account gateway proxy plugin doctor providers clients update completion';\n\nfunction zsh(): string {\n return `#compdef anypick\n# anypick zsh completion — source <(anypick completion zsh)\n\n_anypick() {\n local -a commands\n commands=(\n 'use:Set default client source'\n 'run:Launch a client'\n 'current:Show effective bindings'\n 'list:List accounts, gateways, clients, presets'\n 'add:Add an account or gateway'\n 'link:Set project binding'\n 'unlink:Remove project binding'\n 'reset:Remove AnyPick-managed client config'\n 'preset:Manage presets'\n 'account:Manage accounts'\n 'gateway:Manage gateways'\n 'proxy:Proxy lifecycle'\n 'plugin:Manage plugins'\n 'doctor:Health checks'\n 'providers:List providers'\n 'clients:List clients'\n 'update:Update to the latest npm release'\n 'completion:Shell completion'\n )\n\n local context state state_descr line\n typeset -A opt_args\n\n _arguments -C \\\\\n '(-h --help)'{-h,--help}'[Help]' \\\\\n '(-V --version)'{-V,--version}'[Version]' \\\\\n '--json[JSON output]' \\\\\n '(-v --verbose)'{-v,--verbose}'[Verbose]' \\\\\n '--dry-run[Plan only]' \\\\\n '(-q --quiet)'{-q,--quiet}'[Quiet]' \\\\\n '1: :->cmds' \\\\\n '*:: :->args'\n\n case $state in\n cmds)\n _describe 'command' commands\n ;;\n args)\n case $line[1] in\n use|run|link|unlink|reset)\n if (( CURRENT == 2 )); then\n _values 'client' \\${(f)\"$(anypick __complete clients 2>/dev/null)\"}\n fi\n ;;\n list|ls)\n _values 'kind' accounts gateways clients presets\n ;;\n plugin)\n if (( CURRENT == 2 )); then\n _values 'action' list add remove enable disable trust\n fi\n ;;\n add)\n if (( CURRENT == 2 )); then\n _values 'kind' account gateway\n elif (( CURRENT == 3 )) && [[ $line[2] == account ]]; then\n _values 'provider' \\${(f)\"$(anypick __complete providers 2>/dev/null)\"}\n fi\n ;;\n account)\n if (( CURRENT == 2 )); then\n _values 'action' list remove refresh export import\n elif (( CURRENT == 3 )); then\n _values 'provider' \\${(f)\"$(anypick __complete providers 2>/dev/null)\"}\n elif (( CURRENT == 4 )); then\n _values 'account' \\${(f)\"$(anypick __complete accounts $line[3] 2>/dev/null)\"}\n fi\n ;;\n gateway)\n if (( CURRENT == 2 )); then\n _values 'action' list show edit remove\n elif (( CURRENT >= 3 )); then\n _values 'gateway' \\${(f)\"$(anypick __complete gateways 2>/dev/null)\"}\n fi\n ;;\n proxy)\n if (( CURRENT == 2 )); then\n _values 'action' status start stop enable disable logs config\n elif (( CURRENT == 3 )); then\n _values 'provider' \\${(f)\"$(anypick __complete providers 2>/dev/null)\"}\n elif (( CURRENT == 4 )); then\n _values 'account' \\${(f)\"$(anypick __complete accounts $line[3] 2>/dev/null)\"}\n fi\n ;;\n esac\n ;;\n esac\n}\n\ncompdef _anypick anypick\n`;\n}\n\nfunction bash(): string {\n return `# anypick bash completion — source <(anypick completion bash)\n\n_anypick() {\n local cur prev\n COMPREPLY=()\n cur=\"\\${COMP_WORDS[COMP_CWORD]}\"\n prev=\"\\${COMP_WORDS[COMP_CWORD-1]}\"\n local cmds=\"${PRIMARY_CMDS}\"\n\n if [[ \\${COMP_CWORD} -eq 1 ]]; then\n COMPREPLY=( $(compgen -W \"\\${cmds}\" -- \"\\${cur}\") )\n return\n fi\n\n local cmd=\"\\${COMP_WORDS[1]}\"\n case \"\\${cmd}\" in\n use|run|link|unlink|reset)\n if [[ \\${COMP_CWORD} -eq 2 ]]; then\n COMPREPLY=( $(compgen -W \"$(anypick __complete clients 2>/dev/null)\" -- \"\\${cur}\") )\n fi\n ;;\n list|ls)\n COMPREPLY=( $(compgen -W \"accounts gateways clients presets\" -- \"\\${cur}\") )\n ;;\n plugin)\n if [[ \\${COMP_CWORD} -eq 2 ]]; then\n COMPREPLY=( $(compgen -W \"list add remove enable disable trust\" -- \"\\${cur}\") )\n fi\n ;;\n add)\n if [[ \\${COMP_CWORD} -eq 2 ]]; then\n COMPREPLY=( $(compgen -W \"account gateway\" -- \"\\${cur}\") )\n elif [[ \\${COMP_CWORD} -eq 3 && \\${COMP_WORDS[2]} == account ]]; then\n COMPREPLY=( $(compgen -W \"$(anypick __complete providers 2>/dev/null)\" -- \"\\${cur}\") )\n fi\n ;;\n account)\n if [[ \\${COMP_CWORD} -eq 2 ]]; then\n COMPREPLY=( $(compgen -W \"list remove refresh export import\" -- \"\\${cur}\") )\n elif [[ \\${COMP_CWORD} -eq 3 ]]; then\n COMPREPLY=( $(compgen -W \"$(anypick __complete providers 2>/dev/null)\" -- \"\\${cur}\") )\n fi\n ;;\n gateway)\n if [[ \\${COMP_CWORD} -eq 2 ]]; then\n COMPREPLY=( $(compgen -W \"list show edit remove\" -- \"\\${cur}\") )\n else\n COMPREPLY=( $(compgen -W \"$(anypick __complete gateways 2>/dev/null)\" -- \"\\${cur}\") )\n fi\n ;;\n proxy)\n if [[ \\${COMP_CWORD} -eq 2 ]]; then\n COMPREPLY=( $(compgen -W \"status start stop enable disable logs config\" -- \"\\${cur}\") )\n elif [[ \\${COMP_CWORD} -eq 3 ]]; then\n COMPREPLY=( $(compgen -W \"$(anypick __complete providers 2>/dev/null)\" -- \"\\${cur}\") )\n fi\n ;;\n esac\n}\ncomplete -F _anypick anypick\n`;\n}\n\nfunction fish(): string {\n return `# anypick fish completion — anypick completion fish > ~/.config/fish/completions/anypick.fish\n\ncomplete -c anypick -f\ncomplete -c anypick -n __fish_use_subcommand -a use -d 'Set default client source'\ncomplete -c anypick -n __fish_use_subcommand -a run -d 'Launch a client'\ncomplete -c anypick -n __fish_use_subcommand -a current -d 'Show bindings'\ncomplete -c anypick -n __fish_use_subcommand -a list -d 'List resources'\ncomplete -c anypick -n __fish_use_subcommand -a add -d 'Add account or gateway'\ncomplete -c anypick -n __fish_use_subcommand -a link -d 'Project binding'\ncomplete -c anypick -n __fish_use_subcommand -a unlink -d 'Remove project binding'\ncomplete -c anypick -n __fish_use_subcommand -a reset -d 'Reset client'\ncomplete -c anypick -n __fish_use_subcommand -a preset -d 'Presets'\ncomplete -c anypick -n __fish_use_subcommand -a account -d 'Accounts'\ncomplete -c anypick -n __fish_use_subcommand -a gateway -d 'Gateways'\ncomplete -c anypick -n __fish_use_subcommand -a proxy -d 'Proxy'\ncomplete -c anypick -n __fish_use_subcommand -a plugin -d 'Plugins'\ncomplete -c anypick -n __fish_use_subcommand -a doctor -d 'Health check'\ncomplete -c anypick -n __fish_use_subcommand -a update -d 'Update to latest release'\n\ncomplete -c anypick -n '__fish_seen_subcommand_from use run link unlink reset' -a '(anypick __complete clients 2>/dev/null)'\ncomplete -c anypick -n '__fish_seen_subcommand_from list' -a 'accounts gateways clients presets'\ncomplete -c anypick -n '__fish_seen_subcommand_from add' -a 'account gateway'\ncomplete -c anypick -n '__fish_seen_subcommand_from plugin' -a 'list add remove enable disable trust'\n`;\n}\n"],"mappings":";AAMA,SAAgB,iBAAiB,OAAsB;CACrD,QAAQ,OAAR;EACE,KAAK,OACH,OAAO,IAAI;EACb,KAAK,QACH,OAAO,KAAK;EACd,KAAK,QACH,OAAO,KAAK;EACd,SACE,MAAM,IAAI,MAAM,sBAAsB,MAAM,wBAAwB;CACxE;AACF;AAEA,IAAM,eACJ;AAEF,SAAS,MAAc;CACrB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiGT;AAEA,SAAS,OAAe;CACtB,OAAO;;;;;;;gBAOO,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsD7B;AAEA,SAAS,OAAe;CACtB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;AAwBT"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type AnyPickError } from '../utils/errors.js';
|
|
2
|
+
export declare function handleCliError(err: unknown): never;
|
|
3
|
+
export declare function formatUseSuccess(opts: {
|
|
4
|
+
clientName: string;
|
|
5
|
+
sourceDisplay: string;
|
|
6
|
+
model?: string;
|
|
7
|
+
transport?: string;
|
|
8
|
+
scope?: string;
|
|
9
|
+
alreadyActive?: boolean;
|
|
10
|
+
savedPreset?: string;
|
|
11
|
+
/** Written into client native config (e.g. ~/.claude/settings.json env). */
|
|
12
|
+
configEndpoint?: string;
|
|
13
|
+
}): string;
|
|
14
|
+
export declare function formatModel(model: {
|
|
15
|
+
mode: string;
|
|
16
|
+
id?: string;
|
|
17
|
+
reason?: string;
|
|
18
|
+
}): string;
|
|
19
|
+
export type { AnyPickError };
|
|
20
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/cli/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGpE,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,CAqBlD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,MAAM,CAqCT;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAWzF;AAED,YAAY,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { isAnyPickError } from "../utils/errors.js";
|
|
2
|
+
import { MARK, getUxMode, printError } from "./ux.js";
|
|
3
|
+
//#region src/cli/errors.ts
|
|
4
|
+
function handleCliError(err) {
|
|
5
|
+
const mode = getUxMode();
|
|
6
|
+
if (isAnyPickError(err)) {
|
|
7
|
+
if (mode.json) console.log(JSON.stringify(err.toJson()));
|
|
8
|
+
else printError(err.toHuman());
|
|
9
|
+
process.exit(err.exitCode);
|
|
10
|
+
}
|
|
11
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
12
|
+
if (mode.json) console.log(JSON.stringify({ error: {
|
|
13
|
+
code: "ERROR",
|
|
14
|
+
message,
|
|
15
|
+
suggestions: [],
|
|
16
|
+
mutated: false
|
|
17
|
+
} }));
|
|
18
|
+
else printError(message);
|
|
19
|
+
process.exit(1);
|
|
20
|
+
}
|
|
21
|
+
function formatUseSuccess(opts) {
|
|
22
|
+
if (opts.alreadyActive) {
|
|
23
|
+
const lines = [`${MARK.done} ${opts.clientName} already uses ${opts.sourceDisplay} (config re-synced)`, ""];
|
|
24
|
+
if (opts.model) lines.push(` Model ${opts.model}`);
|
|
25
|
+
if (opts.transport) lines.push(` Transport ${opts.transport}`);
|
|
26
|
+
if (opts.configEndpoint) lines.push(` Config ANTHROPIC_BASE_URL=${opts.configEndpoint}`);
|
|
27
|
+
if (opts.savedPreset) lines.push(` Saved @${opts.savedPreset}`);
|
|
28
|
+
return lines.join("\n");
|
|
29
|
+
}
|
|
30
|
+
const lines = [`${MARK.done} ${opts.clientName} now uses ${opts.sourceDisplay}`, ""];
|
|
31
|
+
if (opts.model) lines.push(` Model ${opts.model}`);
|
|
32
|
+
if (opts.transport) lines.push(` Transport ${opts.transport}`);
|
|
33
|
+
if (opts.configEndpoint) lines.push(` Config ANTHROPIC_BASE_URL=${opts.configEndpoint}`);
|
|
34
|
+
if (opts.scope) lines.push(` Scope ${opts.scope}`);
|
|
35
|
+
if (opts.savedPreset) lines.push(` Saved @${opts.savedPreset}`);
|
|
36
|
+
return lines.join("\n");
|
|
37
|
+
}
|
|
38
|
+
function formatModel(model) {
|
|
39
|
+
if (model.mode === "explicit" && model.id) return model.id;
|
|
40
|
+
if (model.mode === "omitted") return "omitted · client/source default";
|
|
41
|
+
if (model.mode === "unknown") return "unknown · migrated legacy state";
|
|
42
|
+
return model.mode;
|
|
43
|
+
}
|
|
44
|
+
//#endregion
|
|
45
|
+
export { formatModel, formatUseSuccess, handleCliError };
|
|
46
|
+
|
|
47
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","names":[],"sources":["../../src/cli/errors.ts"],"sourcesContent":["import { isAnyPickError, type AnyPickError } from '../utils/errors';\nimport { MARK, getUxMode, printError } from './ux';\n\nexport function handleCliError(err: unknown): never {\n const mode = getUxMode();\n if (isAnyPickError(err)) {\n if (mode.json) {\n console.log(JSON.stringify(err.toJson()));\n } else {\n printError(err.toHuman());\n }\n process.exit(err.exitCode);\n }\n const message = err instanceof Error ? err.message : String(err);\n if (mode.json) {\n console.log(\n JSON.stringify({\n error: { code: 'ERROR', message, suggestions: [], mutated: false },\n }),\n );\n } else {\n printError(message);\n }\n process.exit(1);\n}\n\nexport function formatUseSuccess(opts: {\n clientName: string;\n sourceDisplay: string;\n model?: string;\n transport?: string;\n scope?: string;\n alreadyActive?: boolean;\n savedPreset?: string;\n /** Written into client native config (e.g. ~/.claude/settings.json env). */\n configEndpoint?: string;\n}): string {\n if (opts.alreadyActive) {\n const lines = [\n `${MARK.done} ${opts.clientName} already uses ${opts.sourceDisplay} (config re-synced)`,\n '',\n ];\n if (opts.model) {\n lines.push(` Model ${opts.model}`);\n }\n if (opts.transport) {\n lines.push(` Transport ${opts.transport}`);\n }\n if (opts.configEndpoint) {\n lines.push(` Config ANTHROPIC_BASE_URL=${opts.configEndpoint}`);\n }\n if (opts.savedPreset) {\n lines.push(` Saved @${opts.savedPreset}`);\n }\n return lines.join('\\n');\n }\n const lines = [`${MARK.done} ${opts.clientName} now uses ${opts.sourceDisplay}`, ''];\n if (opts.model) {\n lines.push(` Model ${opts.model}`);\n }\n if (opts.transport) {\n lines.push(` Transport ${opts.transport}`);\n }\n if (opts.configEndpoint) {\n lines.push(` Config ANTHROPIC_BASE_URL=${opts.configEndpoint}`);\n }\n if (opts.scope) {\n lines.push(` Scope ${opts.scope}`);\n }\n if (opts.savedPreset) {\n lines.push(` Saved @${opts.savedPreset}`);\n }\n return lines.join('\\n');\n}\n\nexport function formatModel(model: { mode: string; id?: string; reason?: string }): string {\n if (model.mode === 'explicit' && model.id) {\n return model.id;\n }\n if (model.mode === 'omitted') {\n return 'omitted · client/source default';\n }\n if (model.mode === 'unknown') {\n return 'unknown · migrated legacy state';\n }\n return model.mode;\n}\n\nexport type { AnyPickError };\n"],"mappings":";;;AAGA,SAAgB,eAAe,KAAqB;CAClD,MAAM,OAAO,UAAU;CACvB,IAAI,eAAe,GAAG,GAAG;EACvB,IAAI,KAAK,MACP,QAAQ,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,CAAC;OAExC,WAAW,IAAI,QAAQ,CAAC;EAE1B,QAAQ,KAAK,IAAI,QAAQ;CAC3B;CACA,MAAM,UAAU,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG;CAC/D,IAAI,KAAK,MACP,QAAQ,IACN,KAAK,UAAU,EACb,OAAO;EAAE,MAAM;EAAS;EAAS,aAAa,CAAC;EAAG,SAAS;CAAM,EACnE,CAAC,CACH;MAEA,WAAW,OAAO;CAEpB,QAAQ,KAAK,CAAC;AAChB;AAEA,SAAgB,iBAAiB,MAUtB;CACT,IAAI,KAAK,eAAe;EACtB,MAAM,QAAQ,CACZ,GAAG,KAAK,KAAK,GAAG,KAAK,WAAW,gBAAgB,KAAK,cAAc,sBACnE,EACF;EACA,IAAI,KAAK,OACP,MAAM,KAAK,gBAAgB,KAAK,OAAO;EAEzC,IAAI,KAAK,WACP,MAAM,KAAK,gBAAgB,KAAK,WAAW;EAE7C,IAAI,KAAK,gBACP,MAAM,KAAK,mCAAmC,KAAK,gBAAgB;EAErE,IAAI,KAAK,aACP,MAAM,KAAK,iBAAiB,KAAK,aAAa;EAEhD,OAAO,MAAM,KAAK,IAAI;CACxB;CACA,MAAM,QAAQ,CAAC,GAAG,KAAK,KAAK,GAAG,KAAK,WAAW,YAAY,KAAK,iBAAiB,EAAE;CACnF,IAAI,KAAK,OACP,MAAM,KAAK,gBAAgB,KAAK,OAAO;CAEzC,IAAI,KAAK,WACP,MAAM,KAAK,gBAAgB,KAAK,WAAW;CAE7C,IAAI,KAAK,gBACP,MAAM,KAAK,mCAAmC,KAAK,gBAAgB;CAErE,IAAI,KAAK,OACP,MAAM,KAAK,gBAAgB,KAAK,OAAO;CAEzC,IAAI,KAAK,aACP,MAAM,KAAK,iBAAiB,KAAK,aAAa;CAEhD,OAAO,MAAM,KAAK,IAAI;AACxB;AAEA,SAAgB,YAAY,OAA+D;CACzF,IAAI,MAAM,SAAS,cAAc,MAAM,IACrC,OAAO,MAAM;CAEf,IAAI,MAAM,SAAS,WACjB,OAAO;CAET,IAAI,MAAM,SAAS,WACjB,OAAO;CAET,OAAO,MAAM;AACf"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ListedAccount } from '../core/service.js';
|
|
2
|
+
import type { Provider, ProxyStatus } from '../types.js';
|
|
3
|
+
export declare function printAccounts(accounts: ListedAccount[], json?: boolean): void;
|
|
4
|
+
export declare function printProviders(providers: Provider[], json?: boolean): void;
|
|
5
|
+
export declare function printProxyStatus(providerId: string, accountName: string, providerName: string, status: ProxyStatus, json?: boolean): void;
|
|
6
|
+
//# sourceMappingURL=format.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/cli/format.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGtD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,IAAI,UAAQ,GAAG,IAAI,CAkC3E;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,IAAI,UAAQ,GAAG,IAAI,CAuBxE;AAED,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,WAAW,EACnB,IAAI,UAAQ,GACX,IAAI,CA2BN"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { providerCanProxy } from "../core/capabilities.js";
|
|
2
|
+
import { MARK } from "./ux.js";
|
|
3
|
+
import pc from "picocolors";
|
|
4
|
+
//#region src/cli/format.ts
|
|
5
|
+
function printAccounts(accounts, json = false) {
|
|
6
|
+
if (json) {
|
|
7
|
+
console.log(JSON.stringify(accounts, null, 2));
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
if (accounts.length === 0) {
|
|
11
|
+
console.log(pc.dim("No saved accounts."));
|
|
12
|
+
console.log(pc.dim(" → anypick add account <provider> --current --name <name>"));
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const byProvider = /* @__PURE__ */ new Map();
|
|
16
|
+
for (const a of accounts) {
|
|
17
|
+
const list = byProvider.get(a.provider) ?? [];
|
|
18
|
+
list.push(a);
|
|
19
|
+
byProvider.set(a.provider, list);
|
|
20
|
+
}
|
|
21
|
+
for (const [provider, list] of byProvider) {
|
|
22
|
+
console.log(pc.bold(pc.cyan(provider)));
|
|
23
|
+
for (const a of list) {
|
|
24
|
+
const mark = a.active ? pc.green(MARK.live) : pc.dim(MARK.open);
|
|
25
|
+
const name = a.active ? pc.green(pc.bold(a.name)) : pc.white(a.name);
|
|
26
|
+
const identity = a.identity ? pc.dim(` ${a.identity}`) : "";
|
|
27
|
+
const label = a.label && a.label !== a.name ? pc.dim(` (${a.label})`) : "";
|
|
28
|
+
let proxyTag = "";
|
|
29
|
+
if (a.proxyEnabled) proxyTag = a.proxyRunning ? pc.magenta(" [proxy:on]") : pc.dim(" [proxy]");
|
|
30
|
+
console.log(` ${mark} ${name}${label}${identity}${proxyTag}`);
|
|
31
|
+
}
|
|
32
|
+
console.log();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
function printProviders(providers, json = false) {
|
|
36
|
+
if (json) {
|
|
37
|
+
console.log(JSON.stringify(providers.map((p) => ({
|
|
38
|
+
id: p.id,
|
|
39
|
+
name: p.name,
|
|
40
|
+
description: p.description,
|
|
41
|
+
supportsProxy: providerCanProxy(p),
|
|
42
|
+
proxyCompatibility: p.proxyCompatibility
|
|
43
|
+
})), null, 2));
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
for (const p of providers) {
|
|
47
|
+
const proxy = providerCanProxy(p) ? pc.magenta(` proxy:${p.proxyCompatibility ?? "yes"}`) : "";
|
|
48
|
+
console.log(`${pc.bold(p.id.padEnd(10))} ${pc.dim(p.name)}${proxy}`);
|
|
49
|
+
console.log(`${"".padEnd(10)} ${pc.dim(p.description)}`);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
function printProxyStatus(providerId, accountName, providerName, status, json = false) {
|
|
53
|
+
if (json) {
|
|
54
|
+
console.log(JSON.stringify({
|
|
55
|
+
provider: providerId,
|
|
56
|
+
account: accountName,
|
|
57
|
+
...status
|
|
58
|
+
}, null, 2));
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
console.log(pc.bold(`${providerId}/${accountName}`));
|
|
62
|
+
console.log(` Provider: ${providerName}`);
|
|
63
|
+
console.log(` Enabled: ${status.enabled ? pc.green("yes") : pc.dim("no")}`);
|
|
64
|
+
console.log(` Running: ${status.running ? pc.green("yes") : pc.dim("no")}`);
|
|
65
|
+
if (status.port != null) console.log(` Listen: ${pc.cyan(`${status.host ?? "127.0.0.1"}:${status.port}`)}`);
|
|
66
|
+
if (status.endpoint) console.log(` Endpoint: ${pc.cyan(status.endpoint)}`);
|
|
67
|
+
if (status.compatibility) console.log(` Compatibility: ${status.compatibility}`);
|
|
68
|
+
if (status.pid) console.log(` PID: ${status.pid}`);
|
|
69
|
+
if (status.logPath) console.log(` Log: ${status.logPath}`);
|
|
70
|
+
if (status.detail) console.log(pc.dim(` (${status.detail})`));
|
|
71
|
+
}
|
|
72
|
+
//#endregion
|
|
73
|
+
export { printAccounts, printProviders, printProxyStatus };
|
|
74
|
+
|
|
75
|
+
//# sourceMappingURL=format.js.map
|