@rynfar/meridian 1.72.0 → 1.74.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 (177) hide show
  1. package/README.md +119 -107
  2. package/assets/banner.svg +18 -43
  3. package/assets/how-it-works.svg +40 -86
  4. package/assets/providers/README.md +10 -0
  5. package/assets/providers/antigravity.png +0 -0
  6. package/assets/providers/claude.png +0 -0
  7. package/dist/antigravity-clients/opencode.js +173 -0
  8. package/dist/antigravity-clients/pi.js +21 -0
  9. package/dist/antigravitySetup-35pd5xqn.js +191 -0
  10. package/dist/cli-1jstkdj9.js +30 -0
  11. package/dist/{cli-9e5cxp89.js → cli-2h3w5n6g.js} +163 -65
  12. package/dist/cli-3zwfvexc.js +56 -0
  13. package/dist/{cli-hxxy0m1z.js → cli-82e2m44k.js} +2 -1
  14. package/dist/cli-8sw5wr9j.js +136 -0
  15. package/dist/{cli-khhjyk04.js → cli-chsp880k.js} +214 -21
  16. package/dist/cli-dh0a1bw4.js +619 -0
  17. package/dist/cli-eehk3052.js +57 -0
  18. package/dist/{cli-ab7zkp1a.js → cli-fveyj34s.js} +32261 -18952
  19. package/dist/cli-grfp0s1j.js +330 -0
  20. package/dist/cli-qpfky8wy.js +133 -0
  21. package/dist/{cli-hj61zpt7.js → cli-wbsmhxcx.js} +26 -2
  22. package/dist/cli.js +111 -38
  23. package/dist/cliDashboard-c0dvkj4y.js +325 -0
  24. package/dist/configDir.d.ts +30 -0
  25. package/dist/configDir.d.ts.map +1 -0
  26. package/dist/organizationName-90f0atkn.js +29 -0
  27. package/dist/{pluginPage-f5gdmbxc.js → pluginPage-pp72d2j8.js} +1 -1
  28. package/dist/{profileCli-1eecbmgk.js → profileCli-1bfgc05h.js} +13 -3
  29. package/dist/{profilePage-mamej7kp.js → profilePage-vs319rvf.js} +252 -60
  30. package/dist/profileRename-4a4km6g8.js +22 -0
  31. package/dist/{profiles-wch9h234.js → profiles-0mp32ek9.js} +16 -3
  32. package/dist/proxy/adapterInstances.d.ts +1 -1
  33. package/dist/proxy/adapterInstances.d.ts.map +1 -1
  34. package/dist/proxy/adapters/claudecode.d.ts.map +1 -1
  35. package/dist/proxy/adapters/droid.d.ts.map +1 -1
  36. package/dist/proxy/auth.d.ts +2 -0
  37. package/dist/proxy/auth.d.ts.map +1 -1
  38. package/dist/proxy/authDiscovery.d.ts +52 -0
  39. package/dist/proxy/authDiscovery.d.ts.map +1 -0
  40. package/dist/proxy/backends/antigravity.d.ts +8 -0
  41. package/dist/proxy/backends/antigravity.d.ts.map +1 -0
  42. package/dist/proxy/backends/antigravityAttachments.d.ts +16 -0
  43. package/dist/proxy/backends/antigravityAttachments.d.ts.map +1 -0
  44. package/dist/proxy/backends/antigravityGrammar.d.ts +12 -0
  45. package/dist/proxy/backends/antigravityGrammar.d.ts.map +1 -0
  46. package/dist/proxy/backends/antigravityJobs.d.ts +19 -0
  47. package/dist/proxy/backends/antigravityJobs.d.ts.map +1 -0
  48. package/dist/proxy/backends/antigravityMedia.d.ts +9 -0
  49. package/dist/proxy/backends/antigravityMedia.d.ts.map +1 -0
  50. package/dist/proxy/backends/antigravityNative.d.ts +8 -0
  51. package/dist/proxy/backends/antigravityNative.d.ts.map +1 -0
  52. package/dist/proxy/backends/antigravityOpenai.d.ts +9 -0
  53. package/dist/proxy/backends/antigravityOpenai.d.ts.map +1 -0
  54. package/dist/proxy/backends/antigravityOpenaiMedia.d.ts +9 -0
  55. package/dist/proxy/backends/antigravityOpenaiMedia.d.ts.map +1 -0
  56. package/dist/proxy/backends/antigravityPlugins.d.ts +41 -0
  57. package/dist/proxy/backends/antigravityPlugins.d.ts.map +1 -0
  58. package/dist/proxy/backends/antigravityProbe.d.ts +16 -0
  59. package/dist/proxy/backends/antigravityProbe.d.ts.map +1 -0
  60. package/dist/proxy/backends/antigravityProcess.d.ts +4 -0
  61. package/dist/proxy/backends/antigravityProcess.d.ts.map +1 -0
  62. package/dist/proxy/backends/antigravityProtocol.d.ts +582 -0
  63. package/dist/proxy/backends/antigravityProtocol.d.ts.map +1 -0
  64. package/dist/proxy/backends/antigravityReplay.d.ts +41 -0
  65. package/dist/proxy/backends/antigravityReplay.d.ts.map +1 -0
  66. package/dist/proxy/backends/antigravityResponses.d.ts +35 -0
  67. package/dist/proxy/backends/antigravityResponses.d.ts.map +1 -0
  68. package/dist/proxy/backends/antigravityRuntime.d.ts +189 -0
  69. package/dist/proxy/backends/antigravityRuntime.d.ts.map +1 -0
  70. package/dist/proxy/backends/antigravitySchema.d.ts +10 -0
  71. package/dist/proxy/backends/antigravitySchema.d.ts.map +1 -0
  72. package/dist/proxy/backends/antigravitySessions.d.ts +28 -0
  73. package/dist/proxy/backends/antigravitySessions.d.ts.map +1 -0
  74. package/dist/proxy/backends/antigravityState.d.ts +22 -0
  75. package/dist/proxy/backends/antigravityState.d.ts.map +1 -0
  76. package/dist/proxy/backends/antigravityStops.d.ts +10 -0
  77. package/dist/proxy/backends/antigravityStops.d.ts.map +1 -0
  78. package/dist/proxy/backends/antigravityTokens.d.ts +14 -0
  79. package/dist/proxy/backends/antigravityTokens.d.ts.map +1 -0
  80. package/dist/proxy/backends/antigravityUrl.d.ts +7 -0
  81. package/dist/proxy/backends/antigravityUrl.d.ts.map +1 -0
  82. package/dist/proxy/backends/providerStatus.d.ts +15 -0
  83. package/dist/proxy/backends/providerStatus.d.ts.map +1 -0
  84. package/dist/proxy/credentialsMode.d.ts +77 -0
  85. package/dist/proxy/credentialsMode.d.ts.map +1 -0
  86. package/dist/proxy/design.d.ts.map +1 -1
  87. package/dist/proxy/followActive.d.ts +262 -0
  88. package/dist/proxy/followActive.d.ts.map +1 -0
  89. package/dist/proxy/limitDetection.d.ts +110 -0
  90. package/dist/proxy/limitDetection.d.ts.map +1 -0
  91. package/dist/proxy/models.d.ts.map +1 -1
  92. package/dist/proxy/oauthPlan.d.ts +63 -0
  93. package/dist/proxy/oauthPlan.d.ts.map +1 -0
  94. package/dist/proxy/oauthUsage.d.ts +65 -2
  95. package/dist/proxy/oauthUsage.d.ts.map +1 -1
  96. package/dist/proxy/openai.d.ts +6 -2
  97. package/dist/proxy/openai.d.ts.map +1 -1
  98. package/dist/proxy/organizationName.d.ts +71 -0
  99. package/dist/proxy/organizationName.d.ts.map +1 -0
  100. package/dist/proxy/passthroughEarlyStop.d.ts +10 -0
  101. package/dist/proxy/passthroughEarlyStop.d.ts.map +1 -1
  102. package/dist/proxy/planAllowance.d.ts +75 -0
  103. package/dist/proxy/planAllowance.d.ts.map +1 -0
  104. package/dist/proxy/probes.d.ts +85 -0
  105. package/dist/proxy/probes.d.ts.map +1 -0
  106. package/dist/proxy/profileCli.d.ts +53 -1
  107. package/dist/proxy/profileCli.d.ts.map +1 -1
  108. package/dist/proxy/profileHealth.d.ts +127 -0
  109. package/dist/proxy/profileHealth.d.ts.map +1 -0
  110. package/dist/proxy/profileRename.d.ts +83 -0
  111. package/dist/proxy/profileRename.d.ts.map +1 -0
  112. package/dist/proxy/profiles.d.ts +72 -6
  113. package/dist/proxy/profiles.d.ts.map +1 -1
  114. package/dist/proxy/query.d.ts +7 -0
  115. package/dist/proxy/query.d.ts.map +1 -1
  116. package/dist/proxy/routing.d.ts +59 -1
  117. package/dist/proxy/routing.d.ts.map +1 -1
  118. package/dist/proxy/sdkFeatures.d.ts +1 -1
  119. package/dist/proxy/sdkFeatures.d.ts.map +1 -1
  120. package/dist/proxy/server.d.ts.map +1 -1
  121. package/dist/proxy/session/fingerprint.d.ts +5 -0
  122. package/dist/proxy/session/fingerprint.d.ts.map +1 -1
  123. package/dist/proxy/session/lineage.d.ts.map +1 -1
  124. package/dist/proxy/setup.d.ts.map +1 -1
  125. package/dist/proxy/supervision.d.ts +41 -0
  126. package/dist/proxy/supervision.d.ts.map +1 -0
  127. package/dist/proxy/tokenRefresh.d.ts +38 -4
  128. package/dist/proxy/tokenRefresh.d.ts.map +1 -1
  129. package/dist/proxy/types.d.ts +32 -0
  130. package/dist/proxy/types.d.ts.map +1 -1
  131. package/dist/server.js +11 -7
  132. package/dist/settings.d.ts +83 -0
  133. package/dist/settings.d.ts.map +1 -0
  134. package/dist/{setup-ndmjpy23.js → setup-7fr49z92.js} +1 -1
  135. package/dist/statusProbe-9x9q261e.js +151 -0
  136. package/dist/telemetry/dashboard.d.ts.map +1 -1
  137. package/dist/telemetry/index.d.ts +20 -2
  138. package/dist/telemetry/index.d.ts.map +1 -1
  139. package/dist/telemetry/landing.d.ts +1 -1
  140. package/dist/telemetry/landing.d.ts.map +1 -1
  141. package/dist/telemetry/logStore.d.ts +11 -0
  142. package/dist/telemetry/logStore.d.ts.map +1 -1
  143. package/dist/telemetry/pricingStore.d.ts +2 -2
  144. package/dist/telemetry/pricingStore.d.ts.map +1 -1
  145. package/dist/telemetry/profileBar.d.ts +3 -3
  146. package/dist/telemetry/profileBar.d.ts.map +1 -1
  147. package/dist/telemetry/profileFacts.d.ts +17 -0
  148. package/dist/telemetry/profileFacts.d.ts.map +1 -0
  149. package/dist/telemetry/profileOrder.d.ts +68 -0
  150. package/dist/telemetry/profileOrder.d.ts.map +1 -0
  151. package/dist/telemetry/profilePage.d.ts.map +1 -1
  152. package/dist/telemetry/profileSort.d.ts +35 -0
  153. package/dist/telemetry/profileSort.d.ts.map +1 -0
  154. package/dist/telemetry/profileSpent.d.ts +68 -0
  155. package/dist/telemetry/profileSpent.d.ts.map +1 -0
  156. package/dist/telemetry/providerPage.d.ts +2 -0
  157. package/dist/telemetry/providerPage.d.ts.map +1 -0
  158. package/dist/telemetry/providerSetup.d.ts +5 -0
  159. package/dist/telemetry/providerSetup.d.ts.map +1 -0
  160. package/dist/telemetry/providerView.d.ts +45 -0
  161. package/dist/telemetry/providerView.d.ts.map +1 -0
  162. package/dist/telemetry/routeChain.d.ts +32 -0
  163. package/dist/telemetry/routeChain.d.ts.map +1 -0
  164. package/dist/telemetry/routes.d.ts.map +1 -1
  165. package/dist/telemetry/settingsPage.d.ts +1 -1
  166. package/dist/telemetry/settingsPage.d.ts.map +1 -1
  167. package/dist/telemetry/sqlite.d.ts.map +1 -1
  168. package/dist/telemetry/store.d.ts +6 -1
  169. package/dist/telemetry/store.d.ts.map +1 -1
  170. package/dist/telemetry/types.d.ts +132 -2
  171. package/dist/telemetry/types.d.ts.map +1 -1
  172. package/dist/{tokenRefresh-kzz08kea.js → tokenRefresh-eg9h83wd.js} +6 -1
  173. package/package.json +11 -4
  174. package/dist/cli-5jxyma6z.js +0 -277
  175. package/dist/cli-vj9cv18n.js +0 -38
  176. package/dist/proxy/settings.d.ts +0 -30
  177. package/dist/proxy/settings.d.ts.map +0 -1
@@ -0,0 +1,189 @@
1
+ import { AgPlugins } from "./antigravityPlugins";
2
+ import { AgNativeSessions, type AgNativeSnapshot } from "./antigravitySessions";
3
+ import { AgState } from "./antigravityState";
4
+ import { type ChildProcessWithoutNullStreams } from "node:child_process";
5
+ import { AgEventQueue, type AgRequest, type AgMessage, type AgCall, type AgResult } from "./antigravityProtocol";
6
+ import type { AntigravityOptions } from "../types";
7
+ type AgToolReply = AgResult & {
8
+ clientMessages?: AgMessage[];
9
+ };
10
+ export interface AgExchange {
11
+ requestId: string;
12
+ timestamp: number;
13
+ durationMs: number;
14
+ model: string;
15
+ status: number;
16
+ error?: string;
17
+ inputTokens: number;
18
+ outputTokens: number;
19
+ cacheReadTokens: number;
20
+ conversationId?: string;
21
+ continuation?: string;
22
+ }
23
+ export interface AgQuota {
24
+ fetchedAt?: number;
25
+ error?: string;
26
+ windows: Array<{
27
+ type: string;
28
+ group: string;
29
+ utilization: number;
30
+ resetsAt: number;
31
+ }>;
32
+ }
33
+ export declare class AntigravityRun {
34
+ readonly runtime: AntigravityRuntime;
35
+ readonly request: AgRequest;
36
+ private readonly restored?;
37
+ readonly id: `${string}-${string}-${string}-${string}-${string}`;
38
+ readonly queue: AgEventQueue;
39
+ readonly rpcSessions: Set<string>;
40
+ readonly contract: string;
41
+ history: AgMessage[];
42
+ busy: boolean;
43
+ delivered: AgCall[];
44
+ child?: ChildProcessWithoutNullStreams;
45
+ private workspace?;
46
+ conversationId?: string;
47
+ continuation: string;
48
+ private completedSnapshot;
49
+ private attachments?;
50
+ private readonly grammars;
51
+ private readonly attachmentAbort;
52
+ private stopped;
53
+ private terminal;
54
+ private idle;
55
+ private outputBytes;
56
+ readonly reusable: boolean;
57
+ private structuredText?;
58
+ private readonly toolValidators;
59
+ private readonly outputValidator?;
60
+ private exited;
61
+ private cleaning?;
62
+ private timer?;
63
+ private pendingTimer?;
64
+ private killTimer?;
65
+ private readonly pending;
66
+ private toolCalls;
67
+ private readonly rpcCalls;
68
+ private settledResolve;
69
+ readonly settled: Promise<void>;
70
+ constructor(runtime: AntigravityRuntime, request: AgRequest, restored?: AgNativeSnapshot | undefined);
71
+ private prompt;
72
+ start(): Promise<void>;
73
+ dispatchCall(id: string | number, name: string, input: Record<string, unknown>): Promise<AgToolReply>;
74
+ dispatchBatch(id: string | number, input: Record<string, unknown>): Promise<AgToolReply>;
75
+ call(name: string, input: Record<string, unknown>, grammarChecked?: boolean): Promise<AgToolReply>;
76
+ get active(): boolean;
77
+ get reclaimable(): boolean;
78
+ matches(request: AgRequest): boolean;
79
+ rememberCompleted(): void;
80
+ resume(request: AgRequest, signal?: AbortSignal): Promise<void>;
81
+ markDelivered(calls: AgCall[]): void;
82
+ toolBatch(first: AgCall): Promise<AgCall[]>;
83
+ accept(results: AgResult[], clientMessages?: AgMessage[]): Promise<void>;
84
+ stopAtSequence(): Promise<void>;
85
+ abort(error: Error, outcome?: "failed" | "completed" | "reclaimed" | "retired"): void;
86
+ private signal;
87
+ private stateFailure;
88
+ private cleanup;
89
+ private cleanupOnce;
90
+ }
91
+ export declare class AntigravityRuntime {
92
+ readonly options: AntigravityOptions;
93
+ readonly settling: Set<Promise<void>>;
94
+ readonly executable: string;
95
+ readonly turnTimeoutMs: number;
96
+ readonly pendingToolTimeoutMs: number;
97
+ readonly maxConcurrent: number;
98
+ readonly childEnv: NodeJS.ProcessEnv;
99
+ readonly plugins: AgPlugins;
100
+ readonly state?: AgState;
101
+ readonly nativeSessions?: AgNativeSessions;
102
+ restored: number;
103
+ stateError?: string;
104
+ readonly runs: Map<string, AntigravityRun>;
105
+ readonly toolOwners: Map<string, AntigravityRun>;
106
+ private readonly consumedTools;
107
+ readonly recoveringTools: Set<string>;
108
+ hasConsumedTool(id: string): boolean;
109
+ rememberConsumedTool(id: string): void;
110
+ private readonly interruptedContinuations;
111
+ private readonly interruptedJoins;
112
+ waitForInterruptedContinuation(request: AgRequest): Promise<void>;
113
+ recordInterruptedAfterJoin(request: AgRequest, settled: Promise<void>): Promise<void>;
114
+ private continuationKey;
115
+ canRetryContinuation(request: AgRequest): boolean;
116
+ rememberInterruptedContinuation(request: AgRequest): void;
117
+ forgetInterruptedContinuation(request: AgRequest): void;
118
+ mcpUrl: string;
119
+ draining: boolean;
120
+ cliVersion: string;
121
+ reused: number;
122
+ reclaimed: number;
123
+ completed: number;
124
+ failed: number;
125
+ preparing: number;
126
+ readonly nativeActivity: Array<{
127
+ runId: string;
128
+ name: string;
129
+ state: string;
130
+ timestamp: number;
131
+ }>;
132
+ recordNative(event: {
133
+ runId: string;
134
+ name: string;
135
+ state: string;
136
+ timestamp: number;
137
+ }): void;
138
+ readonly requests: AgExchange[];
139
+ private readonly activityBuckets;
140
+ readonly totals: {
141
+ requests: number;
142
+ errors: number;
143
+ inputTokens: number;
144
+ outputTokens: number;
145
+ cacheReadTokens: number;
146
+ };
147
+ private quota;
148
+ private quotaCheckedAt;
149
+ private quotaCheck?;
150
+ private statusRefresh?;
151
+ private statusCheckedAt;
152
+ private providerError?;
153
+ private readonly shutdown;
154
+ private server?;
155
+ private initialization?;
156
+ private models;
157
+ private checkedAt;
158
+ private verifying?;
159
+ private checking?;
160
+ private closing?;
161
+ constructor(options?: AntigravityOptions);
162
+ record(exchange: AgExchange, persist?: boolean): void;
163
+ activity(): {
164
+ requests: number;
165
+ errors: number;
166
+ inputTokens: number;
167
+ outputTokens: number;
168
+ cacheReadTokens: number;
169
+ };
170
+ providerFacts(): {
171
+ quota: AgQuota;
172
+ models: string[];
173
+ error: string | undefined;
174
+ loading: boolean;
175
+ };
176
+ accountQuota(): Promise<AgQuota>;
177
+ private accountRetryAt;
178
+ verifyAccount(): Promise<void>;
179
+ private probeFailed;
180
+ private verifyAccountOnce;
181
+ availableModels(): Promise<string[]>;
182
+ initialize(): Promise<void>;
183
+ create(request: AgRequest, signal?: AbortSignal): Promise<AntigravityRun>;
184
+ private handleMcp;
185
+ close(): Promise<void>;
186
+ private closeOnce;
187
+ }
188
+ export {};
189
+ //# sourceMappingURL=antigravityRuntime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"antigravityRuntime.d.ts","sourceRoot":"","sources":["../../../src/proxy/backends/antigravityRuntime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { type ValidateFunction } from "ajv";
2
+ /** Per-turn validators: no global schema cache, coercion, defaults or remote fetches. */
3
+ export declare class AgSchemaCompiler {
4
+ private readonly compilers;
5
+ compile(schema: Record<string, unknown>, label: string): ValidateFunction;
6
+ }
7
+ export declare function agSchemaError(validate: ValidateFunction, value: unknown): string | undefined;
8
+ /** Gemini's CLI transport accepts only string enums. Keep exact validation local. */
9
+ export declare function agUpstreamSchema(schema: Record<string, unknown>): Record<string, unknown>;
10
+ //# sourceMappingURL=antigravitySchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"antigravitySchema.d.ts","sourceRoot":"","sources":["../../../src/proxy/backends/antigravitySchema.ts"],"names":[],"mappings":"AAAA,OAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,KAAK,CAAA;AAMhD,yFAAyF;AACzF,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,gBAAgB;CAe1E;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAG5F;AAED,qFAAqF;AACrF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAYzF"}
@@ -0,0 +1,28 @@
1
+ import { z } from 'zod';
2
+ import type { AntigravityOptions } from '../types';
3
+ import { type AgRequest, type AgMessage } from './antigravityProtocol';
4
+ import type { AgState } from './antigravityState';
5
+ declare const snapshot: z.ZodObject<{
6
+ conversationId: z.ZodString;
7
+ workspace: z.ZodString;
8
+ count: z.ZodNumber;
9
+ }, z.core.$strip>;
10
+ export type AgNativeSnapshot = z.infer<typeof snapshot>;
11
+ /** Only completed, joined CLI processes enter this cache; claiming consumes the mapping. */
12
+ export declare class AgNativeSessions {
13
+ private readonly state;
14
+ private readonly options;
15
+ readonly directory: string;
16
+ private readonly active;
17
+ constructor(state: AgState, path: string, options: AntigravityOptions);
18
+ register(workspace: string, pid?: number): void;
19
+ private alive;
20
+ release(workspace: string): void;
21
+ private prune;
22
+ eligible(request: AgRequest): boolean;
23
+ private key;
24
+ claim(request: AgRequest): AgNativeSnapshot | undefined;
25
+ save(request: AgRequest, history: AgMessage[], value: AgNativeSnapshot): void;
26
+ }
27
+ export {};
28
+ //# sourceMappingURL=antigravitySessions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"antigravitySessions.d.ts","sourceRoot":"","sources":["../../../src/proxy/backends/antigravitySessions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAClD,OAAO,EAAwC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAC5G,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,QAAA,MAAM,QAAQ;;;;iBAA6G,CAAA;AAC3H,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAA;AAEvD,4FAA4F;AAC5F,qBAAa,gBAAgB;IAGf,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAyB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFnF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;gBACd,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAmB,OAAO,EAAE,kBAAkB;IAcvG,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAc;IAI7C,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,SAAS,EAAE,MAAM;IACzB,OAAO,CAAC,KAAK;IAQb,QAAQ,CAAC,OAAO,EAAE,SAAS;IAG3B,OAAO,CAAC,GAAG;IACX,KAAK,CAAC,OAAO,EAAE,SAAS,GAAG,gBAAgB,GAAG,SAAS;IAYvD,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,gBAAgB;CAGvE"}
@@ -0,0 +1,22 @@
1
+ /** Meridian-owned state only. Never opens agy's credentials or native transcripts. */
2
+ export declare class AgState {
3
+ private closed;
4
+ private connection?;
5
+ private unlock?;
6
+ private get db();
7
+ constructor(path: string);
8
+ private prune;
9
+ put(kind: string, id: string, scope: string, json: string, expires: number, maxEntries: number, maxBytes: number): void;
10
+ get(kind: string, id: string, scope: string): string | undefined;
11
+ take(kind: string, id: string, scope: string): string | undefined;
12
+ list(kind: string): string[];
13
+ records(kind: string): Array<{
14
+ id: string;
15
+ scope: string;
16
+ bytes: number;
17
+ expires: number;
18
+ }>;
19
+ delete(kind: string, id: string, scope: string): void;
20
+ close(): void;
21
+ }
22
+ //# sourceMappingURL=antigravityState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"antigravityState.d.ts","sourceRoot":"","sources":["../../../src/proxy/backends/antigravityState.ts"],"names":[],"mappings":"AAIA,sFAAsF;AACtF,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,UAAU,CAAC,CAAmB;IACtC,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,KAAK,EAAE,GAGb;gBACW,IAAI,EAAE,MAAM;IAmBxB,OAAO,CAAC,KAAK;IACb,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAehH,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIhE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAGjE,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAI5B,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAI3F,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAC9C,KAAK;CAUN"}
@@ -0,0 +1,10 @@
1
+ /** Match stops across CLI chunks without exposing a partial stop prefix. */
2
+ export declare class AgTextStops {
3
+ private readonly stops;
4
+ private pending;
5
+ matched?: string;
6
+ constructor(stops: string[]);
7
+ push(text: string): string;
8
+ flush(): string;
9
+ }
10
+ //# sourceMappingURL=antigravityStops.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"antigravityStops.d.ts","sourceRoot":"","sources":["../../../src/proxy/backends/antigravityStops.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,qBAAa,WAAW;IAGV,OAAO,CAAC,QAAQ,CAAC,KAAK;IAFlC,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;gBACa,KAAK,EAAE,MAAM,EAAE;IAC5C,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAmB1B,KAAK,IAAI,MAAM;CAChB"}
@@ -0,0 +1,14 @@
1
+ import { type AgRequest } from './antigravityProtocol';
2
+ /** Planning estimate only: agy exposes neither its tokenizer nor hidden harness context. */
3
+ export declare function estimateAgTokens(request: AgRequest): {
4
+ input_tokens: number;
5
+ estimated: boolean;
6
+ estimation: {
7
+ method: string;
8
+ image_tokens_per_attachment: number;
9
+ includes_cli_context: boolean;
10
+ exact_tokenizer_available: boolean;
11
+ excluded_unprocessed_media: number;
12
+ };
13
+ };
14
+ //# sourceMappingURL=antigravityTokens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"antigravityTokens.d.ts","sourceRoot":"","sources":["../../../src/proxy/backends/antigravityTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwD,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAE5G,4FAA4F;AAC5F,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS;;;;;;;;;;EAqBlD"}
@@ -0,0 +1,7 @@
1
+ export declare function publicAgAddress(address: string): boolean;
2
+ /** Resolve and pin every hop. Never send account/API credentials to attachment hosts. */
3
+ export declare function fetchAgImage(source: string, signal?: AbortSignal, redirects?: number): Promise<{
4
+ data: string;
5
+ media_type: 'image/png' | 'image/jpeg' | 'image/gif' | 'image/webp';
6
+ }>;
7
+ //# sourceMappingURL=antigravityUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"antigravityUrl.d.ts","sourceRoot":"","sources":["../../../src/proxy/backends/antigravityUrl.ts"],"names":[],"mappings":"AAQA,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED,yFAAyF;AACzF,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,SAAS,SAAI,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,WAAW,GAAG,YAAY,GAAG,WAAW,GAAG,YAAY,CAAA;CAAE,CAAC,CAiCtL"}
@@ -0,0 +1,15 @@
1
+ import type { ProviderUsage, ProviderSnapshot } from '../../telemetry/providerView';
2
+ /** Normalize provider facts without adding together unrelated quota percentages. */
3
+ export declare function claudeProvider(healthValue: unknown, summaryValue: unknown, quotaValue: unknown): ProviderUsage;
4
+ export declare function providerSnapshot(providers: ProviderUsage[]): ProviderSnapshot;
5
+ export declare function disabledProvider(id: 'claude' | 'antigravity'): ProviderUsage;
6
+ export { parseProviderSnapshot } from '../../telemetry/providerView';
7
+ /** Quota services must never stall navigation or hide current local activity. */
8
+ export declare class ClaudeProviderFacts {
9
+ private health;
10
+ private quota;
11
+ private checkedAt;
12
+ private refreshing?;
13
+ snapshot(read: (path: string) => Promise<unknown>, summary: unknown): ProviderUsage;
14
+ }
15
+ //# sourceMappingURL=providerStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerStatus.d.ts","sourceRoot":"","sources":["../../../src/proxy/backends/providerStatus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAQnF,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,GAAG,aAAa,CAQ9G;AACD,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAgD;AAC9H,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,GAAG,aAAa,GAAG,aAAa,CAE5E;AAED,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AAEpE,iFAAiF;AACjF,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,SAAS,CAAI;IACrB,OAAO,CAAC,UAAU,CAAC,CAAe;IAClC,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,aAAa;CAYpF"}
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Read-only credential mode — `MERIDIAN_CREDENTIALS_READONLY`.
3
+ *
4
+ * Lets a second Meridian instance run beside a production one against the
5
+ * SAME credential files without being able to corrupt them. When set, the
6
+ * instance never initiates a token refresh and never writes a credential; it
7
+ * re-reads credentials from disk so refreshes performed by the OTHER instance
8
+ * are picked up.
9
+ *
10
+ * The hazard this exists for: two instances holding the same OAuth refresh
11
+ * token. Meridian refreshes proactively on boot and on a 45s cadence. If
12
+ * Anthropic rotates the refresh token on use, whichever instance refreshes
13
+ * first invalidates the other's copy, and recovery is an interactive
14
+ * `claude login` per account.
15
+ *
16
+ * Sharing is not a choice the operator makes, which is why this is the only
17
+ * defence rather than one layer of several. `MERIDIAN_CONFIG_DIR` relocates
18
+ * `settings.json` and nothing else: `profiles.json` is a module-level constant
19
+ * in `profiles.ts`, so every instance on a machine reads the same profile
20
+ * list, pointing at the same `claudeConfigDir` credential directories. There
21
+ * is no supported way to give a second instance a different profile set, so
22
+ * any second instance holds the first one's real accounts from the moment it
23
+ * boots. This flag is what stops it writing to them.
24
+ *
25
+ * Env var rather than a settings key on purpose: settings are editable from
26
+ * the web UI, and switching this on for the production instance by accident
27
+ * would silently stop it refreshing its own tokens. The systemd unit is
28
+ * already where the two instances differ.
29
+ *
30
+ * Leaf module — no imports from server.ts or session/.
31
+ */
32
+ /**
33
+ * Whether this instance is forbidden from refreshing or writing credentials.
34
+ *
35
+ * Resolved per call rather than frozen at import time, matching
36
+ * `settings.ts`'s treatment of MERIDIAN_CONFIG_DIR: module-level credential
37
+ * stores are constructed at import, so a value captured then would be fixed
38
+ * before any test (or embedding host) could set it.
39
+ */
40
+ export declare function isCredentialsReadOnly(): boolean;
41
+ /**
42
+ * Report a refused credential write, loudly, and return false so the caller
43
+ * takes its existing write-failed path.
44
+ *
45
+ * Deliberately `console.error` and not `claudeLog`: the latter is gated behind
46
+ * OPENCODE_CLAUDE_PROVIDER_DEBUG, so in a normal deployment it prints nothing.
47
+ *
48
+ * Why failing LOUDLY beats failing safe here: this refusal is the backstop for
49
+ * a write path nobody thought of. Silently swallowing it would leave an
50
+ * operator believing the guarantee held while some future call site quietly
51
+ * did nothing — and the failure it is protecting against (a corrupted token
52
+ * file that a production instance depends on, costing an interactive
53
+ * `claude login` across every account, including borrowed ones) is expensive
54
+ * and manual to recover from. A noisy log that turns out to be benign costs a
55
+ * grep; a silent one costs the fleet. If this line ever appears, the correct
56
+ * response is to find the call site and gate it upstream of the store.
57
+ *
58
+ * @param operation short label for the call site (e.g. "oauth-refresh")
59
+ * @param target store identity — a path or keychain service, NEVER a value
60
+ */
61
+ export declare function refuseCredentialWrite(operation: string, target: string): false;
62
+ /**
63
+ * Announce the mode once at startup, unmistakably.
64
+ *
65
+ * An instance silently in read-only mode when you thought it was normal is a
66
+ * confusing bug — tokens quietly stop being refreshed. An instance loudly in
67
+ * it is self-documenting.
68
+ *
69
+ * Not gated on `silent`, unlike the rest of the startup output: MERIDIAN_SILENT
70
+ * suppresses routine chatter, and this is not routine — it is a non-default
71
+ * operating mode that changes what the process is allowed to do. One line,
72
+ * once, and only when the flag is actually set.
73
+ */
74
+ export declare function logCredentialsModeBanner(): void;
75
+ /** Reset the once-per-process banner — for testing only. */
76
+ export declare function resetCredentialsModeBanner(): void;
77
+ //# sourceMappingURL=credentialsMode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentialsMode.d.ts","sourceRoot":"","sources":["../../src/proxy/credentialsMode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAIH;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAE/C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAO9E;AAKD;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAQ/C;AAED,4DAA4D;AAC5D,wBAAgB,0BAA0B,IAAI,IAAI,CAEjD"}
@@ -1 +1 @@
1
- {"version":3,"file":"design.d.ts","sourceRoot":"","sources":["../../src/proxy/design.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design.d.ts","sourceRoot":"","sources":["../../src/proxy/design.ts"],"names":[],"mappings":"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"}