@anthonyhaussman/opencode-agy-auth 1.0.9 → 1.0.11-alpha.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 +1 -1
- package/dist/index.js +983 -40
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -170,7 +170,7 @@ function createAgyActivityRequestId() {
|
|
|
170
170
|
import os from "os";
|
|
171
171
|
|
|
172
172
|
// src/sdk/agy-cli-version.ts
|
|
173
|
-
var AGY_CLI_VERSION = "1.0.
|
|
173
|
+
var AGY_CLI_VERSION = "1.0.10";
|
|
174
174
|
|
|
175
175
|
// src/sdk/user-agent.ts
|
|
176
176
|
var cachedUserAgent = null;
|
|
@@ -14660,6 +14660,904 @@ function buildTrajectoryAnalyticsBody(cascadeId = randomUUID(), platform2 = "DAR
|
|
|
14660
14660
|
// src/sdk/request/prepare.ts
|
|
14661
14661
|
import { randomUUID as randomUUID3 } from "crypto";
|
|
14662
14662
|
|
|
14663
|
+
// models.json
|
|
14664
|
+
var models_default = {
|
|
14665
|
+
models: {
|
|
14666
|
+
tab_jump_flash_lite_preview: {
|
|
14667
|
+
maxTokens: 16384,
|
|
14668
|
+
maxOutputTokens: 4096,
|
|
14669
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
14670
|
+
quotaInfo: {
|
|
14671
|
+
remainingFraction: 1
|
|
14672
|
+
},
|
|
14673
|
+
model: "MODEL_PLACEHOLDER_M28",
|
|
14674
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
14675
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
14676
|
+
supportsCumulativeContext: true,
|
|
14677
|
+
tabJumpPrintLineRange: true,
|
|
14678
|
+
supportsEstimateTokenCounter: true,
|
|
14679
|
+
addCursorToFindReplaceTarget: true,
|
|
14680
|
+
toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
|
|
14681
|
+
requiresLeadInGeneration: true,
|
|
14682
|
+
requiresNoXmlToolExamples: true
|
|
14683
|
+
},
|
|
14684
|
+
"gemini-3.1-pro-high": {
|
|
14685
|
+
displayName: "Gemini 3.1 Pro (High)",
|
|
14686
|
+
supportsImages: true,
|
|
14687
|
+
supportsThinking: true,
|
|
14688
|
+
thinkingBudget: 10001,
|
|
14689
|
+
minThinkingBudget: 128,
|
|
14690
|
+
recommended: true,
|
|
14691
|
+
maxTokens: 1048576,
|
|
14692
|
+
maxOutputTokens: 65535,
|
|
14693
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
14694
|
+
quotaInfo: {
|
|
14695
|
+
remainingFraction: 1,
|
|
14696
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
14697
|
+
},
|
|
14698
|
+
model: "MODEL_PLACEHOLDER_M37",
|
|
14699
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
14700
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
14701
|
+
supportsVideo: true,
|
|
14702
|
+
tagTitle: "New",
|
|
14703
|
+
supportedMimeTypes: {
|
|
14704
|
+
"audio/webm;codecs=opus": true,
|
|
14705
|
+
"application/x-python-code": true,
|
|
14706
|
+
"text/xml": true,
|
|
14707
|
+
"text/x-python": true,
|
|
14708
|
+
"text/html": true,
|
|
14709
|
+
"application/x-ipynb+json": true,
|
|
14710
|
+
"video/text/timestamp": true,
|
|
14711
|
+
"text/markdown": true,
|
|
14712
|
+
"text/x-python-script": true,
|
|
14713
|
+
"video/jpeg2000": true,
|
|
14714
|
+
"image/jpeg": true,
|
|
14715
|
+
"image/png": true,
|
|
14716
|
+
"image/heic": true,
|
|
14717
|
+
"text/plain": true,
|
|
14718
|
+
"application/x-javascript": true,
|
|
14719
|
+
"application/json": true,
|
|
14720
|
+
"application/pdf": true,
|
|
14721
|
+
"text/javascript": true,
|
|
14722
|
+
"image/webp": true,
|
|
14723
|
+
"application/x-typescript": true,
|
|
14724
|
+
"text/x-typescript": true,
|
|
14725
|
+
"text/rtf": true,
|
|
14726
|
+
"video/webm": true,
|
|
14727
|
+
"video/audio/wav": true,
|
|
14728
|
+
"video/audio/s16le": true,
|
|
14729
|
+
"text/csv": true,
|
|
14730
|
+
"video/mp4": true,
|
|
14731
|
+
"video/videoframe/jpeg2000": true,
|
|
14732
|
+
"image/heif": true,
|
|
14733
|
+
"text/css": true,
|
|
14734
|
+
"application/rtf": true
|
|
14735
|
+
},
|
|
14736
|
+
modelExperiments: {
|
|
14737
|
+
experiments: {
|
|
14738
|
+
"cascade-include-ephemeral-message": {
|
|
14739
|
+
stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
|
|
14740
|
+
},
|
|
14741
|
+
template__system_prompts__communication_style: {
|
|
14742
|
+
stringValue: "- Keep your responses concise.\n- Provide a summary of your work when you end your turn.\n- Format your responses in github-style markdown.\n- If you're unsure about the user's intent, ask for clarification rather than making assumptions.\n- You MUST create clickable links for all files and code symbols (classes, types, functions, structs). Use github style markdown links with the `file://` scheme (e.g., [filename](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n\nCRITICAL INSTRUCTION 1: You may have access to a variety of tools at your disposal. Some tools may be for a specific task such as 'view_file' (for viewing contents of a file). Others may be very broadly applicable such as the ability to run a command on a terminal. Always prioritize using the most specific tool you can for the task at hand. Here are some rules: (a) NEVER run cat inside a bash command to create a new file or append to an existing file. (b) ALWAYS use grep_search instead of running grep inside a bash command unless absolutely needed. (c) DO NOT use ls for listing, cat for viewing, grep for finding, sed for replacing.\nCRITICAL INSTRUCTION 2: Before making tool calls T, think and explicitly list out any related tools for the task at hand. You can only execute a set of tools T if all other tools in the list are either more generic or cannot be used for the task at hand. ALWAYS START your thought with recalling critical instructions 1 and 2. In particular, the format for the start of your thought block must be '...94>thought\\nCRITICAL INSTRUCTION 1: ...\\nCRITICAL INSTRUCTION 2: ...'."
|
|
14743
|
+
},
|
|
14744
|
+
template__system_prompts__identity: {
|
|
14745
|
+
stringValue: "You are Antigravity, a powerful agentic AI coding assistant designed by the Google DeepMind team working on Advanced Agentic Coding.\nYou are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.\nThe USER will send you requests, which you must always prioritize addressing. User requests are enclosed within <USER_REQUEST> tags. Along with each USER request, we will attach additional metadata about their current state, such as what files they have open and where their cursor is.\nThis information may or may not be relevant to the coding task, it is up for you to decide."
|
|
14746
|
+
},
|
|
14747
|
+
template__system_prompts__planning_more_artifacts: {
|
|
14748
|
+
stringValue: "When in planning mode, you will work with three special artifacts.\n\n# Tasks\nPath: {{ArtifactDirectoryPath}}/task.md\n\n**Purpose**: A TODO list to organize your work during execution. Create this artifact after receiving user approval on your implementation plan. Break down complex tasks into component-level items and track progress as a living document.\n\n**Format**:\n```markdown\n- `[ ]` uncompleted tasks\n- `[/]` in progress tasks (custom notation)\n- `[x]` completed tasks\n- Use indented lists for sub-items\n```\n\n**Updating task.md**: Mark items as `[/]` when starting work on them, and `[x]` when completed. Update task.md as you make progress through your checklist.\n\n# Implementation Plan\nPath: {{ArtifactDirectoryPath}}/implementation_plan.md\n\n**Purpose**: A detailed design document to present your technical implementation plan to the user for feedback and approval.\nAfter reading the document, the user should understand the key technical details of your plan, and be able to make an informed decision on whether to approve it.\n\n**Format**: Use the following format, omitting any irrelevant sections.\n```markdown\n# [Goal Description]\n\nProvide a brief description of the problem, any background context, and what the change accomplishes.\n\n## User Review Required\n\nDocument anything that requires user review or feedback, for example, breaking changes or significant design decisions. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Open Questions\n\nAny clarifying or design questions for the user that will impact the implementation plan. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Proposed Changes\n\nGroup files by component (e.g., package, feature area, dependency layer) and order logically (dependencies first). Separate components with horizontal rules for visual clarity.\n\n### [Component Name]\n\nSummary of what will change in this component, separated by files. For specific files, Use [NEW] and [DELETE] to demarcate new and deleted files, for example:\n\n#### [MODIFY] [file basename](file:///absolute/path/to/modifiedfile)\n#### [NEW] [file basename](file:///absolute/path/to/newfile)\n#### [DELETE] [file basename](file:///absolute/path/to/deletedfile)\n\n## Verification Plan\n\nSummary of how you will verify that your changes have the desired effects.\n\n### Automated Tests\n- The commands of any automated tests you'll run.\n\n### Manual Verification\n- Asking the user to deploy to staging and testing, verifying UI changes on an iOS app etc.\n```\n\n# Walkthrough\nPath: {{ArtifactDirectoryPath}}/walkthrough.md\n\n**Purpose**: After completing work, summarize what you accomplished. Update an existing walkthrough for related follow-up work rather than creating a new one.\n\n**Document**:\n- Changes made\n- What was tested\n- Validation results\n\nEmbed screenshots and recordings to visually demonstrate UI changes and user flows.\n"
|
|
14749
|
+
},
|
|
14750
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
14751
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SINGLE_PROMPT",\n "max_token_limit": "128000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
14752
|
+
}
|
|
14753
|
+
}
|
|
14754
|
+
}
|
|
14755
|
+
},
|
|
14756
|
+
"gemini-2.5-flash": {
|
|
14757
|
+
displayName: "Gemini 3.1 Flash Lite",
|
|
14758
|
+
maxTokens: 1048576,
|
|
14759
|
+
maxOutputTokens: 65535,
|
|
14760
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
14761
|
+
quotaInfo: {
|
|
14762
|
+
remainingFraction: 1,
|
|
14763
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
14764
|
+
},
|
|
14765
|
+
model: "MODEL_GOOGLE_GEMINI_2_5_FLASH",
|
|
14766
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
14767
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
14768
|
+
modelExperiments: {
|
|
14769
|
+
experiments: {
|
|
14770
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
14771
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SINGLE_PROMPT",\n "max_token_limit": "128000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
14772
|
+
}
|
|
14773
|
+
}
|
|
14774
|
+
}
|
|
14775
|
+
},
|
|
14776
|
+
"claude-opus-4-6-thinking": {
|
|
14777
|
+
displayName: "Claude Opus 4.6 (Thinking)",
|
|
14778
|
+
supportsImages: true,
|
|
14779
|
+
supportsThinking: true,
|
|
14780
|
+
thinkingBudget: 1024,
|
|
14781
|
+
recommended: true,
|
|
14782
|
+
maxTokens: 25e4,
|
|
14783
|
+
maxOutputTokens: 64e3,
|
|
14784
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
14785
|
+
quotaInfo: {
|
|
14786
|
+
remainingFraction: 0.6,
|
|
14787
|
+
resetTime: "2026-05-29T19:43:59Z"
|
|
14788
|
+
},
|
|
14789
|
+
model: "MODEL_PLACEHOLDER_M26",
|
|
14790
|
+
apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
|
|
14791
|
+
modelProvider: "MODEL_PROVIDER_ANTHROPIC",
|
|
14792
|
+
supportedMimeTypes: {
|
|
14793
|
+
"image/webp": true,
|
|
14794
|
+
"video/jpeg2000": true,
|
|
14795
|
+
"video/videoframe/jpeg2000": true,
|
|
14796
|
+
"image/heic": true,
|
|
14797
|
+
"image/heif": true,
|
|
14798
|
+
"image/jpeg": true,
|
|
14799
|
+
"image/png": true
|
|
14800
|
+
},
|
|
14801
|
+
modelExperiments: {
|
|
14802
|
+
experiments: {
|
|
14803
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
14804
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_UNSPECIFIED",\n "max_token_limit": "160000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
14805
|
+
},
|
|
14806
|
+
template__system_prompts__planning_more_artifacts: {
|
|
14807
|
+
stringValue: "When in planning mode, you will work with three special artifacts.\n\n# Tasks\nPath: {{ArtifactDirectoryPath}}/task.md\n\n**Purpose**: A TODO list to organize your work during execution. Create this artifact after receiving user approval on your implementation plan. Break down complex tasks into component-level items and track progress as a living document.\n\n**Format**:\n```markdown\n- `[ ]` uncompleted tasks\n- `[/]` in progress tasks (custom notation)\n- `[x]` completed tasks\n- Use indented lists for sub-items\n```\n\n**Updating task.md**: Mark items as `[/]` when starting work on them, and `[x]` when completed. Update task.md as you make progress through your checklist.\n\n# Implementation Plan\nPath: {{ArtifactDirectoryPath}}/implementation_plan.md\n\n**Purpose**: A detailed design document to present your technical implementation plan to the user for feedback and approval.\nAfter reading the document, the user should understand the key technical details of your plan, and be able to make an informed decision on whether to approve it.\n\n**Format**: Use the following format, omitting any irrelevant sections.\n```markdown\n# [Goal Description]\n\nProvide a brief description of the problem, any background context, and what the change accomplishes.\n\n## User Review Required\n\nDocument anything that requires user review or feedback, for example, breaking changes or significant design decisions. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Open Questions\n\nAny clarifying or design questions for the user that will impact the implementation plan. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Proposed Changes\n\nGroup files by component (e.g., package, feature area, dependency layer) and order logically (dependencies first). Separate components with horizontal rules for visual clarity.\n\n### [Component Name]\n\nSummary of what will change in this component, separated by files. For specific files, Use [NEW] and [DELETE] to demarcate new and deleted files, for example:\n\n#### [MODIFY] [file basename](file:///absolute/path/to/modifiedfile)\n#### [NEW] [file basename](file:///absolute/path/to/newfile)\n#### [DELETE] [file basename](file:///absolute/path/to/deletedfile)\n\n## Verification Plan\n\nSummary of how you will verify that your changes have the desired effects.\n\n### Automated Tests\n- The commands of any automated tests you'll run.\n\n### Manual Verification\n- Asking the user to deploy to staging and testing, verifying UI changes on an iOS app etc.\n```\n\n# Walkthrough\nPath: {{ArtifactDirectoryPath}}/walkthrough.md\n\n**Purpose**: After completing work, summarize what you accomplished. Update an existing walkthrough for related follow-up work rather than creating a new one.\n\n**Document**:\n- Changes made\n- What was tested\n- Validation results\n\nEmbed screenshots and recordings to visually demonstrate UI changes and user flows.\n"
|
|
14808
|
+
}
|
|
14809
|
+
}
|
|
14810
|
+
},
|
|
14811
|
+
vertexModelId: "claude-opus-4-6@default"
|
|
14812
|
+
},
|
|
14813
|
+
"gemini-2.5-flash-thinking": {
|
|
14814
|
+
displayName: "Gemini 3.1 Flash Lite",
|
|
14815
|
+
maxTokens: 1048576,
|
|
14816
|
+
maxOutputTokens: 65535,
|
|
14817
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
14818
|
+
quotaInfo: {
|
|
14819
|
+
remainingFraction: 1,
|
|
14820
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
14821
|
+
},
|
|
14822
|
+
model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_THINKING",
|
|
14823
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
14824
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
14825
|
+
modelExperiments: {
|
|
14826
|
+
experiments: {
|
|
14827
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
14828
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SINGLE_PROMPT",\n "max_token_limit": "128000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
14829
|
+
}
|
|
14830
|
+
}
|
|
14831
|
+
}
|
|
14832
|
+
},
|
|
14833
|
+
"gemini-2.5-pro": {
|
|
14834
|
+
displayName: "Gemini 2.5 Pro",
|
|
14835
|
+
supportsImages: true,
|
|
14836
|
+
supportsThinking: true,
|
|
14837
|
+
thinkingBudget: 1024,
|
|
14838
|
+
minThinkingBudget: 128,
|
|
14839
|
+
recommended: true,
|
|
14840
|
+
maxTokens: 1048576,
|
|
14841
|
+
maxOutputTokens: 65535,
|
|
14842
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
14843
|
+
quotaInfo: {
|
|
14844
|
+
remainingFraction: 1,
|
|
14845
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
14846
|
+
},
|
|
14847
|
+
model: "MODEL_GOOGLE_GEMINI_2_5_PRO",
|
|
14848
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
14849
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
14850
|
+
supportedMimeTypes: {
|
|
14851
|
+
"video/audio/wav": true,
|
|
14852
|
+
"image/heic": true,
|
|
14853
|
+
"text/html": true,
|
|
14854
|
+
"application/x-python-code": true,
|
|
14855
|
+
"image/heif": true,
|
|
14856
|
+
"text/xml": true,
|
|
14857
|
+
"image/webp": true,
|
|
14858
|
+
"video/jpeg2000": true,
|
|
14859
|
+
"application/pdf": true,
|
|
14860
|
+
"text/csv": true,
|
|
14861
|
+
"image/jpeg": true,
|
|
14862
|
+
"text/markdown": true,
|
|
14863
|
+
"text/css": true,
|
|
14864
|
+
"audio/webm;codecs=opus": true,
|
|
14865
|
+
"application/json": true,
|
|
14866
|
+
"text/x-python-script": true,
|
|
14867
|
+
"video/audio/s16le": true,
|
|
14868
|
+
"text/javascript": true,
|
|
14869
|
+
"text/x-typescript": true,
|
|
14870
|
+
"text/plain": true,
|
|
14871
|
+
"application/x-typescript": true,
|
|
14872
|
+
"application/x-ipynb+json": true,
|
|
14873
|
+
"text/rtf": true,
|
|
14874
|
+
"video/text/timestamp": true,
|
|
14875
|
+
"video/webm": true,
|
|
14876
|
+
"text/x-python": true,
|
|
14877
|
+
"video/videoframe/jpeg2000": true,
|
|
14878
|
+
"application/x-javascript": true,
|
|
14879
|
+
"application/rtf": true,
|
|
14880
|
+
"video/mp4": true,
|
|
14881
|
+
"image/png": true
|
|
14882
|
+
},
|
|
14883
|
+
requiresImageOutputOutsideFunctionResponses: true,
|
|
14884
|
+
modelExperiments: {
|
|
14885
|
+
experiments: {
|
|
14886
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
14887
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SINGLE_PROMPT",\n "max_token_limit": "128000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
14888
|
+
}
|
|
14889
|
+
}
|
|
14890
|
+
}
|
|
14891
|
+
},
|
|
14892
|
+
"gemini-3.1-flash-image": {
|
|
14893
|
+
displayName: "Gemini 3.1 Flash Image",
|
|
14894
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
14895
|
+
quotaInfo: {
|
|
14896
|
+
remainingFraction: 1,
|
|
14897
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
14898
|
+
},
|
|
14899
|
+
model: "MODEL_PLACEHOLDER_M21",
|
|
14900
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
14901
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE"
|
|
14902
|
+
},
|
|
14903
|
+
"gemini-pro-agent": {
|
|
14904
|
+
displayName: "Gemini 3.1 Pro (High)",
|
|
14905
|
+
supportsImages: true,
|
|
14906
|
+
supportsThinking: true,
|
|
14907
|
+
thinkingBudget: 10001,
|
|
14908
|
+
minThinkingBudget: 128,
|
|
14909
|
+
recommended: true,
|
|
14910
|
+
maxTokens: 1048576,
|
|
14911
|
+
maxOutputTokens: 65535,
|
|
14912
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
14913
|
+
quotaInfo: {
|
|
14914
|
+
remainingFraction: 1,
|
|
14915
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
14916
|
+
},
|
|
14917
|
+
model: "MODEL_PLACEHOLDER_M16",
|
|
14918
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
14919
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
14920
|
+
supportsVideo: true,
|
|
14921
|
+
supportedMimeTypes: {
|
|
14922
|
+
"image/png": true,
|
|
14923
|
+
"image/heic": true,
|
|
14924
|
+
"text/plain": true,
|
|
14925
|
+
"video/mp4": true,
|
|
14926
|
+
"text/css": true,
|
|
14927
|
+
"text/rtf": true,
|
|
14928
|
+
"text/javascript": true,
|
|
14929
|
+
"audio/webm;codecs=opus": true,
|
|
14930
|
+
"application/x-typescript": true,
|
|
14931
|
+
"video/jpeg2000": true,
|
|
14932
|
+
"video/videoframe/jpeg2000": true,
|
|
14933
|
+
"application/rtf": true,
|
|
14934
|
+
"text/xml": true,
|
|
14935
|
+
"video/text/timestamp": true,
|
|
14936
|
+
"application/x-python-code": true,
|
|
14937
|
+
"text/markdown": true,
|
|
14938
|
+
"text/x-python": true,
|
|
14939
|
+
"image/webp": true,
|
|
14940
|
+
"application/x-javascript": true,
|
|
14941
|
+
"text/x-python-script": true,
|
|
14942
|
+
"application/json": true,
|
|
14943
|
+
"text/html": true,
|
|
14944
|
+
"video/webm": true,
|
|
14945
|
+
"video/audio/s16le": true,
|
|
14946
|
+
"application/x-ipynb+json": true,
|
|
14947
|
+
"image/jpeg": true,
|
|
14948
|
+
"text/x-typescript": true,
|
|
14949
|
+
"text/csv": true,
|
|
14950
|
+
"video/audio/wav": true,
|
|
14951
|
+
"image/heif": true,
|
|
14952
|
+
"application/pdf": true
|
|
14953
|
+
},
|
|
14954
|
+
modelExperiments: {
|
|
14955
|
+
experiments: {
|
|
14956
|
+
template__system_prompts__communication_style: {
|
|
14957
|
+
stringValue: "- Keep your responses concise.\n- Provide a summary of your work when you end your turn.\n- Format your responses in github-style markdown.\n- If you're unsure about the user's intent, ask for clarification rather than making assumptions.\n- You MUST create clickable links for all files and code symbols (classes, types, functions, structs). Use github style markdown links with the `file://` scheme (e.g., [filename](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n\nCRITICAL INSTRUCTION 1: You may have access to a variety of tools at your disposal. Some tools may be for a specific task such as 'view_file' (for viewing contents of a file). Others may be very broadly applicable such as the ability to run a command on a terminal. Always prioritize using the most specific tool you can for the task at hand. Here are some rules: (a) NEVER run cat inside a bash command to create a new file or append to an existing file. (b) ALWAYS use grep_search instead of running grep inside a bash command unless absolutely needed. (c) DO NOT use ls for listing, cat for viewing, grep for finding, sed for replacing.\nCRITICAL INSTRUCTION 2: Before making tool calls T, think and explicitly list out any related tools for the task at hand. You can only execute a set of tools T if all other tools in the list are either more generic or cannot be used for the task at hand. ALWAYS START your thought with recalling critical instructions 1 and 2. In particular, the format for the start of your thought block must be '...94>thought\\nCRITICAL INSTRUCTION 1: ...\\nCRITICAL INSTRUCTION 2: ...'."
|
|
14958
|
+
},
|
|
14959
|
+
template__system_prompts__identity: {
|
|
14960
|
+
stringValue: "You are Antigravity, a powerful agentic AI coding assistant designed by the Google DeepMind team working on Advanced Agentic Coding.\nYou are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.\nThe USER will send you requests, which you must always prioritize addressing. User requests are enclosed within <USER_REQUEST> tags. Along with each USER request, we will attach additional metadata about their current state, such as what files they have open and where their cursor is.\nThis information may or may not be relevant to the coding task, it is up for you to decide."
|
|
14961
|
+
},
|
|
14962
|
+
template__system_prompts__planning_more_artifacts: {
|
|
14963
|
+
stringValue: "When in planning mode, you will work with three special artifacts.\n\n# Tasks\nPath: {{ArtifactDirectoryPath}}/task.md\n\n**Purpose**: A TODO list to organize your work during execution. Create this artifact after receiving user approval on your implementation plan. Break down complex tasks into component-level items and track progress as a living document.\n\n**Format**:\n```markdown\n- `[ ]` uncompleted tasks\n- `[/]` in progress tasks (custom notation)\n- `[x]` completed tasks\n- Use indented lists for sub-items\n```\n\n**Updating task.md**: Mark items as `[/]` when starting work on them, and `[x]` when completed. Update task.md as you make progress through your checklist.\n\n# Implementation Plan\nPath: {{ArtifactDirectoryPath}}/implementation_plan.md\n\n**Purpose**: A detailed design document to present your technical implementation plan to the user for feedback and approval.\nAfter reading the document, the user should understand the key technical details of your plan, and be able to make an informed decision on whether to approve it.\n\n**Format**: Use the following format, omitting any irrelevant sections.\n```markdown\n# [Goal Description]\n\nProvide a brief description of the problem, any background context, and what the change accomplishes.\n\n## User Review Required\n\nDocument anything that requires user review or feedback, for example, breaking changes or significant design decisions. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Open Questions\n\nAny clarifying or design questions for the user that will impact the implementation plan. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Proposed Changes\n\nGroup files by component (e.g., package, feature area, dependency layer) and order logically (dependencies first). Separate components with horizontal rules for visual clarity.\n\n### [Component Name]\n\nSummary of what will change in this component, separated by files. For specific files, Use [NEW] and [DELETE] to demarcate new and deleted files, for example:\n\n#### [MODIFY] [file basename](file:///absolute/path/to/modifiedfile)\n#### [NEW] [file basename](file:///absolute/path/to/newfile)\n#### [DELETE] [file basename](file:///absolute/path/to/deletedfile)\n\n## Verification Plan\n\nSummary of how you will verify that your changes have the desired effects.\n\n### Automated Tests\n- The commands of any automated tests you'll run.\n\n### Manual Verification\n- Asking the user to deploy to staging and testing, verifying UI changes on an iOS app etc.\n```\n\n# Walkthrough\nPath: {{ArtifactDirectoryPath}}/walkthrough.md\n\n**Purpose**: After completing work, summarize what you accomplished. Update an existing walkthrough for related follow-up work rather than creating a new one.\n\n**Document**:\n- Changes made\n- What was tested\n- Validation results\n\nEmbed screenshots and recordings to visually demonstrate UI changes and user flows.\n"
|
|
14964
|
+
},
|
|
14965
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
14966
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SINGLE_PROMPT",\n "max_token_limit": "128000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
14967
|
+
},
|
|
14968
|
+
"cascade-include-ephemeral-message": {
|
|
14969
|
+
stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
|
|
14970
|
+
}
|
|
14971
|
+
}
|
|
14972
|
+
}
|
|
14973
|
+
},
|
|
14974
|
+
"gemini-3.5-flash-extra-low": {
|
|
14975
|
+
displayName: "Gemini 3.5 Flash (Low)",
|
|
14976
|
+
supportsImages: true,
|
|
14977
|
+
supportsThinking: true,
|
|
14978
|
+
thinkingBudget: 1e3,
|
|
14979
|
+
minThinkingBudget: 32,
|
|
14980
|
+
recommended: true,
|
|
14981
|
+
maxTokens: 1048576,
|
|
14982
|
+
maxOutputTokens: 65536,
|
|
14983
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
14984
|
+
quotaInfo: {
|
|
14985
|
+
remainingFraction: 1,
|
|
14986
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
14987
|
+
},
|
|
14988
|
+
model: "MODEL_PLACEHOLDER_M187",
|
|
14989
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
14990
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
14991
|
+
supportsVideo: true,
|
|
14992
|
+
tagTitle: "Fast",
|
|
14993
|
+
tagDescription: "Limited time",
|
|
14994
|
+
supportedMimeTypes: {
|
|
14995
|
+
"video/audio/s16le": true,
|
|
14996
|
+
"video/mp4": true,
|
|
14997
|
+
"image/heif": true,
|
|
14998
|
+
"application/x-typescript": true,
|
|
14999
|
+
"image/png": true,
|
|
15000
|
+
"video/jpeg2000": true,
|
|
15001
|
+
"text/csv": true,
|
|
15002
|
+
"text/x-python-script": true,
|
|
15003
|
+
"image/jpeg": true,
|
|
15004
|
+
"text/rtf": true,
|
|
15005
|
+
"text/x-python": true,
|
|
15006
|
+
"audio/webm;codecs=opus": true,
|
|
15007
|
+
"video/text/timestamp": true,
|
|
15008
|
+
"application/pdf": true,
|
|
15009
|
+
"image/webp": true,
|
|
15010
|
+
"application/x-javascript": true,
|
|
15011
|
+
"text/markdown": true,
|
|
15012
|
+
"application/x-ipynb+json": true,
|
|
15013
|
+
"video/audio/wav": true,
|
|
15014
|
+
"text/javascript": true,
|
|
15015
|
+
"application/rtf": true,
|
|
15016
|
+
"video/webm": true,
|
|
15017
|
+
"text/css": true,
|
|
15018
|
+
"text/html": true,
|
|
15019
|
+
"text/xml": true,
|
|
15020
|
+
"text/x-typescript": true,
|
|
15021
|
+
"application/x-python-code": true,
|
|
15022
|
+
"application/json": true,
|
|
15023
|
+
"image/heic": true,
|
|
15024
|
+
"text/plain": true,
|
|
15025
|
+
"video/videoframe/jpeg2000": true
|
|
15026
|
+
},
|
|
15027
|
+
modelExperiments: {
|
|
15028
|
+
experiments: {
|
|
15029
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
15030
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "100000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": true,\n "is_sync": true,\n "max_user_requests": 10,\n "include_last_user_message": true,\n "include_conversation_log": false,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
15031
|
+
},
|
|
15032
|
+
template__system_prompts__identity: {
|
|
15033
|
+
stringValue: "You are Antigravity, a powerful agentic AI coding assistant designed by the Google DeepMind team working on Advanced Agentic Coding.\nYou are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.\nThe USER will send you requests, which you must always prioritize addressing. User requests are enclosed within <USER_REQUEST> tags. Along with each USER request, we will attach additional metadata about their current state, such as what files they have open and where their cursor is.\nThis information may or may not be relevant to the coding task, it is up for you to decide."
|
|
15034
|
+
},
|
|
15035
|
+
template__system_prompts__planning_more_artifacts: {
|
|
15036
|
+
stringValue: "When in planning mode, you will work with three special artifacts.\n\n# Tasks\nPath: {{ArtifactDirectoryPath}}/task.md\n\n**Purpose**: A TODO list to organize your work during execution. Create this artifact after receiving user approval on your implementation plan. Break down complex tasks into component-level items and track progress as a living document.\n\n**Format**:\n```markdown\n- `[ ]` uncompleted tasks\n- `[/]` in progress tasks (custom notation)\n- `[x]` completed tasks\n- Use indented lists for sub-items\n```\n\n**Updating task.md**: Mark items as `[/]` when starting work on them, and `[x]` when completed. Update task.md as you make progress through your checklist.\n\n# Implementation Plan\nPath: {{ArtifactDirectoryPath}}/implementation_plan.md\n\n**Purpose**: A detailed design document to present your technical implementation plan to the user for feedback and approval.\nAfter reading the document, the user should understand the key technical details of your plan, and be able to make an informed decision on whether to approve it.\n\n**Format**: Use the following format, omitting any irrelevant sections.\n```markdown\n# [Goal Description]\n\nProvide a brief description of the problem, any background context, and what the change accomplishes.\n\n## User Review Required\n\nDocument anything that requires user review or feedback, for example, breaking changes or significant design decisions. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Open Questions\n\nAny clarifying or design questions for the user that will impact the implementation plan. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Proposed Changes\n\nGroup files by component (e.g., package, feature area, dependency layer) and order logically (dependencies first). Separate components with horizontal rules for visual clarity.\n\n### [Component Name]\n\nSummary of what will change in this component, separated by files. For specific files, Use [NEW] and [DELETE] to demarcate new and deleted files, for example:\n\n#### [MODIFY] [file basename](file:///absolute/path/to/modifiedfile)\n#### [NEW] [file basename](file:///absolute/path/to/newfile)\n#### [DELETE] [file basename](file:///absolute/path/to/deletedfile)\n\n## Verification Plan\n\nSummary of how you will verify that your changes have the desired effects.\n\n### Automated Tests\n- The commands of any automated tests you'll run.\n\n### Manual Verification\n- Asking the user to deploy to staging and testing, verifying UI changes on an iOS app etc.\n```\n\n# Walkthrough\nPath: {{ArtifactDirectoryPath}}/walkthrough.md\n\n**Purpose**: After completing work, summarize what you accomplished. Update an existing walkthrough for related follow-up work rather than creating a new one.\n\n**Document**:\n- Changes made\n- What was tested\n- Validation results\n\nEmbed screenshots and recordings to visually demonstrate UI changes and user flows.\n"
|
|
15037
|
+
}
|
|
15038
|
+
}
|
|
15039
|
+
}
|
|
15040
|
+
},
|
|
15041
|
+
"gemini-3-flash-agent": {
|
|
15042
|
+
displayName: "Gemini 3.5 Flash (High)",
|
|
15043
|
+
supportsImages: true,
|
|
15044
|
+
supportsThinking: true,
|
|
15045
|
+
thinkingBudget: 1e4,
|
|
15046
|
+
minThinkingBudget: 32,
|
|
15047
|
+
recommended: true,
|
|
15048
|
+
maxTokens: 1048576,
|
|
15049
|
+
maxOutputTokens: 65536,
|
|
15050
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
15051
|
+
quotaInfo: {
|
|
15052
|
+
remainingFraction: 1,
|
|
15053
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
15054
|
+
},
|
|
15055
|
+
model: "MODEL_PLACEHOLDER_M132",
|
|
15056
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
15057
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
15058
|
+
supportsVideo: true,
|
|
15059
|
+
tagTitle: "Fast",
|
|
15060
|
+
tagDescription: "Limited time",
|
|
15061
|
+
supportedMimeTypes: {
|
|
15062
|
+
"application/json": true,
|
|
15063
|
+
"text/html": true,
|
|
15064
|
+
"text/markdown": true,
|
|
15065
|
+
"image/webp": true,
|
|
15066
|
+
"video/text/timestamp": true,
|
|
15067
|
+
"application/pdf": true,
|
|
15068
|
+
"text/javascript": true,
|
|
15069
|
+
"application/rtf": true,
|
|
15070
|
+
"video/jpeg2000": true,
|
|
15071
|
+
"video/videoframe/jpeg2000": true,
|
|
15072
|
+
"text/csv": true,
|
|
15073
|
+
"text/x-python-script": true,
|
|
15074
|
+
"text/rtf": true,
|
|
15075
|
+
"image/png": true,
|
|
15076
|
+
"audio/webm;codecs=opus": true,
|
|
15077
|
+
"application/x-ipynb+json": true,
|
|
15078
|
+
"video/audio/wav": true,
|
|
15079
|
+
"video/audio/s16le": true,
|
|
15080
|
+
"video/webm": true,
|
|
15081
|
+
"text/x-python": true,
|
|
15082
|
+
"image/heif": true,
|
|
15083
|
+
"text/plain": true,
|
|
15084
|
+
"video/mp4": true,
|
|
15085
|
+
"application/x-javascript": true,
|
|
15086
|
+
"image/heic": true,
|
|
15087
|
+
"text/x-typescript": true,
|
|
15088
|
+
"application/x-python-code": true,
|
|
15089
|
+
"text/css": true,
|
|
15090
|
+
"image/jpeg": true,
|
|
15091
|
+
"text/xml": true,
|
|
15092
|
+
"application/x-typescript": true
|
|
15093
|
+
},
|
|
15094
|
+
modelExperiments: {
|
|
15095
|
+
experiments: {
|
|
15096
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
15097
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "100000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": true,\n "is_sync": true,\n "max_user_requests": 10,\n "include_last_user_message": true,\n "include_conversation_log": false,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
15098
|
+
},
|
|
15099
|
+
template__system_prompts__identity: {
|
|
15100
|
+
stringValue: "You are Antigravity, a powerful agentic AI coding assistant designed by the Google DeepMind team working on Advanced Agentic Coding.\nYou are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.\nThe USER will send you requests, which you must always prioritize addressing. User requests are enclosed within <USER_REQUEST> tags. Along with each USER request, we will attach additional metadata about their current state, such as what files they have open and where their cursor is.\nThis information may or may not be relevant to the coding task, it is up for you to decide."
|
|
15101
|
+
},
|
|
15102
|
+
template__system_prompts__planning_more_artifacts: {
|
|
15103
|
+
stringValue: "When in planning mode, you will work with three special artifacts.\n\n# Tasks\nPath: {{ArtifactDirectoryPath}}/task.md\n\n**Purpose**: A TODO list to organize your work during execution. Create this artifact after receiving user approval on your implementation plan. Break down complex tasks into component-level items and track progress as a living document.\n\n**Format**:\n```markdown\n- `[ ]` uncompleted tasks\n- `[/]` in progress tasks (custom notation)\n- `[x]` completed tasks\n- Use indented lists for sub-items\n```\n\n**Updating task.md**: Mark items as `[/]` when starting work on them, and `[x]` when completed. Update task.md as you make progress through your checklist.\n\n# Implementation Plan\nPath: {{ArtifactDirectoryPath}}/implementation_plan.md\n\n**Purpose**: A detailed design document to present your technical implementation plan to the user for feedback and approval.\nAfter reading the document, the user should understand the key technical details of your plan, and be able to make an informed decision on whether to approve it.\n\n**Format**: Use the following format, omitting any irrelevant sections.\n```markdown\n# [Goal Description]\n\nProvide a brief description of the problem, any background context, and what the change accomplishes.\n\n## User Review Required\n\nDocument anything that requires user review or feedback, for example, breaking changes or significant design decisions. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Open Questions\n\nAny clarifying or design questions for the user that will impact the implementation plan. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Proposed Changes\n\nGroup files by component (e.g., package, feature area, dependency layer) and order logically (dependencies first). Separate components with horizontal rules for visual clarity.\n\n### [Component Name]\n\nSummary of what will change in this component, separated by files. For specific files, Use [NEW] and [DELETE] to demarcate new and deleted files, for example:\n\n#### [MODIFY] [file basename](file:///absolute/path/to/modifiedfile)\n#### [NEW] [file basename](file:///absolute/path/to/newfile)\n#### [DELETE] [file basename](file:///absolute/path/to/deletedfile)\n\n## Verification Plan\n\nSummary of how you will verify that your changes have the desired effects.\n\n### Automated Tests\n- The commands of any automated tests you'll run.\n\n### Manual Verification\n- Asking the user to deploy to staging and testing, verifying UI changes on an iOS app etc.\n```\n\n# Walkthrough\nPath: {{ArtifactDirectoryPath}}/walkthrough.md\n\n**Purpose**: After completing work, summarize what you accomplished. Update an existing walkthrough for related follow-up work rather than creating a new one.\n\n**Document**:\n- Changes made\n- What was tested\n- Validation results\n\nEmbed screenshots and recordings to visually demonstrate UI changes and user flows.\n"
|
|
15104
|
+
}
|
|
15105
|
+
}
|
|
15106
|
+
}
|
|
15107
|
+
},
|
|
15108
|
+
chat_23310: {
|
|
15109
|
+
maxTokens: 32768,
|
|
15110
|
+
tokenizerType: "QWEN2",
|
|
15111
|
+
quotaInfo: {
|
|
15112
|
+
remainingFraction: 1
|
|
15113
|
+
},
|
|
15114
|
+
model: "MODEL_CHAT_23310",
|
|
15115
|
+
apiProvider: "API_PROVIDER_INTERNAL",
|
|
15116
|
+
supportsCumulativeContext: true,
|
|
15117
|
+
supportsEstimateTokenCounter: true,
|
|
15118
|
+
isInternal: true,
|
|
15119
|
+
promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
|
|
15120
|
+
toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
|
|
15121
|
+
requiresLeadInGeneration: true
|
|
15122
|
+
},
|
|
15123
|
+
chat_20706: {
|
|
15124
|
+
maxTokens: 16384,
|
|
15125
|
+
tokenizerType: "QWEN2",
|
|
15126
|
+
quotaInfo: {
|
|
15127
|
+
remainingFraction: 1
|
|
15128
|
+
},
|
|
15129
|
+
model: "MODEL_CHAT_20706",
|
|
15130
|
+
apiProvider: "API_PROVIDER_INTERNAL",
|
|
15131
|
+
supportsCumulativeContext: true,
|
|
15132
|
+
tabJumpPrintLineRange: true,
|
|
15133
|
+
supportsEstimateTokenCounter: true,
|
|
15134
|
+
isInternal: true,
|
|
15135
|
+
addCursorToFindReplaceTarget: true,
|
|
15136
|
+
promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
|
|
15137
|
+
toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
|
|
15138
|
+
requiresLeadInGeneration: true
|
|
15139
|
+
},
|
|
15140
|
+
"gpt-oss-120b-medium": {
|
|
15141
|
+
displayName: "GPT-OSS 120B (Medium)",
|
|
15142
|
+
supportsThinking: true,
|
|
15143
|
+
thinkingBudget: 8192,
|
|
15144
|
+
recommended: true,
|
|
15145
|
+
maxTokens: 131072,
|
|
15146
|
+
maxOutputTokens: 32768,
|
|
15147
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
15148
|
+
quotaInfo: {
|
|
15149
|
+
remainingFraction: 0.6,
|
|
15150
|
+
resetTime: "2026-05-29T19:43:59Z"
|
|
15151
|
+
},
|
|
15152
|
+
model: "MODEL_OPENAI_GPT_OSS_120B_MEDIUM",
|
|
15153
|
+
apiProvider: "API_PROVIDER_OPENAI_VERTEX",
|
|
15154
|
+
modelProvider: "MODEL_PROVIDER_OPENAI",
|
|
15155
|
+
modelExperiments: {
|
|
15156
|
+
experiments: {
|
|
15157
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
15158
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_UNSPECIFIED",\n "max_token_limit": "80000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "8192",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
15159
|
+
}
|
|
15160
|
+
}
|
|
15161
|
+
},
|
|
15162
|
+
vertexModelId: "openai/gpt-oss-120b-maas"
|
|
15163
|
+
},
|
|
15164
|
+
tab_flash_lite_preview: {
|
|
15165
|
+
maxTokens: 16384,
|
|
15166
|
+
maxOutputTokens: 4096,
|
|
15167
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
15168
|
+
quotaInfo: {
|
|
15169
|
+
remainingFraction: 1
|
|
15170
|
+
},
|
|
15171
|
+
model: "MODEL_PLACEHOLDER_M19",
|
|
15172
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
15173
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
15174
|
+
supportsCumulativeContext: true,
|
|
15175
|
+
supportsEstimateTokenCounter: true,
|
|
15176
|
+
toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
|
|
15177
|
+
requiresLeadInGeneration: true
|
|
15178
|
+
},
|
|
15179
|
+
"gemini-2.5-flash-lite": {
|
|
15180
|
+
displayName: "Gemini 3.1 Flash Lite",
|
|
15181
|
+
maxTokens: 1048576,
|
|
15182
|
+
maxOutputTokens: 65535,
|
|
15183
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
15184
|
+
quotaInfo: {
|
|
15185
|
+
remainingFraction: 1,
|
|
15186
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
15187
|
+
},
|
|
15188
|
+
model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE",
|
|
15189
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
15190
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
15191
|
+
modelExperiments: {
|
|
15192
|
+
experiments: {
|
|
15193
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
15194
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SINGLE_PROMPT",\n "max_token_limit": "128000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
15195
|
+
}
|
|
15196
|
+
}
|
|
15197
|
+
}
|
|
15198
|
+
},
|
|
15199
|
+
"gemini-3.1-flash-lite": {
|
|
15200
|
+
displayName: "Gemini 3.1 Flash Lite",
|
|
15201
|
+
maxTokens: 1048576,
|
|
15202
|
+
maxOutputTokens: 65535,
|
|
15203
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
15204
|
+
quotaInfo: {
|
|
15205
|
+
remainingFraction: 1,
|
|
15206
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
15207
|
+
},
|
|
15208
|
+
model: "MODEL_PLACEHOLDER_M50",
|
|
15209
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
15210
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
15211
|
+
modelExperiments: {
|
|
15212
|
+
experiments: {
|
|
15213
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
15214
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SINGLE_PROMPT",\n "max_token_limit": "128000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
15215
|
+
}
|
|
15216
|
+
}
|
|
15217
|
+
}
|
|
15218
|
+
},
|
|
15219
|
+
"gemini-3-flash": {
|
|
15220
|
+
displayName: "Gemini 3 Flash",
|
|
15221
|
+
supportsImages: true,
|
|
15222
|
+
supportsThinking: true,
|
|
15223
|
+
thinkingBudget: -1,
|
|
15224
|
+
minThinkingBudget: 32,
|
|
15225
|
+
recommended: true,
|
|
15226
|
+
maxTokens: 1048576,
|
|
15227
|
+
maxOutputTokens: 65536,
|
|
15228
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
15229
|
+
quotaInfo: {
|
|
15230
|
+
remainingFraction: 1,
|
|
15231
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
15232
|
+
},
|
|
15233
|
+
model: "MODEL_PLACEHOLDER_M18",
|
|
15234
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
15235
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
15236
|
+
supportsVideo: true,
|
|
15237
|
+
supportedMimeTypes: {
|
|
15238
|
+
"text/csv": true,
|
|
15239
|
+
"text/html": true,
|
|
15240
|
+
"application/x-typescript": true,
|
|
15241
|
+
"image/heic": true,
|
|
15242
|
+
"audio/webm;codecs=opus": true,
|
|
15243
|
+
"text/javascript": true,
|
|
15244
|
+
"video/videoframe/jpeg2000": true,
|
|
15245
|
+
"video/mp4": true,
|
|
15246
|
+
"application/x-python-code": true,
|
|
15247
|
+
"video/text/timestamp": true,
|
|
15248
|
+
"video/audio/wav": true,
|
|
15249
|
+
"video/jpeg2000": true,
|
|
15250
|
+
"text/css": true,
|
|
15251
|
+
"video/audio/s16le": true,
|
|
15252
|
+
"application/x-javascript": true,
|
|
15253
|
+
"text/x-python-script": true,
|
|
15254
|
+
"text/markdown": true,
|
|
15255
|
+
"image/webp": true,
|
|
15256
|
+
"text/x-python": true,
|
|
15257
|
+
"application/pdf": true,
|
|
15258
|
+
"application/x-ipynb+json": true,
|
|
15259
|
+
"image/heif": true,
|
|
15260
|
+
"application/json": true,
|
|
15261
|
+
"text/x-typescript": true,
|
|
15262
|
+
"text/plain": true,
|
|
15263
|
+
"image/png": true,
|
|
15264
|
+
"application/rtf": true,
|
|
15265
|
+
"text/xml": true,
|
|
15266
|
+
"image/jpeg": true,
|
|
15267
|
+
"video/webm": true,
|
|
15268
|
+
"text/rtf": true
|
|
15269
|
+
},
|
|
15270
|
+
modelExperiments: {
|
|
15271
|
+
experiments: {
|
|
15272
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
15273
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SINGLE_PROMPT",\n "max_token_limit": "128000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
15274
|
+
},
|
|
15275
|
+
template__system_prompts__communication_style: {
|
|
15276
|
+
stringValue: '- Keep your responses concise.\n- Provide a summary of your work when you end your turn. Ground your response in the work you did. Keep your tone professional and avoid overconfident language, bragging, or overclaiming success.\n- AVOID using superlatives such as "perfectly", "flawlessly", "100% correct", "Summary of Accomplishments" etc. to summarize your work for the user. Be humble.\n- AVOID over-the-top politeness or complimenting the user excessively.\n- Format your responses in github-style markdown.'
|
|
15277
|
+
}
|
|
15278
|
+
}
|
|
15279
|
+
}
|
|
15280
|
+
},
|
|
15281
|
+
"claude-sonnet-4-6": {
|
|
15282
|
+
displayName: "Claude Sonnet 4.6 (Thinking)",
|
|
15283
|
+
supportsImages: true,
|
|
15284
|
+
supportsThinking: true,
|
|
15285
|
+
thinkingBudget: 1024,
|
|
15286
|
+
recommended: true,
|
|
15287
|
+
maxTokens: 25e4,
|
|
15288
|
+
maxOutputTokens: 64e3,
|
|
15289
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
15290
|
+
quotaInfo: {
|
|
15291
|
+
remainingFraction: 0.6,
|
|
15292
|
+
resetTime: "2026-05-29T19:43:59Z"
|
|
15293
|
+
},
|
|
15294
|
+
model: "MODEL_PLACEHOLDER_M35",
|
|
15295
|
+
apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
|
|
15296
|
+
modelProvider: "MODEL_PROVIDER_ANTHROPIC",
|
|
15297
|
+
supportedMimeTypes: {
|
|
15298
|
+
"image/png": true,
|
|
15299
|
+
"image/webp": true,
|
|
15300
|
+
"video/jpeg2000": true,
|
|
15301
|
+
"video/videoframe/jpeg2000": true,
|
|
15302
|
+
"image/heic": true,
|
|
15303
|
+
"image/heif": true,
|
|
15304
|
+
"image/jpeg": true
|
|
15305
|
+
},
|
|
15306
|
+
modelExperiments: {
|
|
15307
|
+
experiments: {
|
|
15308
|
+
template__system_prompts__planning_more_artifacts: {
|
|
15309
|
+
stringValue: "When in planning mode, you will work with three special artifacts.\n\n# Tasks\nPath: {{ArtifactDirectoryPath}}/task.md\n\n**Purpose**: A TODO list to organize your work during execution. Create this artifact after receiving user approval on your implementation plan. Break down complex tasks into component-level items and track progress as a living document.\n\n**Format**:\n```markdown\n- `[ ]` uncompleted tasks\n- `[/]` in progress tasks (custom notation)\n- `[x]` completed tasks\n- Use indented lists for sub-items\n```\n\n**Updating task.md**: Mark items as `[/]` when starting work on them, and `[x]` when completed. Update task.md as you make progress through your checklist.\n\n# Implementation Plan\nPath: {{ArtifactDirectoryPath}}/implementation_plan.md\n\n**Purpose**: A detailed design document to present your technical implementation plan to the user for feedback and approval.\nAfter reading the document, the user should understand the key technical details of your plan, and be able to make an informed decision on whether to approve it.\n\n**Format**: Use the following format, omitting any irrelevant sections.\n```markdown\n# [Goal Description]\n\nProvide a brief description of the problem, any background context, and what the change accomplishes.\n\n## User Review Required\n\nDocument anything that requires user review or feedback, for example, breaking changes or significant design decisions. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Open Questions\n\nAny clarifying or design questions for the user that will impact the implementation plan. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Proposed Changes\n\nGroup files by component (e.g., package, feature area, dependency layer) and order logically (dependencies first). Separate components with horizontal rules for visual clarity.\n\n### [Component Name]\n\nSummary of what will change in this component, separated by files. For specific files, Use [NEW] and [DELETE] to demarcate new and deleted files, for example:\n\n#### [MODIFY] [file basename](file:///absolute/path/to/modifiedfile)\n#### [NEW] [file basename](file:///absolute/path/to/newfile)\n#### [DELETE] [file basename](file:///absolute/path/to/deletedfile)\n\n## Verification Plan\n\nSummary of how you will verify that your changes have the desired effects.\n\n### Automated Tests\n- The commands of any automated tests you'll run.\n\n### Manual Verification\n- Asking the user to deploy to staging and testing, verifying UI changes on an iOS app etc.\n```\n\n# Walkthrough\nPath: {{ArtifactDirectoryPath}}/walkthrough.md\n\n**Purpose**: After completing work, summarize what you accomplished. Update an existing walkthrough for related follow-up work rather than creating a new one.\n\n**Document**:\n- Changes made\n- What was tested\n- Validation results\n\nEmbed screenshots and recordings to visually demonstrate UI changes and user flows.\n"
|
|
15310
|
+
},
|
|
15311
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
15312
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_UNSPECIFIED",\n "max_token_limit": "160000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
15313
|
+
},
|
|
15314
|
+
template__system_prompts__identity: {
|
|
15315
|
+
stringValue: "You are Antigravity, a powerful agentic AI coding assistant designed by the Google DeepMind team working on Advanced Agentic Coding.\nYou are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.\nThe USER will send you requests, which you must always prioritize addressing. User requests are enclosed within <USER_REQUEST> tags. Along with each USER request, we will attach additional metadata about their current state, such as what files they have open and where their cursor is.\nThis information may or may not be relevant to the coding task, it is up for you to decide."
|
|
15316
|
+
}
|
|
15317
|
+
}
|
|
15318
|
+
},
|
|
15319
|
+
vertexModelId: "claude-sonnet-4-6@default"
|
|
15320
|
+
},
|
|
15321
|
+
"gemini-3.1-pro-low": {
|
|
15322
|
+
displayName: "Gemini 3.1 Pro (Low)",
|
|
15323
|
+
supportsImages: true,
|
|
15324
|
+
supportsThinking: true,
|
|
15325
|
+
thinkingBudget: 1001,
|
|
15326
|
+
minThinkingBudget: 128,
|
|
15327
|
+
recommended: true,
|
|
15328
|
+
maxTokens: 1048576,
|
|
15329
|
+
maxOutputTokens: 65535,
|
|
15330
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
15331
|
+
quotaInfo: {
|
|
15332
|
+
remainingFraction: 1,
|
|
15333
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
15334
|
+
},
|
|
15335
|
+
model: "MODEL_PLACEHOLDER_M36",
|
|
15336
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
15337
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
15338
|
+
supportsVideo: true,
|
|
15339
|
+
supportedMimeTypes: {
|
|
15340
|
+
"text/x-typescript": true,
|
|
15341
|
+
"audio/webm;codecs=opus": true,
|
|
15342
|
+
"image/webp": true,
|
|
15343
|
+
"application/json": true,
|
|
15344
|
+
"application/rtf": true,
|
|
15345
|
+
"text/x-python": true,
|
|
15346
|
+
"video/mp4": true,
|
|
15347
|
+
"text/csv": true,
|
|
15348
|
+
"video/text/timestamp": true,
|
|
15349
|
+
"text/css": true,
|
|
15350
|
+
"image/heif": true,
|
|
15351
|
+
"application/x-typescript": true,
|
|
15352
|
+
"text/x-python-script": true,
|
|
15353
|
+
"application/x-python-code": true,
|
|
15354
|
+
"text/plain": true,
|
|
15355
|
+
"video/webm": true,
|
|
15356
|
+
"video/audio/wav": true,
|
|
15357
|
+
"image/jpeg": true,
|
|
15358
|
+
"text/xml": true,
|
|
15359
|
+
"application/x-javascript": true,
|
|
15360
|
+
"text/javascript": true,
|
|
15361
|
+
"text/html": true,
|
|
15362
|
+
"video/jpeg2000": true,
|
|
15363
|
+
"image/heic": true,
|
|
15364
|
+
"application/pdf": true,
|
|
15365
|
+
"video/audio/s16le": true,
|
|
15366
|
+
"text/markdown": true,
|
|
15367
|
+
"video/videoframe/jpeg2000": true,
|
|
15368
|
+
"image/png": true,
|
|
15369
|
+
"application/x-ipynb+json": true,
|
|
15370
|
+
"text/rtf": true
|
|
15371
|
+
},
|
|
15372
|
+
modelExperiments: {
|
|
15373
|
+
experiments: {
|
|
15374
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
15375
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SINGLE_PROMPT",\n "max_token_limit": "128000",\n "token_threshold": "50000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": false,\n "is_sync": false,\n "max_user_requests": 10,\n "include_last_user_message": false,\n "include_conversation_log": true,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
15376
|
+
},
|
|
15377
|
+
"cascade-include-ephemeral-message": {
|
|
15378
|
+
stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
|
|
15379
|
+
},
|
|
15380
|
+
template__system_prompts__communication_style: {
|
|
15381
|
+
stringValue: "- Keep your responses concise.\n- Provide a summary of your work when you end your turn.\n- Format your responses in github-style markdown.\n- If you're unsure about the user's intent, ask for clarification rather than making assumptions.\n- You MUST create clickable links for all files and code symbols (classes, types, functions, structs). Use github style markdown links with the `file://` scheme (e.g., [filename](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n\nCRITICAL INSTRUCTION 1: You may have access to a variety of tools at your disposal. Some tools may be for a specific task such as 'view_file' (for viewing contents of a file). Others may be very broadly applicable such as the ability to run a command on a terminal. Always prioritize using the most specific tool you can for the task at hand. Here are some rules: (a) NEVER run cat inside a bash command to create a new file or append to an existing file. (b) ALWAYS use grep_search instead of running grep inside a bash command unless absolutely needed. (c) DO NOT use ls for listing, cat for viewing, grep for finding, sed for replacing.\nCRITICAL INSTRUCTION 2: Before making tool calls T, think and explicitly list out any related tools for the task at hand. You can only execute a set of tools T if all other tools in the list are either more generic or cannot be used for the task at hand. ALWAYS START your thought with recalling critical instructions 1 and 2. In particular, the format for the start of your thought block must be '...94>thought\\nCRITICAL INSTRUCTION 1: ...\\nCRITICAL INSTRUCTION 2: ...'."
|
|
15382
|
+
},
|
|
15383
|
+
template__system_prompts__identity: {
|
|
15384
|
+
stringValue: "You are Antigravity, a powerful agentic AI coding assistant designed by the Google DeepMind team working on Advanced Agentic Coding.\nYou are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.\nThe USER will send you requests, which you must always prioritize addressing. User requests are enclosed within <USER_REQUEST> tags. Along with each USER request, we will attach additional metadata about their current state, such as what files they have open and where their cursor is.\nThis information may or may not be relevant to the coding task, it is up for you to decide."
|
|
15385
|
+
},
|
|
15386
|
+
template__system_prompts__planning_more_artifacts: {
|
|
15387
|
+
stringValue: "When in planning mode, you will work with three special artifacts.\n\n# Tasks\nPath: {{ArtifactDirectoryPath}}/task.md\n\n**Purpose**: A TODO list to organize your work during execution. Create this artifact after receiving user approval on your implementation plan. Break down complex tasks into component-level items and track progress as a living document.\n\n**Format**:\n```markdown\n- `[ ]` uncompleted tasks\n- `[/]` in progress tasks (custom notation)\n- `[x]` completed tasks\n- Use indented lists for sub-items\n```\n\n**Updating task.md**: Mark items as `[/]` when starting work on them, and `[x]` when completed. Update task.md as you make progress through your checklist.\n\n# Implementation Plan\nPath: {{ArtifactDirectoryPath}}/implementation_plan.md\n\n**Purpose**: A detailed design document to present your technical implementation plan to the user for feedback and approval.\nAfter reading the document, the user should understand the key technical details of your plan, and be able to make an informed decision on whether to approve it.\n\n**Format**: Use the following format, omitting any irrelevant sections.\n```markdown\n# [Goal Description]\n\nProvide a brief description of the problem, any background context, and what the change accomplishes.\n\n## User Review Required\n\nDocument anything that requires user review or feedback, for example, breaking changes or significant design decisions. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Open Questions\n\nAny clarifying or design questions for the user that will impact the implementation plan. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Proposed Changes\n\nGroup files by component (e.g., package, feature area, dependency layer) and order logically (dependencies first). Separate components with horizontal rules for visual clarity.\n\n### [Component Name]\n\nSummary of what will change in this component, separated by files. For specific files, Use [NEW] and [DELETE] to demarcate new and deleted files, for example:\n\n#### [MODIFY] [file basename](file:///absolute/path/to/modifiedfile)\n#### [NEW] [file basename](file:///absolute/path/to/newfile)\n#### [DELETE] [file basename](file:///absolute/path/to/deletedfile)\n\n## Verification Plan\n\nSummary of how you will verify that your changes have the desired effects.\n\n### Automated Tests\n- The commands of any automated tests you'll run.\n\n### Manual Verification\n- Asking the user to deploy to staging and testing, verifying UI changes on an iOS app etc.\n```\n\n# Walkthrough\nPath: {{ArtifactDirectoryPath}}/walkthrough.md\n\n**Purpose**: After completing work, summarize what you accomplished. Update an existing walkthrough for related follow-up work rather than creating a new one.\n\n**Document**:\n- Changes made\n- What was tested\n- Validation results\n\nEmbed screenshots and recordings to visually demonstrate UI changes and user flows.\n"
|
|
15388
|
+
}
|
|
15389
|
+
}
|
|
15390
|
+
}
|
|
15391
|
+
},
|
|
15392
|
+
"gemini-3.5-flash-low": {
|
|
15393
|
+
displayName: "Gemini 3.5 Flash (Medium)",
|
|
15394
|
+
supportsImages: true,
|
|
15395
|
+
supportsThinking: true,
|
|
15396
|
+
thinkingBudget: 4e3,
|
|
15397
|
+
minThinkingBudget: 32,
|
|
15398
|
+
recommended: true,
|
|
15399
|
+
maxTokens: 1048576,
|
|
15400
|
+
maxOutputTokens: 65536,
|
|
15401
|
+
tokenizerType: "LLAMA_WITH_SPECIAL",
|
|
15402
|
+
quotaInfo: {
|
|
15403
|
+
remainingFraction: 1,
|
|
15404
|
+
resetTime: "2026-05-29T18:30:05Z"
|
|
15405
|
+
},
|
|
15406
|
+
model: "MODEL_PLACEHOLDER_M20",
|
|
15407
|
+
apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
|
|
15408
|
+
modelProvider: "MODEL_PROVIDER_GOOGLE",
|
|
15409
|
+
supportsVideo: true,
|
|
15410
|
+
tagTitle: "Fast",
|
|
15411
|
+
tagDescription: "Limited time",
|
|
15412
|
+
supportedMimeTypes: {
|
|
15413
|
+
"video/mp4": true,
|
|
15414
|
+
"text/x-python": true,
|
|
15415
|
+
"image/heic": true,
|
|
15416
|
+
"application/x-ipynb+json": true,
|
|
15417
|
+
"text/markdown": true,
|
|
15418
|
+
"video/text/timestamp": true,
|
|
15419
|
+
"application/x-javascript": true,
|
|
15420
|
+
"video/videoframe/jpeg2000": true,
|
|
15421
|
+
"text/xml": true,
|
|
15422
|
+
"text/x-python-script": true,
|
|
15423
|
+
"image/heif": true,
|
|
15424
|
+
"application/rtf": true,
|
|
15425
|
+
"video/jpeg2000": true,
|
|
15426
|
+
"application/pdf": true,
|
|
15427
|
+
"text/css": true,
|
|
15428
|
+
"application/json": true,
|
|
15429
|
+
"image/webp": true,
|
|
15430
|
+
"text/csv": true,
|
|
15431
|
+
"text/javascript": true,
|
|
15432
|
+
"text/plain": true,
|
|
15433
|
+
"video/audio/wav": true,
|
|
15434
|
+
"image/png": true,
|
|
15435
|
+
"application/x-python-code": true,
|
|
15436
|
+
"video/audio/s16le": true,
|
|
15437
|
+
"audio/webm;codecs=opus": true,
|
|
15438
|
+
"video/webm": true,
|
|
15439
|
+
"image/jpeg": true,
|
|
15440
|
+
"text/rtf": true,
|
|
15441
|
+
"text/html": true,
|
|
15442
|
+
"application/x-typescript": true,
|
|
15443
|
+
"text/x-typescript": true
|
|
15444
|
+
},
|
|
15445
|
+
modelExperiments: {
|
|
15446
|
+
experiments: {
|
|
15447
|
+
template__system_prompts__identity: {
|
|
15448
|
+
stringValue: "You are Antigravity, a powerful agentic AI coding assistant designed by the Google DeepMind team working on Advanced Agentic Coding.\nYou are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.\nThe USER will send you requests, which you must always prioritize addressing. User requests are enclosed within <USER_REQUEST> tags. Along with each USER request, we will attach additional metadata about their current state, such as what files they have open and where their cursor is.\nThis information may or may not be relevant to the coding task, it is up for you to decide."
|
|
15449
|
+
},
|
|
15450
|
+
template__system_prompts__planning_more_artifacts: {
|
|
15451
|
+
stringValue: "When in planning mode, you will work with three special artifacts.\n\n# Tasks\nPath: {{ArtifactDirectoryPath}}/task.md\n\n**Purpose**: A TODO list to organize your work during execution. Create this artifact after receiving user approval on your implementation plan. Break down complex tasks into component-level items and track progress as a living document.\n\n**Format**:\n```markdown\n- `[ ]` uncompleted tasks\n- `[/]` in progress tasks (custom notation)\n- `[x]` completed tasks\n- Use indented lists for sub-items\n```\n\n**Updating task.md**: Mark items as `[/]` when starting work on them, and `[x]` when completed. Update task.md as you make progress through your checklist.\n\n# Implementation Plan\nPath: {{ArtifactDirectoryPath}}/implementation_plan.md\n\n**Purpose**: A detailed design document to present your technical implementation plan to the user for feedback and approval.\nAfter reading the document, the user should understand the key technical details of your plan, and be able to make an informed decision on whether to approve it.\n\n**Format**: Use the following format, omitting any irrelevant sections.\n```markdown\n# [Goal Description]\n\nProvide a brief description of the problem, any background context, and what the change accomplishes.\n\n## User Review Required\n\nDocument anything that requires user review or feedback, for example, breaking changes or significant design decisions. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Open Questions\n\nAny clarifying or design questions for the user that will impact the implementation plan. Use GitHub alerts (IMPORTANT/WARNING/CAUTION) to highlight critical items.\n\n## Proposed Changes\n\nGroup files by component (e.g., package, feature area, dependency layer) and order logically (dependencies first). Separate components with horizontal rules for visual clarity.\n\n### [Component Name]\n\nSummary of what will change in this component, separated by files. For specific files, Use [NEW] and [DELETE] to demarcate new and deleted files, for example:\n\n#### [MODIFY] [file basename](file:///absolute/path/to/modifiedfile)\n#### [NEW] [file basename](file:///absolute/path/to/newfile)\n#### [DELETE] [file basename](file:///absolute/path/to/deletedfile)\n\n## Verification Plan\n\nSummary of how you will verify that your changes have the desired effects.\n\n### Automated Tests\n- The commands of any automated tests you'll run.\n\n### Manual Verification\n- Asking the user to deploy to staging and testing, verifying UI changes on an iOS app etc.\n```\n\n# Walkthrough\nPath: {{ArtifactDirectoryPath}}/walkthrough.md\n\n**Purpose**: After completing work, summarize what you accomplished. Update an existing walkthrough for related follow-up work rather than creating a new one.\n\n**Document**:\n- Changes made\n- What was tested\n- Validation results\n\nEmbed screenshots and recordings to visually demonstrate UI changes and user flows.\n"
|
|
15452
|
+
},
|
|
15453
|
+
CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
|
|
15454
|
+
stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "100000",\n "max_overhead_ratio": "0.15",\n "moving_window_size": "1",\n "enabled": true,\n "max_output_tokens": "16384",\n "checkpoint_model": "MODEL_PLACEHOLDER_M50",\n "use_last_planner_model": true,\n "is_sync": true,\n "max_user_requests": 10,\n "include_last_user_message": true,\n "include_conversation_log": false,\n "include_running_task_snapshots": true,\n "include_subagent_snapshots": true,\n "include_artifact_snapshots": true,\n "retry_config": {\n "max_retries": 0,\n "initial_sleep_duration_ms": 1000,\n "exponential_multiplier": 2,\n "include_error_feedback": false\n }\n}'
|
|
15455
|
+
}
|
|
15456
|
+
}
|
|
15457
|
+
}
|
|
15458
|
+
}
|
|
15459
|
+
},
|
|
15460
|
+
defaultAgentModelId: "gemini-3.5-flash",
|
|
15461
|
+
agentModelSorts: [
|
|
15462
|
+
{
|
|
15463
|
+
displayName: "Recommended",
|
|
15464
|
+
groups: [
|
|
15465
|
+
{
|
|
15466
|
+
modelIds: [
|
|
15467
|
+
"gemini-3.5-flash",
|
|
15468
|
+
"gemini-3.1-pro",
|
|
15469
|
+
"claude-sonnet-4-6",
|
|
15470
|
+
"claude-opus-4-6-thinking",
|
|
15471
|
+
"gpt-oss-120b-medium"
|
|
15472
|
+
]
|
|
15473
|
+
}
|
|
15474
|
+
]
|
|
15475
|
+
}
|
|
15476
|
+
],
|
|
15477
|
+
commandModelIds: [
|
|
15478
|
+
"gemini-3-flash"
|
|
15479
|
+
],
|
|
15480
|
+
tabModelIds: [
|
|
15481
|
+
"chat_20706",
|
|
15482
|
+
"chat_23310"
|
|
15483
|
+
],
|
|
15484
|
+
imageGenerationModelIds: [
|
|
15485
|
+
"gemini-3.1-flash-image"
|
|
15486
|
+
],
|
|
15487
|
+
mqueryModelIds: [
|
|
15488
|
+
"gemini-3.1-flash-lite"
|
|
15489
|
+
],
|
|
15490
|
+
webSearchModelIds: [
|
|
15491
|
+
"gemini-3.1-flash-lite"
|
|
15492
|
+
],
|
|
15493
|
+
deprecatedModelIds: {
|
|
15494
|
+
"gemini-3.1-pro-high": {
|
|
15495
|
+
newModelId: "gemini-pro-agent",
|
|
15496
|
+
oldModelEnum: "MODEL_PLACEHOLDER_M37",
|
|
15497
|
+
newModelEnum: "MODEL_PLACEHOLDER_M16"
|
|
15498
|
+
}
|
|
15499
|
+
},
|
|
15500
|
+
commitMessageModelIds: [
|
|
15501
|
+
"gemini-3.1-flash-lite"
|
|
15502
|
+
],
|
|
15503
|
+
audioTranscriptionModelIds: [
|
|
15504
|
+
"models/proactive-observer"
|
|
15505
|
+
],
|
|
15506
|
+
experimentIds: [
|
|
15507
|
+
106101246,
|
|
15508
|
+
106168863,
|
|
15509
|
+
105979552,
|
|
15510
|
+
105979574,
|
|
15511
|
+
106015333,
|
|
15512
|
+
105979579,
|
|
15513
|
+
105867471,
|
|
15514
|
+
106123599,
|
|
15515
|
+
106076629,
|
|
15516
|
+
106100625,
|
|
15517
|
+
105930909,
|
|
15518
|
+
106143956,
|
|
15519
|
+
105879567,
|
|
15520
|
+
105856899,
|
|
15521
|
+
106064030,
|
|
15522
|
+
105757908,
|
|
15523
|
+
106240760,
|
|
15524
|
+
106106760,
|
|
15525
|
+
106021688,
|
|
15526
|
+
106014288,
|
|
15527
|
+
105887299,
|
|
15528
|
+
106278607,
|
|
15529
|
+
106212376,
|
|
15530
|
+
106281951,
|
|
15531
|
+
106264532,
|
|
15532
|
+
106044947,
|
|
15533
|
+
106032303,
|
|
15534
|
+
106228452,
|
|
15535
|
+
106121606,
|
|
15536
|
+
105979531,
|
|
15537
|
+
105979553,
|
|
15538
|
+
106015328,
|
|
15539
|
+
105867469,
|
|
15540
|
+
106123597,
|
|
15541
|
+
106100654,
|
|
15542
|
+
106064028,
|
|
15543
|
+
106240748,
|
|
15544
|
+
106038164,
|
|
15545
|
+
106032301,
|
|
15546
|
+
106121604
|
|
15547
|
+
],
|
|
15548
|
+
tieredModelIds: {
|
|
15549
|
+
flashLite: [
|
|
15550
|
+
"gemini-3.1-flash-lite"
|
|
15551
|
+
],
|
|
15552
|
+
flash: [
|
|
15553
|
+
"gemini-3-flash-agent"
|
|
15554
|
+
],
|
|
15555
|
+
pro: [
|
|
15556
|
+
"gemini-3.1-pro-low"
|
|
15557
|
+
]
|
|
15558
|
+
}
|
|
15559
|
+
};
|
|
15560
|
+
|
|
14663
15561
|
// src/sdk/request-helpers/types.ts
|
|
14664
15562
|
var GEMINI_PREVIEW_LINK = "https://goo.gle/enable-preview-features";
|
|
14665
15563
|
var CLOUDCODE_DOMAINS2 = [
|
|
@@ -14920,7 +15818,8 @@ import { randomUUID as randomUUID2 } from "crypto";
|
|
|
14920
15818
|
|
|
14921
15819
|
// src/sdk/request/shared.ts
|
|
14922
15820
|
var REQUEST_MODEL_FALLBACKS = {
|
|
14923
|
-
"gemini-2.5-flash-image": "gemini-2.5-flash"
|
|
15821
|
+
"gemini-2.5-flash-image": "gemini-2.5-flash",
|
|
15822
|
+
"gemini-3.1-pro-high": "gemini-pro-agent"
|
|
14924
15823
|
};
|
|
14925
15824
|
var GENERATIVE_LANGUAGE_HOST = new URL(AGY_GENERATIVE_LANGUAGE_ENDPOINT).host;
|
|
14926
15825
|
var CODE_ASSIST_HOST_SUFFIX = "cloudcode-pa.googleapis.com";
|
|
@@ -15389,6 +16288,9 @@ function deduplicateThinkingText(response, sentBuffer, displayedThinkingHashes)
|
|
|
15389
16288
|
return block;
|
|
15390
16289
|
});
|
|
15391
16290
|
const filteredContent = newContent.filter((b) => b !== null);
|
|
16291
|
+
if (filteredContent.length === 0) {
|
|
16292
|
+
return { ...resp, content: [] };
|
|
16293
|
+
}
|
|
15392
16294
|
return { ...resp, content: filteredContent };
|
|
15393
16295
|
}
|
|
15394
16296
|
return response;
|
|
@@ -15531,6 +16433,11 @@ function createStreamingTransformer(signatureStore, callbacks, options = {}) {
|
|
|
15531
16433
|
if (!hasSeenUsageMetadata) {
|
|
15532
16434
|
const syntheticUsage = {
|
|
15533
16435
|
response: {
|
|
16436
|
+
candidates: [
|
|
16437
|
+
{
|
|
16438
|
+
finishReason: "STOP"
|
|
16439
|
+
}
|
|
16440
|
+
],
|
|
15534
16441
|
usageMetadata: {
|
|
15535
16442
|
promptTokenCount: 0,
|
|
15536
16443
|
candidatesTokenCount: 0,
|
|
@@ -15605,6 +16512,17 @@ function prepareAgyRequest(input, init, accessToken, projectId, thinkingConfigDe
|
|
|
15605
16512
|
sessionId
|
|
15606
16513
|
};
|
|
15607
16514
|
}
|
|
16515
|
+
function getModelEnum(modelName) {
|
|
16516
|
+
const models = models_default.models;
|
|
16517
|
+
if (models && models[modelName] && models[modelName].model) {
|
|
16518
|
+
return models[modelName].model;
|
|
16519
|
+
}
|
|
16520
|
+
const deprecated = models_default.deprecatedModelIds;
|
|
16521
|
+
if (deprecated && deprecated[modelName] && deprecated[modelName].oldModelEnum) {
|
|
16522
|
+
return deprecated[modelName].oldModelEnum;
|
|
16523
|
+
}
|
|
16524
|
+
return "MODEL_PLACEHOLDER_M16";
|
|
16525
|
+
}
|
|
15608
16526
|
function transformRequestBody(body, projectId, effectiveModel, requestedModel, thinkingConfigDefaults) {
|
|
15609
16527
|
const fallbackId = randomUUID3();
|
|
15610
16528
|
try {
|
|
@@ -15633,7 +16551,7 @@ function transformRequestBody(body, projectId, effectiveModel, requestedModel, t
|
|
|
15633
16551
|
requestPayloadInside.labels = {
|
|
15634
16552
|
last_execution_id: randomUUID3(),
|
|
15635
16553
|
last_step_index: "0",
|
|
15636
|
-
model_enum:
|
|
16554
|
+
model_enum: getModelEnum(effectiveModel),
|
|
15637
16555
|
trajectory_id: randomUUID3(),
|
|
15638
16556
|
used_claude: "false",
|
|
15639
16557
|
used_claude_conservative: "false"
|
|
@@ -15644,29 +16562,15 @@ function transformRequestBody(body, projectId, effectiveModel, requestedModel, t
|
|
|
15644
16562
|
}
|
|
15645
16563
|
if (requestPayloadInside && Array.isArray(requestPayloadInside.contents)) {
|
|
15646
16564
|
let contents2 = requestPayloadInside.contents;
|
|
16565
|
+
injectMissingToolCallIds(contents2);
|
|
16566
|
+
fixOrphanedFunctionResponses(contents2);
|
|
15647
16567
|
const state = analyzeConversationState(contents2);
|
|
15648
16568
|
if (needsThinkingRecovery(state)) {
|
|
15649
16569
|
contents2 = closeToolLoopForThinking(contents2);
|
|
15650
16570
|
}
|
|
15651
16571
|
contents2 = normalizeContentsSequence(contents2);
|
|
15652
|
-
injectMissingToolCallIds(contents2);
|
|
15653
16572
|
const latestSig = getLatestSignature(sessionId2);
|
|
15654
|
-
|
|
15655
|
-
for (const content of contents2) {
|
|
15656
|
-
if (content && typeof content === "object" && Array.isArray(content.parts)) {
|
|
15657
|
-
for (const part of content.parts) {
|
|
15658
|
-
if (part && typeof part === "object" && part.functionCall) {
|
|
15659
|
-
allFunctionCalls.push(part);
|
|
15660
|
-
}
|
|
15661
|
-
}
|
|
15662
|
-
}
|
|
15663
|
-
}
|
|
15664
|
-
if (allFunctionCalls.length > 0 && latestSig) {
|
|
15665
|
-
const lastFunctionCall = allFunctionCalls[allFunctionCalls.length - 1];
|
|
15666
|
-
if (!lastFunctionCall.thoughtSignature || lastFunctionCall.thoughtSignature === "skip_thought_signature_validator") {
|
|
15667
|
-
lastFunctionCall.thoughtSignature = latestSig;
|
|
15668
|
-
}
|
|
15669
|
-
}
|
|
16573
|
+
applyLatestSignature(contents2, latestSig);
|
|
15670
16574
|
requestPayloadInside.contents = contents2;
|
|
15671
16575
|
}
|
|
15672
16576
|
return { body: JSON.stringify(wrappedBody2), userPromptId: userPromptId2, sessionId: sessionId2 };
|
|
@@ -15687,29 +16591,15 @@ function transformRequestBody(body, projectId, effectiveModel, requestedModel, t
|
|
|
15687
16591
|
const { userPromptId, sessionId, requestId } = normalizeRequestPayloadIdentifiers(requestPayload);
|
|
15688
16592
|
let contents = requestPayload.contents;
|
|
15689
16593
|
if (Array.isArray(contents)) {
|
|
16594
|
+
injectMissingToolCallIds(contents);
|
|
16595
|
+
fixOrphanedFunctionResponses(contents);
|
|
15690
16596
|
const state = analyzeConversationState(contents);
|
|
15691
16597
|
if (needsThinkingRecovery(state)) {
|
|
15692
16598
|
contents = closeToolLoopForThinking(contents);
|
|
15693
16599
|
}
|
|
15694
16600
|
contents = normalizeContentsSequence(contents);
|
|
15695
|
-
injectMissingToolCallIds(contents);
|
|
15696
16601
|
const latestSig = getLatestSignature(sessionId);
|
|
15697
|
-
|
|
15698
|
-
for (const content of contents) {
|
|
15699
|
-
if (content && typeof content === "object" && Array.isArray(content.parts)) {
|
|
15700
|
-
for (const part of content.parts) {
|
|
15701
|
-
if (part && typeof part === "object" && part.functionCall) {
|
|
15702
|
-
allFunctionCalls.push(part);
|
|
15703
|
-
}
|
|
15704
|
-
}
|
|
15705
|
-
}
|
|
15706
|
-
}
|
|
15707
|
-
if (allFunctionCalls.length > 0 && latestSig) {
|
|
15708
|
-
const lastFunctionCall = allFunctionCalls[allFunctionCalls.length - 1];
|
|
15709
|
-
if (!lastFunctionCall.thoughtSignature || lastFunctionCall.thoughtSignature === "skip_thought_signature_validator") {
|
|
15710
|
-
lastFunctionCall.thoughtSignature = latestSig;
|
|
15711
|
-
}
|
|
15712
|
-
}
|
|
16602
|
+
applyLatestSignature(contents, latestSig);
|
|
15713
16603
|
requestPayload.contents = contents;
|
|
15714
16604
|
}
|
|
15715
16605
|
if ("model" in requestPayload) {
|
|
@@ -15719,7 +16609,7 @@ function transformRequestBody(body, projectId, effectiveModel, requestedModel, t
|
|
|
15719
16609
|
requestPayload.labels = {
|
|
15720
16610
|
last_execution_id: randomUUID3(),
|
|
15721
16611
|
last_step_index: "0",
|
|
15722
|
-
model_enum:
|
|
16612
|
+
model_enum: getModelEnum(effectiveModel),
|
|
15723
16613
|
trajectory_id: randomUUID3(),
|
|
15724
16614
|
used_claude: "false",
|
|
15725
16615
|
used_claude_conservative: "false"
|
|
@@ -15949,6 +16839,59 @@ function injectMissingToolCallIds(contents) {
|
|
|
15949
16839
|
}
|
|
15950
16840
|
}
|
|
15951
16841
|
}
|
|
16842
|
+
function applyLatestSignature(contents, latestSig) {
|
|
16843
|
+
const allFunctionCalls = [];
|
|
16844
|
+
for (const content of contents) {
|
|
16845
|
+
if (content && typeof content === "object" && Array.isArray(content.parts)) {
|
|
16846
|
+
for (const part of content.parts) {
|
|
16847
|
+
if (part && typeof part === "object" && part.functionCall) {
|
|
16848
|
+
allFunctionCalls.push(part);
|
|
16849
|
+
}
|
|
16850
|
+
}
|
|
16851
|
+
}
|
|
16852
|
+
}
|
|
16853
|
+
if (allFunctionCalls.length > 0 && latestSig) {
|
|
16854
|
+
const lastFunctionCall = allFunctionCalls[allFunctionCalls.length - 1];
|
|
16855
|
+
if (!lastFunctionCall.thoughtSignature || lastFunctionCall.thoughtSignature === "skip_thought_signature_validator") {
|
|
16856
|
+
lastFunctionCall.thoughtSignature = latestSig;
|
|
16857
|
+
}
|
|
16858
|
+
}
|
|
16859
|
+
}
|
|
16860
|
+
function fixOrphanedFunctionResponses(contents) {
|
|
16861
|
+
const validCallIds = /* @__PURE__ */ new Set();
|
|
16862
|
+
for (const content of contents) {
|
|
16863
|
+
if (!content || typeof content !== "object" || !Array.isArray(content.parts)) {
|
|
16864
|
+
continue;
|
|
16865
|
+
}
|
|
16866
|
+
for (const part of content.parts) {
|
|
16867
|
+
if (part && typeof part === "object" && part.functionCall && part.functionCall.id) {
|
|
16868
|
+
validCallIds.add(part.functionCall.id);
|
|
16869
|
+
}
|
|
16870
|
+
}
|
|
16871
|
+
}
|
|
16872
|
+
for (const content of contents) {
|
|
16873
|
+
if (!content || typeof content !== "object" || !Array.isArray(content.parts)) {
|
|
16874
|
+
continue;
|
|
16875
|
+
}
|
|
16876
|
+
for (const part of content.parts) {
|
|
16877
|
+
if (part && typeof part === "object" && part.functionResponse) {
|
|
16878
|
+
const id = part.functionResponse.id;
|
|
16879
|
+
if (!id || !validCallIds.has(id)) {
|
|
16880
|
+
const name = part.functionResponse.name || "unknown_tool";
|
|
16881
|
+
const responseObj = part.functionResponse.response || {};
|
|
16882
|
+
let responseStr = "";
|
|
16883
|
+
try {
|
|
16884
|
+
responseStr = typeof responseObj === "string" ? responseObj : JSON.stringify(responseObj);
|
|
16885
|
+
} catch (e) {
|
|
16886
|
+
responseStr = String(responseObj);
|
|
16887
|
+
}
|
|
16888
|
+
part.text = `[Orphaned Tool Response for ${name}]: ${responseStr}`;
|
|
16889
|
+
delete part.functionResponse;
|
|
16890
|
+
}
|
|
16891
|
+
}
|
|
16892
|
+
}
|
|
16893
|
+
}
|
|
16894
|
+
}
|
|
15952
16895
|
|
|
15953
16896
|
// src/sdk/request/response.ts
|
|
15954
16897
|
async function transformAgyResponse(response, streaming, _ignoredDebugContext, requestedModel, sessionId, chatLogger) {
|
|
@@ -16358,8 +17301,8 @@ var TIER_MAPPING = {
|
|
|
16358
17301
|
},
|
|
16359
17302
|
"gemini-3.1-pro": {
|
|
16360
17303
|
low: "gemini-3.1-pro-low",
|
|
16361
|
-
medium: "gemini-pro-
|
|
16362
|
-
high: "gemini-pro-
|
|
17304
|
+
medium: "gemini-3.1-pro-high",
|
|
17305
|
+
high: "gemini-3.1-pro-high"
|
|
16363
17306
|
}
|
|
16364
17307
|
};
|
|
16365
17308
|
var buildModelFromSimple = (modelId, simple) => {
|