opencode-antigravity-auth-remix 1.1.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -10
- package/dist/src/constants.d.ts +1 -1
- package/dist/src/constants.d.ts.map +1 -1
- package/dist/src/constants.js +1 -1
- package/dist/src/constants.js.map +1 -1
- package/dist/src/plugin/core/streaming/transformer.d.ts +8 -2
- package/dist/src/plugin/core/streaming/transformer.d.ts.map +1 -1
- package/dist/src/plugin/core/streaming/transformer.js +27 -6
- package/dist/src/plugin/core/streaming/transformer.js.map +1 -1
- package/dist/src/plugin/count-tokens.d.ts +11 -0
- package/dist/src/plugin/count-tokens.d.ts.map +1 -0
- package/dist/src/plugin/count-tokens.js +57 -0
- package/dist/src/plugin/count-tokens.js.map +1 -0
- package/dist/src/plugin/request.d.ts.map +1 -1
- package/dist/src/plugin/request.js +58 -17
- package/dist/src/plugin/request.js.map +1 -1
- package/dist/src/plugin/search.d.ts +5 -0
- package/dist/src/plugin/search.d.ts.map +1 -1
- package/dist/src/plugin/search.js +33 -3
- package/dist/src/plugin/search.js.map +1 -1
- package/dist/src/plugin/stores/signature-store.d.ts +16 -0
- package/dist/src/plugin/stores/signature-store.d.ts.map +1 -1
- package/dist/src/plugin/stores/signature-store.js +24 -0
- package/dist/src/plugin/stores/signature-store.js.map +1 -1
- package/dist/src/plugin.d.ts.map +1 -1
- package/dist/src/plugin.js +30 -0
- package/dist/src/plugin.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -30,7 +30,8 @@ Enable Opencode to authenticate against **Antigravity** (Google's IDE) via OAuth
|
|
|
30
30
|
- **Auto Recovery** - Automatic session recovery from Claude tool_result_missing errors
|
|
31
31
|
- **Plugin Compatible** - Works alongside other OpenCode plugins (opencodesync, etc.)
|
|
32
32
|
- **generate_image Tool** - AI image generation with auto-save, WebP conversion, and 4K support (Stability varies)
|
|
33
|
-
- **google_search Tool** -
|
|
33
|
+
- **google_search Tool** - High-quality web search with structural citations and URL analysis.
|
|
34
|
+
- **count_tokens Tool** - Count tokens for any text using specified models.
|
|
34
35
|
|
|
35
36
|
## Installation
|
|
36
37
|
|
|
@@ -50,7 +51,7 @@ Install the opencode-antigravity-auth-remix plugin and add the Antigravity model
|
|
|
50
51
|
|
|
51
52
|
```json
|
|
52
53
|
{
|
|
53
|
-
"plugin": ["opencode-antigravity-auth-remix@1.
|
|
54
|
+
"plugin": ["opencode-antigravity-auth-remix@1.2.0"]
|
|
54
55
|
}
|
|
55
56
|
```
|
|
56
57
|
|
|
@@ -101,7 +102,7 @@ Copy this to `~/.config/opencode/opencode.json`:
|
|
|
101
102
|
```json
|
|
102
103
|
{
|
|
103
104
|
"$schema": "https://opencode.ai/config.json",
|
|
104
|
-
"plugin": ["opencode-antigravity-auth-remix@1.
|
|
105
|
+
"plugin": ["opencode-antigravity-auth-remix@1.2.0"],
|
|
105
106
|
"provider": {
|
|
106
107
|
"google": {
|
|
107
108
|
"models": {
|
|
@@ -253,9 +254,18 @@ AI image generation with automatic file saving and WebP conversion. Uses `gemini
|
|
|
253
254
|
- Generates WebP version (75% quality) alongside original
|
|
254
255
|
- 4K support via dynamic model configuration
|
|
255
256
|
|
|
256
|
-
### google_search
|
|
257
|
+
### google_search
|
|
257
258
|
|
|
258
|
-
|
|
259
|
+
High-quality web search and URL analysis with structural citations.
|
|
260
|
+
|
|
261
|
+
### count_tokens
|
|
262
|
+
|
|
263
|
+
Count the number of tokens in a given text string.
|
|
264
|
+
|
|
265
|
+
| Parameter | Type | Required | Default | Description |
|
|
266
|
+
|-----------|------|----------|---------|-------------|
|
|
267
|
+
| `text` | string | Yes | - | The text to count tokens for |
|
|
268
|
+
| `model` | string | No | "gemini-2.5-flash" | The model to use for counting |
|
|
259
269
|
|
|
260
270
|
## License
|
|
261
271
|
|
|
@@ -295,7 +305,8 @@ MIT
|
|
|
295
305
|
- **自动恢复** - 自动处理 Claude 的 `tool_result_missing` 错误并恢复会话
|
|
296
306
|
- **插件兼容性** - 可与其他 OpenCode 插件 (如 opencodesync 等) 同时运行
|
|
297
307
|
- **generate_image 工具** - AI 图像生成,支持自动保存、WebP 转换和 4K 输出 (稳定性视配额而定)
|
|
298
|
-
- **google_search 工具** -
|
|
308
|
+
- **google_search 工具** - 高质量网页搜索,支持结构化引用和 URL 分析。
|
|
309
|
+
- **count_tokens 工具** - 统计指定文本在特定模型下的 Token 消耗。
|
|
299
310
|
|
|
300
311
|
## 安装步骤
|
|
301
312
|
|
|
@@ -313,7 +324,7 @@ MIT
|
|
|
313
324
|
|
|
314
325
|
```json
|
|
315
326
|
{
|
|
316
|
-
"plugin": ["opencode-antigravity-auth-remix@1.
|
|
327
|
+
"plugin": ["opencode-antigravity-auth-remix@1.2.0"]
|
|
317
328
|
}
|
|
318
329
|
```
|
|
319
330
|
|
|
@@ -364,7 +375,7 @@ MIT
|
|
|
364
375
|
```json
|
|
365
376
|
{
|
|
366
377
|
"$schema": "https://opencode.ai/config.json",
|
|
367
|
-
"plugin": ["opencode-antigravity-auth-remix@1.
|
|
378
|
+
"plugin": ["opencode-antigravity-auth-remix@1.2.0"],
|
|
368
379
|
"provider": {
|
|
369
380
|
"google": {
|
|
370
381
|
"models": {
|
|
@@ -516,9 +527,18 @@ opencode run "你好" --model=google/gemini-2.5-flash
|
|
|
516
527
|
- 同时生成 WebP 版本 (75% 质量) 以节省空间
|
|
517
528
|
- 支持动态配置 4K (HD) 高清输出
|
|
518
529
|
|
|
519
|
-
### google_search (搜索工具
|
|
530
|
+
### google_search (搜索工具)
|
|
520
531
|
|
|
521
|
-
|
|
532
|
+
高质量网页搜索和 URL 分析,支持结构化引用来源。
|
|
533
|
+
|
|
534
|
+
### count_tokens (Token 统计工具)
|
|
535
|
+
|
|
536
|
+
统计指定文本在特定模型下的 Token 消耗。
|
|
537
|
+
|
|
538
|
+
| 参数 | 类型 | 是否必填 | 默认值 | 描述 |
|
|
539
|
+
|-----------|------|----------|---------|-------------|
|
|
540
|
+
| `text` | string | 是 | - | 需要统计的文本 |
|
|
541
|
+
| `model` | string | 否 | "gemini-2.5-flash" | 统计所使用的模型 |
|
|
522
542
|
|
|
523
543
|
## 开源协议
|
|
524
544
|
|
package/dist/src/constants.d.ts
CHANGED
|
@@ -97,7 +97,7 @@ export declare const ANTIGRAVITY_SYSTEM_INSTRUCTION = "<identity>\nYou are Antig
|
|
|
97
97
|
/**
|
|
98
98
|
* Model used for Google Search tool execution.
|
|
99
99
|
*/
|
|
100
|
-
export declare const SEARCH_MODEL = "gemini-2.
|
|
100
|
+
export declare const SEARCH_MODEL = "gemini-2.5-flash";
|
|
101
101
|
/**
|
|
102
102
|
* Token budget for fast search (default when thinking=false).
|
|
103
103
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,qBAAqB,8EAA8E,CAAC;AAEjH;;GAEG;AACH,eAAO,MAAM,yBAAyB,wCAAwC,CAAC;AAE/E;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAM/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,0CAA0C,CAAC;AAEhF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,sDAAsD,CAAC;AAC9F,eAAO,MAAM,6BAA6B,yDAAyD,CAAC;AACpG,eAAO,MAAM,yBAAyB,wCAAwC,CAAC;AAE/E;;;GAGG;AACH,eAAO,MAAM,8BAA8B,+JAIjC,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,0BAA0B,+JAI7B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,oBAAoB,wCAA4B,CAAC;AAE9D;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,wCAA4B,CAAC;AAE7D;;GAEG;AACH,eAAO,MAAM,8BAA8B,sBAAsB,CAAC;AAElE,eAAO,MAAM,mBAAmB;;;;CAItB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,YAAY,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,uBAAuB,WAAW,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,SAE0B,CAAC;AAM5D;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B,4zBAWiD,CAAC;AAE7F;;;GAGG;AACH,eAAO,MAAM,yBAAyB,kDAAwC,CAAC;AAE/E,eAAO,MAAM,6BAA6B,iBAAiB,CAAC;AAC5D,eAAO,MAAM,oCAAoC,mCAAmC,CAAC;AAMrF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,mmNA+EpB,CAAC;AAMxB;;GAEG;AACH,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,qBAAqB,8EAA8E,CAAC;AAEjH;;GAEG;AACH,eAAO,MAAM,yBAAyB,wCAAwC,CAAC;AAE/E;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAM/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,0CAA0C,CAAC;AAEhF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,sDAAsD,CAAC;AAC9F,eAAO,MAAM,6BAA6B,yDAAyD,CAAC;AACpG,eAAO,MAAM,yBAAyB,wCAAwC,CAAC;AAE/E;;;GAGG;AACH,eAAO,MAAM,8BAA8B,+JAIjC,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,0BAA0B,+JAI7B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,oBAAoB,wCAA4B,CAAC;AAE9D;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,wCAA4B,CAAC;AAE7D;;GAEG;AACH,eAAO,MAAM,8BAA8B,sBAAsB,CAAC;AAElE,eAAO,MAAM,mBAAmB;;;;CAItB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,YAAY,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,uBAAuB,WAAW,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,SAE0B,CAAC;AAM5D;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B,4zBAWiD,CAAC;AAE7F;;;GAGG;AACH,eAAO,MAAM,yBAAyB,kDAAwC,CAAC;AAE/E,eAAO,MAAM,6BAA6B,iBAAiB,CAAC;AAC5D,eAAO,MAAM,oCAAoC,mCAAmC,CAAC;AAMrF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,mmNA+EpB,CAAC;AAMxB;;GAEG;AACH,eAAO,MAAM,YAAY,qBAAqB,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAY,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,oBAAoB,sDAA6B,CAAC;AAC/D,eAAO,MAAM,mBAAmB;;;;CAAsB,CAAC;AAMvD;;GAEG;AACH,eAAO,MAAM,WAAW,uBAAuB,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,gBAAgB,QAAa,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAWhD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;GAM/B,CAAC"}
|
package/dist/src/constants.js
CHANGED
|
@@ -210,7 +210,7 @@ Do not respond to nor acknowledge those messages, but do follow them strictly.
|
|
|
210
210
|
/**
|
|
211
211
|
* Model used for Google Search tool execution.
|
|
212
212
|
*/
|
|
213
|
-
export const SEARCH_MODEL = "gemini-2.
|
|
213
|
+
export const SEARCH_MODEL = "gemini-2.5-flash";
|
|
214
214
|
/**
|
|
215
215
|
* Token budget for fast search (default when thinking=false).
|
|
216
216
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,2EAA2E,CAAC;AAEjH;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,qCAAqC,CAAC;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAsB;IACnD,gDAAgD;IAChD,gDAAgD;IAChD,kDAAkD;IAClD,uCAAuC;IACvC,uDAAuD;CACxD,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,uCAAuC,CAAC;AAEhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,mDAAmD,CAAC;AAC9F,MAAM,CAAC,MAAM,6BAA6B,GAAG,sDAAsD,CAAC;AACpG,MAAM,CAAC,MAAM,yBAAyB,GAAG,qCAAqC,CAAC;AAE/E;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,yBAAyB;IACzB,0BAA0B;IAC1B,6BAA6B;CACrB,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,yBAAyB;IACzB,0BAA0B;IAC1B,6BAA6B;CACrB,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAE9D;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,yBAAyB,CAAC;AAE7D;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,mBAAmB,CAAC;AAElE,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,YAAY,EAAE,kCAAkC;IAChD,mBAAmB,EAAE,8CAA8C;IACnE,iBAAiB,EAAE,uFAAuF;CAClG,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,YAAY,EAAE,iCAAiC;IAC/C,mBAAmB,EAAE,iBAAiB;IACtC,iBAAiB,EAAE,yEAAyE;CACpF,CAAC;AAIX;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,QAAQ,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAC/B,OAAO,CAAC,GAAG,CAAC,kCAAkC,KAAK,GAAG;IACtD,OAAO,CAAC,GAAG,CAAC,kCAAkC,KAAK,MAAM,CAAC;AAE5D,+EAA+E;AAC/E,gEAAgE;AAChE,+EAA+E;AAE/E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;;;;;;;;;4FAW8C,CAAC;AAE7F;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,qCAAqC,CAAC;AAE/E,MAAM,CAAC,MAAM,6BAA6B,GAAG,cAAc,CAAC;AAC5D,MAAM,CAAC,MAAM,oCAAoC,GAAG,gCAAgC,CAAC;AAErF,+EAA+E;AAC/E,mEAAmE;AACnE,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA+EvB,CAAC;AAExB,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,13 @@ export declare function transformStreamingPayload(payload: string, transformThin
|
|
|
4
4
|
export declare function deduplicateThinkingText(response: unknown, sentBuffer: ThoughtBuffer, displayedThinkingHashes?: Set<string>): unknown;
|
|
5
5
|
export declare function transformSseLine(line: string, signatureStore: SignatureStore, thoughtBuffer: ThoughtBuffer, sentThinkingBuffer: ThoughtBuffer, callbacks: StreamingCallbacks, options: StreamingOptions, debugState: {
|
|
6
6
|
injected: boolean;
|
|
7
|
+
}, toolUseSignatureStore?: {
|
|
8
|
+
set: (sessionKey: string, toolId: string, signature: string) => void;
|
|
7
9
|
}): string;
|
|
8
|
-
export declare function cacheThinkingSignaturesFromResponse(response: unknown, signatureSessionKey: string, signatureStore: SignatureStore, thoughtBuffer: ThoughtBuffer, onCacheSignature?: (sessionKey: string, text: string, signature: string) => void
|
|
9
|
-
|
|
10
|
+
export declare function cacheThinkingSignaturesFromResponse(response: unknown, signatureSessionKey: string, signatureStore: SignatureStore, thoughtBuffer: ThoughtBuffer, onCacheSignature?: (sessionKey: string, text: string, signature: string) => void, toolUseSignatureStore?: {
|
|
11
|
+
set: (sessionKey: string, toolId: string, signature: string) => void;
|
|
12
|
+
}): void;
|
|
13
|
+
export declare function createStreamingTransformer(signatureStore: SignatureStore, callbacks: StreamingCallbacks, options?: StreamingOptions, toolUseSignatureStore?: {
|
|
14
|
+
set: (sessionKey: string, toolId: string, signature: string) => void;
|
|
15
|
+
}): TransformStream<Uint8Array, Uint8Array>;
|
|
10
16
|
//# sourceMappingURL=transformer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../../../../../src/plugin/core/streaming/transformer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACd,MAAM,SAAS,CAAC;AAcjB,wBAAgB,mBAAmB,IAAI,aAAa,CAOnD;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,GACtD,MAAM,CAuBR;AAED,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,aAAa,EACzB,uBAAuB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACpC,OAAO,CAkGT;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,kBAAkB,EAAE,aAAa,EACjC,SAAS,EAAE,kBAAkB,EAC7B,OAAO,EAAE,gBAAgB,EACzB,UAAU,EAAE;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../../../../../src/plugin/core/streaming/transformer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACd,MAAM,SAAS,CAAC;AAcjB,wBAAgB,mBAAmB,IAAI,aAAa,CAOnD;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,GACtD,MAAM,CAuBR;AAED,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,aAAa,EACzB,uBAAuB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACpC,OAAO,CAkGT;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,kBAAkB,EAAE,aAAa,EACjC,SAAS,EAAE,kBAAkB,EAC7B,OAAO,EAAE,gBAAgB,EACzB,UAAU,EAAE;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,EACjC,qBAAqB,CAAC,EAAE;IAAE,GAAG,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GAC/F,MAAM,CAyCR;AAED,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,OAAO,EACjB,mBAAmB,EAAE,MAAM,EAC3B,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,EAChF,qBAAqB,CAAC,EAAE;IAAE,GAAG,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GAC/F,IAAI,CAyEN;AAED,wBAAgB,0BAA0B,CACxC,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,kBAAkB,EAC7B,OAAO,GAAE,gBAAqB,EAC9B,qBAAqB,CAAC,EAAE;IAAE,GAAG,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GAC/F,eAAe,CAAC,UAAU,EAAE,UAAU,CAAC,CA+CzC"}
|
|
@@ -124,7 +124,7 @@ export function deduplicateThinkingText(response, sentBuffer, displayedThinkingH
|
|
|
124
124
|
}
|
|
125
125
|
return response;
|
|
126
126
|
}
|
|
127
|
-
export function transformSseLine(line, signatureStore, thoughtBuffer, sentThinkingBuffer, callbacks, options, debugState) {
|
|
127
|
+
export function transformSseLine(line, signatureStore, thoughtBuffer, sentThinkingBuffer, callbacks, options, debugState, toolUseSignatureStore) {
|
|
128
128
|
if (!line.startsWith('data:')) {
|
|
129
129
|
return line;
|
|
130
130
|
}
|
|
@@ -136,7 +136,7 @@ export function transformSseLine(line, signatureStore, thoughtBuffer, sentThinki
|
|
|
136
136
|
const parsed = JSON.parse(json);
|
|
137
137
|
if (parsed.response !== undefined) {
|
|
138
138
|
if (options.cacheSignatures && options.signatureSessionKey) {
|
|
139
|
-
cacheThinkingSignaturesFromResponse(parsed.response, options.signatureSessionKey, signatureStore, thoughtBuffer, callbacks.onCacheSignature);
|
|
139
|
+
cacheThinkingSignaturesFromResponse(parsed.response, options.signatureSessionKey, signatureStore, thoughtBuffer, callbacks.onCacheSignature, toolUseSignatureStore);
|
|
140
140
|
}
|
|
141
141
|
let response = deduplicateThinkingText(parsed.response, sentThinkingBuffer, options.displayedThinkingHashes);
|
|
142
142
|
if (options.debugText && callbacks.onInjectDebug && !debugState.injected) {
|
|
@@ -152,7 +152,7 @@ export function transformSseLine(line, signatureStore, thoughtBuffer, sentThinki
|
|
|
152
152
|
catch (_) { }
|
|
153
153
|
return line;
|
|
154
154
|
}
|
|
155
|
-
export function cacheThinkingSignaturesFromResponse(response, signatureSessionKey, signatureStore, thoughtBuffer, onCacheSignature) {
|
|
155
|
+
export function cacheThinkingSignaturesFromResponse(response, signatureSessionKey, signatureStore, thoughtBuffer, onCacheSignature, toolUseSignatureStore) {
|
|
156
156
|
if (!response || typeof response !== 'object')
|
|
157
157
|
return;
|
|
158
158
|
const resp = response;
|
|
@@ -164,6 +164,7 @@ export function cacheThinkingSignaturesFromResponse(response, signatureSessionKe
|
|
|
164
164
|
const content = cand.content;
|
|
165
165
|
if (!Array.isArray(content.parts))
|
|
166
166
|
return;
|
|
167
|
+
let lastSignature;
|
|
167
168
|
content.parts.forEach((part) => {
|
|
168
169
|
const p = part;
|
|
169
170
|
if (p.thought === true || p.type === 'thinking') {
|
|
@@ -177,15 +178,27 @@ export function cacheThinkingSignaturesFromResponse(response, signatureSessionKe
|
|
|
177
178
|
const fullText = thoughtBuffer.get(index) ?? '';
|
|
178
179
|
if (fullText) {
|
|
179
180
|
const signature = p.thoughtSignature;
|
|
181
|
+
lastSignature = signature;
|
|
180
182
|
onCacheSignature?.(signatureSessionKey, fullText, signature);
|
|
181
183
|
signatureStore.set(signatureSessionKey, { text: fullText, signature });
|
|
182
184
|
}
|
|
183
185
|
}
|
|
186
|
+
// Catch tool_use and associate with last known signature in this candidate
|
|
187
|
+
if (toolUseSignatureStore && lastSignature) {
|
|
188
|
+
const toolUse = p.functionCall || p.tool_use || p.toolUse;
|
|
189
|
+
if (toolUse && typeof toolUse === 'object') {
|
|
190
|
+
const toolId = toolUse.id;
|
|
191
|
+
if (toolId) {
|
|
192
|
+
toolUseSignatureStore.set(signatureSessionKey, toolId, lastSignature);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
184
196
|
});
|
|
185
197
|
});
|
|
186
198
|
}
|
|
187
199
|
if (Array.isArray(resp.content)) {
|
|
188
200
|
let thinkingText = '';
|
|
201
|
+
let lastSignature;
|
|
189
202
|
resp.content.forEach((block) => {
|
|
190
203
|
const b = block;
|
|
191
204
|
if (b?.type === 'thinking') {
|
|
@@ -193,13 +206,21 @@ export function cacheThinkingSignaturesFromResponse(response, signatureSessionKe
|
|
|
193
206
|
}
|
|
194
207
|
if (b?.signature && thinkingText) {
|
|
195
208
|
const signature = b.signature;
|
|
209
|
+
lastSignature = signature;
|
|
196
210
|
onCacheSignature?.(signatureSessionKey, thinkingText, signature);
|
|
197
211
|
signatureStore.set(signatureSessionKey, { text: thinkingText, signature });
|
|
198
212
|
}
|
|
213
|
+
// Catch tool_use in message format
|
|
214
|
+
if (toolUseSignatureStore && lastSignature && b?.type === 'tool_use') {
|
|
215
|
+
const toolId = b.id;
|
|
216
|
+
if (toolId) {
|
|
217
|
+
toolUseSignatureStore.set(signatureSessionKey, toolId, lastSignature);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
199
220
|
});
|
|
200
221
|
}
|
|
201
222
|
}
|
|
202
|
-
export function createStreamingTransformer(signatureStore, callbacks, options = {}) {
|
|
223
|
+
export function createStreamingTransformer(signatureStore, callbacks, options = {}, toolUseSignatureStore) {
|
|
203
224
|
const decoder = new TextDecoder();
|
|
204
225
|
const encoder = new TextEncoder();
|
|
205
226
|
let buffer = '';
|
|
@@ -212,14 +233,14 @@ export function createStreamingTransformer(signatureStore, callbacks, options =
|
|
|
212
233
|
const lines = buffer.split('\n');
|
|
213
234
|
buffer = lines.pop() || '';
|
|
214
235
|
for (const line of lines) {
|
|
215
|
-
const transformedLine = transformSseLine(line, signatureStore, thoughtBuffer, sentThinkingBuffer, callbacks, options, debugState);
|
|
236
|
+
const transformedLine = transformSseLine(line, signatureStore, thoughtBuffer, sentThinkingBuffer, callbacks, options, debugState, toolUseSignatureStore);
|
|
216
237
|
controller.enqueue(encoder.encode(transformedLine + '\n'));
|
|
217
238
|
}
|
|
218
239
|
},
|
|
219
240
|
flush(controller) {
|
|
220
241
|
buffer += decoder.decode();
|
|
221
242
|
if (buffer) {
|
|
222
|
-
const transformedLine = transformSseLine(buffer, signatureStore, thoughtBuffer, sentThinkingBuffer, callbacks, options, debugState);
|
|
243
|
+
const transformedLine = transformSseLine(buffer, signatureStore, thoughtBuffer, sentThinkingBuffer, callbacks, options, debugState, toolUseSignatureStore);
|
|
223
244
|
controller.enqueue(encoder.encode(transformedLine));
|
|
224
245
|
}
|
|
225
246
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformer.js","sourceRoot":"","sources":["../../../../../src/plugin/core/streaming/transformer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"transformer.js","sourceRoot":"","sources":["../../../../../src/plugin/core/streaming/transformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface CountTokensArgs {
|
|
2
|
+
text: string;
|
|
3
|
+
model?: string;
|
|
4
|
+
}
|
|
5
|
+
export interface CountTokensResponse {
|
|
6
|
+
totalTokens: number;
|
|
7
|
+
billableTokens?: number;
|
|
8
|
+
cachedTokens?: number;
|
|
9
|
+
}
|
|
10
|
+
export declare function executeCountTokens(args: CountTokensArgs, accessToken: string, projectId: string, endpoint: string): Promise<string>;
|
|
11
|
+
//# sourceMappingURL=count-tokens.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"count-tokens.d.ts","sourceRoot":"","sources":["../../../src/plugin/count-tokens.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,eAAe,EACrB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CA2DjB"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { generateRequestId } from "./request-helpers";
|
|
2
|
+
import { createLogger } from "./logger";
|
|
3
|
+
import { CODE_ASSIST_HEADERS, SEARCH_MODEL } from "../constants";
|
|
4
|
+
const log = createLogger("count-tokens");
|
|
5
|
+
export async function executeCountTokens(args, accessToken, projectId, endpoint) {
|
|
6
|
+
const { text, model = SEARCH_MODEL } = args;
|
|
7
|
+
const requestPayload = {
|
|
8
|
+
contents: [
|
|
9
|
+
{
|
|
10
|
+
role: "user",
|
|
11
|
+
parts: [{ text }],
|
|
12
|
+
},
|
|
13
|
+
],
|
|
14
|
+
};
|
|
15
|
+
const wrappedBody = {
|
|
16
|
+
project: projectId,
|
|
17
|
+
model: model,
|
|
18
|
+
requestId: generateRequestId(),
|
|
19
|
+
request: {
|
|
20
|
+
...requestPayload,
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
const url = `${endpoint}/v1internal:countTokens`;
|
|
24
|
+
try {
|
|
25
|
+
log.debug("Attempting count tokens", { endpoint, url, model });
|
|
26
|
+
const response = await fetch(url, {
|
|
27
|
+
method: "POST",
|
|
28
|
+
headers: {
|
|
29
|
+
...CODE_ASSIST_HEADERS,
|
|
30
|
+
Authorization: `Bearer ${accessToken}`,
|
|
31
|
+
"Content-Type": "application/json",
|
|
32
|
+
},
|
|
33
|
+
body: JSON.stringify(wrappedBody),
|
|
34
|
+
});
|
|
35
|
+
if (!response.ok) {
|
|
36
|
+
const errorText = await response.text();
|
|
37
|
+
log.debug("Count tokens failed", { status: response.status, error: errorText });
|
|
38
|
+
return `Error counting tokens: ${errorText}`;
|
|
39
|
+
}
|
|
40
|
+
const data = (await response.json());
|
|
41
|
+
const totalTokens = data.totalTokens ?? 0;
|
|
42
|
+
let result = `### Token Count\n\n- **Total Tokens**: ${totalTokens}`;
|
|
43
|
+
if (data.billableTokens !== undefined) {
|
|
44
|
+
result += `\n- **Billable Tokens**: ${data.billableTokens}`;
|
|
45
|
+
}
|
|
46
|
+
if (data.cachedTokens !== undefined) {
|
|
47
|
+
result += `\n- **Cached Tokens**: ${data.cachedTokens}`;
|
|
48
|
+
}
|
|
49
|
+
return result;
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
53
|
+
log.error("Count tokens error", { error: message });
|
|
54
|
+
return `Error: ${message}`;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=count-tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"count-tokens.js","sourceRoot":"","sources":["../../../src/plugin/count-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,GAAG,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;AAazC,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAqB,EACrB,WAAmB,EACnB,SAAiB,EACjB,QAAgB;IAEhB,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,YAAY,EAAE,GAAG,IAAI,CAAC;IAE5C,MAAM,cAAc,GAAG;QACrB,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;aAClB;SACF;KACF,CAAC;IAEF,MAAM,WAAW,GAAG;QAClB,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,iBAAiB,EAAE;QAC9B,OAAO,EAAE;YACP,GAAG,cAAc;SAClB;KACF,CAAC;IAEF,MAAM,GAAG,GAAG,GAAG,QAAQ,yBAAyB,CAAC;IAEjD,IAAI,CAAC;QACH,GAAG,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QAE/D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,GAAG,mBAAmB;gBACtB,aAAa,EAAE,UAAU,WAAW,EAAE;gBACtC,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;SAClC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,GAAG,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;YAChF,OAAO,0BAA0B,SAAS,EAAE,CAAC;QAC/C,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAQ,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QAE1C,IAAI,MAAM,GAAG,0CAA0C,WAAW,EAAE,CAAC;QACrE,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,IAAI,4BAA4B,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9D,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,0BAA0B,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1D,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,GAAG,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACpD,OAAO,UAAU,OAAO,EAAE,CAAC;IAC7B,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../src/plugin/request.ts"],"names":[],"mappings":"AACA,OAAO,EAOL,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,SAAS,CAAC;AAoDjB,iBAAS,wBAAwB,CAC/B,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,EACd,eAAe,CAAC,EAAE,MAAM,EACxB,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CASR;AAgBD,iBAAS,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,iBAAS,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAoBxD;AAED,iBAAS,mCAAmC,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,MAAM,CASpE;AAED,iBAAS,mCAAmC,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,MAAM,CAYpE;AAED,iBAAS,sBAAsB,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAuC3F;AAYD,iBAAS,iBAAiB,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQrF;AA8GD,iBAAS,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAE/C;AAED,iBAAS,oBAAoB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAMhD;AAED,iBAAS,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CA4BjE;AAED,iBAAS,qBAAqB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAcjD;AAED,iBAAS,qCAAqC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,mBAAmB,EAAE,MAAM,GAAG,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../src/plugin/request.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import crypto from "node:crypto";
|
|
|
2
2
|
import { ANTIGRAVITY_HEADERS, GEMINI_CLI_HEADERS, ANTIGRAVITY_ENDPOINT, GEMINI_CLI_ENDPOINT, EMPTY_SCHEMA_PLACEHOLDER_NAME, EMPTY_SCHEMA_PLACEHOLDER_DESCRIPTION, } from "../constants";
|
|
3
3
|
import { cacheSignature, getCachedSignature } from "./cache";
|
|
4
4
|
import { createStreamingTransformer, transformSseLine, transformStreamingPayload, } from "./core/streaming";
|
|
5
|
-
import { defaultSignatureStore } from "./stores/signature-store";
|
|
5
|
+
import { defaultSignatureStore, toolUseSignatureStore } from "./stores/signature-store";
|
|
6
6
|
import { DEBUG_MESSAGE_PREFIX, isDebugEnabled, logAntigravityDebugResponse, } from "./debug";
|
|
7
7
|
import { createLogger } from "./logger";
|
|
8
8
|
import { cleanJSONSchemaForAntigravity, DEFAULT_THINKING_BUDGET, deepFilterThinkingBlocks, extractThinkingConfig, extractVariantThinkingConfig, extractUsageFromSsePayload, extractUsageMetadata, fixToolResponseGrouping, validateAndFixClaudeToolPairing, applyToolPairingFixes, injectParameterSignatures, injectToolHardeningInstruction, isThinkingCapableModel, normalizeThinkingConfig, parseAntigravityApiBody, resolveThinkingConfig, rewriteAntigravityPreviewAccessError, transformThinkingParts, } from "./request-helpers";
|
|
@@ -231,11 +231,11 @@ function ensureThoughtSignature(part, sessionId) {
|
|
|
231
231
|
return part;
|
|
232
232
|
}
|
|
233
233
|
const text = typeof part.text === "string" ? part.text : typeof part.thinking === "string" ? part.thinking : "";
|
|
234
|
-
|
|
235
|
-
return part;
|
|
236
|
-
}
|
|
234
|
+
// Try to find signature for thinking block
|
|
237
235
|
if (part.thought === true) {
|
|
238
236
|
if (!part.thoughtSignature) {
|
|
237
|
+
// First try to find if any tool_use in the same content block has a signature
|
|
238
|
+
// (This is a simplified approach, usually we need more context to find the right tool ID)
|
|
239
239
|
const cached = getCachedSignature(sessionId, text);
|
|
240
240
|
if (cached) {
|
|
241
241
|
return { ...part, thoughtSignature: cached };
|
|
@@ -277,19 +277,46 @@ function ensureThinkingBeforeToolUseInContents(contents, signatureSessionKey) {
|
|
|
277
277
|
if (!hasToolUse) {
|
|
278
278
|
return content;
|
|
279
279
|
}
|
|
280
|
+
// Try to find a signature via tool ID if available
|
|
281
|
+
let toolIdSignature;
|
|
282
|
+
for (const p of parts) {
|
|
283
|
+
const toolUse = p.functionCall || p.tool_use || p.toolUse;
|
|
284
|
+
if (toolUse && typeof toolUse === "object" && toolUse.id) {
|
|
285
|
+
const sig = toolUseSignatureStore.get(signatureSessionKey, toolUse.id);
|
|
286
|
+
if (sig) {
|
|
287
|
+
toolIdSignature = sig;
|
|
288
|
+
break;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
}
|
|
280
292
|
const thinkingParts = parts.filter(isGeminiThinkingPart).map((p) => ensureThoughtSignature(p, signatureSessionKey));
|
|
281
293
|
const otherParts = parts.filter((p) => !isGeminiThinkingPart(p));
|
|
282
|
-
|
|
283
|
-
if (
|
|
284
|
-
|
|
294
|
+
// If we have thinking parts, ensure they have signatures (either from text cache or tool ID)
|
|
295
|
+
if (thinkingParts.length > 0) {
|
|
296
|
+
const updatedThinkingParts = thinkingParts.map(p => {
|
|
297
|
+
if (toolIdSignature) {
|
|
298
|
+
if (p.thought === true && !p.thoughtSignature)
|
|
299
|
+
return { ...p, thoughtSignature: toolIdSignature };
|
|
300
|
+
if ((p.type === "thinking" || p.type === "reasoning") && !p.signature)
|
|
301
|
+
return { ...p, signature: toolIdSignature };
|
|
302
|
+
}
|
|
303
|
+
return p;
|
|
304
|
+
});
|
|
305
|
+
const hasSignedThinking = updatedThinkingParts.some(hasSignedThinkingPart);
|
|
306
|
+
if (hasSignedThinking) {
|
|
307
|
+
return { ...content, parts: [...updatedThinkingParts, ...otherParts] };
|
|
308
|
+
}
|
|
285
309
|
}
|
|
286
|
-
|
|
310
|
+
// If no thinking parts but has tool use, we MUST inject thinking with signature
|
|
311
|
+
const lastThinking = toolIdSignature
|
|
312
|
+
? { text: "...", signature: toolIdSignature } // We don't have the text here, but the signature is more important
|
|
313
|
+
: defaultSignatureStore.get(signatureSessionKey);
|
|
287
314
|
if (!lastThinking) {
|
|
288
315
|
return content;
|
|
289
316
|
}
|
|
290
317
|
const injected = {
|
|
291
318
|
thought: true,
|
|
292
|
-
text: lastThinking.text,
|
|
319
|
+
text: lastThinking.text || "...",
|
|
293
320
|
thoughtSignature: lastThinking.signature,
|
|
294
321
|
};
|
|
295
322
|
return { ...content, parts: [injected, ...otherParts] };
|
|
@@ -360,25 +387,39 @@ function ensureThinkingBeforeToolUseInMessages(messages, signatureSessionKey) {
|
|
|
360
387
|
return message;
|
|
361
388
|
}
|
|
362
389
|
const blocks = message.content;
|
|
363
|
-
const
|
|
364
|
-
if (!
|
|
390
|
+
const toolUseBlock = blocks.find((b) => b && typeof b === "object" && (b.type === "tool_use" || b.type === "tool_result"));
|
|
391
|
+
if (!toolUseBlock) {
|
|
365
392
|
return message;
|
|
366
393
|
}
|
|
394
|
+
// Try to find a signature via tool ID if available
|
|
395
|
+
let toolIdSignature;
|
|
396
|
+
if (toolUseBlock.id) {
|
|
397
|
+
toolIdSignature = toolUseSignatureStore.get(signatureSessionKey, toolUseBlock.id);
|
|
398
|
+
}
|
|
367
399
|
const thinkingBlocks = blocks
|
|
368
400
|
.filter((b) => b && typeof b === "object" && (b.type === "thinking" || b.type === "redacted_thinking"))
|
|
369
401
|
.map((b) => ensureMessageThinkingSignature(b, signatureSessionKey));
|
|
370
402
|
const otherBlocks = blocks.filter((b) => !(b && typeof b === "object" && (b.type === "thinking" || b.type === "redacted_thinking")));
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
403
|
+
if (thinkingBlocks.length > 0) {
|
|
404
|
+
const updatedThinkingBlocks = thinkingBlocks.map(b => {
|
|
405
|
+
if (toolIdSignature && !b.signature)
|
|
406
|
+
return { ...b, signature: toolIdSignature };
|
|
407
|
+
return b;
|
|
408
|
+
});
|
|
409
|
+
const hasSignedThinking = updatedThinkingBlocks.some((b) => typeof b.signature === "string" && b.signature.length >= MIN_SIGNATURE_LENGTH);
|
|
410
|
+
if (hasSignedThinking) {
|
|
411
|
+
return { ...message, content: [...updatedThinkingBlocks, ...otherBlocks] };
|
|
412
|
+
}
|
|
374
413
|
}
|
|
375
|
-
const lastThinking =
|
|
414
|
+
const lastThinking = toolIdSignature
|
|
415
|
+
? { text: "...", signature: toolIdSignature }
|
|
416
|
+
: defaultSignatureStore.get(signatureSessionKey);
|
|
376
417
|
if (!lastThinking) {
|
|
377
418
|
return message;
|
|
378
419
|
}
|
|
379
420
|
const injected = {
|
|
380
421
|
type: "thinking",
|
|
381
|
-
thinking: lastThinking.text,
|
|
422
|
+
thinking: lastThinking.text || "...",
|
|
382
423
|
signature: lastThinking.signature,
|
|
383
424
|
};
|
|
384
425
|
return { ...message, content: [injected, ...otherBlocks] };
|
|
@@ -1188,7 +1229,7 @@ export async function transformAntigravityResponse(response, streaming, debugCon
|
|
|
1188
1229
|
debugText,
|
|
1189
1230
|
cacheSignatures,
|
|
1190
1231
|
displayedThinkingHashes: effectiveModel && isGemini3Model(effectiveModel) ? sessionDisplayedThinkingHashes : undefined,
|
|
1191
|
-
});
|
|
1232
|
+
}, toolUseSignatureStore);
|
|
1192
1233
|
return new Response(response.body.pipeThrough(streamingTransformer), {
|
|
1193
1234
|
status: response.status,
|
|
1194
1235
|
statusText: response.statusText,
|