anypick 1.0.0 → 1.1.1
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/README.md +16 -582
- package/bin/anypick.js +249 -0
- package/package.json +14 -106
- package/dist/adapters.d.ts +0 -4
- package/dist/adapters.d.ts.map +0 -1
- package/dist/adapters.js +0 -2
- package/dist/catalog/model-fetch.d.ts +0 -34
- package/dist/catalog/model-fetch.d.ts.map +0 -1
- package/dist/catalog/model-fetch.js +0 -99
- package/dist/catalog/model-fetch.js.map +0 -1
- package/dist/catalog/providers.d.ts +0 -42
- package/dist/catalog/providers.d.ts.map +0 -1
- package/dist/catalog/providers.js +0 -424
- package/dist/catalog/providers.js.map +0 -1
- package/dist/cli/bootstrap.d.ts +0 -3
- package/dist/cli/bootstrap.d.ts.map +0 -1
- package/dist/cli/bootstrap.js +0 -78
- package/dist/cli/bootstrap.js.map +0 -1
- package/dist/cli/commands.d.ts +0 -29
- package/dist/cli/commands.d.ts.map +0 -1
- package/dist/cli/commands.js +0 -1043
- package/dist/cli/commands.js.map +0 -1
- package/dist/cli/completion.d.ts +0 -6
- package/dist/cli/completion.d.ts.map +0 -1
- package/dist/cli/completion.js +0 -202
- package/dist/cli/completion.js.map +0 -1
- package/dist/cli/errors.d.ts +0 -20
- package/dist/cli/errors.d.ts.map +0 -1
- package/dist/cli/errors.js +0 -47
- package/dist/cli/errors.js.map +0 -1
- package/dist/cli/format.d.ts +0 -6
- package/dist/cli/format.d.ts.map +0 -1
- package/dist/cli/format.js +0 -75
- package/dist/cli/format.js.map +0 -1
- package/dist/cli/help.d.ts +0 -6
- package/dist/cli/help.d.ts.map +0 -1
- package/dist/cli/help.js +0 -66
- package/dist/cli/help.js.map +0 -1
- package/dist/cli/interactive-accounts.d.ts +0 -3
- package/dist/cli/interactive-accounts.d.ts.map +0 -1
- package/dist/cli/interactive-accounts.js +0 -86
- package/dist/cli/interactive-accounts.js.map +0 -1
- package/dist/cli/interactive-maintenance.d.ts +0 -4
- package/dist/cli/interactive-maintenance.d.ts.map +0 -1
- package/dist/cli/interactive-maintenance.js +0 -30
- package/dist/cli/interactive-maintenance.js.map +0 -1
- package/dist/cli/interactive.d.ts +0 -14
- package/dist/cli/interactive.d.ts.map +0 -1
- package/dist/cli/interactive.js +0 -242
- package/dist/cli/interactive.js.map +0 -1
- package/dist/cli/launch-client.d.ts +0 -18
- package/dist/cli/launch-client.d.ts.map +0 -1
- package/dist/cli/launch-client.js +0 -117
- package/dist/cli/launch-client.js.map +0 -1
- package/dist/cli/launcher-model.d.ts +0 -64
- package/dist/cli/launcher-model.d.ts.map +0 -1
- package/dist/cli/launcher-model.js +0 -200
- package/dist/cli/launcher-model.js.map +0 -1
- package/dist/cli/launcher-render.d.ts +0 -22
- package/dist/cli/launcher-render.d.ts.map +0 -1
- package/dist/cli/launcher-render.js +0 -113
- package/dist/cli/launcher-render.js.map +0 -1
- package/dist/cli/launcher.d.ts +0 -27
- package/dist/cli/launcher.d.ts.map +0 -1
- package/dist/cli/launcher.js +0 -93
- package/dist/cli/launcher.js.map +0 -1
- package/dist/cli/local-health.d.ts +0 -17
- package/dist/cli/local-health.d.ts.map +0 -1
- package/dist/cli/local-health.js +0 -31
- package/dist/cli/local-health.js.map +0 -1
- package/dist/cli/plugin-commands.d.ts +0 -4
- package/dist/cli/plugin-commands.d.ts.map +0 -1
- package/dist/cli/plugin-commands.js +0 -160
- package/dist/cli/plugin-commands.js.map +0 -1
- package/dist/cli/primary.d.ts +0 -18
- package/dist/cli/primary.d.ts.map +0 -1
- package/dist/cli/primary.js +0 -593
- package/dist/cli/primary.js.map +0 -1
- package/dist/cli/render-util.d.ts +0 -24
- package/dist/cli/render-util.d.ts.map +0 -1
- package/dist/cli/render-util.js +0 -58
- package/dist/cli/render-util.js.map +0 -1
- package/dist/cli/ux.d.ts +0 -43
- package/dist/cli/ux.d.ts.map +0 -1
- package/dist/cli/ux.js +0 -114
- package/dist/cli/ux.js.map +0 -1
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -35
- package/dist/cli.js.map +0 -1
- package/dist/clients/claude-client-apply.d.ts +0 -8
- package/dist/clients/claude-client-apply.d.ts.map +0 -1
- package/dist/clients/claude-client-apply.js +0 -108
- package/dist/clients/claude-client-apply.js.map +0 -1
- package/dist/clients/claude-code.d.ts +0 -5
- package/dist/clients/claude-code.d.ts.map +0 -1
- package/dist/clients/claude-code.js +0 -189
- package/dist/clients/claude-code.js.map +0 -1
- package/dist/clients/claude-settings-guard.d.ts +0 -18
- package/dist/clients/claude-settings-guard.d.ts.map +0 -1
- package/dist/clients/codex-desktop-catalog.d.ts +0 -67
- package/dist/clients/codex-desktop-catalog.d.ts.map +0 -1
- package/dist/clients/codex-desktop-catalog.js +0 -212
- package/dist/clients/codex-desktop-catalog.js.map +0 -1
- package/dist/clients/codex.d.ts +0 -181
- package/dist/clients/codex.d.ts.map +0 -1
- package/dist/clients/codex.js +0 -783
- package/dist/clients/codex.js.map +0 -1
- package/dist/clients/env-files.d.ts +0 -14
- package/dist/clients/env-files.d.ts.map +0 -1
- package/dist/clients/env-files.js +0 -50
- package/dist/clients/env-files.js.map +0 -1
- package/dist/clients/gemini-client-utils.d.ts +0 -4
- package/dist/clients/gemini-client-utils.d.ts.map +0 -1
- package/dist/clients/gemini-client-utils.js +0 -33
- package/dist/clients/gemini-client-utils.js.map +0 -1
- package/dist/clients/gemini.d.ts +0 -16
- package/dist/clients/gemini.d.ts.map +0 -1
- package/dist/clients/gemini.js +0 -233
- package/dist/clients/gemini.js.map +0 -1
- package/dist/clients/index.d.ts +0 -14
- package/dist/clients/index.d.ts.map +0 -1
- package/dist/clients/index.js +0 -18
- package/dist/clients/index.js.map +0 -1
- package/dist/clients/isolation.d.ts +0 -28
- package/dist/clients/isolation.d.ts.map +0 -1
- package/dist/clients/isolation.js +0 -131
- package/dist/clients/isolation.js.map +0 -1
- package/dist/clients/kiro.d.ts +0 -10
- package/dist/clients/kiro.d.ts.map +0 -1
- package/dist/clients/kiro.js +0 -168
- package/dist/clients/kiro.js.map +0 -1
- package/dist/clients/model-roles.d.ts +0 -58
- package/dist/clients/model-roles.d.ts.map +0 -1
- package/dist/clients/model-roles.js +0 -139
- package/dist/clients/model-roles.js.map +0 -1
- package/dist/clients/registry.d.ts +0 -7
- package/dist/clients/registry.d.ts.map +0 -1
- package/dist/clients/registry.js +0 -16
- package/dist/clients/registry.js.map +0 -1
- package/dist/clients/resolve.d.ts +0 -27
- package/dist/clients/resolve.d.ts.map +0 -1
- package/dist/clients/resolve.js +0 -49
- package/dist/clients/resolve.js.map +0 -1
- package/dist/core/account-codec.d.ts +0 -32
- package/dist/core/account-codec.d.ts.map +0 -1
- package/dist/core/account-codec.js +0 -134
- package/dist/core/account-codec.js.map +0 -1
- package/dist/core/account-transfer.d.ts +0 -20
- package/dist/core/account-transfer.d.ts.map +0 -1
- package/dist/core/account-transfer.js +0 -136
- package/dist/core/account-transfer.js.map +0 -1
- package/dist/core/activation-executor.d.ts +0 -72
- package/dist/core/activation-executor.d.ts.map +0 -1
- package/dist/core/activation-executor.js +0 -690
- package/dist/core/activation-executor.js.map +0 -1
- package/dist/core/activation-models.d.ts +0 -6
- package/dist/core/activation-models.d.ts.map +0 -1
- package/dist/core/activation-models.js +0 -33
- package/dist/core/activation-models.js.map +0 -1
- package/dist/core/activation-planner.d.ts +0 -38
- package/dist/core/activation-planner.d.ts.map +0 -1
- package/dist/core/activation-planner.js +0 -248
- package/dist/core/activation-planner.js.map +0 -1
- package/dist/core/activation-protocol.d.ts +0 -3
- package/dist/core/activation-protocol.d.ts.map +0 -1
- package/dist/core/activation-protocol.js +0 -9
- package/dist/core/activation-protocol.js.map +0 -1
- package/dist/core/activation-transport.d.ts +0 -15
- package/dist/core/activation-transport.d.ts.map +0 -1
- package/dist/core/activation-transport.js +0 -23
- package/dist/core/activation-transport.js.map +0 -1
- package/dist/core/app.d.ts +0 -149
- package/dist/core/app.d.ts.map +0 -1
- package/dist/core/app.js +0 -372
- package/dist/core/app.js.map +0 -1
- package/dist/core/binding-service.d.ts +0 -93
- package/dist/core/binding-service.d.ts.map +0 -1
- package/dist/core/binding-service.js +0 -281
- package/dist/core/binding-service.js.map +0 -1
- package/dist/core/binding-store.d.ts +0 -23
- package/dist/core/binding-store.d.ts.map +0 -1
- package/dist/core/binding-store.js +0 -154
- package/dist/core/binding-store.js.map +0 -1
- package/dist/core/brand.d.ts +0 -18
- package/dist/core/brand.d.ts.map +0 -1
- package/dist/core/brand.js +0 -22
- package/dist/core/brand.js.map +0 -1
- package/dist/core/capabilities.d.ts +0 -30
- package/dist/core/capabilities.d.ts.map +0 -1
- package/dist/core/capabilities.js +0 -27
- package/dist/core/capabilities.js.map +0 -1
- package/dist/core/client-state-store.d.ts +0 -17
- package/dist/core/client-state-store.d.ts.map +0 -1
- package/dist/core/client-state-store.js +0 -47
- package/dist/core/client-state-store.js.map +0 -1
- package/dist/core/codec/account.d.ts +0 -52
- package/dist/core/codec/account.d.ts.map +0 -1
- package/dist/core/codec/account.js +0 -69
- package/dist/core/codec/account.js.map +0 -1
- package/dist/core/codec/bindings.d.ts +0 -38
- package/dist/core/codec/bindings.d.ts.map +0 -1
- package/dist/core/codec/bindings.js +0 -79
- package/dist/core/codec/bindings.js.map +0 -1
- package/dist/core/codec/operations.d.ts +0 -36
- package/dist/core/codec/operations.d.ts.map +0 -1
- package/dist/core/codec/operations.js +0 -82
- package/dist/core/codec/operations.js.map +0 -1
- package/dist/core/codec/primitives.d.ts +0 -59
- package/dist/core/codec/primitives.d.ts.map +0 -1
- package/dist/core/codec/primitives.js +0 -123
- package/dist/core/codec/primitives.js.map +0 -1
- package/dist/core/codec/proxy-hub.d.ts +0 -43
- package/dist/core/codec/proxy-hub.d.ts.map +0 -1
- package/dist/core/codec/proxy-hub.js +0 -69
- package/dist/core/codec/proxy-hub.js.map +0 -1
- package/dist/core/codec/runtime.d.ts +0 -41
- package/dist/core/codec/runtime.d.ts.map +0 -1
- package/dist/core/codec/runtime.js +0 -66
- package/dist/core/codec/runtime.js.map +0 -1
- package/dist/core/codec.d.ts +0 -43
- package/dist/core/codec.d.ts.map +0 -1
- package/dist/core/codec.js +0 -69
- package/dist/core/codec.js.map +0 -1
- package/dist/core/codex-live-config.d.ts +0 -92
- package/dist/core/codex-live-config.d.ts.map +0 -1
- package/dist/core/codex-live-config.js +0 -263
- package/dist/core/codex-live-config.js.map +0 -1
- package/dist/core/config-service.d.ts +0 -35
- package/dist/core/config-service.d.ts.map +0 -1
- package/dist/core/config-service.js +0 -87
- package/dist/core/config-service.js.map +0 -1
- package/dist/core/config.d.ts +0 -14
- package/dist/core/config.d.ts.map +0 -1
- package/dist/core/config.js +0 -45
- package/dist/core/config.js.map +0 -1
- package/dist/core/db-schema.d.ts +0 -30
- package/dist/core/db-schema.d.ts.map +0 -1
- package/dist/core/db-schema.js +0 -278
- package/dist/core/db-schema.js.map +0 -1
- package/dist/core/db.d.ts +0 -72
- package/dist/core/db.d.ts.map +0 -1
- package/dist/core/db.js +0 -192
- package/dist/core/db.js.map +0 -1
- package/dist/core/doctor-fixes.d.ts +0 -3
- package/dist/core/doctor-fixes.d.ts.map +0 -1
- package/dist/core/doctor-fixes.js +0 -102
- package/dist/core/doctor-fixes.js.map +0 -1
- package/dist/core/doctor-format.d.ts +0 -10
- package/dist/core/doctor-format.d.ts.map +0 -1
- package/dist/core/doctor-format.js +0 -45
- package/dist/core/doctor-format.js.map +0 -1
- package/dist/core/doctor-report.d.ts +0 -3
- package/dist/core/doctor-report.d.ts.map +0 -1
- package/dist/core/doctor-report.js +0 -174
- package/dist/core/doctor-report.js.map +0 -1
- package/dist/core/doctor-scan.d.ts +0 -7
- package/dist/core/doctor-scan.d.ts.map +0 -1
- package/dist/core/doctor-scan.js +0 -139
- package/dist/core/doctor-scan.js.map +0 -1
- package/dist/core/doctor-types.d.ts +0 -89
- package/dist/core/doctor-types.d.ts.map +0 -1
- package/dist/core/doctor-types.js +0 -14
- package/dist/core/doctor-types.js.map +0 -1
- package/dist/core/doctor-utils.d.ts +0 -3
- package/dist/core/doctor-utils.d.ts.map +0 -1
- package/dist/core/doctor-utils.js +0 -36
- package/dist/core/doctor-utils.js.map +0 -1
- package/dist/core/doctor.d.ts +0 -14
- package/dist/core/doctor.d.ts.map +0 -1
- package/dist/core/doctor.js +0 -127
- package/dist/core/doctor.js.map +0 -1
- package/dist/core/events.d.ts +0 -58
- package/dist/core/events.d.ts.map +0 -1
- package/dist/core/events.js +0 -88
- package/dist/core/events.js.map +0 -1
- package/dist/core/journal.d.ts +0 -23
- package/dist/core/journal.d.ts.map +0 -1
- package/dist/core/journal.js +0 -93
- package/dist/core/journal.js.map +0 -1
- package/dist/core/lease-store.d.ts +0 -22
- package/dist/core/lease-store.d.ts.map +0 -1
- package/dist/core/lease-store.js +0 -81
- package/dist/core/lease-store.js.map +0 -1
- package/dist/core/migrate-bindings.d.ts +0 -10
- package/dist/core/migrate-bindings.d.ts.map +0 -1
- package/dist/core/migrate-bindings.js +0 -98
- package/dist/core/migrate-bindings.js.map +0 -1
- package/dist/core/migrate-fs.d.ts +0 -11
- package/dist/core/migrate-fs.d.ts.map +0 -1
- package/dist/core/migrate-fs.js +0 -184
- package/dist/core/migrate-fs.js.map +0 -1
- package/dist/core/model-cache-store.d.ts +0 -27
- package/dist/core/model-cache-store.d.ts.map +0 -1
- package/dist/core/model-cache-store.js +0 -50
- package/dist/core/model-cache-store.js.map +0 -1
- package/dist/core/model-discovery.d.ts +0 -66
- package/dist/core/model-discovery.d.ts.map +0 -1
- package/dist/core/model-discovery.js +0 -127
- package/dist/core/model-discovery.js.map +0 -1
- package/dist/core/model-policy.d.ts +0 -40
- package/dist/core/model-policy.d.ts.map +0 -1
- package/dist/core/model-policy.js +0 -77
- package/dist/core/model-policy.js.map +0 -1
- package/dist/core/model-roles.d.ts +0 -9
- package/dist/core/model-roles.d.ts.map +0 -1
- package/dist/core/model-roles.js +0 -20
- package/dist/core/model-roles.js.map +0 -1
- package/dist/core/mutation-lock.d.ts +0 -31
- package/dist/core/mutation-lock.d.ts.map +0 -1
- package/dist/core/mutation-lock.js +0 -69
- package/dist/core/mutation-lock.js.map +0 -1
- package/dist/core/paths.d.ts +0 -49
- package/dist/core/paths.d.ts.map +0 -1
- package/dist/core/paths.js +0 -110
- package/dist/core/paths.js.map +0 -1
- package/dist/core/plugin-loader.d.ts +0 -40
- package/dist/core/plugin-loader.d.ts.map +0 -1
- package/dist/core/plugin-loader.js +0 -184
- package/dist/core/plugin-loader.js.map +0 -1
- package/dist/core/plugin-service.d.ts +0 -32
- package/dist/core/plugin-service.d.ts.map +0 -1
- package/dist/core/plugin-service.js +0 -110
- package/dist/core/plugin-service.js.map +0 -1
- package/dist/core/plugin-store.d.ts +0 -18
- package/dist/core/plugin-store.d.ts.map +0 -1
- package/dist/core/plugin-store.js +0 -50
- package/dist/core/plugin-store.js.map +0 -1
- package/dist/core/pool-store.d.ts +0 -44
- package/dist/core/pool-store.d.ts.map +0 -1
- package/dist/core/pool-store.js +0 -198
- package/dist/core/pool-store.js.map +0 -1
- package/dist/core/preset-store.d.ts +0 -29
- package/dist/core/preset-store.d.ts.map +0 -1
- package/dist/core/preset-store.js +0 -105
- package/dist/core/preset-store.js.map +0 -1
- package/dist/core/profile-service.d.ts +0 -50
- package/dist/core/profile-service.d.ts.map +0 -1
- package/dist/core/profile-service.js +0 -149
- package/dist/core/profile-service.js.map +0 -1
- package/dist/core/profile-store.d.ts +0 -20
- package/dist/core/profile-store.d.ts.map +0 -1
- package/dist/core/profile-store.js +0 -92
- package/dist/core/profile-store.js.map +0 -1
- package/dist/core/profile-synth.d.ts +0 -24
- package/dist/core/profile-synth.d.ts.map +0 -1
- package/dist/core/profile-synth.js +0 -30
- package/dist/core/profile-synth.js.map +0 -1
- package/dist/core/project-root.d.ts +0 -7
- package/dist/core/project-root.d.ts.map +0 -1
- package/dist/core/project-root.js +0 -23
- package/dist/core/project-root.js.map +0 -1
- package/dist/core/proxy-hub-cli.d.ts +0 -3
- package/dist/core/proxy-hub-cli.d.ts.map +0 -1
- package/dist/core/proxy-hub-cli.js +0 -80
- package/dist/core/proxy-hub-cli.js.map +0 -1
- package/dist/core/proxy-hub-routes.d.ts +0 -22
- package/dist/core/proxy-hub-routes.d.ts.map +0 -1
- package/dist/core/proxy-hub-routes.js +0 -92
- package/dist/core/proxy-hub-routes.js.map +0 -1
- package/dist/core/proxy-hub-server.d.ts +0 -59
- package/dist/core/proxy-hub-server.d.ts.map +0 -1
- package/dist/core/proxy-hub-server.js +0 -409
- package/dist/core/proxy-hub-server.js.map +0 -1
- package/dist/core/proxy-hub-service.d.ts +0 -97
- package/dist/core/proxy-hub-service.d.ts.map +0 -1
- package/dist/core/proxy-hub-service.js +0 -553
- package/dist/core/proxy-hub-service.js.map +0 -1
- package/dist/core/proxy-hub-store.d.ts +0 -28
- package/dist/core/proxy-hub-store.d.ts.map +0 -1
- package/dist/core/proxy-hub-store.js +0 -152
- package/dist/core/proxy-hub-store.js.map +0 -1
- package/dist/core/proxy-lifecycle.d.ts +0 -26
- package/dist/core/proxy-lifecycle.d.ts.map +0 -1
- package/dist/core/proxy-lifecycle.js +0 -33
- package/dist/core/proxy-lifecycle.js.map +0 -1
- package/dist/core/proxy-ports.d.ts +0 -50
- package/dist/core/proxy-ports.d.ts.map +0 -1
- package/dist/core/proxy-ports.js +0 -86
- package/dist/core/proxy-ports.js.map +0 -1
- package/dist/core/proxy-service.d.ts +0 -184
- package/dist/core/proxy-service.d.ts.map +0 -1
- package/dist/core/proxy-service.js +0 -860
- package/dist/core/proxy-service.js.map +0 -1
- package/dist/core/quota-guard-policy.d.ts +0 -8
- package/dist/core/quota-guard-policy.d.ts.map +0 -1
- package/dist/core/quota-guard-policy.js +0 -21
- package/dist/core/quota-guard-policy.js.map +0 -1
- package/dist/core/realign-proxy-clients.d.ts +0 -19
- package/dist/core/realign-proxy-clients.d.ts.map +0 -1
- package/dist/core/realign-proxy-clients.js +0 -40
- package/dist/core/realign-proxy-clients.js.map +0 -1
- package/dist/core/refs.d.ts +0 -84
- package/dist/core/refs.d.ts.map +0 -1
- package/dist/core/refs.js +0 -250
- package/dist/core/refs.js.map +0 -1
- package/dist/core/registry.d.ts +0 -46
- package/dist/core/registry.d.ts.map +0 -1
- package/dist/core/registry.js +0 -70
- package/dist/core/registry.js.map +0 -1
- package/dist/core/resolve-source.d.ts +0 -54
- package/dist/core/resolve-source.d.ts.map +0 -1
- package/dist/core/resolve-source.js +0 -148
- package/dist/core/resolve-source.js.map +0 -1
- package/dist/core/runtime-service.d.ts +0 -158
- package/dist/core/runtime-service.d.ts.map +0 -1
- package/dist/core/runtime-service.js +0 -422
- package/dist/core/runtime-service.js.map +0 -1
- package/dist/core/service.d.ts +0 -200
- package/dist/core/service.d.ts.map +0 -1
- package/dist/core/service.js +0 -643
- package/dist/core/service.js.map +0 -1
- package/dist/core/store-snapshot.d.ts +0 -10
- package/dist/core/store-snapshot.d.ts.map +0 -1
- package/dist/core/store-snapshot.js +0 -79
- package/dist/core/store-snapshot.js.map +0 -1
- package/dist/core/store.d.ts +0 -68
- package/dist/core/store.d.ts.map +0 -1
- package/dist/core/store.js +0 -159
- package/dist/core/store.js.map +0 -1
- package/dist/core/tray-runtime.d.ts +0 -15
- package/dist/core/tray-runtime.d.ts.map +0 -1
- package/dist/core/tray-runtime.js +0 -33
- package/dist/core/tray-runtime.js.map +0 -1
- package/dist/core/tray-settings-service.d.ts +0 -7
- package/dist/core/tray-settings-service.d.ts.map +0 -1
- package/dist/core/tray-settings-service.js +0 -24
- package/dist/core/tray-settings-service.js.map +0 -1
- package/dist/core/update.d.ts +0 -26
- package/dist/core/update.d.ts.map +0 -1
- package/dist/core/update.js +0 -128
- package/dist/core/update.js.map +0 -1
- package/dist/index.d.ts +0 -12
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -7
- package/dist/network/egress/allowlist.d.ts +0 -2
- package/dist/network/egress/allowlist.d.ts.map +0 -1
- package/dist/network/egress/allowlist.js +0 -14
- package/dist/network/egress/allowlist.js.map +0 -1
- package/dist/network/egress/direct.d.ts +0 -17
- package/dist/network/egress/direct.d.ts.map +0 -1
- package/dist/network/egress/direct.js +0 -28
- package/dist/network/egress/direct.js.map +0 -1
- package/dist/network/egress/errors.d.ts +0 -4
- package/dist/network/egress/errors.d.ts.map +0 -1
- package/dist/network/egress/errors.js +0 -8
- package/dist/network/egress/errors.js.map +0 -1
- package/dist/network/egress/index.d.ts +0 -6
- package/dist/network/egress/index.d.ts.map +0 -1
- package/dist/network/egress/index.js +0 -11
- package/dist/network/egress/index.js.map +0 -1
- package/dist/network/egress/types.d.ts +0 -16
- package/dist/network/egress/types.d.ts.map +0 -1
- package/dist/presentation/client-name.d.ts +0 -14
- package/dist/presentation/client-name.d.ts.map +0 -1
- package/dist/presentation/client-name.js +0 -22
- package/dist/presentation/client-name.js.map +0 -1
- package/dist/presentation/layout.d.ts +0 -7
- package/dist/presentation/layout.d.ts.map +0 -1
- package/dist/presentation/layout.js +0 -10
- package/dist/presentation/layout.js.map +0 -1
- package/dist/providers/auth-fingerprint.d.ts +0 -56
- package/dist/providers/auth-fingerprint.d.ts.map +0 -1
- package/dist/providers/auth-fingerprint.js +0 -163
- package/dist/providers/auth-fingerprint.js.map +0 -1
- package/dist/providers/claude.d.ts +0 -43
- package/dist/providers/claude.d.ts.map +0 -1
- package/dist/providers/claude.js +0 -191
- package/dist/providers/claude.js.map +0 -1
- package/dist/providers/codex-identity.d.ts +0 -13
- package/dist/providers/codex-identity.d.ts.map +0 -1
- package/dist/providers/codex-identity.js +0 -69
- package/dist/providers/codex-identity.js.map +0 -1
- package/dist/providers/codex-refresh.d.ts +0 -30
- package/dist/providers/codex-refresh.d.ts.map +0 -1
- package/dist/providers/codex-refresh.js +0 -64
- package/dist/providers/codex-refresh.js.map +0 -1
- package/dist/providers/codex-usage.d.ts +0 -3
- package/dist/providers/codex-usage.d.ts.map +0 -1
- package/dist/providers/codex-usage.js +0 -42
- package/dist/providers/codex-usage.js.map +0 -1
- package/dist/providers/codex.d.ts +0 -61
- package/dist/providers/codex.d.ts.map +0 -1
- package/dist/providers/codex.js +0 -212
- package/dist/providers/codex.js.map +0 -1
- package/dist/providers/gemini-antigravity-oauth.d.ts +0 -83
- package/dist/providers/gemini-antigravity-oauth.d.ts.map +0 -1
- package/dist/providers/gemini-antigravity-oauth.js +0 -343
- package/dist/providers/gemini-antigravity-oauth.js.map +0 -1
- package/dist/providers/gemini-antigravity-state.d.ts +0 -35
- package/dist/providers/gemini-antigravity-state.d.ts.map +0 -1
- package/dist/providers/gemini-antigravity-state.js +0 -433
- package/dist/providers/gemini-antigravity-state.js.map +0 -1
- package/dist/providers/gemini-env.d.ts +0 -8
- package/dist/providers/gemini-env.d.ts.map +0 -1
- package/dist/providers/gemini-env.js +0 -78
- package/dist/providers/gemini-env.js.map +0 -1
- package/dist/providers/gemini-identity.d.ts +0 -2
- package/dist/providers/gemini-identity.d.ts.map +0 -1
- package/dist/providers/gemini-identity.js +0 -14
- package/dist/providers/gemini-identity.js.map +0 -1
- package/dist/providers/gemini-proxy/main.d.ts +0 -3
- package/dist/providers/gemini-proxy/main.d.ts.map +0 -1
- package/dist/providers/gemini-proxy/main.js +0 -176
- package/dist/providers/gemini-proxy/main.js.map +0 -1
- package/dist/providers/gemini-proxy/server.d.ts +0 -57
- package/dist/providers/gemini-proxy/server.d.ts.map +0 -1
- package/dist/providers/gemini-proxy/server.js +0 -1240
- package/dist/providers/gemini-proxy/server.js.map +0 -1
- package/dist/providers/gemini-proxy-entry.d.ts +0 -2
- package/dist/providers/gemini-proxy-entry.d.ts.map +0 -1
- package/dist/providers/gemini-proxy-entry.js +0 -16
- package/dist/providers/gemini-proxy-entry.js.map +0 -1
- package/dist/providers/gemini-proxy-lifecycle.d.ts +0 -11
- package/dist/providers/gemini-proxy-lifecycle.d.ts.map +0 -1
- package/dist/providers/gemini-proxy-lifecycle.js +0 -131
- package/dist/providers/gemini-proxy-lifecycle.js.map +0 -1
- package/dist/providers/gemini.d.ts +0 -137
- package/dist/providers/gemini.d.ts.map +0 -1
- package/dist/providers/gemini.js +0 -471
- package/dist/providers/gemini.js.map +0 -1
- package/dist/providers/grok-proxy/auth.d.ts +0 -27
- package/dist/providers/grok-proxy/auth.d.ts.map +0 -1
- package/dist/providers/grok-proxy/auth.js +0 -123
- package/dist/providers/grok-proxy/auth.js.map +0 -1
- package/dist/providers/grok-proxy/main.d.ts +0 -3
- package/dist/providers/grok-proxy/main.d.ts.map +0 -1
- package/dist/providers/grok-proxy/main.js +0 -111
- package/dist/providers/grok-proxy/main.js.map +0 -1
- package/dist/providers/grok-proxy/server.d.ts +0 -46
- package/dist/providers/grok-proxy/server.d.ts.map +0 -1
- package/dist/providers/grok-proxy/server.js +0 -595
- package/dist/providers/grok-proxy/server.js.map +0 -1
- package/dist/providers/grok.d.ts +0 -38
- package/dist/providers/grok.d.ts.map +0 -1
- package/dist/providers/grok.js +0 -250
- package/dist/providers/grok.js.map +0 -1
- package/dist/providers/index.d.ts +0 -14
- package/dist/providers/index.d.ts.map +0 -1
- package/dist/providers/index.js +0 -23
- package/dist/providers/index.js.map +0 -1
- package/dist/providers/kiro-secret-store.d.ts +0 -39
- package/dist/providers/kiro-secret-store.d.ts.map +0 -1
- package/dist/providers/kiro-secret-store.js +0 -168
- package/dist/providers/kiro-secret-store.js.map +0 -1
- package/dist/providers/kiro.d.ts +0 -50
- package/dist/providers/kiro.d.ts.map +0 -1
- package/dist/providers/kiro.js +0 -373
- package/dist/providers/kiro.js.map +0 -1
- package/dist/providers/model-policy.d.ts +0 -15
- package/dist/providers/model-policy.d.ts.map +0 -1
- package/dist/providers/model-policy.js +0 -26
- package/dist/providers/model-policy.js.map +0 -1
- package/dist/providers/opencode-auth.d.ts +0 -67
- package/dist/providers/opencode-auth.d.ts.map +0 -1
- package/dist/providers/opencode-auth.js +0 -146
- package/dist/providers/opencode-auth.js.map +0 -1
- package/dist/providers/opencode-cli-entry.d.ts +0 -36
- package/dist/providers/opencode-cli-entry.d.ts.map +0 -1
- package/dist/providers/opencode-cli-entry.js +0 -90
- package/dist/providers/opencode-cli-entry.js.map +0 -1
- package/dist/providers/opencode-proxy/abort.d.ts +0 -8
- package/dist/providers/opencode-proxy/abort.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/abort.js +0 -42
- package/dist/providers/opencode-proxy/abort.js.map +0 -1
- package/dist/providers/opencode-proxy/anthropic-handler.d.ts +0 -4
- package/dist/providers/opencode-proxy/anthropic-handler.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/anthropic-handler.js +0 -108
- package/dist/providers/opencode-proxy/anthropic-handler.js.map +0 -1
- package/dist/providers/opencode-proxy/auth.d.ts +0 -38
- package/dist/providers/opencode-proxy/auth.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/auth.js +0 -128
- package/dist/providers/opencode-proxy/auth.js.map +0 -1
- package/dist/providers/opencode-proxy/body.d.ts +0 -9
- package/dist/providers/opencode-proxy/body.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/body.js +0 -69
- package/dist/providers/opencode-proxy/body.js.map +0 -1
- package/dist/providers/opencode-proxy/catalog-handlers.d.ts +0 -7
- package/dist/providers/opencode-proxy/catalog-handlers.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/catalog-handlers.js +0 -132
- package/dist/providers/opencode-proxy/catalog-handlers.js.map +0 -1
- package/dist/providers/opencode-proxy/catalog.d.ts +0 -41
- package/dist/providers/opencode-proxy/catalog.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/catalog.js +0 -146
- package/dist/providers/opencode-proxy/catalog.js.map +0 -1
- package/dist/providers/opencode-proxy/cli.d.ts +0 -2
- package/dist/providers/opencode-proxy/cli.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/cli.js +0 -162
- package/dist/providers/opencode-proxy/cli.js.map +0 -1
- package/dist/providers/opencode-proxy/constants.d.ts +0 -13
- package/dist/providers/opencode-proxy/constants.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/constants.js +0 -15
- package/dist/providers/opencode-proxy/constants.js.map +0 -1
- package/dist/providers/opencode-proxy/context-budget.d.ts +0 -31
- package/dist/providers/opencode-proxy/context-budget.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/context-budget.js +0 -165
- package/dist/providers/opencode-proxy/context-budget.js.map +0 -1
- package/dist/providers/opencode-proxy/errors.d.ts +0 -5
- package/dist/providers/opencode-proxy/errors.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/errors.js +0 -45
- package/dist/providers/opencode-proxy/errors.js.map +0 -1
- package/dist/providers/opencode-proxy/forwarders.d.ts +0 -7
- package/dist/providers/opencode-proxy/forwarders.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/forwarders.js +0 -214
- package/dist/providers/opencode-proxy/forwarders.js.map +0 -1
- package/dist/providers/opencode-proxy/http.d.ts +0 -11
- package/dist/providers/opencode-proxy/http.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/http.js +0 -97
- package/dist/providers/opencode-proxy/http.js.map +0 -1
- package/dist/providers/opencode-proxy/models.d.ts +0 -42
- package/dist/providers/opencode-proxy/models.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/models.js +0 -148
- package/dist/providers/opencode-proxy/models.js.map +0 -1
- package/dist/providers/opencode-proxy/openai-handler.d.ts +0 -5
- package/dist/providers/opencode-proxy/openai-handler.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/openai-handler.js +0 -115
- package/dist/providers/opencode-proxy/openai-handler.js.map +0 -1
- package/dist/providers/opencode-proxy/router.d.ts +0 -4
- package/dist/providers/opencode-proxy/router.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/router.js +0 -65
- package/dist/providers/opencode-proxy/router.js.map +0 -1
- package/dist/providers/opencode-proxy/runtime.d.ts +0 -23
- package/dist/providers/opencode-proxy/runtime.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/runtime.js +0 -158
- package/dist/providers/opencode-proxy/runtime.js.map +0 -1
- package/dist/providers/opencode-proxy/server.d.ts +0 -13
- package/dist/providers/opencode-proxy/server.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/server.js +0 -52
- package/dist/providers/opencode-proxy/server.js.map +0 -1
- package/dist/providers/opencode-proxy/stream.d.ts +0 -4
- package/dist/providers/opencode-proxy/stream.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/stream.js +0 -71
- package/dist/providers/opencode-proxy/stream.js.map +0 -1
- package/dist/providers/opencode-proxy/translate-stream.d.ts +0 -3
- package/dist/providers/opencode-proxy/translate-stream.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/translate-stream.js +0 -205
- package/dist/providers/opencode-proxy/translate-stream.js.map +0 -1
- package/dist/providers/opencode-proxy/translate.d.ts +0 -11
- package/dist/providers/opencode-proxy/translate.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/translate.js +0 -250
- package/dist/providers/opencode-proxy/translate.js.map +0 -1
- package/dist/providers/opencode-proxy/types.d.ts +0 -110
- package/dist/providers/opencode-proxy/types.d.ts.map +0 -1
- package/dist/providers/opencode-proxy/types.js +0 -38
- package/dist/providers/opencode-proxy/types.js.map +0 -1
- package/dist/providers/opencode-proxy-lifecycle.d.ts +0 -11
- package/dist/providers/opencode-proxy-lifecycle.d.ts.map +0 -1
- package/dist/providers/opencode-proxy-lifecycle.js +0 -144
- package/dist/providers/opencode-proxy-lifecycle.js.map +0 -1
- package/dist/providers/opencode.d.ts +0 -40
- package/dist/providers/opencode.d.ts.map +0 -1
- package/dist/providers/opencode.js +0 -190
- package/dist/providers/opencode.js.map +0 -1
- package/dist/providers/protocol/anthropic-convert.d.ts +0 -12
- package/dist/providers/protocol/anthropic-convert.d.ts.map +0 -1
- package/dist/providers/protocol/anthropic-convert.js +0 -113
- package/dist/providers/protocol/anthropic-convert.js.map +0 -1
- package/dist/providers/protocol/anthropic-helpers.d.ts +0 -13
- package/dist/providers/protocol/anthropic-helpers.d.ts.map +0 -1
- package/dist/providers/protocol/anthropic-helpers.js +0 -179
- package/dist/providers/protocol/anthropic-helpers.js.map +0 -1
- package/dist/providers/protocol/anthropic-stream-reader.d.ts +0 -13
- package/dist/providers/protocol/anthropic-stream-reader.d.ts.map +0 -1
- package/dist/providers/protocol/anthropic-stream-reader.js +0 -46
- package/dist/providers/protocol/anthropic-stream-reader.js.map +0 -1
- package/dist/providers/protocol/anthropic-stream.d.ts +0 -7
- package/dist/providers/protocol/anthropic-stream.d.ts.map +0 -1
- package/dist/providers/protocol/anthropic-stream.js +0 -318
- package/dist/providers/protocol/anthropic-stream.js.map +0 -1
- package/dist/providers/protocol/anthropic-types.d.ts +0 -240
- package/dist/providers/protocol/anthropic-types.d.ts.map +0 -1
- package/dist/providers/protocol/anthropic.d.ts +0 -20
- package/dist/providers/protocol/anthropic.d.ts.map +0 -1
- package/dist/providers/protocol/gemini/translate-anthropic.d.ts +0 -15
- package/dist/providers/protocol/gemini/translate-anthropic.d.ts.map +0 -1
- package/dist/providers/protocol/gemini/translate-anthropic.js +0 -84
- package/dist/providers/protocol/gemini/translate-anthropic.js.map +0 -1
- package/dist/providers/protocol/gemini/translate-chat.d.ts +0 -5
- package/dist/providers/protocol/gemini/translate-chat.d.ts.map +0 -1
- package/dist/providers/protocol/gemini/translate-chat.js +0 -142
- package/dist/providers/protocol/gemini/translate-chat.js.map +0 -1
- package/dist/providers/protocol/gemini/translate-models.d.ts +0 -40
- package/dist/providers/protocol/gemini/translate-models.d.ts.map +0 -1
- package/dist/providers/protocol/gemini/translate-models.js +0 -186
- package/dist/providers/protocol/gemini/translate-models.js.map +0 -1
- package/dist/providers/protocol/gemini/translate-responses.d.ts +0 -6
- package/dist/providers/protocol/gemini/translate-responses.d.ts.map +0 -1
- package/dist/providers/protocol/gemini/translate-responses.js +0 -187
- package/dist/providers/protocol/gemini/translate-responses.js.map +0 -1
- package/dist/providers/protocol/gemini/translate-schema.d.ts +0 -9
- package/dist/providers/protocol/gemini/translate-schema.d.ts.map +0 -1
- package/dist/providers/protocol/gemini/translate-schema.js +0 -48
- package/dist/providers/protocol/gemini/translate-schema.js.map +0 -1
- package/dist/providers/protocol/gemini/translate-shared.d.ts +0 -8
- package/dist/providers/protocol/gemini/translate-shared.d.ts.map +0 -1
- package/dist/providers/protocol/gemini/translate-shared.js +0 -47
- package/dist/providers/protocol/gemini/translate-shared.js.map +0 -1
- package/dist/providers/protocol/gemini/translate-thinking.d.ts +0 -7
- package/dist/providers/protocol/gemini/translate-thinking.d.ts.map +0 -1
- package/dist/providers/protocol/gemini/translate-thinking.js +0 -65
- package/dist/providers/protocol/gemini/translate-thinking.js.map +0 -1
- package/dist/providers/protocol/gemini/translate-types.d.ts +0 -133
- package/dist/providers/protocol/gemini/translate-types.d.ts.map +0 -1
- package/dist/providers/protocol/gemini/translate.d.ts +0 -7
- package/dist/providers/protocol/gemini/translate.d.ts.map +0 -1
- package/dist/providers/protocol/json-schema.d.ts +0 -52
- package/dist/providers/protocol/json-schema.d.ts.map +0 -1
- package/dist/providers/protocol/json-schema.js +0 -189
- package/dist/providers/protocol/json-schema.js.map +0 -1
- package/dist/providers/protocol/token-estimate.d.ts +0 -15
- package/dist/providers/protocol/token-estimate.d.ts.map +0 -1
- package/dist/providers/protocol/token-estimate.js +0 -34
- package/dist/providers/protocol/token-estimate.js.map +0 -1
- package/dist/providers/proxy-hub-backend.d.ts +0 -4
- package/dist/providers/proxy-hub-backend.d.ts.map +0 -1
- package/dist/providers/proxy-hub-backend.js +0 -11
- package/dist/providers/proxy-hub-backend.js.map +0 -1
- package/dist/providers/proxy-process.d.ts +0 -35
- package/dist/providers/proxy-process.d.ts.map +0 -1
- package/dist/providers/proxy-process.js +0 -119
- package/dist/providers/proxy-process.js.map +0 -1
- package/dist/providers/proxy-shared.d.ts +0 -43
- package/dist/providers/proxy-shared.d.ts.map +0 -1
- package/dist/providers/proxy-shared.js +0 -128
- package/dist/providers/proxy-shared.js.map +0 -1
- package/dist/providers/quota-guard.d.ts +0 -49
- package/dist/providers/quota-guard.d.ts.map +0 -1
- package/dist/providers/quota-guard.js +0 -107
- package/dist/providers/quota-guard.js.map +0 -1
- package/dist/providers/reasoning.d.ts +0 -27
- package/dist/providers/reasoning.d.ts.map +0 -1
- package/dist/providers/reasoning.js +0 -61
- package/dist/providers/reasoning.js.map +0 -1
- package/dist/providers/upstream-policy.d.ts +0 -33
- package/dist/providers/upstream-policy.d.ts.map +0 -1
- package/dist/providers/upstream-policy.js +0 -97
- package/dist/providers/upstream-policy.js.map +0 -1
- package/dist/public-types.d.ts +0 -3
- package/dist/public-types.d.ts.map +0 -1
- package/dist/public.d.ts +0 -19
- package/dist/public.d.ts.map +0 -1
- package/dist/public.js +0 -16
- package/dist/public.js.map +0 -1
- package/dist/sources/account-adapters.d.ts +0 -64
- package/dist/sources/account-adapters.d.ts.map +0 -1
- package/dist/sources/account-adapters.js +0 -205
- package/dist/sources/account-adapters.js.map +0 -1
- package/dist/sources/gateway-adapters.d.ts +0 -26
- package/dist/sources/gateway-adapters.d.ts.map +0 -1
- package/dist/sources/gateway-adapters.js +0 -43
- package/dist/sources/gateway-adapters.js.map +0 -1
- package/dist/sources/kiro-proxy-bin.d.ts +0 -41
- package/dist/sources/kiro-proxy-bin.d.ts.map +0 -1
- package/dist/sources/kiro-proxy-bin.js +0 -140
- package/dist/sources/kiro-proxy-bin.js.map +0 -1
- package/dist/sources/proxy-hub-adapters.d.ts +0 -7
- package/dist/sources/proxy-hub-adapters.d.ts.map +0 -1
- package/dist/sources/proxy-hub-adapters.js +0 -26
- package/dist/sources/proxy-hub-adapters.js.map +0 -1
- package/dist/testing.d.ts +0 -9
- package/dist/testing.d.ts.map +0 -1
- package/dist/testing.js +0 -6
- package/dist/tray/AnyPickTray.swift +0 -3
- package/dist/tray/activity.d.ts +0 -18
- package/dist/tray/activity.d.ts.map +0 -1
- package/dist/tray/activity.js +0 -51
- package/dist/tray/activity.js.map +0 -1
- 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 +0 -1
- package/dist/tray/icons/googlegemini.svg +0 -1
- package/dist/tray/icons/grok.svg +0 -1
- package/dist/tray/icons/kiro.svg +0 -1
- package/dist/tray/icons/openai.svg +0 -1
- package/dist/tray/icons/opencode.svg +0 -1
- package/dist/tray/icons/openrouter.svg +0 -1
- package/dist/tray/model-role-actions.d.ts +0 -15
- package/dist/tray/model-role-actions.d.ts.map +0 -1
- package/dist/tray/model-role-actions.js +0 -41
- package/dist/tray/model-role-actions.js.map +0 -1
- package/dist/tray/native/AccountsPanel.swift +0 -434
- package/dist/tray/native/AppEntry.swift +0 -229
- package/dist/tray/native/MainWindow.swift +0 -300
- package/dist/tray/native/ManageFormChrome.swift +0 -332
- package/dist/tray/native/ManageForms.swift +0 -472
- package/dist/tray/native/ManagePanel.swift +0 -356
- package/dist/tray/native/Models.swift +0 -259
- package/dist/tray/native/ModelsEditor.swift +0 -390
- package/dist/tray/native/ModelsOverview.swift +0 -76
- package/dist/tray/native/ModelsPickers.swift +0 -273
- package/dist/tray/native/ModelsRoutePickers.swift +0 -718
- package/dist/tray/native/MonitorPanel.swift +0 -375
- package/dist/tray/native/ProxyPanel.swift +0 -326
- package/dist/tray/native/QuickActivityRow.swift +0 -40
- package/dist/tray/native/QuickNav.swift +0 -62
- package/dist/tray/native/QuickPanel.swift +0 -447
- package/dist/tray/native/QuickRouteRow.swift +0 -189
- package/dist/tray/native/QuickServiceRows.swift +0 -292
- package/dist/tray/native/RoutingIssues.swift +0 -293
- package/dist/tray/native/SettingsPanel.swift +0 -225
- package/dist/tray/native/SharedUI.swift +0 -681
- package/dist/tray/native/Store.swift +0 -540
- package/dist/tray/native/Theme.swift +0 -139
- package/dist/tray/native/TrayChrome.swift +0 -657
- package/dist/tray/native/TrayControls.swift +0 -475
- package/dist/tray/native/TrayPreferences.swift +0 -46
- package/dist/tray/native/sources.txt +0 -26
- package/dist/tray/native-sources.d.ts +0 -8
- package/dist/tray/native-sources.d.ts.map +0 -1
- package/dist/tray/native-sources.js +0 -19
- package/dist/tray/native-sources.js.map +0 -1
- package/dist/tray/protocol.d.ts +0 -79
- package/dist/tray/protocol.d.ts.map +0 -1
- package/dist/tray/protocol.js +0 -145
- package/dist/tray/protocol.js.map +0 -1
- package/dist/tray/settings.d.ts +0 -15
- package/dist/tray/settings.d.ts.map +0 -1
- package/dist/tray/settings.js +0 -72
- package/dist/tray/settings.js.map +0 -1
- package/dist/tray/snapshot-client-routes.d.ts +0 -11
- package/dist/tray/snapshot-client-routes.d.ts.map +0 -1
- package/dist/tray/snapshot-client-routes.js +0 -305
- package/dist/tray/snapshot-client-routes.js.map +0 -1
- package/dist/tray/snapshot-helpers.d.ts +0 -20
- package/dist/tray/snapshot-helpers.d.ts.map +0 -1
- package/dist/tray/snapshot-helpers.js +0 -74
- package/dist/tray/snapshot-helpers.js.map +0 -1
- package/dist/tray/snapshot-hub.d.ts +0 -7
- package/dist/tray/snapshot-hub.d.ts.map +0 -1
- package/dist/tray/snapshot-hub.js +0 -93
- package/dist/tray/snapshot-hub.js.map +0 -1
- package/dist/tray/snapshot-resources.d.ts +0 -19
- package/dist/tray/snapshot-resources.d.ts.map +0 -1
- package/dist/tray/snapshot-resources.js +0 -216
- package/dist/tray/snapshot-resources.js.map +0 -1
- package/dist/tray/snapshot-types.d.ts +0 -229
- package/dist/tray/snapshot-types.d.ts.map +0 -1
- package/dist/tray/snapshot-usage.d.ts +0 -9
- package/dist/tray/snapshot-usage.d.ts.map +0 -1
- package/dist/tray/snapshot-usage.js +0 -35
- package/dist/tray/snapshot-usage.js.map +0 -1
- package/dist/tray/snapshot.d.ts +0 -7
- package/dist/tray/snapshot.d.ts.map +0 -1
- package/dist/tray/snapshot.js +0 -48
- package/dist/tray/snapshot.js.map +0 -1
- package/dist/tray/supervisor-actions.d.ts +0 -19
- package/dist/tray/supervisor-actions.d.ts.map +0 -1
- package/dist/tray/supervisor-actions.js +0 -224
- package/dist/tray/supervisor-actions.js.map +0 -1
- package/dist/tray/supervisor-activity.d.ts +0 -5
- package/dist/tray/supervisor-activity.d.ts.map +0 -1
- package/dist/tray/supervisor-activity.js +0 -19
- package/dist/tray/supervisor-activity.js.map +0 -1
- package/dist/tray/supervisor-errors.d.ts +0 -9
- package/dist/tray/supervisor-errors.d.ts.map +0 -1
- package/dist/tray/supervisor-errors.js +0 -91
- package/dist/tray/supervisor-errors.js.map +0 -1
- package/dist/tray/supervisor-logs.d.ts +0 -6
- package/dist/tray/supervisor-logs.d.ts.map +0 -1
- package/dist/tray/supervisor-logs.js +0 -52
- package/dist/tray/supervisor-logs.js.map +0 -1
- package/dist/tray/supervisor-mutations.d.ts +0 -14
- package/dist/tray/supervisor-mutations.d.ts.map +0 -1
- package/dist/tray/supervisor-mutations.js +0 -218
- package/dist/tray/supervisor-mutations.js.map +0 -1
- package/dist/tray/supervisor-native.d.ts +0 -22
- package/dist/tray/supervisor-native.d.ts.map +0 -1
- package/dist/tray/supervisor-native.js +0 -227
- package/dist/tray/supervisor-native.js.map +0 -1
- package/dist/tray/supervisor-proxies.d.ts +0 -6
- package/dist/tray/supervisor-proxies.d.ts.map +0 -1
- package/dist/tray/supervisor-proxies.js +0 -37
- package/dist/tray/supervisor-proxies.js.map +0 -1
- package/dist/tray/supervisor-tauri.d.ts +0 -13
- package/dist/tray/supervisor-tauri.d.ts.map +0 -1
- package/dist/tray/supervisor-tauri.js +0 -36
- package/dist/tray/supervisor-tauri.js.map +0 -1
- package/dist/tray/supervisor.d.ts +0 -17
- package/dist/tray/supervisor.d.ts.map +0 -1
- package/dist/tray/supervisor.js +0 -372
- package/dist/tray/supervisor.js.map +0 -1
- package/dist/tray/terminal-launcher.d.ts +0 -12
- package/dist/tray/terminal-launcher.d.ts.map +0 -1
- package/dist/tray/terminal-launcher.js +0 -130
- package/dist/tray/terminal-launcher.js.map +0 -1
- package/dist/tui/actions/ensure-proxy-up.d.ts +0 -15
- package/dist/tui/actions/ensure-proxy-up.d.ts.map +0 -1
- package/dist/tui/actions/ensure-proxy-up.js +0 -41
- package/dist/tui/actions/ensure-proxy-up.js.map +0 -1
- package/dist/tui/actions/use-account-actions.d.ts +0 -35
- package/dist/tui/actions/use-account-actions.d.ts.map +0 -1
- package/dist/tui/actions/use-account-actions.js +0 -527
- package/dist/tui/actions/use-account-actions.js.map +0 -1
- package/dist/tui/actions/use-app-bindings.d.ts +0 -83
- package/dist/tui/actions/use-app-bindings.d.ts.map +0 -1
- package/dist/tui/actions/use-app-bindings.js +0 -472
- package/dist/tui/actions/use-app-bindings.js.map +0 -1
- package/dist/tui/actions/use-gateway-actions.d.ts +0 -45
- package/dist/tui/actions/use-gateway-actions.d.ts.map +0 -1
- package/dist/tui/actions/use-gateway-actions.js +0 -370
- package/dist/tui/actions/use-gateway-actions.js.map +0 -1
- package/dist/tui/actions/use-home-filter.d.ts +0 -24
- package/dist/tui/actions/use-home-filter.d.ts.map +0 -1
- package/dist/tui/actions/use-home-filter.js +0 -48
- package/dist/tui/actions/use-home-filter.js.map +0 -1
- package/dist/tui/actions/use-model-role-editor.d.ts +0 -44
- package/dist/tui/actions/use-model-role-editor.d.ts.map +0 -1
- package/dist/tui/actions/use-model-role-editor.js +0 -68
- package/dist/tui/actions/use-model-role-editor.js.map +0 -1
- package/dist/tui/actions/use-provider-filter.d.ts +0 -10
- package/dist/tui/actions/use-provider-filter.d.ts.map +0 -1
- package/dist/tui/actions/use-provider-filter.js +0 -22
- package/dist/tui/actions/use-provider-filter.js.map +0 -1
- package/dist/tui/actions/use-proxy-actions.d.ts +0 -31
- package/dist/tui/actions/use-proxy-actions.d.ts.map +0 -1
- package/dist/tui/actions/use-proxy-actions.js +0 -474
- package/dist/tui/actions/use-proxy-actions.js.map +0 -1
- package/dist/tui/actions/use-text-input-submit.d.ts +0 -16
- package/dist/tui/actions/use-text-input-submit.d.ts.map +0 -1
- package/dist/tui/actions/use-text-input-submit.js +0 -96
- package/dist/tui/actions/use-text-input-submit.js.map +0 -1
- package/dist/tui/actions/use-tray-runtime-actions.d.ts +0 -18
- package/dist/tui/actions/use-tray-runtime-actions.d.ts.map +0 -1
- package/dist/tui/actions/use-tray-runtime-actions.js +0 -78
- package/dist/tui/actions/use-tray-runtime-actions.js.map +0 -1
- package/dist/tui/app-ui-helpers.d.ts +0 -14
- package/dist/tui/app-ui-helpers.d.ts.map +0 -1
- package/dist/tui/app-ui-helpers.js +0 -48
- package/dist/tui/app-ui-helpers.js.map +0 -1
- package/dist/tui/app-ui.d.ts +0 -19
- package/dist/tui/app-ui.d.ts.map +0 -1
- package/dist/tui/app-ui.js +0 -98
- package/dist/tui/app-ui.js.map +0 -1
- package/dist/tui/components/chrome/header.d.ts +0 -39
- package/dist/tui/components/chrome/header.d.ts.map +0 -1
- package/dist/tui/components/chrome/header.js +0 -161
- package/dist/tui/components/chrome/header.js.map +0 -1
- package/dist/tui/components/chrome/inputs.d.ts +0 -34
- package/dist/tui/components/chrome/inputs.d.ts.map +0 -1
- package/dist/tui/components/chrome/inputs.js +0 -82
- package/dist/tui/components/chrome/inputs.js.map +0 -1
- package/dist/tui/components/chrome/layout.d.ts +0 -61
- package/dist/tui/components/chrome/layout.d.ts.map +0 -1
- package/dist/tui/components/chrome/layout.js +0 -119
- package/dist/tui/components/chrome/layout.js.map +0 -1
- package/dist/tui/components/chrome/legacy.d.ts +0 -84
- package/dist/tui/components/chrome/legacy.d.ts.map +0 -1
- package/dist/tui/components/chrome/legacy.js +0 -6
- package/dist/tui/components/chrome/rows.d.ts +0 -89
- package/dist/tui/components/chrome/rows.d.ts.map +0 -1
- package/dist/tui/components/chrome/rows.js +0 -151
- package/dist/tui/components/chrome/rows.js.map +0 -1
- package/dist/tui/components/chrome/status.d.ts +0 -50
- package/dist/tui/components/chrome/status.d.ts.map +0 -1
- package/dist/tui/components/chrome/status.js +0 -157
- package/dist/tui/components/chrome/status.js.map +0 -1
- package/dist/tui/components/chrome.d.ts +0 -7
- package/dist/tui/components/chrome.d.ts.map +0 -1
- package/dist/tui/components/chrome.js +0 -7
- package/dist/tui/components.d.ts +0 -26
- package/dist/tui/components.d.ts.map +0 -1
- package/dist/tui/components.js +0 -182
- package/dist/tui/components.js.map +0 -1
- package/dist/tui/model/anypick.d.ts +0 -106
- package/dist/tui/model/anypick.d.ts.map +0 -1
- package/dist/tui/model/anypick.js +0 -116
- package/dist/tui/model/anypick.js.map +0 -1
- package/dist/tui/model/bindings.d.ts +0 -39
- package/dist/tui/model/bindings.d.ts.map +0 -1
- package/dist/tui/model/bindings.js +0 -102
- package/dist/tui/model/bindings.js.map +0 -1
- package/dist/tui/model/detail.d.ts +0 -6
- package/dist/tui/model/detail.d.ts.map +0 -1
- package/dist/tui/model/detail.js +0 -85
- package/dist/tui/model/detail.js.map +0 -1
- package/dist/tui/model/gateway.d.ts +0 -46
- package/dist/tui/model/gateway.d.ts.map +0 -1
- package/dist/tui/model/gateway.js +0 -134
- package/dist/tui/model/gateway.js.map +0 -1
- package/dist/tui/model/home-format.d.ts +0 -52
- package/dist/tui/model/home-format.d.ts.map +0 -1
- package/dist/tui/model/home-format.js +0 -64
- package/dist/tui/model/home-format.js.map +0 -1
- package/dist/tui/model/home-load.d.ts +0 -8
- package/dist/tui/model/home-load.d.ts.map +0 -1
- package/dist/tui/model/home-load.js +0 -244
- package/dist/tui/model/home-load.js.map +0 -1
- package/dist/tui/model/identity.d.ts +0 -53
- package/dist/tui/model/identity.d.ts.map +0 -1
- package/dist/tui/model/identity.js +0 -176
- package/dist/tui/model/identity.js.map +0 -1
- package/dist/tui/model/line-editor.d.ts +0 -99
- package/dist/tui/model/line-editor.d.ts.map +0 -1
- package/dist/tui/model/line-editor.js +0 -186
- package/dist/tui/model/line-editor.js.map +0 -1
- package/dist/tui/model/names.d.ts +0 -28
- package/dist/tui/model/names.d.ts.map +0 -1
- package/dist/tui/model/names.js +0 -42
- package/dist/tui/model/names.js.map +0 -1
- package/dist/tui/model/pool.d.ts +0 -11
- package/dist/tui/model/pool.d.ts.map +0 -1
- package/dist/tui/model/pool.js +0 -115
- package/dist/tui/model/pool.js.map +0 -1
- package/dist/tui/model/provider-filter.d.ts +0 -14
- package/dist/tui/model/provider-filter.d.ts.map +0 -1
- package/dist/tui/model/provider-filter.js +0 -46
- package/dist/tui/model/provider-filter.js.map +0 -1
- package/dist/tui/model/proxy-hub.d.ts +0 -23
- package/dist/tui/model/proxy-hub.d.ts.map +0 -1
- package/dist/tui/model/proxy-hub.js +0 -69
- package/dist/tui/model/proxy-hub.js.map +0 -1
- package/dist/tui/model/proxy-labels.d.ts +0 -5
- package/dist/tui/model/proxy-labels.d.ts.map +0 -1
- package/dist/tui/model/proxy-labels.js +0 -18
- package/dist/tui/model/proxy-labels.js.map +0 -1
- package/dist/tui/model/proxy.d.ts +0 -15
- package/dist/tui/model/proxy.d.ts.map +0 -1
- package/dist/tui/model/proxy.js +0 -214
- package/dist/tui/model/proxy.js.map +0 -1
- package/dist/tui/model/root.d.ts +0 -20
- package/dist/tui/model/root.d.ts.map +0 -1
- package/dist/tui/model/root.js +0 -126
- package/dist/tui/model/root.js.map +0 -1
- package/dist/tui/model/route-builder.d.ts +0 -25
- package/dist/tui/model/route-builder.d.ts.map +0 -1
- package/dist/tui/model/route-builder.js +0 -199
- package/dist/tui/model/route-builder.js.map +0 -1
- package/dist/tui/model/screen.d.ts +0 -260
- package/dist/tui/model/screen.d.ts.map +0 -1
- package/dist/tui/model/types.d.ts +0 -179
- package/dist/tui/model/types.d.ts.map +0 -1
- package/dist/tui/model.d.ts +0 -18
- package/dist/tui/model.d.ts.map +0 -1
- package/dist/tui/model.js +0 -17
- package/dist/tui/proxy-models-fetch.d.ts +0 -34
- package/dist/tui/proxy-models-fetch.d.ts.map +0 -1
- package/dist/tui/proxy-models-fetch.js +0 -87
- package/dist/tui/proxy-models-fetch.js.map +0 -1
- package/dist/tui/routes/account.d.ts +0 -4
- package/dist/tui/routes/account.d.ts.map +0 -1
- package/dist/tui/routes/account.js +0 -327
- package/dist/tui/routes/account.js.map +0 -1
- package/dist/tui/routes/apps.d.ts +0 -3
- package/dist/tui/routes/apps.d.ts.map +0 -1
- package/dist/tui/routes/apps.js +0 -296
- package/dist/tui/routes/apps.js.map +0 -1
- package/dist/tui/routes/common.d.ts +0 -4
- package/dist/tui/routes/common.d.ts.map +0 -1
- package/dist/tui/routes/common.js +0 -117
- package/dist/tui/routes/common.js.map +0 -1
- package/dist/tui/routes/context.d.ts +0 -43
- package/dist/tui/routes/context.d.ts.map +0 -1
- package/dist/tui/routes/gateway.d.ts +0 -3
- package/dist/tui/routes/gateway.d.ts.map +0 -1
- package/dist/tui/routes/gateway.js +0 -199
- package/dist/tui/routes/gateway.js.map +0 -1
- package/dist/tui/routes/proxy.d.ts +0 -3
- package/dist/tui/routes/proxy.d.ts.map +0 -1
- package/dist/tui/routes/proxy.js +0 -234
- package/dist/tui/routes/proxy.js.map +0 -1
- package/dist/tui/screens/account-detail.d.ts +0 -14
- package/dist/tui/screens/account-detail.d.ts.map +0 -1
- package/dist/tui/screens/account-detail.js +0 -98
- package/dist/tui/screens/account-detail.js.map +0 -1
- package/dist/tui/screens/accounts-home.d.ts +0 -42
- package/dist/tui/screens/accounts-home.d.ts.map +0 -1
- package/dist/tui/screens/accounts-home.js +0 -321
- package/dist/tui/screens/accounts-home.js.map +0 -1
- package/dist/tui/screens/add-account.d.ts +0 -70
- package/dist/tui/screens/add-account.d.ts.map +0 -1
- package/dist/tui/screens/add-account.js +0 -323
- package/dist/tui/screens/add-account.js.map +0 -1
- package/dist/tui/screens/anypick-home.d.ts +0 -39
- package/dist/tui/screens/anypick-home.d.ts.map +0 -1
- package/dist/tui/screens/anypick-home.js +0 -253
- package/dist/tui/screens/anypick-home.js.map +0 -1
- package/dist/tui/screens/anypick-preview.d.ts +0 -13
- package/dist/tui/screens/anypick-preview.d.ts.map +0 -1
- package/dist/tui/screens/anypick-preview.js +0 -49
- package/dist/tui/screens/anypick-preview.js.map +0 -1
- package/dist/tui/screens/app-route-preview.d.ts +0 -14
- package/dist/tui/screens/app-route-preview.d.ts.map +0 -1
- package/dist/tui/screens/app-route-preview.js +0 -35
- package/dist/tui/screens/app-route-preview.js.map +0 -1
- package/dist/tui/screens/app-route-source.d.ts +0 -15
- package/dist/tui/screens/app-route-source.d.ts.map +0 -1
- package/dist/tui/screens/app-route-source.js +0 -97
- package/dist/tui/screens/app-route-source.js.map +0 -1
- package/dist/tui/screens/apps-home.d.ts +0 -22
- package/dist/tui/screens/apps-home.d.ts.map +0 -1
- package/dist/tui/screens/apps-home.js +0 -111
- package/dist/tui/screens/apps-home.js.map +0 -1
- package/dist/tui/screens/confirm.d.ts +0 -19
- package/dist/tui/screens/confirm.d.ts.map +0 -1
- package/dist/tui/screens/confirm.js +0 -42
- package/dist/tui/screens/confirm.js.map +0 -1
- package/dist/tui/screens/credential-form.d.ts +0 -30
- package/dist/tui/screens/credential-form.d.ts.map +0 -1
- package/dist/tui/screens/credential-form.js +0 -241
- package/dist/tui/screens/credential-form.js.map +0 -1
- package/dist/tui/screens/gateway-connection-form.d.ts +0 -16
- package/dist/tui/screens/gateway-connection-form.d.ts.map +0 -1
- package/dist/tui/screens/gateway-connection-form.js +0 -127
- package/dist/tui/screens/gateway-connection-form.js.map +0 -1
- package/dist/tui/screens/gateway-pick-provider.d.ts +0 -19
- package/dist/tui/screens/gateway-pick-provider.d.ts.map +0 -1
- package/dist/tui/screens/gateway-pick-provider.js +0 -62
- package/dist/tui/screens/gateway-pick-provider.js.map +0 -1
- package/dist/tui/screens/gateways-home.d.ts +0 -38
- package/dist/tui/screens/gateways-home.d.ts.map +0 -1
- package/dist/tui/screens/gateways-home.js +0 -247
- package/dist/tui/screens/gateways-home.js.map +0 -1
- package/dist/tui/screens/health.d.ts +0 -16
- package/dist/tui/screens/health.d.ts.map +0 -1
- package/dist/tui/screens/health.js +0 -109
- package/dist/tui/screens/health.js.map +0 -1
- package/dist/tui/screens/help.d.ts +0 -10
- package/dist/tui/screens/help.d.ts.map +0 -1
- package/dist/tui/screens/help.js +0 -213
- package/dist/tui/screens/help.js.map +0 -1
- package/dist/tui/screens/manage-apps.d.ts +0 -29
- package/dist/tui/screens/manage-apps.d.ts.map +0 -1
- package/dist/tui/screens/manage-apps.js +0 -165
- package/dist/tui/screens/manage-apps.js.map +0 -1
- package/dist/tui/screens/proxy-board-helpers.d.ts +0 -9
- package/dist/tui/screens/proxy-board-helpers.d.ts.map +0 -1
- package/dist/tui/screens/proxy-board-helpers.js +0 -70
- package/dist/tui/screens/proxy-board-helpers.js.map +0 -1
- package/dist/tui/screens/proxy-board.d.ts +0 -43
- package/dist/tui/screens/proxy-board.d.ts.map +0 -1
- package/dist/tui/screens/proxy-board.js +0 -351
- package/dist/tui/screens/proxy-board.js.map +0 -1
- package/dist/tui/screens/proxy-hub.d.ts +0 -21
- package/dist/tui/screens/proxy-hub.d.ts.map +0 -1
- package/dist/tui/screens/proxy-hub.js +0 -150
- package/dist/tui/screens/proxy-hub.js.map +0 -1
- package/dist/tui/screens/proxy-models-utils.d.ts +0 -13
- package/dist/tui/screens/proxy-models-utils.d.ts.map +0 -1
- package/dist/tui/screens/proxy-models-utils.js +0 -53
- package/dist/tui/screens/proxy-models-utils.js.map +0 -1
- package/dist/tui/screens/proxy-models.d.ts +0 -65
- package/dist/tui/screens/proxy-models.d.ts.map +0 -1
- package/dist/tui/screens/proxy-models.js +0 -252
- package/dist/tui/screens/proxy-models.js.map +0 -1
- package/dist/tui/screens/proxy.d.ts +0 -26
- package/dist/tui/screens/proxy.d.ts.map +0 -1
- package/dist/tui/screens/text-input.d.ts +0 -18
- package/dist/tui/screens/text-input.d.ts.map +0 -1
- package/dist/tui/screens/text-input.js +0 -67
- package/dist/tui/screens/text-input.js.map +0 -1
- package/dist/tui/screens/tray-runtime.d.ts +0 -19
- package/dist/tui/screens/tray-runtime.d.ts.map +0 -1
- package/dist/tui/screens/tray-runtime.js +0 -108
- package/dist/tui/screens/tray-runtime.js.map +0 -1
- package/dist/tui/use-tui-nav.d.ts +0 -40
- package/dist/tui/use-tui-nav.d.ts.map +0 -1
- package/dist/tui/use-tui-nav.js +0 -256
- package/dist/tui/use-tui-nav.js.map +0 -1
- package/dist/tui/use-tui-shell.d.ts +0 -46
- package/dist/tui/use-tui-shell.d.ts.map +0 -1
- package/dist/tui/use-tui-shell.js +0 -95
- package/dist/tui/use-tui-shell.js.map +0 -1
- package/dist/types/account.d.ts +0 -410
- package/dist/types/account.d.ts.map +0 -1
- package/dist/types/account.js +0 -7
- package/dist/types/account.js.map +0 -1
- package/dist/types/bindings.d.ts +0 -300
- package/dist/types/bindings.d.ts.map +0 -1
- package/dist/types/catalog.d.ts +0 -165
- package/dist/types/catalog.d.ts.map +0 -1
- package/dist/types/clients.d.ts +0 -174
- package/dist/types/clients.d.ts.map +0 -1
- package/dist/types/clients.js +0 -11
- package/dist/types/clients.js.map +0 -1
- package/dist/types/plugins.d.ts +0 -89
- package/dist/types/plugins.d.ts.map +0 -1
- package/dist/types/plugins.js +0 -14
- package/dist/types/plugins.js.map +0 -1
- package/dist/types/proxy-hub.d.ts +0 -109
- package/dist/types/proxy-hub.d.ts.map +0 -1
- package/dist/types.d.ts +0 -7
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -1
- package/dist/utils/errors.d.ts +0 -61
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js +0 -119
- package/dist/utils/errors.js.map +0 -1
- package/dist/utils/fs.d.ts +0 -39
- package/dist/utils/fs.d.ts.map +0 -1
- package/dist/utils/fs.js +0 -126
- package/dist/utils/fs.js.map +0 -1
- package/dist/utils/lock.d.ts +0 -33
- package/dist/utils/lock.d.ts.map +0 -1
- package/dist/utils/lock.js +0 -95
- package/dist/utils/lock.js.map +0 -1
- package/dist/utils/log.d.ts +0 -10
- package/dist/utils/log.d.ts.map +0 -1
- package/dist/utils/log.js +0 -21
- package/dist/utils/log.js.map +0 -1
- package/dist/utils/network.d.ts +0 -3
- package/dist/utils/network.d.ts.map +0 -1
- package/dist/utils/network.js +0 -13
- package/dist/utils/network.js.map +0 -1
- package/dist/utils/process/binary.d.ts +0 -14
- package/dist/utils/process/binary.d.ts.map +0 -1
- package/dist/utils/process/binary.js +0 -29
- package/dist/utils/process/binary.js.map +0 -1
- package/dist/utils/process/follow.d.ts +0 -2
- package/dist/utils/process/follow.d.ts.map +0 -1
- package/dist/utils/process/follow.js +0 -90
- package/dist/utils/process/follow.js.map +0 -1
- package/dist/utils/process/health.d.ts +0 -43
- package/dist/utils/process/health.d.ts.map +0 -1
- package/dist/utils/process/health.js +0 -132
- package/dist/utils/process/health.js.map +0 -1
- package/dist/utils/process/pid.d.ts +0 -95
- package/dist/utils/process/pid.d.ts.map +0 -1
- package/dist/utils/process/pid.js +0 -243
- package/dist/utils/process/pid.js.map +0 -1
- package/dist/utils/process.d.ts +0 -5
- package/dist/utils/process.d.ts.map +0 -1
- package/dist/utils/process.js +0 -5
- package/dist/utils/slug.d.ts +0 -18
- package/dist/utils/slug.d.ts.map +0 -1
- package/dist/utils/slug.js +0 -42
- package/dist/utils/slug.js.map +0 -1
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
//#region src/providers/codex-refresh.ts
|
|
2
|
-
/**
|
|
3
|
-
* ChatGPT / Codex OAuth token refresh (no browser).
|
|
4
|
-
*
|
|
5
|
-
* Endpoint + client_id match the official Codex CLI binary
|
|
6
|
-
* (https://auth.openai.com/oauth/token, app_EMoamEEZ73f0CkXaXp7hrann).
|
|
7
|
-
*/
|
|
8
|
-
var CODEX_OAUTH_TOKEN_URL = process.env.CODEX_REFRESH_TOKEN_URL_OVERRIDE?.trim() || "https://auth.openai.com/oauth/token";
|
|
9
|
-
var CODEX_OAUTH_CLIENT_ID = "app_EMoamEEZ73f0CkXaXp7hrann";
|
|
10
|
-
/**
|
|
11
|
-
* Refresh Codex ChatGPT OAuth tokens in-memory from an auth.json object.
|
|
12
|
-
*/
|
|
13
|
-
async function refreshCodexAuth(auth, fetchFn = fetch) {
|
|
14
|
-
const refreshToken = auth.tokens?.refresh_token;
|
|
15
|
-
if (!refreshToken) throw new Error("No refresh_token in Codex auth. Re-login with: codex login");
|
|
16
|
-
const res = await fetchFn(CODEX_OAUTH_TOKEN_URL, {
|
|
17
|
-
method: "POST",
|
|
18
|
-
headers: {
|
|
19
|
-
"content-type": "application/x-www-form-urlencoded",
|
|
20
|
-
accept: "application/json"
|
|
21
|
-
},
|
|
22
|
-
body: new URLSearchParams({
|
|
23
|
-
grant_type: "refresh_token",
|
|
24
|
-
refresh_token: refreshToken,
|
|
25
|
-
client_id: CODEX_OAUTH_CLIENT_ID
|
|
26
|
-
})
|
|
27
|
-
});
|
|
28
|
-
if (!res.ok) {
|
|
29
|
-
const text = await res.text().catch(() => "");
|
|
30
|
-
throw new Error(`Codex token refresh failed (${res.status}): ${text.slice(0, 240)}`);
|
|
31
|
-
}
|
|
32
|
-
const data = await res.json();
|
|
33
|
-
if (!data.access_token) throw new Error("Codex token refresh returned no access_token.");
|
|
34
|
-
const next = {
|
|
35
|
-
...auth,
|
|
36
|
-
auth_mode: auth.auth_mode ?? "chatgpt",
|
|
37
|
-
tokens: {
|
|
38
|
-
...auth.tokens,
|
|
39
|
-
access_token: data.access_token,
|
|
40
|
-
refresh_token: data.refresh_token ?? refreshToken,
|
|
41
|
-
id_token: data.id_token ?? auth.tokens?.id_token
|
|
42
|
-
},
|
|
43
|
-
last_refresh: (/* @__PURE__ */ new Date()).toISOString()
|
|
44
|
-
};
|
|
45
|
-
return {
|
|
46
|
-
auth: next,
|
|
47
|
-
identity: identityFromAuth(next)
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
function identityFromAuth(auth) {
|
|
51
|
-
const idToken = auth.tokens?.id_token;
|
|
52
|
-
if (!idToken) return;
|
|
53
|
-
try {
|
|
54
|
-
const parts = idToken.split(".");
|
|
55
|
-
if (parts.length < 2) return;
|
|
56
|
-
const payload = JSON.parse(Buffer.from(parts[1], "base64url").toString("utf8"));
|
|
57
|
-
if (typeof payload.email === "string") return payload.email;
|
|
58
|
-
if (typeof payload.preferred_username === "string") return payload.preferred_username;
|
|
59
|
-
} catch {}
|
|
60
|
-
}
|
|
61
|
-
//#endregion
|
|
62
|
-
export { CODEX_OAUTH_CLIENT_ID, CODEX_OAUTH_TOKEN_URL, refreshCodexAuth };
|
|
63
|
-
|
|
64
|
-
//# sourceMappingURL=codex-refresh.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex-refresh.js","names":[],"sources":["../../src/providers/codex-refresh.ts"],"sourcesContent":["/**\n * ChatGPT / Codex OAuth token refresh (no browser).\n *\n * Endpoint + client_id match the official Codex CLI binary\n * (https://auth.openai.com/oauth/token, app_EMoamEEZ73f0CkXaXp7hrann).\n */\n\nexport const CODEX_OAUTH_TOKEN_URL =\n process.env.CODEX_REFRESH_TOKEN_URL_OVERRIDE?.trim() || 'https://auth.openai.com/oauth/token';\n\nexport const CODEX_OAUTH_CLIENT_ID = 'app_EMoamEEZ73f0CkXaXp7hrann';\n\nexport interface CodexAuthFile {\n auth_mode?: string;\n OPENAI_API_KEY?: string | null;\n tokens?: {\n id_token?: string;\n access_token?: string;\n refresh_token?: string;\n account_id?: string;\n [key: string]: unknown;\n };\n last_refresh?: string;\n [key: string]: unknown;\n}\n\nexport interface CodexRefreshResult {\n auth: CodexAuthFile;\n identity?: string;\n}\n\n/**\n * Refresh Codex ChatGPT OAuth tokens in-memory from an auth.json object.\n */\nexport async function refreshCodexAuth(\n auth: CodexAuthFile,\n fetchFn: typeof fetch = fetch,\n): Promise<CodexRefreshResult> {\n const refreshToken = auth.tokens?.refresh_token;\n if (!refreshToken) {\n throw new Error('No refresh_token in Codex auth. Re-login with: codex login');\n }\n\n const body = new URLSearchParams({\n grant_type: 'refresh_token',\n refresh_token: refreshToken,\n client_id: CODEX_OAUTH_CLIENT_ID,\n });\n\n const res = await fetchFn(CODEX_OAUTH_TOKEN_URL, {\n method: 'POST',\n headers: {\n 'content-type': 'application/x-www-form-urlencoded',\n accept: 'application/json',\n },\n body,\n });\n\n if (!res.ok) {\n const text = await res.text().catch(() => '');\n throw new Error(`Codex token refresh failed (${res.status}): ${text.slice(0, 240)}`);\n }\n\n const data = (await res.json()) as {\n access_token?: string;\n refresh_token?: string;\n id_token?: string;\n expires_in?: number;\n };\n\n if (!data.access_token) {\n throw new Error('Codex token refresh returned no access_token.');\n }\n\n const next: CodexAuthFile = {\n ...auth,\n auth_mode: auth.auth_mode ?? 'chatgpt',\n tokens: {\n ...auth.tokens,\n access_token: data.access_token,\n refresh_token: data.refresh_token ?? refreshToken,\n id_token: data.id_token ?? auth.tokens?.id_token,\n },\n last_refresh: new Date().toISOString(),\n };\n\n return {\n auth: next,\n identity: identityFromAuth(next),\n };\n}\n\nfunction identityFromAuth(auth: CodexAuthFile): string | undefined {\n const idToken = auth.tokens?.id_token;\n if (!idToken) {\n return undefined;\n }\n try {\n const parts = idToken.split('.');\n if (parts.length < 2) {\n return undefined;\n }\n const payload = JSON.parse(Buffer.from(parts[1], 'base64url').toString('utf8')) as Record<\n string,\n unknown\n >;\n if (typeof payload.email === 'string') {\n return payload.email;\n }\n if (typeof payload.preferred_username === 'string') {\n return payload.preferred_username;\n }\n } catch {\n // ignore\n }\n return undefined;\n}\n"],"mappings":";;;;;;;AAOA,IAAa,wBACX,QAAQ,IAAI,kCAAkC,KAAK,KAAK;AAE1D,IAAa,wBAAwB;;;;AAwBrC,eAAsB,iBACpB,MACA,UAAwB,OACK;CAC7B,MAAM,eAAe,KAAK,QAAQ;CAClC,IAAI,CAAC,cACH,MAAM,IAAI,MAAM,4DAA4D;CAS9E,MAAM,MAAM,MAAM,QAAQ,uBAAuB;EAC/C,QAAQ;EACR,SAAS;GACP,gBAAgB;GAChB,QAAQ;EACV;EACA,UAZe,gBAAgB;GAC/B,YAAY;GACZ,eAAe;GACf,WAAW;EACb,CAQE;CACF,CAAC;CAED,IAAI,CAAC,IAAI,IAAI;EACX,MAAM,OAAO,MAAM,IAAI,KAAK,CAAC,CAAC,YAAY,EAAE;EAC5C,MAAM,IAAI,MAAM,+BAA+B,IAAI,OAAO,KAAK,KAAK,MAAM,GAAG,GAAG,GAAG;CACrF;CAEA,MAAM,OAAQ,MAAM,IAAI,KAAK;CAO7B,IAAI,CAAC,KAAK,cACR,MAAM,IAAI,MAAM,+CAA+C;CAGjE,MAAM,OAAsB;EAC1B,GAAG;EACH,WAAW,KAAK,aAAa;EAC7B,QAAQ;GACN,GAAG,KAAK;GACR,cAAc,KAAK;GACnB,eAAe,KAAK,iBAAiB;GACrC,UAAU,KAAK,YAAY,KAAK,QAAQ;EAC1C;EACA,+BAAc,IAAI,KAAK,EAAA,CAAE,YAAY;CACvC;CAEA,OAAO;EACL,MAAM;EACN,UAAU,iBAAiB,IAAI;CACjC;AACF;AAEA,SAAS,iBAAiB,MAAyC;CACjE,MAAM,UAAU,KAAK,QAAQ;CAC7B,IAAI,CAAC,SACH;CAEF,IAAI;EACF,MAAM,QAAQ,QAAQ,MAAM,GAAG;EAC/B,IAAI,MAAM,SAAS,GACjB;EAEF,MAAM,UAAU,KAAK,MAAM,OAAO,KAAK,MAAM,IAAI,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC;EAI9E,IAAI,OAAO,QAAQ,UAAU,UAC3B,OAAO,QAAQ;EAEjB,IAAI,OAAO,QAAQ,uBAAuB,UACxC,OAAO,QAAQ;CAEnB,QAAQ,CAER;AAEF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex-usage.d.ts","sourceRoot":"","sources":["../../src/providers/codex-usage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAmB,MAAM,UAAU,CAAC;AAE3D,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAwBhE"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
//#region src/providers/codex-usage.ts
|
|
2
|
-
function parseCodexUsage(value) {
|
|
3
|
-
if (!value || typeof value !== "object") return null;
|
|
4
|
-
const root = value;
|
|
5
|
-
const rateLimit = objectValue(root.rate_limit) ?? objectValue(root.rate_limits) ?? root;
|
|
6
|
-
const windows = [];
|
|
7
|
-
for (const [key, label] of [["primary_window", "primary"], ["secondary_window", "secondary"]]) {
|
|
8
|
-
const window = objectValue(rateLimit[key]);
|
|
9
|
-
const used = numberValue(window?.used_percent);
|
|
10
|
-
if (used == null) continue;
|
|
11
|
-
const resetsAtMs = resetAtMs(window);
|
|
12
|
-
windows.push({
|
|
13
|
-
label: usageLabel(label, window),
|
|
14
|
-
remainingPercent: Math.max(0, Math.min(100, Math.round(100 - used))),
|
|
15
|
-
...resetsAtMs != null ? { resetsAtMs } : {}
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
return windows.length ? { windows } : null;
|
|
19
|
-
}
|
|
20
|
-
function objectValue(value) {
|
|
21
|
-
return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
22
|
-
}
|
|
23
|
-
function numberValue(value) {
|
|
24
|
-
return typeof value === "number" && Number.isFinite(value) ? value : void 0;
|
|
25
|
-
}
|
|
26
|
-
function resetAtMs(window) {
|
|
27
|
-
const raw = numberValue(window?.reset_at) ?? numberValue(window?.resets_at);
|
|
28
|
-
if (raw != null) return raw < 1e10 ? raw * 1e3 : raw;
|
|
29
|
-
const afterSeconds = numberValue(window?.reset_after_seconds);
|
|
30
|
-
return afterSeconds != null ? Date.now() + afterSeconds * 1e3 : void 0;
|
|
31
|
-
}
|
|
32
|
-
function usageLabel(fallback, window) {
|
|
33
|
-
const seconds = numberValue(window?.limit_window_seconds);
|
|
34
|
-
if (!seconds) return fallback;
|
|
35
|
-
if (seconds % 86400 === 0) return `${seconds / 86400}d`;
|
|
36
|
-
if (seconds % 3600 === 0) return `${seconds / 3600}h`;
|
|
37
|
-
return `${Math.round(seconds / 60)}m`;
|
|
38
|
-
}
|
|
39
|
-
//#endregion
|
|
40
|
-
export { parseCodexUsage };
|
|
41
|
-
|
|
42
|
-
//# sourceMappingURL=codex-usage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex-usage.js","names":[],"sources":["../../src/providers/codex-usage.ts"],"sourcesContent":["import type { LiveUsage, LiveUsageWindow } from '../types';\n\nexport function parseCodexUsage(value: unknown): LiveUsage | null {\n if (!value || typeof value !== 'object') {\n return null;\n }\n const root = value as Record<string, unknown>;\n const rateLimit = objectValue(root.rate_limit) ?? objectValue(root.rate_limits) ?? root;\n const windows: LiveUsageWindow[] = [];\n for (const [key, label] of [\n ['primary_window', 'primary'],\n ['secondary_window', 'secondary'],\n ] as const) {\n const window = objectValue(rateLimit[key]);\n const used = numberValue(window?.used_percent);\n if (used == null) {\n continue;\n }\n const resetsAtMs = resetAtMs(window);\n windows.push({\n label: usageLabel(label, window),\n remainingPercent: Math.max(0, Math.min(100, Math.round(100 - used))),\n ...(resetsAtMs != null ? { resetsAtMs } : {}),\n });\n }\n return windows.length ? { windows } : null;\n}\n\nfunction objectValue(value: unknown): Record<string, unknown> | undefined {\n return value && typeof value === 'object' && !Array.isArray(value)\n ? (value as Record<string, unknown>)\n : undefined;\n}\n\nfunction numberValue(value: unknown): number | undefined {\n return typeof value === 'number' && Number.isFinite(value) ? value : undefined;\n}\n\nfunction resetAtMs(window: Record<string, unknown> | undefined): number | undefined {\n const raw = numberValue(window?.reset_at) ?? numberValue(window?.resets_at);\n if (raw != null) {\n return raw < 10_000_000_000 ? raw * 1_000 : raw;\n }\n const afterSeconds = numberValue(window?.reset_after_seconds);\n return afterSeconds != null ? Date.now() + afterSeconds * 1_000 : undefined;\n}\n\nfunction usageLabel(fallback: string, window: Record<string, unknown> | undefined): string {\n const seconds = numberValue(window?.limit_window_seconds);\n if (!seconds) {\n return fallback;\n }\n if (seconds % 86_400 === 0) {\n return `${seconds / 86_400}d`;\n }\n if (seconds % 3_600 === 0) {\n return `${seconds / 3_600}h`;\n }\n return `${Math.round(seconds / 60)}m`;\n}\n"],"mappings":";AAEA,SAAgB,gBAAgB,OAAkC;CAChE,IAAI,CAAC,SAAS,OAAO,UAAU,UAC7B,OAAO;CAET,MAAM,OAAO;CACb,MAAM,YAAY,YAAY,KAAK,UAAU,KAAK,YAAY,KAAK,WAAW,KAAK;CACnF,MAAM,UAA6B,CAAC;CACpC,KAAK,MAAM,CAAC,KAAK,UAAU,CACzB,CAAC,kBAAkB,SAAS,GAC5B,CAAC,oBAAoB,WAAW,CAClC,GAAY;EACV,MAAM,SAAS,YAAY,UAAU,IAAI;EACzC,MAAM,OAAO,YAAY,QAAQ,YAAY;EAC7C,IAAI,QAAQ,MACV;EAEF,MAAM,aAAa,UAAU,MAAM;EACnC,QAAQ,KAAK;GACX,OAAO,WAAW,OAAO,MAAM;GAC/B,kBAAkB,KAAK,IAAI,GAAG,KAAK,IAAI,KAAK,KAAK,MAAM,MAAM,IAAI,CAAC,CAAC;GACnE,GAAI,cAAc,OAAO,EAAE,WAAW,IAAI,CAAC;EAC7C,CAAC;CACH;CACA,OAAO,QAAQ,SAAS,EAAE,QAAQ,IAAI;AACxC;AAEA,SAAS,YAAY,OAAqD;CACxE,OAAO,SAAS,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,KAAK,IAC5D,QACD,KAAA;AACN;AAEA,SAAS,YAAY,OAAoC;CACvD,OAAO,OAAO,UAAU,YAAY,OAAO,SAAS,KAAK,IAAI,QAAQ,KAAA;AACvE;AAEA,SAAS,UAAU,QAAiE;CAClF,MAAM,MAAM,YAAY,QAAQ,QAAQ,KAAK,YAAY,QAAQ,SAAS;CAC1E,IAAI,OAAO,MACT,OAAO,MAAM,OAAiB,MAAM,MAAQ;CAE9C,MAAM,eAAe,YAAY,QAAQ,mBAAmB;CAC5D,OAAO,gBAAgB,OAAO,KAAK,IAAI,IAAI,eAAe,MAAQ,KAAA;AACpE;AAEA,SAAS,WAAW,UAAkB,QAAqD;CACzF,MAAM,UAAU,YAAY,QAAQ,oBAAoB;CACxD,IAAI,CAAC,SACH,OAAO;CAET,IAAI,UAAU,UAAW,GACvB,OAAO,GAAG,UAAU,MAAO;CAE7B,IAAI,UAAU,SAAU,GACtB,OAAO,GAAG,UAAU,KAAM;CAE5B,OAAO,GAAG,KAAK,MAAM,UAAU,EAAE,EAAE;AACrC"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import type { Account, AccountMeta, LiveAuthStatus, LiveUsage, Provider, SourceAdapter } from '../types.js';
|
|
2
|
-
/**
|
|
3
|
-
* OpenAI Codex CLI + Desktop
|
|
4
|
-
*
|
|
5
|
-
* CLI live auth: ~/.codex/auth.json
|
|
6
|
-
* Desktop app may keep a different in-memory ChatGPT account (multi-account),
|
|
7
|
-
* but AnyPick can only back up and restore ~/.codex/auth.json. Therefore
|
|
8
|
-
* detectLive() deliberately reports that file, keeping detection, backup,
|
|
9
|
-
* restore, and snapshot matching on one authority.
|
|
10
|
-
*/
|
|
11
|
-
export declare class CodexProvider implements Provider {
|
|
12
|
-
private readonly home;
|
|
13
|
-
private readonly fetchFn;
|
|
14
|
-
readonly id = "codex";
|
|
15
|
-
readonly name = "OpenAI Codex";
|
|
16
|
-
readonly shortName = "Codex";
|
|
17
|
-
readonly description = "Manages ~/.codex/auth.json";
|
|
18
|
-
roleDefaults(): Record<string, string>;
|
|
19
|
-
suggestModels(): Record<string, string>;
|
|
20
|
-
roleFriendlyModels(): readonly string[];
|
|
21
|
-
staticFallbackModels(): readonly string[];
|
|
22
|
-
constructor(home?: string, fetchFn?: typeof fetch);
|
|
23
|
-
sourceAdapter(account: Account): SourceAdapter;
|
|
24
|
-
private get authPath();
|
|
25
|
-
detectLive(): Promise<LiveAuthStatus>;
|
|
26
|
-
/**
|
|
27
|
-
* Read the Codex/ChatGPT rate-limit snapshot for auth.json only. When
|
|
28
|
-
* Codex Desktop reports another account as active, auth.json may be stale;
|
|
29
|
-
* in that case return nothing rather than risk showing another account's
|
|
30
|
-
* quota.
|
|
31
|
-
*/
|
|
32
|
-
liveUsage(): Promise<LiveUsage | null>;
|
|
33
|
-
/** CLI / file-based session (~/.codex/auth.json). */
|
|
34
|
-
private detectFromAuthFile;
|
|
35
|
-
/**
|
|
36
|
-
* Codex Desktop writes the signed-in ChatGPT account into Sentry scope
|
|
37
|
-
* (and rate-limit UI state). That is often ahead of ~/.codex/auth.json
|
|
38
|
-
* after an in-app account switch.
|
|
39
|
-
*/
|
|
40
|
-
private detectFromDesktopApp;
|
|
41
|
-
backup(destDir: string): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>>;
|
|
42
|
-
restore(srcDir: string): Promise<void>;
|
|
43
|
-
describeSnapshot(srcDir: string): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>>;
|
|
44
|
-
/**
|
|
45
|
-
* Delete local auth.json only — does NOT call OpenAI logout/revoke.
|
|
46
|
-
* Saved anypick snapshots remain valid for restore.
|
|
47
|
-
*/
|
|
48
|
-
clearLive(): Promise<void>;
|
|
49
|
-
/**
|
|
50
|
-
* Refresh ChatGPT OAuth tokens inside a snapshot dir (auth.json).
|
|
51
|
-
*/
|
|
52
|
-
refreshAuth(authDir: string): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>>;
|
|
53
|
-
/**
|
|
54
|
-
* Compare this snapshot's session material against the live Codex login.
|
|
55
|
-
* Prefers refresh_token (unique per session) over account_id so two
|
|
56
|
-
* snapshots of the same ChatGPT account are not both marked live.
|
|
57
|
-
*/
|
|
58
|
-
snapshotMatchesLive(snapshotDir: string): Promise<boolean>;
|
|
59
|
-
}
|
|
60
|
-
export declare const codexProvider: CodexProvider;
|
|
61
|
-
//# sourceMappingURL=codex.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../src/providers/codex.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,cAAc,EACd,SAAS,EACT,QAAQ,EACR,aAAa,EACd,MAAM,UAAU,CAAC;AAgBlB;;;;;;;;GAQG;AACH,qBAAa,aAAc,YAAW,QAAQ;IAuB1C,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAvB1B,QAAQ,CAAC,EAAE,WAAW;IACtB,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,SAAS,WAAW;IAC7B,QAAQ,CAAC,WAAW,gCAAgC;IAEpD,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAErC;IAED,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAEtC;IAED,kBAAkB,IAAI,SAAS,MAAM,EAAE,CAEtC;IAED,oBAAoB,IAAI,SAAS,MAAM,EAAE,CAExC;IAED,YACmB,IAAI,SAAY,EAChB,OAAO,GAAE,OAAO,KAAa,EAC5C;IAEJ,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAE7C;IAED,OAAO,KAAK,QAAQ,GAEnB;IAEK,UAAU,IAAI,OAAO,CAAC,cAAc,CAAC,CAE1C;IAED;;;;;OAKG;IACG,SAAS,IAAI,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CA+B3C;IAED,qDAAqD;YACvC,kBAAkB;IA0BhC;;;;OAIG;YACW,oBAAoB;IA0E5B,MAAM,CACV,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CASrE;IAEK,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3C;IAEK,gBAAgB,CACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAWrE;IAED;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAS/B;IAED;;OAEG;IACG,WAAW,CACf,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CASrE;IAED;;;;OAIG;IACG,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO/D;CACF;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC"}
|
package/dist/providers/codex.js
DELETED
|
@@ -1,212 +0,0 @@
|
|
|
1
|
-
import { backupRequiredFile, expandHome, pathExists, readJsonFile, restoreRequiredFile, writeJsonFile } from "../utils/fs.js";
|
|
2
|
-
import { OPENAI_MODELS } from "../catalog/providers.js";
|
|
3
|
-
import { codexAccountAdapter } from "../sources/account-adapters.js";
|
|
4
|
-
import { parseCodexUsage } from "./codex-usage.js";
|
|
5
|
-
import { refreshCodexAuth } from "./codex-refresh.js";
|
|
6
|
-
import { fingerprintLiveAuth, fingerprintSnapshot } from "./auth-fingerprint.js";
|
|
7
|
-
import { codexAccountId, extractCodexIdentity, hasCodexAuth } from "./codex-identity.js";
|
|
8
|
-
import { join } from "node:path";
|
|
9
|
-
import { rm } from "node:fs/promises";
|
|
10
|
-
import { homedir } from "node:os";
|
|
11
|
-
//#region src/providers/codex.ts
|
|
12
|
-
/**
|
|
13
|
-
* OpenAI Codex CLI + Desktop
|
|
14
|
-
*
|
|
15
|
-
* CLI live auth: ~/.codex/auth.json
|
|
16
|
-
* Desktop app may keep a different in-memory ChatGPT account (multi-account),
|
|
17
|
-
* but AnyPick can only back up and restore ~/.codex/auth.json. Therefore
|
|
18
|
-
* detectLive() deliberately reports that file, keeping detection, backup,
|
|
19
|
-
* restore, and snapshot matching on one authority.
|
|
20
|
-
*/
|
|
21
|
-
var CodexProvider = class {
|
|
22
|
-
home;
|
|
23
|
-
fetchFn;
|
|
24
|
-
id = "codex";
|
|
25
|
-
name = "OpenAI Codex";
|
|
26
|
-
shortName = "Codex";
|
|
27
|
-
description = "Manages ~/.codex/auth.json";
|
|
28
|
-
roleDefaults() {
|
|
29
|
-
return { default: "gpt-5.6-sol" };
|
|
30
|
-
}
|
|
31
|
-
suggestModels() {
|
|
32
|
-
return { ...OPENAI_MODELS };
|
|
33
|
-
}
|
|
34
|
-
roleFriendlyModels() {
|
|
35
|
-
return [
|
|
36
|
-
"gpt-5.6-sol",
|
|
37
|
-
"gpt-5.6-terra",
|
|
38
|
-
"gpt-5.6-luna",
|
|
39
|
-
"gpt-5.3-codex"
|
|
40
|
-
];
|
|
41
|
-
}
|
|
42
|
-
staticFallbackModels() {
|
|
43
|
-
return [
|
|
44
|
-
"gpt-5.6-sol",
|
|
45
|
-
"gpt-5.6-terra",
|
|
46
|
-
"gpt-5.3-codex"
|
|
47
|
-
];
|
|
48
|
-
}
|
|
49
|
-
constructor(home = homedir(), fetchFn = fetch) {
|
|
50
|
-
this.home = home;
|
|
51
|
-
this.fetchFn = fetchFn;
|
|
52
|
-
}
|
|
53
|
-
sourceAdapter(account) {
|
|
54
|
-
return codexAccountAdapter(account);
|
|
55
|
-
}
|
|
56
|
-
get authPath() {
|
|
57
|
-
return process.env.CODEX_AUTH_PATH ?? join(this.home, ".codex", "auth.json");
|
|
58
|
-
}
|
|
59
|
-
async detectLive() {
|
|
60
|
-
return this.detectFromAuthFile();
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Read the Codex/ChatGPT rate-limit snapshot for auth.json only. When
|
|
64
|
-
* Codex Desktop reports another account as active, auth.json may be stale;
|
|
65
|
-
* in that case return nothing rather than risk showing another account's
|
|
66
|
-
* quota.
|
|
67
|
-
*/
|
|
68
|
-
async liveUsage() {
|
|
69
|
-
const file = await this.detectFromAuthFile();
|
|
70
|
-
if (!file.present || !file.accountId) return null;
|
|
71
|
-
const desktop = await this.detectFromDesktopApp();
|
|
72
|
-
if (desktop?.accountId && desktop.accountId !== file.accountId) return null;
|
|
73
|
-
try {
|
|
74
|
-
const accessToken = (await readJsonFile(this.authPath)).tokens?.access_token;
|
|
75
|
-
if (!accessToken) return null;
|
|
76
|
-
const response = await this.fetchFn("https://chatgpt.com/backend-api/wham/usage", {
|
|
77
|
-
headers: {
|
|
78
|
-
authorization: `Bearer ${accessToken}`,
|
|
79
|
-
"chatgpt-account-id": file.accountId
|
|
80
|
-
},
|
|
81
|
-
signal: AbortSignal.timeout(5e3)
|
|
82
|
-
});
|
|
83
|
-
if (!response.ok) return null;
|
|
84
|
-
return parseCodexUsage(await response.json());
|
|
85
|
-
} catch {
|
|
86
|
-
return null;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
/** CLI / file-based session (~/.codex/auth.json). */
|
|
90
|
-
async detectFromAuthFile() {
|
|
91
|
-
const path = this.authPath;
|
|
92
|
-
if (!await pathExists(path)) return { present: false };
|
|
93
|
-
try {
|
|
94
|
-
const data = await readJsonFile(path);
|
|
95
|
-
if (!hasCodexAuth(data)) return { present: false };
|
|
96
|
-
const identity = extractCodexIdentity(data);
|
|
97
|
-
const accountId = codexAccountId(data);
|
|
98
|
-
return {
|
|
99
|
-
present: true,
|
|
100
|
-
identity,
|
|
101
|
-
accountId,
|
|
102
|
-
details: [typeof data.auth_mode === "string" ? data.auth_mode : void 0, accountId ? `acct:${accountId.slice(0, 8)}` : null].filter(Boolean).join(" ")
|
|
103
|
-
};
|
|
104
|
-
} catch {
|
|
105
|
-
return {
|
|
106
|
-
present: true,
|
|
107
|
-
details: "auth.json present (unreadable)"
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Codex Desktop writes the signed-in ChatGPT account into Sentry scope
|
|
113
|
-
* (and rate-limit UI state). That is often ahead of ~/.codex/auth.json
|
|
114
|
-
* after an in-app account switch.
|
|
115
|
-
*/
|
|
116
|
-
async detectFromDesktopApp() {
|
|
117
|
-
const candidates = [join(this.home, "Library", "Application Support", "Codex", "sentry", "scope_v3.json"), join(this.home, ".config", "Codex", "sentry", "scope_v3.json")];
|
|
118
|
-
for (const path of candidates) {
|
|
119
|
-
if (!await pathExists(path)) continue;
|
|
120
|
-
try {
|
|
121
|
-
const raw = await readJsonFile(path);
|
|
122
|
-
const user = (raw.scope ?? raw).user;
|
|
123
|
-
if (!user || typeof user !== "object") continue;
|
|
124
|
-
const accountId = typeof user.account_id === "string" ? user.account_id.trim() : "";
|
|
125
|
-
if (!accountId) continue;
|
|
126
|
-
const method = typeof user.authMethod === "string" ? user.authMethod : void 0;
|
|
127
|
-
if (method && method !== "chatgpt") continue;
|
|
128
|
-
return {
|
|
129
|
-
accountId,
|
|
130
|
-
identity: typeof user.email === "string" ? user.email : void 0
|
|
131
|
-
};
|
|
132
|
-
} catch {}
|
|
133
|
-
}
|
|
134
|
-
try {
|
|
135
|
-
const statePath = join(this.home, ".codex", ".codex-global-state.json");
|
|
136
|
-
if (await pathExists(statePath)) {
|
|
137
|
-
const map = (await readJsonFile(statePath))["electron-persisted-atom-state"]?.["rate-limit-reset-home-announcement-dismissal-by-account-id"];
|
|
138
|
-
if (map && typeof map === "object") {
|
|
139
|
-
const entries = Object.entries(map);
|
|
140
|
-
if (entries.length === 1 && entries[0]?.[0]) return { accountId: entries[0][0] };
|
|
141
|
-
let best = null;
|
|
142
|
-
for (const [id, v] of entries) {
|
|
143
|
-
const ts = typeof v?.dismissedAtMs === "number" ? v.dismissedAtMs : 0;
|
|
144
|
-
if (!best || ts > best.ts) best = {
|
|
145
|
-
id,
|
|
146
|
-
ts
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
|
-
if (best?.id) return { accountId: best.id };
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
} catch {}
|
|
153
|
-
return null;
|
|
154
|
-
}
|
|
155
|
-
async backup(destDir) {
|
|
156
|
-
const dest = join(destDir, "auth.json");
|
|
157
|
-
await backupRequiredFile(this.authPath, dest, "Codex auth.json");
|
|
158
|
-
try {
|
|
159
|
-
return { identity: extractCodexIdentity(await readJsonFile(dest)) };
|
|
160
|
-
} catch {
|
|
161
|
-
return {};
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
async restore(srcDir) {
|
|
165
|
-
await restoreRequiredFile(join(srcDir, "auth.json"), expandHome(this.authPath), "auth.json");
|
|
166
|
-
}
|
|
167
|
-
async describeSnapshot(srcDir) {
|
|
168
|
-
const path = join(srcDir, "auth.json");
|
|
169
|
-
if (!await pathExists(path)) return {};
|
|
170
|
-
try {
|
|
171
|
-
return { identity: extractCodexIdentity(await readJsonFile(path)) };
|
|
172
|
-
} catch {
|
|
173
|
-
return {};
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* Delete local auth.json only — does NOT call OpenAI logout/revoke.
|
|
178
|
-
* Saved anypick snapshots remain valid for restore.
|
|
179
|
-
*/
|
|
180
|
-
async clearLive() {
|
|
181
|
-
const path = expandHome(this.authPath);
|
|
182
|
-
for (const p of [path, `${path}.lock`]) try {
|
|
183
|
-
await rm(p, { force: true });
|
|
184
|
-
} catch {}
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Refresh ChatGPT OAuth tokens inside a snapshot dir (auth.json).
|
|
188
|
-
*/
|
|
189
|
-
async refreshAuth(authDir) {
|
|
190
|
-
const path = join(authDir, "auth.json");
|
|
191
|
-
if (!await pathExists(path)) throw new Error(`No auth.json in ${authDir}`);
|
|
192
|
-
const { auth, identity } = await refreshCodexAuth(await readJsonFile(path));
|
|
193
|
-
await writeJsonFile(path, auth, 384);
|
|
194
|
-
return { identity };
|
|
195
|
-
}
|
|
196
|
-
/**
|
|
197
|
-
* Compare this snapshot's session material against the live Codex login.
|
|
198
|
-
* Prefers refresh_token (unique per session) over account_id so two
|
|
199
|
-
* snapshots of the same ChatGPT account are not both marked live.
|
|
200
|
-
*/
|
|
201
|
-
async snapshotMatchesLive(snapshotDir) {
|
|
202
|
-
const liveFp = await fingerprintLiveAuth("codex", this.home);
|
|
203
|
-
if (!liveFp) return false;
|
|
204
|
-
const snap = await fingerprintSnapshot("codex", snapshotDir);
|
|
205
|
-
return snap != null && snap === liveFp;
|
|
206
|
-
}
|
|
207
|
-
};
|
|
208
|
-
var codexProvider = new CodexProvider();
|
|
209
|
-
//#endregion
|
|
210
|
-
export { CodexProvider, codexProvider };
|
|
211
|
-
|
|
212
|
-
//# sourceMappingURL=codex.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex.js","names":[],"sources":["../../src/providers/codex.ts"],"sourcesContent":["import { join } from 'node:path';\nimport { homedir } from 'node:os';\nimport { rm } from 'node:fs/promises';\nimport type {\n Account,\n AccountMeta,\n LiveAuthStatus,\n LiveUsage,\n Provider,\n SourceAdapter,\n} from '../types';\nimport { parseCodexUsage } from './codex-usage';\nimport { OPENAI_MODELS } from '../catalog/providers';\nimport { codexAccountAdapter } from '../sources/account-adapters';\nimport {\n backupRequiredFile,\n expandHome,\n pathExists,\n readJsonFile,\n restoreRequiredFile,\n writeJsonFile,\n} from '../utils/fs';\nimport { refreshCodexAuth, type CodexAuthFile } from './codex-refresh';\nimport { fingerprintLiveAuth, fingerprintSnapshot } from './auth-fingerprint';\nimport { hasCodexAuth, codexAccountId, extractCodexIdentity } from './codex-identity';\n\n/**\n * OpenAI Codex CLI + Desktop\n *\n * CLI live auth: ~/.codex/auth.json\n * Desktop app may keep a different in-memory ChatGPT account (multi-account),\n * but AnyPick can only back up and restore ~/.codex/auth.json. Therefore\n * detectLive() deliberately reports that file, keeping detection, backup,\n * restore, and snapshot matching on one authority.\n */\nexport class CodexProvider implements Provider {\n readonly id = 'codex';\n readonly name = 'OpenAI Codex';\n readonly shortName = 'Codex';\n readonly description = 'Manages ~/.codex/auth.json';\n\n roleDefaults(): Record<string, string> {\n return { default: 'gpt-5.6-sol' };\n }\n\n suggestModels(): Record<string, string> {\n return { ...OPENAI_MODELS };\n }\n\n roleFriendlyModels(): readonly string[] {\n return ['gpt-5.6-sol', 'gpt-5.6-terra', 'gpt-5.6-luna', 'gpt-5.3-codex'];\n }\n\n staticFallbackModels(): readonly string[] {\n return ['gpt-5.6-sol', 'gpt-5.6-terra', 'gpt-5.3-codex'];\n }\n\n constructor(\n private readonly home = homedir(),\n private readonly fetchFn: typeof fetch = fetch,\n ) {}\n\n sourceAdapter(account: Account): SourceAdapter {\n return codexAccountAdapter(account);\n }\n\n private get authPath(): string {\n return process.env.CODEX_AUTH_PATH ?? join(this.home, '.codex', 'auth.json');\n }\n\n async detectLive(): Promise<LiveAuthStatus> {\n return this.detectFromAuthFile();\n }\n\n /**\n * Read the Codex/ChatGPT rate-limit snapshot for auth.json only. When\n * Codex Desktop reports another account as active, auth.json may be stale;\n * in that case return nothing rather than risk showing another account's\n * quota.\n */\n async liveUsage(): Promise<LiveUsage | null> {\n const file = await this.detectFromAuthFile();\n if (!file.present || !file.accountId) {\n return null;\n }\n const desktop = await this.detectFromDesktopApp();\n if (desktop?.accountId && desktop.accountId !== file.accountId) {\n return null;\n }\n\n try {\n const auth = await readJsonFile<CodexAuthFile>(this.authPath);\n const accessToken = auth.tokens?.access_token;\n if (!accessToken) {\n return null;\n }\n const response = await this.fetchFn('https://chatgpt.com/backend-api/wham/usage', {\n headers: {\n authorization: `Bearer ${accessToken}`,\n 'chatgpt-account-id': file.accountId,\n },\n signal: AbortSignal.timeout(5_000),\n });\n if (!response.ok) {\n return null;\n }\n return parseCodexUsage(await response.json());\n } catch {\n // Usage is optional; account detection/switching must remain available.\n return null;\n }\n }\n\n /** CLI / file-based session (~/.codex/auth.json). */\n private async detectFromAuthFile(): Promise<LiveAuthStatus & { accountId?: string }> {\n const path = this.authPath;\n if (!(await pathExists(path))) {\n return { present: false };\n }\n try {\n const data = await readJsonFile<Record<string, unknown>>(path);\n if (!hasCodexAuth(data)) {\n return { present: false };\n }\n const identity = extractCodexIdentity(data);\n const accountId = codexAccountId(data);\n const mode = typeof data.auth_mode === 'string' ? data.auth_mode : undefined;\n return {\n present: true,\n identity,\n accountId,\n details: [mode, accountId ? `acct:${accountId.slice(0, 8)}` : null]\n .filter(Boolean)\n .join(' '),\n };\n } catch {\n return { present: true, details: 'auth.json present (unreadable)' };\n }\n }\n\n /**\n * Codex Desktop writes the signed-in ChatGPT account into Sentry scope\n * (and rate-limit UI state). That is often ahead of ~/.codex/auth.json\n * after an in-app account switch.\n */\n private async detectFromDesktopApp(): Promise<{\n accountId: string;\n identity?: string;\n } | null> {\n const candidates = [\n join(this.home, 'Library', 'Application Support', 'Codex', 'sentry', 'scope_v3.json'),\n // Linux / other\n join(this.home, '.config', 'Codex', 'sentry', 'scope_v3.json'),\n ];\n\n for (const path of candidates) {\n if (!(await pathExists(path))) {\n continue;\n }\n try {\n const raw = await readJsonFile<Record<string, unknown>>(path);\n const scope = (raw.scope ?? raw) as Record<string, unknown>;\n const user = scope.user as Record<string, unknown> | undefined;\n if (!user || typeof user !== 'object') {\n continue;\n }\n const accountId = typeof user.account_id === 'string' ? user.account_id.trim() : '';\n if (!accountId) {\n continue;\n }\n // Optional: only trust ChatGPT auth method\n const method = typeof user.authMethod === 'string' ? user.authMethod : undefined;\n if (method && method !== 'chatgpt') {\n continue;\n }\n return {\n accountId,\n identity: typeof user.email === 'string' ? user.email : undefined,\n };\n } catch {\n // try next path\n }\n }\n\n // Fallback: rate-limit dismissal map keys are ChatGPT account ids the app knows.\n // Prefer the most recently dismissed / only key when sentry is missing.\n try {\n const statePath = join(this.home, '.codex', '.codex-global-state.json');\n if (await pathExists(statePath)) {\n const state = await readJsonFile<Record<string, unknown>>(statePath);\n const atom = state['electron-persisted-atom-state'] as Record<string, unknown> | undefined;\n const map = atom?.['rate-limit-reset-home-announcement-dismissal-by-account-id'] as\n | Record<string, { dismissedAtMs?: number }>\n | undefined;\n if (map && typeof map === 'object') {\n const entries = Object.entries(map);\n if (entries.length === 1 && entries[0]?.[0]) {\n return { accountId: entries[0][0] };\n }\n // most recently dismissed\n let best: { id: string; ts: number } | null = null;\n for (const [id, v] of entries) {\n const ts = typeof v?.dismissedAtMs === 'number' ? v.dismissedAtMs : 0;\n if (!best || ts > best.ts) {\n best = { id, ts };\n }\n }\n if (best?.id) {\n return { accountId: best.id };\n }\n }\n }\n } catch {\n // ignore\n }\n\n return null;\n }\n\n async backup(\n destDir: string,\n ): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>> {\n const dest = join(destDir, 'auth.json');\n await backupRequiredFile(this.authPath, dest, 'Codex auth.json');\n try {\n const data = await readJsonFile<Record<string, unknown>>(dest);\n return { identity: extractCodexIdentity(data) };\n } catch {\n return {};\n }\n }\n\n async restore(srcDir: string): Promise<void> {\n await restoreRequiredFile(join(srcDir, 'auth.json'), expandHome(this.authPath), 'auth.json');\n }\n\n async describeSnapshot(\n srcDir: string,\n ): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>> {\n const path = join(srcDir, 'auth.json');\n if (!(await pathExists(path))) {\n return {};\n }\n try {\n const data = await readJsonFile<Record<string, unknown>>(path);\n return { identity: extractCodexIdentity(data) };\n } catch {\n return {};\n }\n }\n\n /**\n * Delete local auth.json only — does NOT call OpenAI logout/revoke.\n * Saved anypick snapshots remain valid for restore.\n */\n async clearLive(): Promise<void> {\n const path = expandHome(this.authPath);\n for (const p of [path, `${path}.lock`]) {\n try {\n await rm(p, { force: true });\n } catch {\n // ignore\n }\n }\n }\n\n /**\n * Refresh ChatGPT OAuth tokens inside a snapshot dir (auth.json).\n */\n async refreshAuth(\n authDir: string,\n ): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>> {\n const path = join(authDir, 'auth.json');\n if (!(await pathExists(path))) {\n throw new Error(`No auth.json in ${authDir}`);\n }\n const current = await readJsonFile<CodexAuthFile>(path);\n const { auth, identity } = await refreshCodexAuth(current);\n await writeJsonFile(path, auth, 0o600);\n return { identity };\n }\n\n /**\n * Compare this snapshot's session material against the live Codex login.\n * Prefers refresh_token (unique per session) over account_id so two\n * snapshots of the same ChatGPT account are not both marked live.\n */\n async snapshotMatchesLive(snapshotDir: string): Promise<boolean> {\n const liveFp = await fingerprintLiveAuth('codex', this.home);\n if (!liveFp) {\n return false;\n }\n const snap = await fingerprintSnapshot('codex', snapshotDir);\n return snap != null && snap === liveFp;\n }\n}\n\nexport const codexProvider = new CodexProvider();\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAmCA,IAAa,gBAAb,MAA+C;CAuB1B;CACA;CAvBnB,KAAc;CACd,OAAgB;CAChB,YAAqB;CACrB,cAAuB;CAEvB,eAAuC;EACrC,OAAO,EAAE,SAAS,cAAc;CAClC;CAEA,gBAAwC;EACtC,OAAO,EAAE,GAAG,cAAc;CAC5B;CAEA,qBAAwC;EACtC,OAAO;GAAC;GAAe;GAAiB;GAAgB;EAAe;CACzE;CAEA,uBAA0C;EACxC,OAAO;GAAC;GAAe;GAAiB;EAAe;CACzD;CAEA,YACE,OAAwB,QAAQ,GAChC,UAAyC,OACzC;EAFiB,KAAA,OAAA;EACA,KAAA,UAAA;CAChB;CAEH,cAAc,SAAiC;EAC7C,OAAO,oBAAoB,OAAO;CACpC;CAEA,IAAY,WAAmB;EAC7B,OAAO,QAAQ,IAAI,mBAAmB,KAAK,KAAK,MAAM,UAAU,WAAW;CAC7E;CAEA,MAAM,aAAsC;EAC1C,OAAO,KAAK,mBAAmB;CACjC;;;;;;;CAQA,MAAM,YAAuC;EAC3C,MAAM,OAAO,MAAM,KAAK,mBAAmB;EAC3C,IAAI,CAAC,KAAK,WAAW,CAAC,KAAK,WACzB,OAAO;EAET,MAAM,UAAU,MAAM,KAAK,qBAAqB;EAChD,IAAI,SAAS,aAAa,QAAQ,cAAc,KAAK,WACnD,OAAO;EAGT,IAAI;GAEF,MAAM,eAAc,MADD,aAA4B,KAAK,QAAQ,EAAA,CACnC,QAAQ;GACjC,IAAI,CAAC,aACH,OAAO;GAET,MAAM,WAAW,MAAM,KAAK,QAAQ,8CAA8C;IAChF,SAAS;KACP,eAAe,UAAU;KACzB,sBAAsB,KAAK;IAC7B;IACA,QAAQ,YAAY,QAAQ,GAAK;GACnC,CAAC;GACD,IAAI,CAAC,SAAS,IACZ,OAAO;GAET,OAAO,gBAAgB,MAAM,SAAS,KAAK,CAAC;EAC9C,QAAQ;GAEN,OAAO;EACT;CACF;;CAGA,MAAc,qBAAuE;EACnF,MAAM,OAAO,KAAK;EAClB,IAAI,CAAE,MAAM,WAAW,IAAI,GACzB,OAAO,EAAE,SAAS,MAAM;EAE1B,IAAI;GACF,MAAM,OAAO,MAAM,aAAsC,IAAI;GAC7D,IAAI,CAAC,aAAa,IAAI,GACpB,OAAO,EAAE,SAAS,MAAM;GAE1B,MAAM,WAAW,qBAAqB,IAAI;GAC1C,MAAM,YAAY,eAAe,IAAI;GAErC,OAAO;IACL,SAAS;IACT;IACA;IACA,SAAS,CALE,OAAO,KAAK,cAAc,WAAW,KAAK,YAAY,KAAA,GAKjD,YAAY,QAAQ,UAAU,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,CAChE,OAAO,OAAO,CAAC,CACf,KAAK,GAAG;GACb;EACF,QAAQ;GACN,OAAO;IAAE,SAAS;IAAM,SAAS;GAAiC;EACpE;CACF;;;;;;CAOA,MAAc,uBAGJ;EACR,MAAM,aAAa,CACjB,KAAK,KAAK,MAAM,WAAW,uBAAuB,SAAS,UAAU,eAAe,GAEpF,KAAK,KAAK,MAAM,WAAW,SAAS,UAAU,eAAe,CAC/D;EAEA,KAAK,MAAM,QAAQ,YAAY;GAC7B,IAAI,CAAE,MAAM,WAAW,IAAI,GACzB;GAEF,IAAI;IACF,MAAM,MAAM,MAAM,aAAsC,IAAI;IAE5D,MAAM,QADS,IAAI,SAAS,IAAA,CACT;IACnB,IAAI,CAAC,QAAQ,OAAO,SAAS,UAC3B;IAEF,MAAM,YAAY,OAAO,KAAK,eAAe,WAAW,KAAK,WAAW,KAAK,IAAI;IACjF,IAAI,CAAC,WACH;IAGF,MAAM,SAAS,OAAO,KAAK,eAAe,WAAW,KAAK,aAAa,KAAA;IACvE,IAAI,UAAU,WAAW,WACvB;IAEF,OAAO;KACL;KACA,UAAU,OAAO,KAAK,UAAU,WAAW,KAAK,QAAQ,KAAA;IAC1D;GACF,QAAQ,CAER;EACF;EAIA,IAAI;GACF,MAAM,YAAY,KAAK,KAAK,MAAM,UAAU,0BAA0B;GACtE,IAAI,MAAM,WAAW,SAAS,GAAG;IAG/B,MAAM,OADO,MADO,aAAsC,SAAS,EAAA,CAChD,gCACP,GAAO;IAGnB,IAAI,OAAO,OAAO,QAAQ,UAAU;KAClC,MAAM,UAAU,OAAO,QAAQ,GAAG;KAClC,IAAI,QAAQ,WAAW,KAAK,QAAQ,EAAE,GAAG,IACvC,OAAO,EAAE,WAAW,QAAQ,EAAE,CAAC,GAAG;KAGpC,IAAI,OAA0C;KAC9C,KAAK,MAAM,CAAC,IAAI,MAAM,SAAS;MAC7B,MAAM,KAAK,OAAO,GAAG,kBAAkB,WAAW,EAAE,gBAAgB;MACpE,IAAI,CAAC,QAAQ,KAAK,KAAK,IACrB,OAAO;OAAE;OAAI;MAAG;KAEpB;KACA,IAAI,MAAM,IACR,OAAO,EAAE,WAAW,KAAK,GAAG;IAEhC;GACF;EACF,QAAQ,CAER;EAEA,OAAO;CACT;CAEA,MAAM,OACJ,SACqE;EACrE,MAAM,OAAO,KAAK,SAAS,WAAW;EACtC,MAAM,mBAAmB,KAAK,UAAU,MAAM,iBAAiB;EAC/D,IAAI;GAEF,OAAO,EAAE,UAAU,qBAAqB,MADrB,aAAsC,IAAI,CACjB,EAAE;EAChD,QAAQ;GACN,OAAO,CAAC;EACV;CACF;CAEA,MAAM,QAAQ,QAA+B;EAC3C,MAAM,oBAAoB,KAAK,QAAQ,WAAW,GAAG,WAAW,KAAK,QAAQ,GAAG,WAAW;CAC7F;CAEA,MAAM,iBACJ,QACqE;EACrE,MAAM,OAAO,KAAK,QAAQ,WAAW;EACrC,IAAI,CAAE,MAAM,WAAW,IAAI,GACzB,OAAO,CAAC;EAEV,IAAI;GAEF,OAAO,EAAE,UAAU,qBAAqB,MADrB,aAAsC,IAAI,CACjB,EAAE;EAChD,QAAQ;GACN,OAAO,CAAC;EACV;CACF;;;;;CAMA,MAAM,YAA2B;EAC/B,MAAM,OAAO,WAAW,KAAK,QAAQ;EACrC,KAAK,MAAM,KAAK,CAAC,MAAM,GAAG,KAAK,MAAM,GACnC,IAAI;GACF,MAAM,GAAG,GAAG,EAAE,OAAO,KAAK,CAAC;EAC7B,QAAQ,CAER;CAEJ;;;;CAKA,MAAM,YACJ,SACqE;EACrE,MAAM,OAAO,KAAK,SAAS,WAAW;EACtC,IAAI,CAAE,MAAM,WAAW,IAAI,GACzB,MAAM,IAAI,MAAM,mBAAmB,SAAS;EAG9C,MAAM,EAAE,MAAM,aAAa,MAAM,iBAAiB,MAD5B,aAA4B,IAAI,CACG;EACzD,MAAM,cAAc,MAAM,MAAM,GAAK;EACrC,OAAO,EAAE,SAAS;CACpB;;;;;;CAOA,MAAM,oBAAoB,aAAuC;EAC/D,MAAM,SAAS,MAAM,oBAAoB,SAAS,KAAK,IAAI;EAC3D,IAAI,CAAC,QACH,OAAO;EAET,MAAM,OAAO,MAAM,oBAAoB,SAAS,WAAW;EAC3D,OAAO,QAAQ,QAAQ,SAAS;CAClC;AACF;AAEA,IAAa,gBAAgB,IAAI,cAAc"}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Antigravity OAuth credential loading + parsing.
|
|
3
|
-
*
|
|
4
|
-
* Antigravity logins are not stored under ~/.gemini; the credential lives in
|
|
5
|
-
* the OS credential store (via the Go library github.com/zalando/go-keyring,
|
|
6
|
-
* service="gemini", account/username="antigravity"), or in a portable file
|
|
7
|
-
* passed explicitly. This module is imported by both the proxy child process
|
|
8
|
-
* (to serve requests) and the main process (to snapshot the credential when
|
|
9
|
-
* adding an account). It has no project dependencies so it stays a leaf.
|
|
10
|
-
*
|
|
11
|
-
* Storage format differs by OS (confirmed from go-keyring source):
|
|
12
|
-
* macOS — Keychain generic password, value = "go-keyring-base64:" + base64(JSON)
|
|
13
|
-
* (base64 only on darwin, to survive the `security` CLI).
|
|
14
|
-
* Linux — Secret Service (D-Bus), attributes {service, username}, raw JSON value.
|
|
15
|
-
* Windows — Credential Manager, target "gemini:antigravity", raw JSON blob.
|
|
16
|
-
* The JSON payload is {token:{access_token,refresh_token,token_type,expiry}}.
|
|
17
|
-
*/
|
|
18
|
-
export interface GeminiOAuthCredentials {
|
|
19
|
-
access_token?: string;
|
|
20
|
-
refresh_token?: string;
|
|
21
|
-
expiry_date?: number;
|
|
22
|
-
token_type?: string;
|
|
23
|
-
}
|
|
24
|
-
export interface AntigravityKeyringPayload {
|
|
25
|
-
token?: {
|
|
26
|
-
access_token?: string;
|
|
27
|
-
refresh_token?: string;
|
|
28
|
-
token_type?: string;
|
|
29
|
-
expiry?: string;
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
type FetchLike = (input: string, init?: RequestInit) => Promise<Response>;
|
|
33
|
-
/** True on platforms where we know how to read the credential store. */
|
|
34
|
-
export declare function antigravityKeychainSupported(): boolean;
|
|
35
|
-
export declare function loadAntigravityOAuthCredentials(credentialFile?: string): Promise<GeminiOAuthCredentials | null>;
|
|
36
|
-
/**
|
|
37
|
-
* The credential store's own payload, undiminished.
|
|
38
|
-
*
|
|
39
|
-
* `loadAntigravityOAuthCredentials` reduces the token to what the proxy needs;
|
|
40
|
-
* a snapshot that has to be written back must keep the whole thing, or the
|
|
41
|
-
* account restored later is not the account that was saved.
|
|
42
|
-
*/
|
|
43
|
-
export declare function readAntigravityOAuthPayload(credentialFile?: string): Promise<AntigravityKeyringPayload | null>;
|
|
44
|
-
/**
|
|
45
|
-
* Materializes an access token before writing back to the OS credential store.
|
|
46
|
-
* Antigravity's desktop client does not refresh a token-less or expired keychain
|
|
47
|
-
* entry during setup, so we do it here. An access token without an expiry must
|
|
48
|
-
* also be refreshed: Antigravity's unified state treats a missing expiry as
|
|
49
|
-
* epoch zero and refuses to use it.
|
|
50
|
-
*/
|
|
51
|
-
export declare function hydrateAntigravityOAuthPayload(payload: AntigravityKeyringPayload, fetchImpl?: FetchLike): Promise<AntigravityKeyringPayload>;
|
|
52
|
-
/**
|
|
53
|
-
* Put a snapshotted Antigravity credential back into the OS credential store,
|
|
54
|
-
* so Antigravity itself follows an account switch rather than only AnyPick's
|
|
55
|
-
* proxy — the whole point of switching.
|
|
56
|
-
*
|
|
57
|
-
* Writes with an update flag wherever the platform offers one: updating in
|
|
58
|
-
* place keeps the existing item's access control, so Antigravity reads it back
|
|
59
|
-
* without a new authorization prompt. Creating the item from nothing cannot
|
|
60
|
-
* inherit an ACL that was never granted, and the first read will prompt.
|
|
61
|
-
*/
|
|
62
|
-
export declare function saveAntigravityOAuthCredential(payload: AntigravityKeyringPayload): Promise<void>;
|
|
63
|
-
/**
|
|
64
|
-
* Is there an Antigravity credential in the OS credential store?
|
|
65
|
-
*
|
|
66
|
-
* This asks only whether the entry exists and never reads its value, which is
|
|
67
|
-
* what keeps it cheap enough for `detectLive()`: on macOS the Keychain access
|
|
68
|
-
* prompt is raised by reading the secret (`security ... -w`), not by listing an
|
|
69
|
-
* item's attributes. Use `loadAntigravityOAuthCredentials` when you need the
|
|
70
|
-
* credential itself and the prompt is acceptable.
|
|
71
|
-
*/
|
|
72
|
-
export declare function antigravityCredentialExists(): Promise<boolean>;
|
|
73
|
-
/**
|
|
74
|
-
* Remove the Antigravity credential from the OS credential store so Antigravity
|
|
75
|
-
* prompts for a fresh sign-in. Local only — the OAuth grant stays valid upstream.
|
|
76
|
-
*
|
|
77
|
-
* Returns false when there was nothing to delete or the platform is unsupported;
|
|
78
|
-
* a missing entry is the desired end state either way.
|
|
79
|
-
*/
|
|
80
|
-
export declare function deleteAntigravityOAuthCredential(): Promise<boolean>;
|
|
81
|
-
export declare function parseAntigravityOAuthCredential(raw: string): GeminiOAuthCredentials | null;
|
|
82
|
-
export {};
|
|
83
|
-
//# sourceMappingURL=gemini-antigravity-oauth.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-antigravity-oauth.d.ts","sourceRoot":"","sources":["../../src/providers/gemini-antigravity-oauth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAqBH,MAAM,WAAW,sBAAsB;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE1E,wEAAwE;AACxE,wBAAgB,4BAA4B,IAAI,OAAO,CAItD;AAiFD,wBAAsB,+BAA+B,CACnD,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAUxC;AAED;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAC/C,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC,CA8B3C;AAED;;;;;;GAMG;AACH,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,yBAAyB,EAClC,SAAS,GAAE,SAAiB,GAC3B,OAAO,CAAC,yBAAyB,CAAC,CAiDpC;AAED;;;;;;;;;GASG;AACH,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CA4Df;AAgBD;;;;;;;;GAQG;AACH,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,OAAO,CAAC,CAmCpE;AAED;;;;;;GAMG;AACH,wBAAsB,gCAAgC,IAAI,OAAO,CAAC,OAAO,CAAC,CAuCzE;AA8BD,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAY1F"}
|