@eddyskywalker/dsh-chatgpt-subscription 0.31.0 → 0.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/README.md +112 -1
  3. package/lib/client.js +34731 -3832
  4. package/lib/client.js.map +1 -1
  5. package/lib/index.js +12922 -2851
  6. package/lib/types/client/cline-pass/ClinePassComposerQuota.d.ts +20 -0
  7. package/lib/types/client/cline-pass/ClinePassComposerQuota.d.ts.map +1 -0
  8. package/lib/types/client/cline-pass/ClinePassSection.d.ts +17 -0
  9. package/lib/types/client/cline-pass/ClinePassSection.d.ts.map +1 -0
  10. package/lib/types/client/cline-pass/api.d.ts +84 -0
  11. package/lib/types/client/cline-pass/api.d.ts.map +1 -0
  12. package/lib/types/client/cline-pass/locales.d.ts +1025 -0
  13. package/lib/types/client/cline-pass/locales.d.ts.map +1 -0
  14. package/lib/types/client/cline-pass/styles.d.ts +7 -0
  15. package/lib/types/client/cline-pass/styles.d.ts.map +1 -0
  16. package/lib/types/client/hub/brand-icons.d.ts +18 -2
  17. package/lib/types/client/hub/brand-icons.d.ts.map +1 -1
  18. package/lib/types/client/hub/hub-styles.d.ts.map +1 -1
  19. package/lib/types/client/hub/providers.d.ts.map +1 -1
  20. package/lib/types/client/index.d.ts +4 -0
  21. package/lib/types/client/index.d.ts.map +1 -1
  22. package/lib/types/client/mermaid/renderer.d.ts +23 -0
  23. package/lib/types/client/mermaid/renderer.d.ts.map +1 -1
  24. package/lib/types/client/minimax-code/MinimaxVideoDocumentBody.d.ts +31 -14
  25. package/lib/types/client/minimax-code/MinimaxVideoDocumentBody.d.ts.map +1 -1
  26. package/lib/types/client/minimax-code/MinimaxVideoToolView.d.ts.map +1 -1
  27. package/lib/types/client/minimax-code/VideoFormDialog.d.ts +46 -50
  28. package/lib/types/client/minimax-code/VideoFormDialog.d.ts.map +1 -1
  29. package/lib/types/client/minimax-code/locales.d.ts +80 -20
  30. package/lib/types/client/minimax-code/locales.d.ts.map +1 -1
  31. package/lib/types/client/minimax-code/styles.d.ts.map +1 -1
  32. package/lib/types/client/minimax-code/video-command-host.d.ts +17 -11
  33. package/lib/types/client/minimax-code/video-command-host.d.ts.map +1 -1
  34. package/lib/types/client/minimax-code/video-command-icon.d.ts +38 -0
  35. package/lib/types/client/minimax-code/video-command-icon.d.ts.map +1 -0
  36. package/lib/types/client/minimax-code/video-command.d.ts +53 -59
  37. package/lib/types/client/minimax-code/video-command.d.ts.map +1 -1
  38. package/lib/types/client/minimax-code/video-contract.d.ts +36 -0
  39. package/lib/types/client/minimax-code/video-contract.d.ts.map +1 -1
  40. package/lib/types/client/minimax-code/video-media-dropzone.d.ts +57 -0
  41. package/lib/types/client/minimax-code/video-media-dropzone.d.ts.map +1 -0
  42. package/lib/types/client/minimax-code/video-media-input.d.ts +173 -0
  43. package/lib/types/client/minimax-code/video-media-input.d.ts.map +1 -0
  44. package/lib/types/client/minimax-code/video-presets.d.ts +67 -0
  45. package/lib/types/client/minimax-code/video-presets.d.ts.map +1 -0
  46. package/lib/types/client/minimax-code/video-slots.d.ts +58 -5
  47. package/lib/types/client/minimax-code/video-slots.d.ts.map +1 -1
  48. package/lib/types/client/minimax-code/video-workspace.d.ts +41 -0
  49. package/lib/types/client/minimax-code/video-workspace.d.ts.map +1 -0
  50. package/lib/types/client/progress-updates/markdown-lite.d.ts +19 -6
  51. package/lib/types/client/progress-updates/markdown-lite.d.ts.map +1 -1
  52. package/lib/types/client/qoder/QoderComposerQuota.d.ts +41 -0
  53. package/lib/types/client/qoder/QoderComposerQuota.d.ts.map +1 -0
  54. package/lib/types/client/qoder/QoderSection.d.ts +26 -0
  55. package/lib/types/client/qoder/QoderSection.d.ts.map +1 -0
  56. package/lib/types/client/qoder/api.d.ts +4 -0
  57. package/lib/types/client/qoder/api.d.ts.map +1 -0
  58. package/lib/types/client/qoder/locales.d.ts +310 -0
  59. package/lib/types/client/qoder/locales.d.ts.map +1 -0
  60. package/lib/types/client/qoder/styles.d.ts +16 -0
  61. package/lib/types/client/qoder/styles.d.ts.map +1 -0
  62. package/lib/types/client/qoder/useQoderSection.d.ts +97 -0
  63. package/lib/types/client/qoder/useQoderSection.d.ts.map +1 -0
  64. package/lib/types/host/antigravity/adapter.d.ts.map +1 -1
  65. package/lib/types/host/cline-pass/account-pool.d.ts +63 -0
  66. package/lib/types/host/cline-pass/account-pool.d.ts.map +1 -0
  67. package/lib/types/host/cline-pass/adapter.d.ts +49 -0
  68. package/lib/types/host/cline-pass/adapter.d.ts.map +1 -0
  69. package/lib/types/host/cline-pass/catalog.d.ts +49 -0
  70. package/lib/types/host/cline-pass/catalog.d.ts.map +1 -0
  71. package/lib/types/host/cline-pass/client.d.ts +118 -0
  72. package/lib/types/host/cline-pass/client.d.ts.map +1 -0
  73. package/lib/types/host/cline-pass/engine.d.ts +223 -0
  74. package/lib/types/host/cline-pass/engine.d.ts.map +1 -0
  75. package/lib/types/host/cline-pass/line.d.ts +55 -0
  76. package/lib/types/host/cline-pass/line.d.ts.map +1 -0
  77. package/lib/types/host/cline-pass/mapper.d.ts +112 -0
  78. package/lib/types/host/cline-pass/mapper.d.ts.map +1 -0
  79. package/lib/types/host/cline-pass/oauth.d.ts +134 -0
  80. package/lib/types/host/cline-pass/oauth.d.ts.map +1 -0
  81. package/lib/types/host/cline-pass/protocol.d.ts +186 -0
  82. package/lib/types/host/cline-pass/protocol.d.ts.map +1 -0
  83. package/lib/types/host/cline-pass/routes.d.ts +71 -0
  84. package/lib/types/host/cline-pass/routes.d.ts.map +1 -0
  85. package/lib/types/host/cline-pass/store.d.ts +97 -0
  86. package/lib/types/host/cline-pass/store.d.ts.map +1 -0
  87. package/lib/types/host/cline-pass/token-store.d.ts +168 -0
  88. package/lib/types/host/cline-pass/token-store.d.ts.map +1 -0
  89. package/lib/types/host/cline-pass/tools.d.ts +21 -0
  90. package/lib/types/host/cline-pass/tools.d.ts.map +1 -0
  91. package/lib/types/host/cline-pass/types.d.ts +168 -0
  92. package/lib/types/host/cline-pass/types.d.ts.map +1 -0
  93. package/lib/types/host/common/model-request-control.d.ts +1 -1
  94. package/lib/types/host/common/model-request-control.d.ts.map +1 -1
  95. package/lib/types/host/common/request-diagnostics.d.ts +1 -1
  96. package/lib/types/host/common/request-diagnostics.d.ts.map +1 -1
  97. package/lib/types/host/kimi-code/adapter.d.ts +3 -1
  98. package/lib/types/host/kimi-code/adapter.d.ts.map +1 -1
  99. package/lib/types/host/kimi-code/mapper.d.ts.map +1 -1
  100. package/lib/types/host/qoder/account-pool.d.ts +137 -0
  101. package/lib/types/host/qoder/account-pool.d.ts.map +1 -0
  102. package/lib/types/host/qoder/adapter.d.ts +134 -0
  103. package/lib/types/host/qoder/adapter.d.ts.map +1 -0
  104. package/lib/types/host/qoder/adopt.d.ts +146 -0
  105. package/lib/types/host/qoder/adopt.d.ts.map +1 -0
  106. package/lib/types/host/qoder/client.d.ts +189 -0
  107. package/lib/types/host/qoder/client.d.ts.map +1 -0
  108. package/lib/types/host/qoder/cosy.d.ts +173 -0
  109. package/lib/types/host/qoder/cosy.d.ts.map +1 -0
  110. package/lib/types/host/qoder/mapper.d.ts +235 -0
  111. package/lib/types/host/qoder/mapper.d.ts.map +1 -0
  112. package/lib/types/host/qoder/model-catalog.d.ts +185 -0
  113. package/lib/types/host/qoder/model-catalog.d.ts.map +1 -0
  114. package/lib/types/host/qoder/oauth.d.ts +134 -0
  115. package/lib/types/host/qoder/oauth.d.ts.map +1 -0
  116. package/lib/types/host/qoder/routes.d.ts +96 -0
  117. package/lib/types/host/qoder/routes.d.ts.map +1 -0
  118. package/lib/types/host/qoder/token-store.d.ts +231 -0
  119. package/lib/types/host/qoder/token-store.d.ts.map +1 -0
  120. package/lib/types/host/qoder/types.d.ts +257 -0
  121. package/lib/types/host/qoder/types.d.ts.map +1 -0
  122. package/lib/types/host/workbuddy/adapter.d.ts.map +1 -1
  123. package/lib/types/host/workbuddy/mapper.d.ts +1 -0
  124. package/lib/types/host/workbuddy/mapper.d.ts.map +1 -1
  125. package/lib/types/index.d.ts +17 -0
  126. package/lib/types/index.d.ts.map +1 -1
  127. package/lib/types/shared/cline-pass-contracts.d.ts +267 -0
  128. package/lib/types/shared/cline-pass-contracts.d.ts.map +1 -0
  129. package/lib/types/shared/qoder-contracts.d.ts +293 -0
  130. package/lib/types/shared/qoder-contracts.d.ts.map +1 -0
  131. package/package.json +2 -1
@@ -0,0 +1,168 @@
1
+ import type { CredentialStore } from '../token-store.ts';
2
+ import { type ClinePassPinSettings } from './types.ts';
3
+ /**
4
+ * One stored Cline Pass API key.
5
+ *
6
+ * The gateway authenticates with a static key rather than the rotating OAuth
7
+ * pair most lines in this plugin store, so there is no refresh token and nothing
8
+ * expires. The key is host-only and never crosses to a browser; the settings
9
+ * card renders the alias and the account row, never this value.
10
+ */
11
+ interface ClinePassCredentialBase {
12
+ /** User-chosen label so several accounts are distinguishable. */
13
+ alias?: string;
14
+ /** Unix milliseconds the credential was added to the pool. */
15
+ addedAt?: number;
16
+ /** Per-account gateway override; empty means the line's own base URL. */
17
+ baseURL?: string;
18
+ }
19
+ /**
20
+ * A static API key, the shape the standalone `dsh-cline-pass` plugin used.
21
+ *
22
+ * Kept as a fallback: the official clients now sign in with WorkOS OAuth, but
23
+ * existing users may still hold a key, and a key has no refresh lifecycle.
24
+ */
25
+ export interface ClinePassApiKeyCredentials extends ClinePassCredentialBase {
26
+ /** Absent on records written before the OAuth path existed. */
27
+ kind?: 'api-key';
28
+ /** Host-only bearer key. */
29
+ apiKey: string;
30
+ }
31
+ /**
32
+ * One Cline account signed in through WorkOS device authorization.
33
+ *
34
+ * `access` is the raw WorkOS access token; the wire bearer is
35
+ * `workos:<access>` (Cline's own clients add that prefix). `refresh` rotates on
36
+ * every refresh, so it is persisted before the new access token is used.
37
+ */
38
+ export interface ClinePassOAuthCredentials extends ClinePassCredentialBase {
39
+ kind: 'oauth';
40
+ access: string;
41
+ refresh: string;
42
+ /** Unix milliseconds the access token expires. */
43
+ expires: number;
44
+ /** Cline's stable user id, when the token registration returned one. */
45
+ accountId?: string;
46
+ email?: string;
47
+ name?: string;
48
+ metadata?: Record<string, unknown>;
49
+ }
50
+ export type ClinePassCredentials = ClinePassOAuthCredentials | ClinePassApiKeyCredentials;
51
+ /** Cline's own clients send OAuth access tokens with this prefix. */
52
+ export declare const CLINE_WORKOS_TOKEN_PREFIX = "workos:";
53
+ /** Whether one credential is an OAuth session rather than a static key. */
54
+ export declare function isOAuthCredentials(credentials: ClinePassCredentials): credentials is ClinePassOAuthCredentials;
55
+ /** The `Authorization: Bearer` value for one credential. */
56
+ export declare function bearerFor(credentials: ClinePassCredentials): string;
57
+ /** Stable identity two credentials share when they are the same Cline account. */
58
+ export declare function credentialsIdentity(credentials: ClinePassCredentials): string;
59
+ /** Unix milliseconds the credential expires, when it has an expiry. */
60
+ export declare function credentialsExpiresAt(credentials: ClinePassCredentials): number | undefined;
61
+ /** The user-facing label for one credential, when it states one. */
62
+ export declare function credentialsLabel(credentials: ClinePassCredentials): string | undefined;
63
+ /** Decode a JWT's `exp` claim, without trusting anything else in it. */
64
+ export declare function jwtExpiryMs(token: string): number | undefined;
65
+ /** One catalog entry, as the last successful scan published it. */
66
+ export interface ClinePassCatalogModel {
67
+ id: string;
68
+ name?: string;
69
+ contextWindow?: number;
70
+ maxTokens?: number;
71
+ reasoning?: boolean;
72
+ input?: string[];
73
+ efforts?: string[];
74
+ }
75
+ /**
76
+ * Everything this line stores besides credentials.
77
+ *
78
+ * `enabledModelIds === null` is "no filter": every catalogued model, including
79
+ * ones a later scan adds. An array is an explicit selection, and an empty one
80
+ * switches every model off. Modelling "all" as null rather than as an explicit
81
+ * all-ids list means a model the service adds later is not silently hidden by a
82
+ * selection made before it existed.
83
+ */
84
+ export interface ClinePassModelSettings {
85
+ enabled: boolean;
86
+ baseURL: string;
87
+ enabledModelIds: string[] | null;
88
+ catalogModels: ClinePassCatalogModel[];
89
+ /** Per-model upstream pin, keyed by model id. */
90
+ pins: Record<string, ClinePassPinSettings>;
91
+ /** Models the route must not advertise even though it still knows them. */
92
+ hiddenModels: string[];
93
+ /** Per-model context-window override; absent uses the published window. */
94
+ contextWindowOverrides: Record<string, number>;
95
+ defaultContextWindow: number;
96
+ defaultMaxTokens: number;
97
+ maxConcurrentRequests: number;
98
+ streamIdleTimeoutMs: number;
99
+ historyLimit: number;
100
+ exposeCatalog: boolean;
101
+ /** Which pin spellings a request carries: `both` (default) or `detected`. */
102
+ pinSpelling: string;
103
+ /** Whether the `cline_pass_*` tools are registered on the next start. */
104
+ exposeTools: boolean;
105
+ }
106
+ export interface ClinePassPreferenceStore {
107
+ status(): ClinePassModelSettings;
108
+ read(): Promise<ClinePassModelSettings>;
109
+ update(patch: Partial<ClinePassModelSettings>): Promise<ClinePassModelSettings>;
110
+ }
111
+ export declare function credentialPath(): string;
112
+ export declare function modelSettingsPath(): string;
113
+ /** Validate one stored credential: an OAuth session or a static API key. */
114
+ export declare function parseClinePassCredentials(value: unknown): ClinePassCredentials;
115
+ /** Encrypted credential store for the single-key (pre-pool) configuration. */
116
+ export declare class FileCredentialStore {
117
+ private readonly filePath;
118
+ private readonly backend;
119
+ constructor(filePath?: string, backend?: CredentialStore<ClinePassCredentials>);
120
+ path(): string;
121
+ read(): Promise<ClinePassCredentials | null>;
122
+ write(credentials: ClinePassCredentials): Promise<void>;
123
+ clear(): Promise<void>;
124
+ }
125
+ /** Parse one whole settings document. */
126
+ export declare function parseClinePassModelSettings(value: unknown): ClinePassModelSettings;
127
+ /** The document a fresh install starts from. */
128
+ export declare function defaultClinePassModelSettings(): ClinePassModelSettings;
129
+ /**
130
+ * Model and routing settings, bound to a JSON file beside the encrypted
131
+ * credential store.
132
+ *
133
+ * The file is written atomically (temp + rename) so a crash mid-write leaves the
134
+ * previous document intact rather than a truncated one that reads as "reset all
135
+ * settings".
136
+ */
137
+ export declare class ClinePassModelSettingsStore implements ClinePassPreferenceStore {
138
+ private readonly filePath;
139
+ private cached;
140
+ private loadPromise;
141
+ constructor(filePath?: string);
142
+ path(): string;
143
+ status(): ClinePassModelSettings;
144
+ /**
145
+ * Read the document at activation time, synchronously.
146
+ *
147
+ * The line has to decide whether to register its management tools before
148
+ * `apply()` returns: a tool list snapshotted by a running Session would not
149
+ * see a registration that landed a tick later. The file is small and plain
150
+ * JSON (only credentials are encrypted), so one sync read is the honest
151
+ * trade.
152
+ */
153
+ readSync(): ClinePassModelSettings;
154
+ read(): Promise<ClinePassModelSettings>;
155
+ private load;
156
+ write(settings: ClinePassModelSettings): Promise<ClinePassModelSettings>;
157
+ update(patch: Partial<ClinePassModelSettings>): Promise<ClinePassModelSettings>;
158
+ /** Record a catalog sync without touching the user's selection or pins. */
159
+ storeCatalog(models: ClinePassCatalogModel[]): Promise<ClinePassModelSettings>;
160
+ /** Store one model's pin; an empty pin list returns it to automatic routing. */
161
+ setPin(model: string, pin: ClinePassPinSettings): Promise<ClinePassModelSettings>;
162
+ /** Drop one model's pin entirely. */
163
+ clearPin(model: string): Promise<ClinePassModelSettings>;
164
+ /** Store or clear (null) one model's context-window override. */
165
+ setContextWindowOverride(model: string, contextWindow: number | null): Promise<ClinePassModelSettings>;
166
+ }
167
+ export {};
168
+ //# sourceMappingURL=token-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-store.d.ts","sourceRoot":"","sources":["../../../../src/host/cline-pass/token-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ import type { ClinePassAccountPool } from './account-pool.ts';
3
+ import type { ClinePassEngine } from './engine.ts';
4
+ import type { ClinePassStore } from './store.ts';
5
+ import type { ClinePassModelSettingsStore } from './token-store.ts';
6
+ import type { ClinePassWebStatus } from '../../shared/cline-pass-contracts.ts';
7
+ export interface ClinePassToolsOptions {
8
+ settings: ClinePassModelSettingsStore;
9
+ accountPool: ClinePassAccountPool;
10
+ store: ClinePassStore;
11
+ engine: ClinePassEngine;
12
+ status(): Promise<ClinePassWebStatus>;
13
+ /** Whether the route is currently served by this plugin. */
14
+ serving(): boolean;
15
+ }
16
+ /**
17
+ * Register every `cline_pass_*` tool.
18
+ * @returns one disposer bundle, or an empty list when no tools service exists.
19
+ */
20
+ export declare function registerClinePassTools(ctx: Context, options: ClinePassToolsOptions): Array<() => void>;
21
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../../src/host/cline-pass/tools.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAA;AAGnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AA0H9E,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,2BAA2B,CAAA;IACrC,WAAW,EAAE,oBAAoB,CAAA;IACjC,KAAK,EAAE,cAAc,CAAA;IACrB,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAA;IACrC,4DAA4D;IAC5D,OAAO,IAAI,OAAO,CAAA;CACnB;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,qBAAqB,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,CA8jBtG"}
@@ -0,0 +1,168 @@
1
+ /**
2
+ * Static facts about the Cline Pass subscription and its gateway.
3
+ *
4
+ * The upstream is an OpenAI-compatible `chat/completions` endpoint
5
+ * (`https://api.cline.bot/api/v1`) that fronts several model providers. Routing
6
+ * is decided by that gateway, and the two pipelines it can use spell an upstream
7
+ * pin differently — see `protocol.ts`. Authentication is a static API key in
8
+ * `Authorization: Bearer`: there is no OAuth flow and no token expiry.
9
+ *
10
+ * The model table below is transcribed from the Cline Pass subscription list and
11
+ * the public `models.dev` catalog. It is a fallback, not a ceiling: a model the
12
+ * live catalog scan discovers is described by what that scan published, and a
13
+ * model this release has never heard of is adopted with conservative metadata
14
+ * rather than hidden.
15
+ */
16
+ import type { ClinePassPinMode } from '../../shared/cline-pass-contracts.ts';
17
+ export declare const PROVIDER_ID = "cline-pass";
18
+ export declare const PROVIDER_NAME = "Cline Pass";
19
+ /** Default gateway. Overridable per deployment and per account. */
20
+ export declare const DEFAULT_BASE_URL = "https://api.cline.bot/api/v1";
21
+ /** Public endpoint that lists subscription models without auth. */
22
+ export declare const RECOMMENDED_MODELS_URL = "https://api.cline.bot/api/v1/ai/cline/recommended-models";
23
+ /** The upstream gateway's own catalog: the only source naming reasoning levels. */
24
+ export declare const VERCEL_MODELS_URL = "https://ai-gateway.vercel.sh/v1/models";
25
+ /** The community model registry, a metadata backstop. */
26
+ export declare const MODELS_DEV_URL = "https://models.dev/api.json";
27
+ /** OpenRouter's public API, used only for direct-pipeline endpoint detail. */
28
+ export declare const OPENROUTER_API = "https://openrouter.ai/api/v1";
29
+ /** Authenticated sub-paths on the gateway. */
30
+ export declare const USAGE_LIMITS_PATH = "/users/me/plan/usage-limits";
31
+ export declare const PROFILE_PATH = "/users/me";
32
+ export declare const USAGE_PAGE_SIZE = 200;
33
+ export declare const USAGE_MAX_PAGES = 12;
34
+ /** Conservative context capacity for a model no catalog describes. */
35
+ export declare const DEFAULT_CONTEXT_WINDOW = 128000;
36
+ /**
37
+ * Per-request output budget when the caller states none.
38
+ *
39
+ * A budget, not a ceiling: the harness reserves it as completion room before it
40
+ * compacts, so this decides how much of the window stays available. 64k keeps
41
+ * the reserve far below the compaction ratio while leaving room for a
42
+ * tool-calling agent's longest turn.
43
+ */
44
+ export declare const DEFAULT_MAX_TOKENS = 64000;
45
+ /** Streams one account may keep open at once; `0` lifts the cap. */
46
+ export declare const DEFAULT_MAX_CONCURRENT_REQUESTS = 16;
47
+ /** Idle budget for one Cline Pass stream. */
48
+ export declare const DEFAULT_STREAM_IDLE_TIMEOUT_MS = 300000;
49
+ /** Request-history rows retained in memory. */
50
+ export declare const DEFAULT_HISTORY_LIMIT = 100;
51
+ /**
52
+ * How long one account-level refusal keeps an account out of the pool.
53
+ *
54
+ * Only the two refusals that are about the ACCOUNT are listed: a transient 429
55
+ * is answered by the channel retry, and standing an account down for it would
56
+ * cost capacity the request never proved was gone.
57
+ */
58
+ export declare const POOL_COOLDOWN_MS: number;
59
+ export declare const AUTH_COOLDOWN_MS: number;
60
+ /** How many channels one model's list may hold. */
61
+ export declare const MAX_UPSTREAMS = 64;
62
+ /** How many channels one validation run tests concurrently. */
63
+ export declare const VALIDATE_CONCURRENCY = 5;
64
+ /** Reasoning levels the gateway accepts for every reasoning-capable model. */
65
+ export declare const REASONING_EFFORTS: readonly [{
66
+ readonly id: "none";
67
+ readonly name: "None";
68
+ readonly description: "No extra thinking; fastest and cheapest.";
69
+ }, {
70
+ readonly id: "minimal";
71
+ readonly name: "Minimal";
72
+ readonly description: "A bare minimum of reasoning.";
73
+ }, {
74
+ readonly id: "low";
75
+ readonly name: "Low";
76
+ readonly description: "Prefer for routine or latency-sensitive work.";
77
+ }, {
78
+ readonly id: "medium";
79
+ readonly name: "Medium";
80
+ readonly description: "A balanced amount of reasoning.";
81
+ }, {
82
+ readonly id: "high";
83
+ readonly name: "High";
84
+ readonly description: "More thorough reasoning for multi-step work.";
85
+ }, {
86
+ readonly id: "xhigh";
87
+ readonly name: "Extra high";
88
+ readonly description: "For difficult work that rewards more thinking.";
89
+ }, {
90
+ readonly id: "max";
91
+ readonly name: "Max";
92
+ readonly description: "Reserve for the hardest quality-first tasks.";
93
+ }];
94
+ export type ClinePassReasoningEffort = typeof REASONING_EFFORTS[number]['id'];
95
+ /** One published model entry. */
96
+ export interface ClinePassModelMeta {
97
+ name: string;
98
+ contextWindow: number;
99
+ maxTokens: number;
100
+ reasoning: boolean;
101
+ /** Levels this model offers; absent keeps the whole vocabulary. */
102
+ efforts?: readonly string[];
103
+ input: readonly string[];
104
+ }
105
+ /**
106
+ * Published metadata for the shipped Cline Pass models.
107
+ *
108
+ * `name` mirrors the provider's own label where one is published and falls back
109
+ * to the model id. `maxTokens` is the published output ceiling, used to clamp the
110
+ * configured request budget rather than taken as the budget itself.
111
+ */
112
+ export declare const MODEL_CATALOG: Readonly<Record<string, ClinePassModelMeta>>;
113
+ /** Subscriptions models current at release time; refreshed on demand. */
114
+ export declare const DEFAULT_MODELS: readonly string[];
115
+ /** Published entry for one model id, if the shipped table knows it. */
116
+ export declare function catalogEntry(model: string): ClinePassModelMeta | undefined;
117
+ /** One stored pin, as the settings file keeps it. */
118
+ export interface ClinePassPinSettings {
119
+ upstreams: string[];
120
+ exclude: string[];
121
+ pinMode: ClinePassPinMode;
122
+ sort: string;
123
+ }
124
+ /** The default pin: automatic routing, no exclusions. */
125
+ export declare function defaultPin(): ClinePassPinSettings;
126
+ /**
127
+ * One model as the live catalog describes it, after merging the shipped table,
128
+ * the last official scan and any per-model override.
129
+ */
130
+ export interface ClinePassModelInfo {
131
+ id: string;
132
+ displayName: string;
133
+ contextWindow: number;
134
+ maxTokens: number;
135
+ reasoning: boolean;
136
+ efforts: readonly string[];
137
+ input: readonly string[];
138
+ }
139
+ /** Connection facts one request is built from. */
140
+ export interface ClinePassConnection {
141
+ baseURL: string;
142
+ displayName: string;
143
+ models: ClinePassModelInfo[];
144
+ defaultContextWindow: number;
145
+ maxTokens: number;
146
+ streamIdleTimeoutMs: number;
147
+ maxConcurrentRequests: number;
148
+ pinSpelling: string;
149
+ }
150
+ /** One model's metadata as the last official scan published it. */
151
+ export interface ClinePassDiscoveredModel {
152
+ name?: string;
153
+ contextWindow?: number;
154
+ maxTokens?: number;
155
+ /** The seam vocabulary spelling (`models.dev`). */
156
+ input?: string[];
157
+ /** The upstream gateway's spelling. */
158
+ inputModalities?: string[];
159
+ reasoning?: boolean;
160
+ efforts?: string[];
161
+ }
162
+ /** The whole official scan: ids, per-model metadata, and the sources that answered. */
163
+ export interface ClinePassCatalogScan {
164
+ models: string[];
165
+ catalog: Record<string, ClinePassDiscoveredModel>;
166
+ sources: string[];
167
+ }
168
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/host/cline-pass/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAE5E,eAAO,MAAM,WAAW,eAAe,CAAA;AACvC,eAAO,MAAM,aAAa,eAAe,CAAA;AAEzC,mEAAmE;AACnE,eAAO,MAAM,gBAAgB,iCAAiC,CAAA;AAE9D,mEAAmE;AACnE,eAAO,MAAM,sBAAsB,6DAA6D,CAAA;AAChG,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,2CAA2C,CAAA;AACzE,yDAAyD;AACzD,eAAO,MAAM,cAAc,gCAAgC,CAAA;AAC3D,8EAA8E;AAC9E,eAAO,MAAM,cAAc,iCAAiC,CAAA;AAE5D,8CAA8C;AAC9C,eAAO,MAAM,iBAAiB,gCAAgC,CAAA;AAC9D,eAAO,MAAM,YAAY,cAAc,CAAA;AACvC,eAAO,MAAM,eAAe,MAAM,CAAA;AAClC,eAAO,MAAM,eAAe,KAAK,CAAA;AAEjC,sEAAsE;AACtE,eAAO,MAAM,sBAAsB,SAAU,CAAA;AAE7C;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,QAAS,CAAA;AAExC,oEAAoE;AACpE,eAAO,MAAM,+BAA+B,KAAK,CAAA;AAEjD,6CAA6C;AAC7C,eAAO,MAAM,8BAA8B,SAAU,CAAA;AAErD,+CAA+C;AAC/C,eAAO,MAAM,qBAAqB,MAAM,CAAA;AAExC;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,QAAc,CAAA;AAC3C,eAAO,MAAM,gBAAgB,QAAc,CAAA;AAE3C,mDAAmD;AACnD,eAAO,MAAM,aAAa,KAAK,CAAA;AAE/B,+DAA+D;AAC/D,eAAO,MAAM,oBAAoB,IAAI,CAAA;AAErC,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQpB,CAAA;AAEV,MAAM,MAAM,wBAAwB,GAAG,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAA;AAE7E,iCAAiC;AACjC,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,OAAO,CAAA;IAClB,mEAAmE;IACnE,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC3B,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;CACzB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAgBrE,CAAA;AAEF,yEAAyE;AACzE,eAAO,MAAM,cAAc,EAAE,SAAS,MAAM,EAA8C,CAAA;AAE1F,uEAAuE;AACvE,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAE1E;AAED,qDAAqD;AACrD,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,OAAO,EAAE,gBAAgB,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,yDAAyD;AACzD,wBAAgB,UAAU,IAAI,oBAAoB,CAEjD;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IAC1B,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;CACzB;AAED,kDAAkD;AAClD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,kBAAkB,EAAE,CAAA;IAC5B,oBAAoB,EAAE,MAAM,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,mEAAmE;AACnE,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB;AAED,uFAAuF;AACvF,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAA;IACjD,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB"}
@@ -1,5 +1,5 @@
1
1
  import { ConcurrencyGate } from './concurrency-gate.ts';
2
- export declare const CONTROLLED_PROVIDERS: readonly ["codex-chatgpt", "claude", "antigravity", "kimi-code", "minimax-code", "command-code", "workbuddy", "ollama", "glm-coding-plan", "step-code"];
2
+ export declare const CONTROLLED_PROVIDERS: readonly ["codex-chatgpt", "claude", "antigravity", "kimi-code", "minimax-code", "command-code", "workbuddy", "ollama", "glm-coding-plan", "step-code", "cline-pass", "qoder"];
3
3
  export type ControlledProvider = typeof CONTROLLED_PROVIDERS[number];
4
4
  export interface ModelRequestLimits {
5
5
  /** Per credential limits, not guessed subscription entitlements. Zero disables. */
@@ -1 +1 @@
1
- {"version":3,"file":"model-request-control.d.ts","sourceRoot":"","sources":["../../../../src/host/common/model-request-control.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,eAAO,MAAM,oBAAoB,yJAA0J,CAAA;AAC3L,MAAM,MAAM,kBAAkB,GAAG,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAA;AACpE,MAAM,WAAW,kBAAkB;IACjC,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAA;IACvD,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,gFAAgF;AAChF,wBAAgB,sBAAsB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,kBAAkB,CAqB/F;AAED,kGAAkG;AAClG,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAO9F;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,MAAM,EAAE,kBAAkB,CAAA;IAC1B,IAAI,CAAC,EAAE,eAAe,CAAA;CACvB;AAED,4FAA4F;AAC5F,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,OAAO,KAAK,EAAE,OAAO,EAAE,0BAA0B,GAAG,OAAO,KAAK,CAmErH"}
1
+ {"version":3,"file":"model-request-control.d.ts","sourceRoot":"","sources":["../../../../src/host/common/model-request-control.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,eAAO,MAAM,oBAAoB,gLAAiL,CAAA;AAClN,MAAM,MAAM,kBAAkB,GAAG,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAA;AACpE,MAAM,WAAW,kBAAkB;IACjC,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAA;IACvD,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,gFAAgF;AAChF,wBAAgB,sBAAsB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,kBAAkB,CAqB/F;AAED,kGAAkG;AAClG,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAO9F;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,MAAM,EAAE,kBAAkB,CAAA;IAC1B,IAAI,CAAC,EAAE,eAAe,CAAA;CACvB;AAED,4FAA4F;AAC5F,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,OAAO,KAAK,EAAE,OAAO,EAAE,0BAA0B,GAAG,OAAO,KAAK,CAmErH"}
@@ -13,7 +13,7 @@
13
13
  *
14
14
  * @module dsh-chatgpt-subscription/request-diagnostics
15
15
  */
16
- export declare const DIAGNOSTIC_PROVIDERS: readonly ["codex-chatgpt", "claude-subscription", "antigravity", "kimi-code", "minimax-code", "command-code", "workbuddy-subscription", "ollama", "claude", "workbuddy", "codex", "glm-coding-plan", "step-code"];
16
+ export declare const DIAGNOSTIC_PROVIDERS: readonly ["codex-chatgpt", "claude-subscription", "antigravity", "kimi-code", "minimax-code", "command-code", "workbuddy-subscription", "ollama", "claude", "workbuddy", "codex", "glm-coding-plan", "step-code", "cline-pass", "qoder"];
17
17
  export type DiagnosticProviderId = (typeof DIAGNOSTIC_PROVIDERS)[number];
18
18
  export declare const KNOWN_WIRE_ENDPOINTS: readonly ["messages", "responses", "chat_completions", "generate_content", "stream_generate_content", "ollama_chat", "ollama_generate", "workbuddy_chat", "unknown"];
19
19
  export type KnownWireEndpoint = (typeof KNOWN_WIRE_ENDPOINTS)[number];
@@ -1 +1 @@
1
- {"version":3,"file":"request-diagnostics.d.ts","sourceRoot":"","sources":["../../../../src/host/common/request-diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request-diagnostics.d.ts","sourceRoot":"","sources":["../../../../src/host/common/request-diagnostics.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,9 @@ import { KimiCodeAccountPool } from './account-pool.ts';
25
25
  * - `RATE_LIMIT` — a 429 that is genuine back-pressure ("too many requests"),
26
26
  * which the documentation describes as transient and which does belong to the
27
27
  * account that hit it, so rotation on it still earns its keep;
28
- * - `TRANSPORT` — a connection that produced no response at all;
28
+ * - `TRANSPORT` — a connection that failed to carry the response: none at all,
29
+ * a body severed mid-stream (`streamFailure`), or a stream that ended without
30
+ * its terminal event (`assertStreamComplete`);
29
31
  * - `TIMEOUT` — a stalled stream, handled by the idle watchdog.
30
32
  *
31
33
  * Deliberately outside the set:
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/host/kimi-code/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/host/kimi-code/adapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../../src/host/kimi-code/mapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../../src/host/kimi-code/mapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Qoder 线路的号池:共享 \`AccountPoolCore\` 之上的薄封装。
3
+ *
4
+ * 存储、序列化、可用性、轮转、429 冷却都由 \`src/host/common/account-pool.ts\` 管;
5
+ * 本文件只回答「Qoder 这条线的凭据长什么样、怎么刷新、身份怎么算、卡片怎么装配」。
6
+ *
7
+ * 与 step-code 号池的三处不同,各有理由:
8
+ *
9
+ * 1. **刷新钩子是活的。** Qoder 的 token 会过期(types.ts 文件头第 2 条),所以
10
+ * \`expiresAt\` / \`needsRefresh\` / \`refresh\` 三个钩子全部如实实现;
11
+ * 刷新失败按 401/403 → expired(这个账号要重登)、其余 → undefined(瞬时故障不判死)。
12
+ * 2. **两区可以同时在池里。** 区域是凭据的属性(计划 §1),去重键里必须带区域:
13
+ * 否则同一个 uid 在两个部署上会被合并成一行,然后那一行的凭据被拿去打另一个区的主机。
14
+ * 3. **adopt 快照可删。** 本插件只读 \`~/.qoder/.auth/user\`,从不写它;
15
+ * 删掉池里的一行只是删掉本插件自己的加密记录,用户的 qodercli 会话不动。
16
+ */
17
+ import { AccountPoolCore, type PoolAccountShape, type PoolData } from '../common/account-pool.ts';
18
+ import type { CredentialStore } from '../token-store.ts';
19
+ import type { AccountRotationStrategy, PoolAccountQuotaDto } from '../../shared/account-pool-contracts.ts';
20
+ import type { QoderAccountSummaryDto, QoderQuotaSnapshotDto, QoderRegion, QoderStatusDto } from '../../shared/qoder-contracts.ts';
21
+ import { QODER_CLI_CREDENTIAL_SOURCE, type QoderCredentials, type QoderCredentialOrigin } from './token-store.ts';
22
+ /** 一个池内账号行。凭据整个随行存放;其余是卡片渲染用的非机密事实。 */
23
+ export interface QoderPoolAccount extends PoolAccountShape<QoderCredentials> {
24
+ /** 账号所属区域;由凭据自述,这里是给它做索引用。 */
25
+ region: QoderRegion;
26
+ /** 这份凭据的来源(设备流 / PAT / adopt),供卡片显示。 */
27
+ source: QoderCredentialOrigin;
28
+ }
29
+ /** 号池切片:共享摘要 + 本线路的区域与来源。 */
30
+ export type QoderAccountSummary = QoderAccountSummaryDto;
31
+ /** 本线路自己的加密号池文件。与凭据文件分开:池可以有多行,凭据文件只有主账号一份。 */
32
+ export declare function qoderPoolPath(): string;
33
+ /** keychain / Secret Service 的服务名。与其它线路各用各的,互不相干。 */
34
+ export declare const QODER_POOL_KEYCHAIN_SERVICE = "dsh-qoder-pool";
35
+ /**
36
+ * 身份:两个凭据什么时候是同一个上游账号。
37
+ *
38
+ * 组成是「区域 + uid」,两段都非机密,也都不随重新登录而变(Qoder 的 token 每次
39
+ * 兑换都可能换一把新的,拿 token 当键会让同一个账号每次登录都长成新账号,号池无限增长)。
40
+ *
41
+ * 没有 uid 时退回「区域 + accessToken 的 SHA-256 前 16 字节」:那是**指纹**,不是身份,
42
+ * 但它至少保证同一把 token 落到同一行;两段全空才返回 undefined,那时核心自己生成
43
+ * \`acc_<random>\`,把这一行**新增**而不是与某个无关凭据合并。
44
+ */
45
+ export declare function qoderPoolIdentity(credentials: QoderCredentials): string | undefined;
46
+ /**
47
+ * 校验并归一化整份号池文档。
48
+ *
49
+ * 凭据重新过一遍 \`parseQoderCredentials\`,所以一行不可能装着一份 store 会拒绝写回的形状。
50
+ * 一行凭据读不通就**丢弃这一行**而不是整体报错——\`read()\` 会吞掉一次加载失败并回落,
51
+ * 抛错等于让一行坏数据带走整个池。
52
+ */
53
+ export declare function parseQoderPoolData(value: unknown): PoolData<QoderPoolAccount>;
54
+ /**
55
+ * 额度快照 → 号池卡片渲染的形状。
56
+ *
57
+ * 只有 \`personal\` 桶进入账号卡的进度条:加购包与组织包是另一条性质的量
58
+ * (它们出现在线路级额度卡里,不在账号卡上)。桶是绝对量,卡片只认得百分比,
59
+ * 换算只在 \`total > 0\` 时做——total 为 0 或缺失的桶**不下发**,而不是画成 0%
60
+ * (「上游没报」与「一点没花」必须长得不一样)。
61
+ *
62
+ * \`windowDurationMins\` 传 null:Qoder 的额度是账号周期余额,没有一个诚实的
63
+ * 「窗口长度」可填,卡片按通用名渲染。\`resetsAt\` 用账号周期截止 \`expiresAt\`。
64
+ */
65
+ export declare function qoderPoolQuota(snapshot: QoderQuotaSnapshotDto | null | undefined): PoolAccountQuotaDto | undefined;
66
+ /** 本线路号池的构造选项。全部可选:生产按池文件路径构造平台后端。 */
67
+ export interface QoderAccountPoolOptions {
68
+ /** 测试缝;生产按池文件路径构造平台后端(DPAPI / Keychain / SecretService)。 */
69
+ backend?: CredentialStore<PoolData<QoderPoolAccount>>;
70
+ /** 本池接受的账号数上限。 */
71
+ maxAccounts?: number;
72
+ /** 用户在设置里钉住的账号;钉住的账号冷却时自动让位给轮转(核心自己处理)。 */
73
+ preferAccountId?: () => string | null;
74
+ }
75
+ /**
76
+ * 刷新失败的分类。
77
+ *
78
+ * 401/403 → \`'expired'\`(上游明说这把 token 不行了,这个账号要重登);
79
+ * 其余(网络故障、5xx、形状变了)→ undefined:瞬时故障不该把一个账号判死。
80
+ */
81
+ export declare function qoderRefreshFailureStatus(error: unknown): 'expired' | 'invalid' | undefined;
82
+ /** 本线路的号池。凭据类型是本线路自己的,刷新钩子全部如实实现。 */
83
+ export declare class QoderAccountPool extends AccountPoolCore<QoderCredentials, QoderPoolAccount, QoderAccountSummary> {
84
+ constructor(options?: QoderAccountPoolOptions);
85
+ /**
86
+ * 把一份 adopt 快照收进号池。
87
+ *
88
+ * 快照已经跑过 \`adopt.ts\` 的解析(解密、字段、区域探测都已确认),这里只补来源标记;
89
+ * 账号仍以 \`qoderPoolIdentity\` 的身份落进池,重复 adopt 同一次登录只会更新同一行。
90
+ */
91
+ addAdoptedCredential(adopted: {
92
+ readonly credentials: QoderCredentials;
93
+ readonly sourcePath?: string;
94
+ }, alias?: string): Promise<QoderPoolAccount>;
95
+ /**
96
+ * 适配器取下一个账号用的入口。
97
+ *
98
+ * 核心在这里做轮转、冷却、可用性判断与刷新;本方法只多给适配器一件事:
99
+ * 一次请求内换过账号时,把试过的账号排除掉。
100
+ */
101
+ getEffectiveCredential(excludeIds?: ReadonlySet<string>, fetchFn?: typeof fetch): Promise<{
102
+ account: QoderPoolAccount;
103
+ credentials: QoderCredentials;
104
+ }>;
105
+ /**
106
+ * 一次额度读属于哪个账号,连同读它用的凭据。
107
+ *
108
+ * 写在这里而不是路由里,是因为它是线路形状的(同 step-code 的同名方法的理由):
109
+ * 快照要记在它描述的那一行名下,不会被一次轮转画到另一行名下。
110
+ */
111
+ getQuotaReadTarget(fetchFn?: typeof fetch): Promise<{
112
+ accountId: string;
113
+ region: QoderRegion;
114
+ credentials: QoderCredentials;
115
+ }>;
116
+ }
117
+ /** 状态应答里的号池切片。 */
118
+ export interface QoderPoolStatus {
119
+ accounts: QoderAccountSummary[];
120
+ activeAccountId?: string;
121
+ rotationStrategy: AccountRotationStrategy;
122
+ /** 本进程是否装上了号池。 */
123
+ poolInstalled: boolean;
124
+ }
125
+ /**
126
+ * 读状态应答的号池切片。
127
+ *
128
+ * 读不出来的号池不能带倒整张卡:连接那一半仍然值得渲染,只是账号列表是空的。
129
+ */
130
+ export declare function qoderPoolStatus(pool: QoderAccountPool | undefined): Promise<QoderPoolStatus>;
131
+ /**
132
+ * 把池状态装配成 \`QoderStatusDto\` 的号池切片(**唯一**装配它的地方,
133
+ * 理由同 step-code 的 \`stepCodePoolStatusSlice\`)。
134
+ */
135
+ export declare function qoderPoolStatusSlice(pool: QoderAccountPool | undefined): Promise<Pick<QoderStatusDto, 'accounts' | 'rotationStrategy' | 'activeAccountId'>>;
136
+ export { QODER_CLI_CREDENTIAL_SOURCE };
137
+ //# sourceMappingURL=account-pool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account-pool.d.ts","sourceRoot":"","sources":["../../../../src/host/qoder/account-pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,EACL,eAAe,EAGf,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EACd,MAAM,2BAA2B,CAAA;AAGlC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EACV,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,KAAK,EACV,sBAAsB,EACtB,qBAAqB,EACrB,WAAW,EACX,cAAc,EACf,MAAM,iCAAiC,CAAA;AAIxC,OAAO,EACL,2BAA2B,EAI3B,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAA;AAMzB,uCAAuC;AACvC,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB,CAAC,gBAAgB,CAAC;IAC1E,8BAA8B;IAC9B,MAAM,EAAE,WAAW,CAAA;IACnB,wCAAwC;IACxC,MAAM,EAAE,qBAAqB,CAAA;CAC9B;AAED,6BAA6B;AAC7B,MAAM,MAAM,mBAAmB,GAAG,sBAAsB,CAAA;AAExD,+CAA+C;AAC/C,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,qDAAqD;AACrD,eAAO,MAAM,2BAA2B,mBAAmB,CAAA;AAE3D;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAMnF;AAkCD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAoC7E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,GACjD,mBAAmB,GAAG,SAAS,CAWjC;AAMD,sCAAsC;AACtC,MAAM,WAAW,uBAAuB;IACtC,4DAA4D;IAC5D,OAAO,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAA;IACrD,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2CAA2C;IAC3C,eAAe,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;CACtC;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAM3F;AAED,qCAAqC;AACrC,qBAAa,gBAAiB,SAAQ,eAAe,CACnD,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,CACpB;gBACa,OAAO,GAAE,uBAA4B;IAuDjD;;;;;OAKG;IACG,oBAAoB,CACxB,OAAO,EAAE;QAAE,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;QAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,EACjF,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,CAAC;IAI5B;;;;;OAKG;IACG,sBAAsB,CAC1B,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,EAChC,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC;QAAE,OAAO,EAAE,gBAAgB,CAAC;QAAC,WAAW,EAAE,gBAAgB,CAAA;KAAE,CAAC;IAIxE;;;;;OAKG;IACG,kBAAkB,CAAC,OAAO,GAAE,OAAO,KAAa,GAAG,OAAO,CAAC;QAC/D,SAAS,EAAE,MAAM,CAAA;QACjB,MAAM,EAAE,WAAW,CAAA;QACnB,WAAW,EAAE,gBAAgB,CAAA;KAC9B,CAAC;CAgBH;AAED,kBAAkB;AAClB,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,mBAAmB,EAAE,CAAA;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,gBAAgB,EAAE,uBAAuB,CAAA;IACzC,kBAAkB;IAClB,aAAa,EAAE,OAAO,CAAA;CACvB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,gBAAgB,GAAG,SAAS,GACjC,OAAO,CAAC,eAAe,CAAC,CAY1B;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,gBAAgB,GAAG,SAAS,GACjC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,kBAAkB,GAAG,iBAAiB,CAAC,CAAC,CAOpF;AAED,OAAO,EAAE,2BAA2B,EAAE,CAAA"}