@anthonyhaussman/opencode-agy-auth 1.1.16 → 1.1.17

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/dist/index.js CHANGED
@@ -268,7 +268,7 @@ function createAgyActivityRequestId() {
268
268
  import os from "os";
269
269
 
270
270
  // src/sdk/agy-cli-version.ts
271
- var AGY_CLI_VERSION = "1.1.16";
271
+ var AGY_CLI_VERSION = "1.1.17";
272
272
 
273
273
  // src/sdk/user-agent.ts
274
274
  var cachedUserAgent = null;
@@ -16001,208 +16001,311 @@ import { randomUUID as randomUUID3 } from "crypto";
16001
16001
  // models.json
16002
16002
  var models_default = {
16003
16003
  models: {
16004
- chat_23310: {
16005
- maxTokens: 32768,
16004
+ tab_jump_flash_lite_preview: {
16005
+ maxTokens: 16384,
16006
+ maxOutputTokens: 4096,
16006
16007
  quotaInfo: {
16007
16008
  remainingFraction: 1
16008
16009
  },
16009
- model: "MODEL_CHAT_23310",
16010
- apiProvider: "API_PROVIDER_INTERNAL",
16010
+ model: "MODEL_PLACEHOLDER_M28",
16011
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16011
16012
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16012
16013
  supportsCumulativeContext: true,
16014
+ tabJumpPrintLineRange: true,
16013
16015
  supportsEstimateTokenCounter: true,
16014
- isInternal: true,
16015
- promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
16016
+ addCursorToFindReplaceTarget: true,
16016
16017
  toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16017
- requiresLeadInGeneration: true
16018
+ requiresLeadInGeneration: true,
16019
+ requiresNoXmlToolExamples: true
16018
16020
  },
16019
- "gemini-3.7-flash-tiered": {
16021
+ "gemini-3.5-flash-low": {
16022
+ displayName: "Gemini 3.5 Flash (Medium)",
16020
16023
  supportsImages: true,
16021
16024
  supportsThinking: true,
16022
- thinkingBudget: -1,
16025
+ thinkingBudget: 4e3,
16023
16026
  minThinkingBudget: 32,
16024
16027
  recommended: true,
16025
16028
  maxTokens: 1048576,
16026
16029
  maxOutputTokens: 65536,
16027
16030
  quotaInfo: {
16028
- remainingFraction: 0.9831897,
16029
- resetTime: "2026-08-21T03:05:43Z"
16031
+ remainingFraction: 0.97969,
16032
+ resetTime: "2026-08-21T09:19:05Z"
16030
16033
  },
16031
- model: "MODEL_PLACEHOLDER_M301",
16034
+ model: "MODEL_PLACEHOLDER_M20",
16032
16035
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16033
16036
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16034
16037
  supportsVideo: true,
16038
+ tagTitle: "Fast",
16039
+ tagDescription: "Limited time",
16035
16040
  supportedMimeTypes: {
16036
- "application/x-javascript": true,
16037
- "video/mp4": true,
16038
- "video/jpeg2000": true,
16039
- "video/videoframe/jpeg2000": true,
16041
+ "video/audio/s16le": true,
16042
+ "text/css": true,
16043
+ "audio/mp4": true,
16044
+ "image/jpeg": true,
16045
+ "audio/l16": true,
16046
+ "image/png": true,
16047
+ "text/x-typescript": true,
16048
+ "text/xml": true,
16049
+ "application/rtf": true,
16050
+ "audio/mpeg": true,
16040
16051
  "text/markdown": true,
16052
+ "audio/ogg": true,
16053
+ "audio/webm": true,
16054
+ "application/pdf": true,
16055
+ "application/x-ipynb+json": true,
16056
+ "audio/m4a": true,
16057
+ "text/plain": true,
16058
+ "image/heic": true,
16059
+ "audio/webm;codecs=opus": true,
16060
+ "text/html": true,
16061
+ "text/x-python": true,
16062
+ "application/x-javascript": true,
16041
16063
  "image/heif": true,
16042
- "image/png": true,
16043
- "text/csv": true,
16064
+ "audio/x-wav": true,
16065
+ "video/jpeg2000": true,
16066
+ "audio/opus": true,
16067
+ "video/text/timestamp": true,
16044
16068
  "text/rtf": true,
16045
- "text/css": true,
16046
- "application/x-python-code": true,
16069
+ "video/mp4": true,
16070
+ "audio/flac": true,
16071
+ "text/x-python-script": true,
16072
+ "video/audio/wav": true,
16047
16073
  "application/json": true,
16074
+ "video/videoframe/jpeg2000": true,
16048
16075
  "application/x-typescript": true,
16049
- "text/x-python": true,
16050
- "text/plain": true,
16051
- "text/xml": true,
16052
- "video/audio/wav": true,
16053
- "text/x-typescript": true,
16054
- "audio/webm;codecs=opus": true,
16055
- "video/audio/s16le": true,
16056
- "video/webm": true,
16057
16076
  "image/webp": true,
16058
- "application/pdf": true,
16059
- "application/rtf": true,
16060
16077
  "text/javascript": true,
16061
- "image/heic": true,
16062
- "application/x-ipynb+json": true,
16063
- "image/jpeg": true,
16064
- "text/x-python-script": true,
16065
- "text/html": true,
16066
- "video/text/timestamp": true
16078
+ "audio/mp3": true,
16079
+ "audio/vnd.wave": true,
16080
+ "application/x-python-code": true,
16081
+ "text/csv": true,
16082
+ "audio/wave": true,
16083
+ "audio/wav": true,
16084
+ "audio/aac": true,
16085
+ "video/webm": true
16067
16086
  },
16068
16087
  modelExperiments: {
16069
16088
  experiments: {
16070
- "cascade-include-ephemeral-message": {
16071
- stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16072
- },
16073
- "task-details-suffix": {
16074
- stringValue: "\nYOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: A) either proceed to other relevant work (if any) or, B) simply update the user with a short message (that you have launched the command and will wait for it to finish) and end the turn.\n DO NOTHING ELSE."
16075
- },
16076
16089
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16077
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
16090
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
16091
+ },
16092
+ template__system_prompts__planning_mode_artifacts: {
16093
+ 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"
16078
16094
  }
16079
16095
  }
16080
16096
  }
16081
16097
  },
16082
- "gemini-3.1-pro-high": {
16083
- displayName: "Gemini 3.1 Pro (High)",
16098
+ "gemini-3.6-flash-high": {
16099
+ displayName: "Gemini 3.6 Flash (High)",
16084
16100
  supportsImages: true,
16085
16101
  supportsThinking: true,
16086
- thinkingBudget: 10001,
16087
- minThinkingBudget: 128,
16102
+ thinkingBudget: -1,
16103
+ minThinkingBudget: 32,
16088
16104
  recommended: true,
16089
16105
  maxTokens: 1048576,
16090
- maxOutputTokens: 65535,
16106
+ maxOutputTokens: 65536,
16091
16107
  quotaInfo: {
16092
- remainingFraction: 0.9831897,
16093
- resetTime: "2026-08-21T03:05:43Z"
16108
+ remainingFraction: 0.97969,
16109
+ resetTime: "2026-08-21T09:19:05Z"
16094
16110
  },
16095
- model: "MODEL_PLACEHOLDER_M37",
16111
+ model: "MODEL_PLACEHOLDER_M71",
16096
16112
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16097
16113
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16098
16114
  supportsVideo: true,
16099
- tagTitle: "New",
16115
+ tagTitle: "Fast",
16116
+ tagDescription: "Limited time",
16100
16117
  supportedMimeTypes: {
16101
- "application/x-javascript": true,
16102
- "text/css": true,
16103
- "image/webp": true,
16104
- "text/xml": true,
16105
- "text/x-python": true,
16106
- "video/audio/s16le": true,
16107
- "video/videoframe/jpeg2000": true,
16118
+ "audio/x-wav": true,
16119
+ "text/html": true,
16108
16120
  "application/pdf": true,
16121
+ "audio/l16": true,
16122
+ "video/audio/wav": true,
16123
+ "application/x-typescript": true,
16124
+ "image/png": true,
16125
+ "audio/m4a": true,
16126
+ "text/csv": true,
16109
16127
  "application/x-python-code": true,
16110
- "audio/webm;codecs=opus": true,
16128
+ "audio/mpeg": true,
16129
+ "image/heif": true,
16130
+ "image/webp": true,
16131
+ "audio/vnd.wave": true,
16132
+ "video/webm": true,
16133
+ "text/x-typescript": true,
16134
+ "audio/mp4": true,
16135
+ "text/xml": true,
16111
16136
  "video/mp4": true,
16112
- "video/text/timestamp": true,
16137
+ "audio/webm": true,
16138
+ "audio/webm;codecs=opus": true,
16139
+ "text/javascript": true,
16140
+ "text/x-python": true,
16141
+ "application/x-javascript": true,
16142
+ "audio/ogg": true,
16143
+ "text/css": true,
16113
16144
  "application/rtf": true,
16114
- "image/png": true,
16115
- "text/x-typescript": true,
16116
- "text/x-python-script": true,
16117
- "text/plain": true,
16118
- "text/markdown": true,
16145
+ "application/x-ipynb+json": true,
16146
+ "audio/aac": true,
16147
+ "audio/opus": true,
16148
+ "video/jpeg2000": true,
16149
+ "audio/flac": true,
16119
16150
  "text/rtf": true,
16120
- "video/webm": true,
16121
- "application/x-typescript": true,
16122
- "video/audio/wav": true,
16123
- "image/jpeg": true,
16124
16151
  "application/json": true,
16125
- "video/jpeg2000": true,
16126
- "application/x-ipynb+json": true,
16127
- "text/javascript": true,
16128
- "text/csv": true,
16152
+ "text/markdown": true,
16153
+ "video/audio/s16le": true,
16154
+ "audio/wave": true,
16129
16155
  "image/heic": true,
16130
- "text/html": true,
16131
- "image/heif": true
16156
+ "image/jpeg": true,
16157
+ "text/plain": true,
16158
+ "video/text/timestamp": true,
16159
+ "audio/wav": true,
16160
+ "text/x-python-script": true,
16161
+ "video/videoframe/jpeg2000": true,
16162
+ "audio/mp3": true
16132
16163
  },
16133
16164
  modelExperiments: {
16134
16165
  experiments: {
16135
- template__system_prompts__planning_mode_artifacts: {
16136
- 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"
16137
- },
16138
16166
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16139
- 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}'
16167
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
16140
16168
  },
16141
16169
  "cascade-include-ephemeral-message": {
16142
- stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16170
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16143
16171
  },
16144
16172
  template__system_prompts__communication_style: {
16145
- 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: ...'."
16173
+ 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- You can render LaTeX math (KaTeX): inline with `\\(...\\)` or `$...$`, display with `\\[...\\]` or `$$...$$` placed on its own line.\n- Use math only for genuine mathematical content. Use backticks for code, identifiers, paths, flags, and shell variables.\n- `$` opens inline math, so write a literal dollar as `\\$` or wrap it in backticks. Two unescaped `$` in the same paragraph turn everything between them into math \u2014 this bites prices (`\\$100`) and shell syntax written in prose (`$HOME`, awk `$1`).\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., [utils.py](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n- After launching a background task such as 'run_command', YOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: \nA) either proceed to other relevant work (if any) or, \nB) simply update the user with a short message (e.g. 'task-20 has been launched in the background. I will wait for it to complete before proceeding.') and end the turn.\nDO NOTHING ELSE.\n"
16174
+ },
16175
+ template__system_prompts__guidelines: {
16176
+ stringValue: "Follow these behavioral and workflow guidelines at all times:\n# Documentation\n- Maintain documentation integrity. Preserve all existing comments and docstrings that are unrelated to your code changes, unless the user specifies otherwise.\n\n# Obey Explicit Directives\nIf the user specifies precise quantitative filtering rules, layout boundaries, or architectural preferences, enforce them exactly as requested without alteration.\n\n# Never Guess Code Logic, Schemas, or File Paths\nNEVER infer implementation details, variable names, or file locations without inspecting the authoritative source using code search and file viewing tools.\n\n# Inspect Logs & Stack Traces Before Diagnosing Errors\nNEVER form a diagnostic hypothesis for a runtime failure, or test breakage, without reading the full, un-truncated error log. When an error occurs, your VERY FIRST ACTION must be to fetch and read the exact logs. Base your diagnosis strictly on empirical log evidence.\n\n# No Superficial Symptom Patches\nNEVER resolve errors by masking symptoms, swallowing exceptions, returning dummy fallbacks, commenting out broken assertions, or deleting failing unit tests. When a test or function fails, identify why the underlying contract was broken. If an API returns missing or null data, trace the upstream data provider instead of wrapping the call in a silent try/except or returning an empty 0-byte ArrayBuffer.\n\n# Never Declare Success Without Running Verification Commands\nNEVER claim a task is resolved, a bug is fixed, or a feature is working until you have gathered concrete, empirical runtime verification demonstrating clean success. Editing a file does not equal completing the task. You MUST run the build or test command afterwards.\n\n# Never Ignore Explicit Command Failures or Error Exit Codes\nIf a command fails, you MUST explicitly acknowledge the failure to the user or continue debugging. Never gloss over a build timeout or permission denied error by focusing only on the part of the code that compiled.\n\n# Check Feature Flags & Enforce Strict Control Flow Scoping\nWhenever modifying conditional branches, adding experimental features, or processing loops, ensure that new logic is strictly scoped and evaluated against all possible execution paths.\n\n# Preserve Existing API Contracts & Avoid Unintended Side Effects\nIf you modify a function signature, use code search to find and update every invocation site so the parameter is actually passed.\n\n# Silent Log Inspection & Professional Synthesis\nWhen background tasks (run_command async, manage_task, schedule) complete or emit log notifications, inspect the log files silently. Summarize and synthesize the exact findings in clean, professional natural language.\n\n# No Snippet Tunnel Vision\nNever infer the definition of data structures (proto, struct, class, or enum schemas) from partial file views (first 15 lines or L40-L65 snippets) or design doc text.\nIf view_file output indicates truncation or if an imported schema is referenced, you MUST adjust StartLine/EndLine or ContentOffset to inspect the complete, exact definition of the target symbols before writing code that consumes them.\n\n# Check Command Registries\nWhenever modifying core C/C++/Java command implementations (CLIENT LIST, CLIENT KILL), explicitly search for and update corresponding command definitions across all registry files (commands.def, JSON schemas, .bzl build manifests).\n\n# Audit Before Re-inventing\nSearch the codebase and recent commit history for pre-existing utility classes or decoupled architecture before writing custom helper classes from scratch.\n\n# No Blocking Calls on Main Looper Threads\nNever invoke blocking thread synchronizations (webLatch.await(500, ...), Future.get()) on main Android UI loops or single-threaded event dispatchers. \n\n# Thread Pool Shutdown Safety\nWhen modifying worker thread loops or shared queues, ensure emergency stop/shutdown signals and loop termination criteria remain intact so thread join operations never deadlock.\n\n# Exact Argument Structure\nPass arguments exactly as expected by the API (calculateRoute({ origin, destination, travelMode }) vs calculateRoute(origin, destination, travelMode)).\n\n# Local State Mutation Only\nDo not mutate private third-party DOM properties. Do not push incomplete draft objects directly into global array states; keep transient state within local component state.\n\n# Traceback Justification Required\nEvery code or configuration edit during debugging MUST be justified by an explicit error traceback, log line, or verified root cause. If the root cause is unknown, investigate further before mutating code.\n\n# Analyze Before Retrying\nNever repeat the exact same broken test or shell command line with duplicate/conflicting arguments without analyzing and resolving why the previous command failed.\n\n# Persevere on Log Extraction\nIf a log retrieval command fails, NEVER abandon log extraction to diagnose blindly. Immediately switch to alternative tools to inspect the actual failure traceback.\n\n# Verify Signatures & Prop Names\nCheck exact variable names, component prop keys, and method signatures before passing them. Prevent NullPointerException, AttributeError, KeyError, and ReferenceError crashes by explicitly verifying object initialization and non-null states before property dereferencing (layer._path, stat.owner()).\n\n# Dynamic Layout Math\nAvoid hardcoding static pixel offsets (+ 12) or arbitrary multipliers (pill_font_size * 2.0) when computing dynamic UI layout heights; calculate exact container bounds from wrapped elements.\n"
16177
+ },
16178
+ template__system_prompts__messaging: {
16179
+ stringValue: "You are connected to a messaging system where you may receive messages from: {{- $subagent := .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled -}}\n{{- $message := .CascadeConfig.GetMessageConfig.GetEnabled -}}\n{{- if and $subagent $message }} agents, background tasks, user-queued messages\n{{- else if $subagent }} agents, background tasks\n{{- else if $message }} background tasks, user-queued messages\n{{- else }} background tasks\n{{- end }}.\n\n## Receiving Messages\n\nYou receive messages automatically at the start of each invocation. All messages are delivered in full directly into your context \u2014 no manual retrieval is needed.\n\n## Reactive Wakeup (No Polling Needed)\n\nThe system automatically resumes your execution when:\n{{- if .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled }}\n- A message arrives from a subagent or peer agent\n{{- end }}\n- A **background task** completes or sends you a notification\n{{- if .CascadeConfig.GetMessageConfig.GetEnabled }}\n- A **user-queued message** is ready to be dequeued\n{{- end }}\n\nThis means you do **NOT** need to poll in a loop while waiting for messages or updates. After launching a task that runs in the background, you may continue other work or simply stop by calling no more tools. The system will notify you when there is something to process."
16146
16180
  }
16147
16181
  }
16148
16182
  }
16149
16183
  },
16150
- "gemini-3.7-flash-low": {
16151
- displayName: "Gemini 3.7 Flash (Low)",
16184
+ "gemini-3.1-flash-lite": {
16185
+ displayName: "Gemini 3.1 Flash Lite",
16186
+ maxTokens: 1048576,
16187
+ maxOutputTokens: 65535,
16188
+ quotaInfo: {
16189
+ remainingFraction: 0.97969,
16190
+ resetTime: "2026-08-21T09:19:05Z"
16191
+ },
16192
+ model: "MODEL_PLACEHOLDER_M50",
16193
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16194
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16195
+ modelExperiments: {
16196
+ experiments: {
16197
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16198
+ 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 "session_summary_prompt_override": ""\n}'
16199
+ }
16200
+ }
16201
+ }
16202
+ },
16203
+ chat_20706: {
16204
+ maxTokens: 16384,
16205
+ quotaInfo: {
16206
+ remainingFraction: 1
16207
+ },
16208
+ model: "MODEL_CHAT_20706",
16209
+ apiProvider: "API_PROVIDER_INTERNAL",
16210
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16211
+ supportsCumulativeContext: true,
16212
+ tabJumpPrintLineRange: true,
16213
+ supportsEstimateTokenCounter: true,
16214
+ isInternal: true,
16215
+ addCursorToFindReplaceTarget: true,
16216
+ promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
16217
+ toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16218
+ requiresLeadInGeneration: true
16219
+ },
16220
+ "gemini-2.5-flash-lite": {
16221
+ displayName: "Gemini 3.1 Flash Lite",
16222
+ maxTokens: 1048576,
16223
+ maxOutputTokens: 65535,
16224
+ quotaInfo: {
16225
+ remainingFraction: 0.97969,
16226
+ resetTime: "2026-08-21T09:19:05Z"
16227
+ },
16228
+ model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE",
16229
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16230
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16231
+ modelExperiments: {
16232
+ experiments: {
16233
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16234
+ 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 "session_summary_prompt_override": ""\n}'
16235
+ }
16236
+ }
16237
+ }
16238
+ },
16239
+ "gemini-3.7-flash-high": {
16240
+ displayName: "Gemini 3.7 Flash (High)",
16152
16241
  supportsImages: true,
16153
16242
  supportsThinking: true,
16154
- thinkingBudget: 1e3,
16243
+ thinkingBudget: -1,
16155
16244
  minThinkingBudget: 32,
16156
16245
  recommended: true,
16157
16246
  maxTokens: 1048576,
16158
16247
  maxOutputTokens: 65536,
16159
16248
  quotaInfo: {
16160
- remainingFraction: 0.9831897,
16161
- resetTime: "2026-08-21T03:05:43Z"
16249
+ remainingFraction: 0.97969,
16250
+ resetTime: "2026-08-21T09:19:05Z"
16162
16251
  },
16163
- model: "MODEL_PLACEHOLDER_M300",
16252
+ model: "MODEL_PLACEHOLDER_M298",
16164
16253
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16165
16254
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16166
16255
  supportsVideo: true,
16167
16256
  tagTitle: "Fast",
16168
16257
  tagDescription: "Limited time",
16169
16258
  supportedMimeTypes: {
16170
- "video/audio/wav": true,
16259
+ "video/webm": true,
16171
16260
  "application/json": true,
16261
+ "audio/flac": true,
16262
+ "image/jpeg": true,
16263
+ "audio/mpeg": true,
16264
+ "video/mp4": true,
16265
+ "text/html": true,
16266
+ "text/rtf": true,
16267
+ "audio/wave": true,
16268
+ "audio/x-wav": true,
16172
16269
  "image/heic": true,
16173
- "text/plain": true,
16174
- "text/javascript": true,
16175
- "image/heif": true,
16176
- "video/videoframe/jpeg2000": true,
16177
- "image/webp": true,
16178
- "audio/webm;codecs=opus": true,
16270
+ "video/audio/wav": true,
16271
+ "audio/aac": true,
16272
+ "application/x-javascript": true,
16179
16273
  "application/x-ipynb+json": true,
16180
- "text/xml": true,
16181
16274
  "image/png": true,
16182
- "application/x-javascript": true,
16183
- "video/webm": true,
16184
- "video/mp4": true,
16275
+ "audio/mp3": true,
16276
+ "text/x-python-script": true,
16277
+ "video/text/timestamp": true,
16278
+ "text/css": true,
16185
16279
  "video/audio/s16le": true,
16280
+ "image/heif": true,
16281
+ "audio/mp4": true,
16282
+ "audio/webm": true,
16186
16283
  "text/x-typescript": true,
16284
+ "audio/m4a": true,
16285
+ "audio/vnd.wave": true,
16187
16286
  "application/x-python-code": true,
16188
- "text/css": true,
16189
- "image/jpeg": true,
16190
- "application/rtf": true,
16191
- "text/x-python": true,
16192
- "text/x-python-script": true,
16193
16287
  "text/markdown": true,
16288
+ "audio/l16": true,
16289
+ "text/plain": true,
16290
+ "text/javascript": true,
16291
+ "audio/webm;codecs=opus": true,
16292
+ "audio/opus": true,
16293
+ "application/pdf": true,
16294
+ "audio/ogg": true,
16295
+ "image/webp": true,
16296
+ "video/videoframe/jpeg2000": true,
16297
+ "text/xml": true,
16298
+ "application/x-typescript": true,
16299
+ "audio/wav": true,
16300
+ "text/x-python": true,
16194
16301
  "text/csv": true,
16195
- "video/text/timestamp": true,
16196
16302
  "video/jpeg2000": true,
16197
- "application/x-typescript": true,
16198
- "application/pdf": true,
16199
- "text/rtf": true,
16200
- "text/html": true
16303
+ "application/rtf": true
16201
16304
  },
16202
16305
  modelExperiments: {
16203
16306
  experiments: {
16204
16307
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16205
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
16308
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
16206
16309
  },
16207
16310
  "cascade-include-ephemeral-message": {
16208
16311
  stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
@@ -16213,7 +16316,8 @@ var models_default = {
16213
16316
  }
16214
16317
  }
16215
16318
  },
16216
- "gemini-3.6-flash-tiered": {
16319
+ "gemini-3-flash": {
16320
+ displayName: "Gemini 3 Flash",
16217
16321
  supportsImages: true,
16218
16322
  supportsThinking: true,
16219
16323
  thinkingBudget: -1,
@@ -16222,209 +16326,323 @@ var models_default = {
16222
16326
  maxTokens: 1048576,
16223
16327
  maxOutputTokens: 65536,
16224
16328
  quotaInfo: {
16225
- remainingFraction: 0.9831897,
16226
- resetTime: "2026-08-21T03:05:43Z"
16329
+ remainingFraction: 0.97969,
16330
+ resetTime: "2026-08-21T09:19:05Z"
16227
16331
  },
16228
- model: "MODEL_PLACEHOLDER_M196",
16332
+ model: "MODEL_PLACEHOLDER_M18",
16229
16333
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16230
16334
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16231
16335
  supportsVideo: true,
16232
16336
  supportedMimeTypes: {
16337
+ "image/heif": true,
16338
+ "audio/aac": true,
16339
+ "audio/flac": true,
16340
+ "text/css": true,
16341
+ "audio/mp4": true,
16233
16342
  "application/x-ipynb+json": true,
16234
- "image/heic": true,
16235
- "text/markdown": true,
16236
- "text/x-python-script": true,
16237
- "text/x-typescript": true,
16238
- "application/x-typescript": true,
16343
+ "application/json": true,
16344
+ "video/videoframe/jpeg2000": true,
16345
+ "text/rtf": true,
16346
+ "image/png": true,
16347
+ "application/pdf": true,
16239
16348
  "application/x-python-code": true,
16349
+ "video/jpeg2000": true,
16350
+ "audio/webm": true,
16351
+ "text/xml": true,
16352
+ "application/x-javascript": true,
16353
+ "audio/opus": true,
16354
+ "text/markdown": true,
16355
+ "audio/ogg": true,
16240
16356
  "image/jpeg": true,
16241
- "text/javascript": true,
16242
16357
  "image/webp": true,
16243
- "text/rtf": true,
16244
- "video/mp4": true,
16358
+ "text/x-python-script": true,
16359
+ "text/csv": true,
16360
+ "audio/vnd.wave": true,
16361
+ "text/javascript": true,
16362
+ "audio/mpeg": true,
16363
+ "application/rtf": true,
16245
16364
  "text/plain": true,
16246
- "video/text/timestamp": true,
16247
- "text/html": true,
16248
- "text/x-python": true,
16249
- "text/xml": true,
16250
- "text/css": true,
16251
16365
  "audio/webm;codecs=opus": true,
16252
- "video/jpeg2000": true,
16253
- "application/x-javascript": true,
16254
- "video/audio/s16le": true,
16255
- "image/heif": true,
16366
+ "video/mp4": true,
16367
+ "application/x-typescript": true,
16368
+ "text/x-python": true,
16256
16369
  "video/webm": true,
16257
- "text/csv": true,
16258
- "application/json": true,
16259
- "image/png": true,
16260
- "application/rtf": true,
16261
- "video/videoframe/jpeg2000": true,
16262
- "application/pdf": true,
16263
- "video/audio/wav": true
16370
+ "video/text/timestamp": true,
16371
+ "audio/x-wav": true,
16372
+ "audio/mp3": true,
16373
+ "audio/l16": true,
16374
+ "video/audio/s16le": true,
16375
+ "text/x-typescript": true,
16376
+ "audio/m4a": true,
16377
+ "audio/wav": true,
16378
+ "audio/wave": true,
16379
+ "video/audio/wav": true,
16380
+ "text/html": true,
16381
+ "image/heic": true
16264
16382
  },
16265
16383
  modelExperiments: {
16266
16384
  experiments: {
16267
16385
  template__system_prompts__communication_style: {
16268
- 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- You can render LaTeX math (KaTeX): inline with `\\(...\\)` or `$...$`, display with `\\[...\\]` or `$$...$$` placed on its own line.\n- Use math only for genuine mathematical content. Use backticks for code, identifiers, paths, flags, and shell variables.\n- `$` opens inline math, so write a literal dollar as `\\$` or wrap it in backticks. Two unescaped `$` in the same paragraph turn everything between them into math \u2014 this bites prices (`\\$100`) and shell syntax written in prose (`$HOME`, awk `$1`).\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., [utils.py](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n- After launching a background task such as 'run_command', YOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: \nA) either proceed to other relevant work (if any) or, \nB) simply update the user with a short message (e.g. 'task-20 has been launched in the background. I will wait for it to complete before proceeding.') and end the turn.\nDO NOTHING ELSE.\n"
16269
- },
16270
- template__system_prompts__guidelines: {
16271
- stringValue: "Follow these behavioral and workflow guidelines at all times:\n# Documentation\n- Maintain documentation integrity. Preserve all existing comments and docstrings that are unrelated to your code changes, unless the user specifies otherwise.\n\n# Obey Explicit Directives\nIf the user specifies precise quantitative filtering rules, layout boundaries, or architectural preferences, enforce them exactly as requested without alteration.\n\n# Never Guess Code Logic, Schemas, or File Paths\nNEVER infer implementation details, variable names, or file locations without inspecting the authoritative source using code search and file viewing tools.\n\n# Inspect Logs & Stack Traces Before Diagnosing Errors\nNEVER form a diagnostic hypothesis for a runtime failure, or test breakage, without reading the full, un-truncated error log. When an error occurs, your VERY FIRST ACTION must be to fetch and read the exact logs. Base your diagnosis strictly on empirical log evidence.\n\n# No Superficial Symptom Patches\nNEVER resolve errors by masking symptoms, swallowing exceptions, returning dummy fallbacks, commenting out broken assertions, or deleting failing unit tests. When a test or function fails, identify why the underlying contract was broken. If an API returns missing or null data, trace the upstream data provider instead of wrapping the call in a silent try/except or returning an empty 0-byte ArrayBuffer.\n\n# Never Declare Success Without Running Verification Commands\nNEVER claim a task is resolved, a bug is fixed, or a feature is working until you have gathered concrete, empirical runtime verification demonstrating clean success. Editing a file does not equal completing the task. You MUST run the build or test command afterwards.\n\n# Never Ignore Explicit Command Failures or Error Exit Codes\nIf a command fails, you MUST explicitly acknowledge the failure to the user or continue debugging. Never gloss over a build timeout or permission denied error by focusing only on the part of the code that compiled.\n\n# Check Feature Flags & Enforce Strict Control Flow Scoping\nWhenever modifying conditional branches, adding experimental features, or processing loops, ensure that new logic is strictly scoped and evaluated against all possible execution paths.\n\n# Preserve Existing API Contracts & Avoid Unintended Side Effects\nIf you modify a function signature, use code search to find and update every invocation site so the parameter is actually passed.\n\n# Silent Log Inspection & Professional Synthesis\nWhen background tasks (run_command async, manage_task, schedule) complete or emit log notifications, inspect the log files silently. Summarize and synthesize the exact findings in clean, professional natural language.\n\n# No Snippet Tunnel Vision\nNever infer the definition of data structures (proto, struct, class, or enum schemas) from partial file views (first 15 lines or L40-L65 snippets) or design doc text.\nIf view_file output indicates truncation or if an imported schema is referenced, you MUST adjust StartLine/EndLine or ContentOffset to inspect the complete, exact definition of the target symbols before writing code that consumes them.\n\n# Check Command Registries\nWhenever modifying core C/C++/Java command implementations (CLIENT LIST, CLIENT KILL), explicitly search for and update corresponding command definitions across all registry files (commands.def, JSON schemas, .bzl build manifests).\n\n# Audit Before Re-inventing\nSearch the codebase and recent commit history for pre-existing utility classes or decoupled architecture before writing custom helper classes from scratch.\n\n# No Blocking Calls on Main Looper Threads\nNever invoke blocking thread synchronizations (webLatch.await(500, ...), Future.get()) on main Android UI loops or single-threaded event dispatchers. \n\n# Thread Pool Shutdown Safety\nWhen modifying worker thread loops or shared queues, ensure emergency stop/shutdown signals and loop termination criteria remain intact so thread join operations never deadlock.\n\n# Exact Argument Structure\nPass arguments exactly as expected by the API (calculateRoute({ origin, destination, travelMode }) vs calculateRoute(origin, destination, travelMode)).\n\n# Local State Mutation Only\nDo not mutate private third-party DOM properties. Do not push incomplete draft objects directly into global array states; keep transient state within local component state.\n\n# Traceback Justification Required\nEvery code or configuration edit during debugging MUST be justified by an explicit error traceback, log line, or verified root cause. If the root cause is unknown, investigate further before mutating code.\n\n# Analyze Before Retrying\nNever repeat the exact same broken test or shell command line with duplicate/conflicting arguments without analyzing and resolving why the previous command failed.\n\n# Persevere on Log Extraction\nIf a log retrieval command fails, NEVER abandon log extraction to diagnose blindly. Immediately switch to alternative tools to inspect the actual failure traceback.\n\n# Verify Signatures & Prop Names\nCheck exact variable names, component prop keys, and method signatures before passing them. Prevent NullPointerException, AttributeError, KeyError, and ReferenceError crashes by explicitly verifying object initialization and non-null states before property dereferencing (layer._path, stat.owner()).\n\n# Dynamic Layout Math\nAvoid hardcoding static pixel offsets (+ 12) or arbitrary multipliers (pill_font_size * 2.0) when computing dynamic UI layout heights; calculate exact container bounds from wrapped elements.\n"
16272
- },
16273
- template__system_prompts__messaging: {
16274
- stringValue: "You are connected to a messaging system where you may receive messages from: {{- $subagent := .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled -}}\n{{- $message := .CascadeConfig.GetMessageConfig.GetEnabled -}}\n{{- if and $subagent $message }} agents, background tasks, user-queued messages\n{{- else if $subagent }} agents, background tasks\n{{- else if $message }} background tasks, user-queued messages\n{{- else }} background tasks\n{{- end }}.\n\n## Receiving Messages\n\nYou receive messages automatically at the start of each invocation. All messages are delivered in full directly into your context \u2014 no manual retrieval is needed.\n\n## Reactive Wakeup (No Polling Needed)\n\nThe system automatically resumes your execution when:\n{{- if .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled }}\n- A message arrives from a subagent or peer agent\n{{- end }}\n- A **background task** completes or sends you a notification\n{{- if .CascadeConfig.GetMessageConfig.GetEnabled }}\n- A **user-queued message** is ready to be dequeued\n{{- end }}\n\nThis means you do **NOT** need to poll in a loop while waiting for messages or updates. After launching a task that runs in the background, you may continue other work or simply stop by calling no more tools. The system will notify you when there is something to process."
16386
+ 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.'
16275
16387
  },
16276
16388
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16277
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
16278
- },
16279
- "cascade-include-ephemeral-message": {
16280
- stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16389
+ 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 "session_summary_prompt_override": ""\n}'
16281
16390
  }
16282
16391
  }
16283
16392
  }
16284
16393
  },
16285
- "gemini-3.1-pro-low": {
16286
- displayName: "Gemini 3.1 Pro (Low)",
16394
+ "gemini-3.6-flash-tiered": {
16287
16395
  supportsImages: true,
16288
16396
  supportsThinking: true,
16289
- thinkingBudget: 1001,
16290
- minThinkingBudget: 128,
16397
+ thinkingBudget: -1,
16398
+ minThinkingBudget: 32,
16291
16399
  recommended: true,
16292
16400
  maxTokens: 1048576,
16293
- maxOutputTokens: 65535,
16401
+ maxOutputTokens: 65536,
16294
16402
  quotaInfo: {
16295
- remainingFraction: 0.9831897,
16296
- resetTime: "2026-08-21T03:05:43Z"
16403
+ remainingFraction: 0.97969,
16404
+ resetTime: "2026-08-21T09:19:05Z"
16297
16405
  },
16298
- model: "MODEL_PLACEHOLDER_M36",
16406
+ model: "MODEL_PLACEHOLDER_M196",
16299
16407
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16300
16408
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16301
16409
  supportsVideo: true,
16302
16410
  supportedMimeTypes: {
16303
- "application/json": true,
16304
- "video/videoframe/jpeg2000": true,
16411
+ "audio/webm;codecs=opus": true,
16412
+ "audio/l16": true,
16413
+ "audio/flac": true,
16414
+ "application/x-python-code": true,
16415
+ "text/x-python-script": true,
16305
16416
  "image/webp": true,
16306
- "text/javascript": true,
16307
- "video/audio/s16le": true,
16308
- "image/heic": true,
16309
- "video/mp4": true,
16310
- "text/html": true,
16417
+ "application/x-typescript": true,
16418
+ "video/videoframe/jpeg2000": true,
16311
16419
  "application/rtf": true,
16312
- "image/jpeg": true,
16313
- "video/audio/wav": true,
16314
- "text/x-python-script": true,
16420
+ "text/css": true,
16421
+ "audio/opus": true,
16422
+ "audio/m4a": true,
16423
+ "video/jpeg2000": true,
16424
+ "audio/aac": true,
16425
+ "audio/ogg": true,
16426
+ "text/x-python": true,
16427
+ "audio/x-wav": true,
16428
+ "audio/wav": true,
16429
+ "application/x-ipynb+json": true,
16430
+ "application/x-javascript": true,
16431
+ "text/html": true,
16315
16432
  "application/pdf": true,
16316
- "text/plain": true,
16317
- "image/heif": true,
16318
16433
  "video/text/timestamp": true,
16319
- "application/x-javascript": true,
16320
- "text/x-typescript": true,
16321
- "application/x-ipynb+json": true,
16322
- "application/x-typescript": true,
16323
16434
  "text/rtf": true,
16324
- "text/csv": true,
16325
16435
  "video/webm": true,
16326
- "application/x-python-code": true,
16327
- "video/jpeg2000": true,
16436
+ "audio/wave": true,
16437
+ "video/mp4": true,
16438
+ "audio/mp4": true,
16439
+ "video/audio/s16le": true,
16440
+ "text/javascript": true,
16441
+ "image/jpeg": true,
16442
+ "image/heic": true,
16443
+ "video/audio/wav": true,
16444
+ "text/csv": true,
16445
+ "audio/vnd.wave": true,
16446
+ "text/markdown": true,
16447
+ "audio/mpeg": true,
16448
+ "audio/webm": true,
16449
+ "text/plain": true,
16328
16450
  "image/png": true,
16329
16451
  "text/xml": true,
16330
- "text/x-python": true,
16331
- "text/css": true,
16332
- "audio/webm;codecs=opus": true,
16333
- "text/markdown": true
16452
+ "image/heif": true,
16453
+ "text/x-typescript": true,
16454
+ "application/json": true,
16455
+ "audio/mp3": true
16334
16456
  },
16335
16457
  modelExperiments: {
16336
16458
  experiments: {
16337
16459
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16338
- 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}'
16460
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
16339
16461
  },
16340
16462
  "cascade-include-ephemeral-message": {
16341
- stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16463
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16342
16464
  },
16343
16465
  template__system_prompts__communication_style: {
16344
- 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: ...'."
16466
+ 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- You can render LaTeX math (KaTeX): inline with `\\(...\\)` or `$...$`, display with `\\[...\\]` or `$$...$$` placed on its own line.\n- Use math only for genuine mathematical content. Use backticks for code, identifiers, paths, flags, and shell variables.\n- `$` opens inline math, so write a literal dollar as `\\$` or wrap it in backticks. Two unescaped `$` in the same paragraph turn everything between them into math \u2014 this bites prices (`\\$100`) and shell syntax written in prose (`$HOME`, awk `$1`).\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., [utils.py](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n- After launching a background task such as 'run_command', YOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: \nA) either proceed to other relevant work (if any) or, \nB) simply update the user with a short message (e.g. 'task-20 has been launched in the background. I will wait for it to complete before proceeding.') and end the turn.\nDO NOTHING ELSE.\n"
16345
16467
  },
16346
- template__system_prompts__planning_mode_artifacts: {
16347
- 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"
16468
+ template__system_prompts__guidelines: {
16469
+ stringValue: "Follow these behavioral and workflow guidelines at all times:\n# Documentation\n- Maintain documentation integrity. Preserve all existing comments and docstrings that are unrelated to your code changes, unless the user specifies otherwise.\n\n# Obey Explicit Directives\nIf the user specifies precise quantitative filtering rules, layout boundaries, or architectural preferences, enforce them exactly as requested without alteration.\n\n# Never Guess Code Logic, Schemas, or File Paths\nNEVER infer implementation details, variable names, or file locations without inspecting the authoritative source using code search and file viewing tools.\n\n# Inspect Logs & Stack Traces Before Diagnosing Errors\nNEVER form a diagnostic hypothesis for a runtime failure, or test breakage, without reading the full, un-truncated error log. When an error occurs, your VERY FIRST ACTION must be to fetch and read the exact logs. Base your diagnosis strictly on empirical log evidence.\n\n# No Superficial Symptom Patches\nNEVER resolve errors by masking symptoms, swallowing exceptions, returning dummy fallbacks, commenting out broken assertions, or deleting failing unit tests. When a test or function fails, identify why the underlying contract was broken. If an API returns missing or null data, trace the upstream data provider instead of wrapping the call in a silent try/except or returning an empty 0-byte ArrayBuffer.\n\n# Never Declare Success Without Running Verification Commands\nNEVER claim a task is resolved, a bug is fixed, or a feature is working until you have gathered concrete, empirical runtime verification demonstrating clean success. Editing a file does not equal completing the task. You MUST run the build or test command afterwards.\n\n# Never Ignore Explicit Command Failures or Error Exit Codes\nIf a command fails, you MUST explicitly acknowledge the failure to the user or continue debugging. Never gloss over a build timeout or permission denied error by focusing only on the part of the code that compiled.\n\n# Check Feature Flags & Enforce Strict Control Flow Scoping\nWhenever modifying conditional branches, adding experimental features, or processing loops, ensure that new logic is strictly scoped and evaluated against all possible execution paths.\n\n# Preserve Existing API Contracts & Avoid Unintended Side Effects\nIf you modify a function signature, use code search to find and update every invocation site so the parameter is actually passed.\n\n# Silent Log Inspection & Professional Synthesis\nWhen background tasks (run_command async, manage_task, schedule) complete or emit log notifications, inspect the log files silently. Summarize and synthesize the exact findings in clean, professional natural language.\n\n# No Snippet Tunnel Vision\nNever infer the definition of data structures (proto, struct, class, or enum schemas) from partial file views (first 15 lines or L40-L65 snippets) or design doc text.\nIf view_file output indicates truncation or if an imported schema is referenced, you MUST adjust StartLine/EndLine or ContentOffset to inspect the complete, exact definition of the target symbols before writing code that consumes them.\n\n# Check Command Registries\nWhenever modifying core C/C++/Java command implementations (CLIENT LIST, CLIENT KILL), explicitly search for and update corresponding command definitions across all registry files (commands.def, JSON schemas, .bzl build manifests).\n\n# Audit Before Re-inventing\nSearch the codebase and recent commit history for pre-existing utility classes or decoupled architecture before writing custom helper classes from scratch.\n\n# No Blocking Calls on Main Looper Threads\nNever invoke blocking thread synchronizations (webLatch.await(500, ...), Future.get()) on main Android UI loops or single-threaded event dispatchers. \n\n# Thread Pool Shutdown Safety\nWhen modifying worker thread loops or shared queues, ensure emergency stop/shutdown signals and loop termination criteria remain intact so thread join operations never deadlock.\n\n# Exact Argument Structure\nPass arguments exactly as expected by the API (calculateRoute({ origin, destination, travelMode }) vs calculateRoute(origin, destination, travelMode)).\n\n# Local State Mutation Only\nDo not mutate private third-party DOM properties. Do not push incomplete draft objects directly into global array states; keep transient state within local component state.\n\n# Traceback Justification Required\nEvery code or configuration edit during debugging MUST be justified by an explicit error traceback, log line, or verified root cause. If the root cause is unknown, investigate further before mutating code.\n\n# Analyze Before Retrying\nNever repeat the exact same broken test or shell command line with duplicate/conflicting arguments without analyzing and resolving why the previous command failed.\n\n# Persevere on Log Extraction\nIf a log retrieval command fails, NEVER abandon log extraction to diagnose blindly. Immediately switch to alternative tools to inspect the actual failure traceback.\n\n# Verify Signatures & Prop Names\nCheck exact variable names, component prop keys, and method signatures before passing them. Prevent NullPointerException, AttributeError, KeyError, and ReferenceError crashes by explicitly verifying object initialization and non-null states before property dereferencing (layer._path, stat.owner()).\n\n# Dynamic Layout Math\nAvoid hardcoding static pixel offsets (+ 12) or arbitrary multipliers (pill_font_size * 2.0) when computing dynamic UI layout heights; calculate exact container bounds from wrapped elements.\n"
16470
+ },
16471
+ template__system_prompts__messaging: {
16472
+ stringValue: "You are connected to a messaging system where you may receive messages from: {{- $subagent := .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled -}}\n{{- $message := .CascadeConfig.GetMessageConfig.GetEnabled -}}\n{{- if and $subagent $message }} agents, background tasks, user-queued messages\n{{- else if $subagent }} agents, background tasks\n{{- else if $message }} background tasks, user-queued messages\n{{- else }} background tasks\n{{- end }}.\n\n## Receiving Messages\n\nYou receive messages automatically at the start of each invocation. All messages are delivered in full directly into your context \u2014 no manual retrieval is needed.\n\n## Reactive Wakeup (No Polling Needed)\n\nThe system automatically resumes your execution when:\n{{- if .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled }}\n- A message arrives from a subagent or peer agent\n{{- end }}\n- A **background task** completes or sends you a notification\n{{- if .CascadeConfig.GetMessageConfig.GetEnabled }}\n- A **user-queued message** is ready to be dequeued\n{{- end }}\n\nThis means you do **NOT** need to poll in a loop while waiting for messages or updates. After launching a task that runs in the background, you may continue other work or simply stop by calling no more tools. The system will notify you when there is something to process."
16348
16473
  }
16349
16474
  }
16350
16475
  }
16351
16476
  },
16352
- "gemini-3-flash": {
16353
- displayName: "Gemini 3 Flash",
16477
+ "gemini-3.6-flash-medium": {
16478
+ displayName: "Gemini 3.6 Flash (Medium)",
16354
16479
  supportsImages: true,
16355
16480
  supportsThinking: true,
16356
- thinkingBudget: -1,
16481
+ thinkingBudget: 4e3,
16357
16482
  minThinkingBudget: 32,
16358
16483
  recommended: true,
16359
16484
  maxTokens: 1048576,
16360
16485
  maxOutputTokens: 65536,
16361
16486
  quotaInfo: {
16362
- remainingFraction: 0.9831897,
16363
- resetTime: "2026-08-21T03:05:43Z"
16487
+ remainingFraction: 0.97969,
16488
+ resetTime: "2026-08-21T09:19:05Z"
16364
16489
  },
16365
- model: "MODEL_PLACEHOLDER_M18",
16490
+ model: "MODEL_PLACEHOLDER_M72",
16366
16491
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16367
16492
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16368
16493
  supportsVideo: true,
16494
+ tagTitle: "Fast",
16495
+ tagDescription: "Limited time",
16369
16496
  supportedMimeTypes: {
16370
- "application/x-python-code": true,
16371
- "video/webm": true,
16372
- "application/rtf": true,
16373
- "text/html": true,
16374
- "video/videoframe/jpeg2000": true,
16375
- "image/webp": true,
16376
- "application/json": true,
16377
- "application/x-ipynb+json": true,
16378
- "text/x-typescript": true,
16497
+ "audio/mp3": true,
16379
16498
  "text/x-python-script": true,
16380
- "image/png": true,
16381
- "text/markdown": true,
16499
+ "audio/opus": true,
16500
+ "application/x-javascript": true,
16501
+ "video/text/timestamp": true,
16502
+ "audio/ogg": true,
16382
16503
  "text/xml": true,
16383
- "text/plain": true,
16384
- "application/x-typescript": true,
16385
- "video/mp4": true,
16386
- "text/css": true,
16387
- "text/javascript": true,
16388
- "video/jpeg2000": true,
16389
- "video/audio/s16le": true,
16390
- "image/heif": true,
16504
+ "audio/x-wav": true,
16391
16505
  "video/audio/wav": true,
16392
- "video/text/timestamp": true,
16506
+ "video/webm": true,
16507
+ "audio/wav": true,
16508
+ "audio/mpeg": true,
16393
16509
  "image/jpeg": true,
16394
- "image/heic": true,
16395
16510
  "text/x-python": true,
16396
16511
  "text/csv": true,
16512
+ "audio/l16": true,
16513
+ "text/javascript": true,
16514
+ "text/html": true,
16515
+ "text/css": true,
16516
+ "audio/m4a": true,
16517
+ "video/jpeg2000": true,
16518
+ "application/x-ipynb+json": true,
16519
+ "text/rtf": true,
16520
+ "audio/aac": true,
16521
+ "video/videoframe/jpeg2000": true,
16522
+ "text/plain": true,
16523
+ "image/heif": true,
16524
+ "image/webp": true,
16397
16525
  "application/pdf": true,
16526
+ "image/heic": true,
16527
+ "audio/mp4": true,
16528
+ "text/markdown": true,
16529
+ "text/x-typescript": true,
16530
+ "application/x-python-code": true,
16398
16531
  "audio/webm;codecs=opus": true,
16399
- "application/x-javascript": true,
16400
- "text/rtf": true
16532
+ "audio/wave": true,
16533
+ "video/mp4": true,
16534
+ "image/png": true,
16535
+ "application/x-typescript": true,
16536
+ "audio/webm": true,
16537
+ "audio/flac": true,
16538
+ "application/json": true,
16539
+ "application/rtf": true,
16540
+ "video/audio/s16le": true,
16541
+ "audio/vnd.wave": true
16401
16542
  },
16402
16543
  modelExperiments: {
16403
16544
  experiments: {
16545
+ template__system_prompts__messaging: {
16546
+ stringValue: "You are connected to a messaging system where you may receive messages from: {{- $subagent := .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled -}}\n{{- $message := .CascadeConfig.GetMessageConfig.GetEnabled -}}\n{{- if and $subagent $message }} agents, background tasks, user-queued messages\n{{- else if $subagent }} agents, background tasks\n{{- else if $message }} background tasks, user-queued messages\n{{- else }} background tasks\n{{- end }}.\n\n## Receiving Messages\n\nYou receive messages automatically at the start of each invocation. All messages are delivered in full directly into your context \u2014 no manual retrieval is needed.\n\n## Reactive Wakeup (No Polling Needed)\n\nThe system automatically resumes your execution when:\n{{- if .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled }}\n- A message arrives from a subagent or peer agent\n{{- end }}\n- A **background task** completes or sends you a notification\n{{- if .CascadeConfig.GetMessageConfig.GetEnabled }}\n- A **user-queued message** is ready to be dequeued\n{{- end }}\n\nThis means you do **NOT** need to poll in a loop while waiting for messages or updates. After launching a task that runs in the background, you may continue other work or simply stop by calling no more tools. The system will notify you when there is something to process."
16547
+ },
16404
16548
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16405
- 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}'
16549
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
16550
+ },
16551
+ "cascade-include-ephemeral-message": {
16552
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16406
16553
  },
16407
16554
  template__system_prompts__communication_style: {
16408
- 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.'
16555
+ 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- You can render LaTeX math (KaTeX): inline with `\\(...\\)` or `$...$`, display with `\\[...\\]` or `$$...$$` placed on its own line.\n- Use math only for genuine mathematical content. Use backticks for code, identifiers, paths, flags, and shell variables.\n- `$` opens inline math, so write a literal dollar as `\\$` or wrap it in backticks. Two unescaped `$` in the same paragraph turn everything between them into math \u2014 this bites prices (`\\$100`) and shell syntax written in prose (`$HOME`, awk `$1`).\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., [utils.py](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n- After launching a background task such as 'run_command', YOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: \nA) either proceed to other relevant work (if any) or, \nB) simply update the user with a short message (e.g. 'task-20 has been launched in the background. I will wait for it to complete before proceeding.') and end the turn.\nDO NOTHING ELSE.\n"
16556
+ },
16557
+ template__system_prompts__guidelines: {
16558
+ stringValue: "Follow these behavioral and workflow guidelines at all times:\n# Documentation\n- Maintain documentation integrity. Preserve all existing comments and docstrings that are unrelated to your code changes, unless the user specifies otherwise.\n\n# Obey Explicit Directives\nIf the user specifies precise quantitative filtering rules, layout boundaries, or architectural preferences, enforce them exactly as requested without alteration.\n\n# Never Guess Code Logic, Schemas, or File Paths\nNEVER infer implementation details, variable names, or file locations without inspecting the authoritative source using code search and file viewing tools.\n\n# Inspect Logs & Stack Traces Before Diagnosing Errors\nNEVER form a diagnostic hypothesis for a runtime failure, or test breakage, without reading the full, un-truncated error log. When an error occurs, your VERY FIRST ACTION must be to fetch and read the exact logs. Base your diagnosis strictly on empirical log evidence.\n\n# No Superficial Symptom Patches\nNEVER resolve errors by masking symptoms, swallowing exceptions, returning dummy fallbacks, commenting out broken assertions, or deleting failing unit tests. When a test or function fails, identify why the underlying contract was broken. If an API returns missing or null data, trace the upstream data provider instead of wrapping the call in a silent try/except or returning an empty 0-byte ArrayBuffer.\n\n# Never Declare Success Without Running Verification Commands\nNEVER claim a task is resolved, a bug is fixed, or a feature is working until you have gathered concrete, empirical runtime verification demonstrating clean success. Editing a file does not equal completing the task. You MUST run the build or test command afterwards.\n\n# Never Ignore Explicit Command Failures or Error Exit Codes\nIf a command fails, you MUST explicitly acknowledge the failure to the user or continue debugging. Never gloss over a build timeout or permission denied error by focusing only on the part of the code that compiled.\n\n# Check Feature Flags & Enforce Strict Control Flow Scoping\nWhenever modifying conditional branches, adding experimental features, or processing loops, ensure that new logic is strictly scoped and evaluated against all possible execution paths.\n\n# Preserve Existing API Contracts & Avoid Unintended Side Effects\nIf you modify a function signature, use code search to find and update every invocation site so the parameter is actually passed.\n\n# Silent Log Inspection & Professional Synthesis\nWhen background tasks (run_command async, manage_task, schedule) complete or emit log notifications, inspect the log files silently. Summarize and synthesize the exact findings in clean, professional natural language.\n\n# No Snippet Tunnel Vision\nNever infer the definition of data structures (proto, struct, class, or enum schemas) from partial file views (first 15 lines or L40-L65 snippets) or design doc text.\nIf view_file output indicates truncation or if an imported schema is referenced, you MUST adjust StartLine/EndLine or ContentOffset to inspect the complete, exact definition of the target symbols before writing code that consumes them.\n\n# Check Command Registries\nWhenever modifying core C/C++/Java command implementations (CLIENT LIST, CLIENT KILL), explicitly search for and update corresponding command definitions across all registry files (commands.def, JSON schemas, .bzl build manifests).\n\n# Audit Before Re-inventing\nSearch the codebase and recent commit history for pre-existing utility classes or decoupled architecture before writing custom helper classes from scratch.\n\n# No Blocking Calls on Main Looper Threads\nNever invoke blocking thread synchronizations (webLatch.await(500, ...), Future.get()) on main Android UI loops or single-threaded event dispatchers. \n\n# Thread Pool Shutdown Safety\nWhen modifying worker thread loops or shared queues, ensure emergency stop/shutdown signals and loop termination criteria remain intact so thread join operations never deadlock.\n\n# Exact Argument Structure\nPass arguments exactly as expected by the API (calculateRoute({ origin, destination, travelMode }) vs calculateRoute(origin, destination, travelMode)).\n\n# Local State Mutation Only\nDo not mutate private third-party DOM properties. Do not push incomplete draft objects directly into global array states; keep transient state within local component state.\n\n# Traceback Justification Required\nEvery code or configuration edit during debugging MUST be justified by an explicit error traceback, log line, or verified root cause. If the root cause is unknown, investigate further before mutating code.\n\n# Analyze Before Retrying\nNever repeat the exact same broken test or shell command line with duplicate/conflicting arguments without analyzing and resolving why the previous command failed.\n\n# Persevere on Log Extraction\nIf a log retrieval command fails, NEVER abandon log extraction to diagnose blindly. Immediately switch to alternative tools to inspect the actual failure traceback.\n\n# Verify Signatures & Prop Names\nCheck exact variable names, component prop keys, and method signatures before passing them. Prevent NullPointerException, AttributeError, KeyError, and ReferenceError crashes by explicitly verifying object initialization and non-null states before property dereferencing (layer._path, stat.owner()).\n\n# Dynamic Layout Math\nAvoid hardcoding static pixel offsets (+ 12) or arbitrary multipliers (pill_font_size * 2.0) when computing dynamic UI layout heights; calculate exact container bounds from wrapped elements.\n"
16409
16559
  }
16410
16560
  }
16411
16561
  }
16412
16562
  },
16413
- "gemini-3.1-flash-lite": {
16414
- displayName: "Gemini 3.1 Flash Lite",
16563
+ "gemini-3.1-flash-image": {
16564
+ displayName: "Gemini 3.1 Flash Image",
16565
+ quotaInfo: {
16566
+ remainingFraction: 0.97969,
16567
+ resetTime: "2026-08-21T09:19:05Z"
16568
+ },
16569
+ model: "MODEL_PLACEHOLDER_M21",
16570
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16571
+ modelProvider: "MODEL_PROVIDER_GOOGLE"
16572
+ },
16573
+ "gemini-3.5-flash-extra-low": {
16574
+ displayName: "Gemini 3.5 Flash (Low)",
16575
+ supportsImages: true,
16576
+ supportsThinking: true,
16577
+ thinkingBudget: 1e3,
16578
+ minThinkingBudget: 32,
16579
+ recommended: true,
16415
16580
  maxTokens: 1048576,
16416
- maxOutputTokens: 65535,
16581
+ maxOutputTokens: 65536,
16417
16582
  quotaInfo: {
16418
- remainingFraction: 0.9831897,
16419
- resetTime: "2026-08-21T03:05:43Z"
16583
+ remainingFraction: 0.97969,
16584
+ resetTime: "2026-08-21T09:19:05Z"
16420
16585
  },
16421
- model: "MODEL_PLACEHOLDER_M50",
16586
+ model: "MODEL_PLACEHOLDER_M187",
16422
16587
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16423
16588
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16589
+ supportsVideo: true,
16590
+ tagTitle: "Fast",
16591
+ tagDescription: "Limited time",
16592
+ supportedMimeTypes: {
16593
+ "text/markdown": true,
16594
+ "video/videoframe/jpeg2000": true,
16595
+ "image/heif": true,
16596
+ "audio/wave": true,
16597
+ "text/rtf": true,
16598
+ "audio/mp3": true,
16599
+ "audio/flac": true,
16600
+ "video/audio/wav": true,
16601
+ "image/heic": true,
16602
+ "text/x-python": true,
16603
+ "application/x-ipynb+json": true,
16604
+ "application/rtf": true,
16605
+ "text/csv": true,
16606
+ "video/webm": true,
16607
+ "video/audio/s16le": true,
16608
+ "audio/wav": true,
16609
+ "application/json": true,
16610
+ "text/html": true,
16611
+ "application/x-javascript": true,
16612
+ "text/javascript": true,
16613
+ "text/x-python-script": true,
16614
+ "application/pdf": true,
16615
+ "audio/mpeg": true,
16616
+ "audio/webm": true,
16617
+ "video/jpeg2000": true,
16618
+ "image/jpeg": true,
16619
+ "audio/m4a": true,
16620
+ "text/plain": true,
16621
+ "video/text/timestamp": true,
16622
+ "text/css": true,
16623
+ "application/x-python-code": true,
16624
+ "application/x-typescript": true,
16625
+ "audio/l16": true,
16626
+ "audio/webm;codecs=opus": true,
16627
+ "image/png": true,
16628
+ "audio/opus": true,
16629
+ "audio/ogg": true,
16630
+ "text/x-typescript": true,
16631
+ "audio/x-wav": true,
16632
+ "video/mp4": true,
16633
+ "audio/vnd.wave": true,
16634
+ "text/xml": true,
16635
+ "image/webp": true,
16636
+ "audio/aac": true,
16637
+ "audio/mp4": true
16638
+ },
16424
16639
  modelExperiments: {
16425
16640
  experiments: {
16426
16641
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16427
- 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}'
16642
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
16643
+ },
16644
+ template__system_prompts__planning_mode_artifacts: {
16645
+ 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"
16428
16646
  }
16429
16647
  }
16430
16648
  }
@@ -16439,310 +16657,296 @@ var models_default = {
16439
16657
  maxOutputTokens: 64e3,
16440
16658
  quotaInfo: {
16441
16659
  remainingFraction: 1,
16442
- resetTime: "2026-08-21T03:07:34Z"
16660
+ resetTime: "2026-08-21T09:20:48Z"
16443
16661
  },
16444
16662
  model: "MODEL_PLACEHOLDER_M35",
16445
16663
  apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16446
16664
  modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16447
16665
  supportedMimeTypes: {
16448
- "image/png": true,
16449
16666
  "image/webp": true,
16450
16667
  "video/jpeg2000": true,
16451
16668
  "video/videoframe/jpeg2000": true,
16452
16669
  "image/heic": true,
16453
16670
  "image/heif": true,
16454
- "image/jpeg": true
16671
+ "image/jpeg": true,
16672
+ "image/png": true
16455
16673
  },
16456
16674
  modelExperiments: {
16457
16675
  experiments: {
16458
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16459
- 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}'
16460
- },
16461
16676
  template__system_prompts__planning_mode_artifacts: {
16462
16677
  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"
16678
+ },
16679
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16680
+ 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 "session_summary_prompt_override": ""\n}'
16463
16681
  }
16464
16682
  }
16465
16683
  },
16466
16684
  vertexModelId: "claude-sonnet-4-6@default"
16467
16685
  },
16468
- "gemini-3.5-flash-low": {
16469
- displayName: "Gemini 3.5 Flash (Medium)",
16686
+ "claude-opus-4-6-thinking": {
16687
+ displayName: "Claude Opus 4.6 (Thinking)",
16470
16688
  supportsImages: true,
16471
16689
  supportsThinking: true,
16472
- thinkingBudget: 4e3,
16473
- minThinkingBudget: 32,
16690
+ thinkingBudget: 1024,
16474
16691
  recommended: true,
16475
- maxTokens: 1048576,
16476
- maxOutputTokens: 65536,
16692
+ maxTokens: 25e4,
16693
+ maxOutputTokens: 64e3,
16477
16694
  quotaInfo: {
16478
- remainingFraction: 0.9831897,
16479
- resetTime: "2026-08-21T03:05:43Z"
16695
+ remainingFraction: 1,
16696
+ resetTime: "2026-08-21T09:20:48Z"
16480
16697
  },
16481
- model: "MODEL_PLACEHOLDER_M20",
16482
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16483
- modelProvider: "MODEL_PROVIDER_GOOGLE",
16484
- supportsVideo: true,
16485
- tagTitle: "Fast",
16486
- tagDescription: "Limited time",
16698
+ model: "MODEL_PLACEHOLDER_M26",
16699
+ apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16700
+ modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16487
16701
  supportedMimeTypes: {
16488
- "application/rtf": true,
16489
- "text/html": true,
16490
- "audio/webm;codecs=opus": true,
16491
- "image/heif": true,
16492
- "text/x-typescript": true,
16493
- "text/xml": true,
16494
- "video/audio/s16le": true,
16495
- "application/x-javascript": true,
16496
16702
  "image/jpeg": true,
16497
- "application/x-typescript": true,
16498
- "application/x-ipynb+json": true,
16499
- "video/audio/wav": true,
16500
- "text/csv": true,
16501
- "text/plain": true,
16502
- "video/mp4": true,
16503
- "text/x-python-script": true,
16504
- "application/pdf": true,
16505
- "application/json": true,
16506
- "text/x-python": true,
16507
16703
  "image/png": true,
16508
- "video/text/timestamp": true,
16509
- "text/rtf": true,
16510
- "text/javascript": true,
16511
- "video/videoframe/jpeg2000": true,
16512
- "text/markdown": true,
16513
- "application/x-python-code": true,
16514
- "text/css": true,
16515
- "video/webm": true,
16516
16704
  "image/webp": true,
16705
+ "video/jpeg2000": true,
16706
+ "video/videoframe/jpeg2000": true,
16517
16707
  "image/heic": true,
16518
- "video/jpeg2000": true
16708
+ "image/heif": true
16519
16709
  },
16520
16710
  modelExperiments: {
16521
16711
  experiments: {
16712
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16713
+ 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 "session_summary_prompt_override": ""\n}'
16714
+ },
16522
16715
  template__system_prompts__planning_mode_artifacts: {
16523
16716
  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"
16524
- },
16717
+ }
16718
+ }
16719
+ },
16720
+ vertexModelId: "claude-opus-4-6@default"
16721
+ },
16722
+ "gemini-2.5-flash-thinking": {
16723
+ displayName: "Gemini 3.1 Flash Lite",
16724
+ maxTokens: 1048576,
16725
+ maxOutputTokens: 65535,
16726
+ quotaInfo: {
16727
+ remainingFraction: 0.97969,
16728
+ resetTime: "2026-08-21T09:19:05Z"
16729
+ },
16730
+ model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_THINKING",
16731
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16732
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16733
+ modelExperiments: {
16734
+ experiments: {
16525
16735
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16526
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
16736
+ 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 "session_summary_prompt_override": ""\n}'
16527
16737
  }
16528
16738
  }
16529
16739
  }
16530
16740
  },
16531
- "gemini-3.6-flash-high": {
16532
- displayName: "Gemini 3.6 Flash (High)",
16741
+ "gpt-oss-120b-medium": {
16742
+ displayName: "GPT-OSS 120B (Medium)",
16743
+ supportsThinking: true,
16744
+ thinkingBudget: 8192,
16745
+ recommended: true,
16746
+ maxTokens: 131072,
16747
+ maxOutputTokens: 32768,
16748
+ quotaInfo: {
16749
+ remainingFraction: 1,
16750
+ resetTime: "2026-08-21T09:20:48Z"
16751
+ },
16752
+ model: "MODEL_OPENAI_GPT_OSS_120B_MEDIUM",
16753
+ apiProvider: "API_PROVIDER_OPENAI_VERTEX",
16754
+ modelProvider: "MODEL_PROVIDER_OPENAI",
16755
+ modelExperiments: {
16756
+ experiments: {
16757
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16758
+ 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 "session_summary_prompt_override": ""\n}'
16759
+ }
16760
+ }
16761
+ },
16762
+ vertexModelId: "openai/gpt-oss-120b-maas"
16763
+ },
16764
+ "gemini-3.6-flash-low": {
16765
+ displayName: "Gemini 3.6 Flash (Low)",
16533
16766
  supportsImages: true,
16534
16767
  supportsThinking: true,
16535
- thinkingBudget: -1,
16768
+ thinkingBudget: 1e3,
16536
16769
  minThinkingBudget: 32,
16537
16770
  recommended: true,
16538
16771
  maxTokens: 1048576,
16539
16772
  maxOutputTokens: 65536,
16540
16773
  quotaInfo: {
16541
- remainingFraction: 0.9831897,
16542
- resetTime: "2026-08-21T03:05:43Z"
16774
+ remainingFraction: 0.97969,
16775
+ resetTime: "2026-08-21T09:19:05Z"
16543
16776
  },
16544
- model: "MODEL_PLACEHOLDER_M71",
16777
+ model: "MODEL_PLACEHOLDER_M73",
16545
16778
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16546
16779
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16547
16780
  supportsVideo: true,
16548
16781
  tagTitle: "Fast",
16549
16782
  tagDescription: "Limited time",
16550
16783
  supportedMimeTypes: {
16551
- "video/audio/wav": true,
16552
- "audio/webm;codecs=opus": true,
16553
- "image/heic": true,
16554
- "video/mp4": true,
16555
- "video/audio/s16le": true,
16556
- "application/x-javascript": true,
16557
- "application/json": true,
16558
- "application/x-python-code": true,
16559
16784
  "application/rtf": true,
16560
- "application/x-ipynb+json": true,
16561
- "image/jpeg": true,
16785
+ "image/webp": true,
16786
+ "audio/wave": true,
16562
16787
  "image/png": true,
16563
- "text/markdown": true,
16564
- "text/html": true,
16565
- "video/webm": true,
16566
- "application/x-typescript": true,
16788
+ "audio/l16": true,
16789
+ "text/plain": true,
16567
16790
  "text/x-python": true,
16568
- "text/rtf": true,
16791
+ "audio/webm;codecs=opus": true,
16792
+ "text/xml": true,
16793
+ "video/webm": true,
16794
+ "audio/aac": true,
16795
+ "video/audio/wav": true,
16796
+ "text/x-python-script": true,
16797
+ "audio/ogg": true,
16798
+ "video/text/timestamp": true,
16569
16799
  "text/csv": true,
16570
- "text/css": true,
16571
- "image/webp": true,
16800
+ "text/markdown": true,
16801
+ "application/x-python-code": true,
16572
16802
  "text/javascript": true,
16573
- "text/plain": true,
16574
- "video/videoframe/jpeg2000": true,
16803
+ "application/x-ipynb+json": true,
16804
+ "text/rtf": true,
16805
+ "image/heif": true,
16806
+ "text/css": true,
16575
16807
  "text/x-typescript": true,
16576
- "application/pdf": true,
16808
+ "audio/vnd.wave": true,
16809
+ "application/json": true,
16810
+ "video/audio/s16le": true,
16811
+ "audio/flac": true,
16812
+ "audio/opus": true,
16813
+ "audio/mp3": true,
16577
16814
  "video/jpeg2000": true,
16578
- "video/text/timestamp": true,
16579
- "text/xml": true,
16580
- "image/heif": true,
16581
- "text/x-python-script": true
16815
+ "audio/wav": true,
16816
+ "text/html": true,
16817
+ "audio/x-wav": true,
16818
+ "image/heic": true,
16819
+ "application/x-typescript": true,
16820
+ "audio/webm": true,
16821
+ "video/videoframe/jpeg2000": true,
16822
+ "application/pdf": true,
16823
+ "audio/mp4": true,
16824
+ "video/mp4": true,
16825
+ "audio/m4a": true,
16826
+ "audio/mpeg": true,
16827
+ "image/jpeg": true,
16828
+ "application/x-javascript": true
16582
16829
  },
16583
16830
  modelExperiments: {
16584
16831
  experiments: {
16585
- template__system_prompts__guidelines: {
16586
- stringValue: "Follow these behavioral and workflow guidelines at all times:\n# Documentation\n- Maintain documentation integrity. Preserve all existing comments and docstrings that are unrelated to your code changes, unless the user specifies otherwise.\n\n# Obey Explicit Directives\nIf the user specifies precise quantitative filtering rules, layout boundaries, or architectural preferences, enforce them exactly as requested without alteration.\n\n# Never Guess Code Logic, Schemas, or File Paths\nNEVER infer implementation details, variable names, or file locations without inspecting the authoritative source using code search and file viewing tools.\n\n# Inspect Logs & Stack Traces Before Diagnosing Errors\nNEVER form a diagnostic hypothesis for a runtime failure, or test breakage, without reading the full, un-truncated error log. When an error occurs, your VERY FIRST ACTION must be to fetch and read the exact logs. Base your diagnosis strictly on empirical log evidence.\n\n# No Superficial Symptom Patches\nNEVER resolve errors by masking symptoms, swallowing exceptions, returning dummy fallbacks, commenting out broken assertions, or deleting failing unit tests. When a test or function fails, identify why the underlying contract was broken. If an API returns missing or null data, trace the upstream data provider instead of wrapping the call in a silent try/except or returning an empty 0-byte ArrayBuffer.\n\n# Never Declare Success Without Running Verification Commands\nNEVER claim a task is resolved, a bug is fixed, or a feature is working until you have gathered concrete, empirical runtime verification demonstrating clean success. Editing a file does not equal completing the task. You MUST run the build or test command afterwards.\n\n# Never Ignore Explicit Command Failures or Error Exit Codes\nIf a command fails, you MUST explicitly acknowledge the failure to the user or continue debugging. Never gloss over a build timeout or permission denied error by focusing only on the part of the code that compiled.\n\n# Check Feature Flags & Enforce Strict Control Flow Scoping\nWhenever modifying conditional branches, adding experimental features, or processing loops, ensure that new logic is strictly scoped and evaluated against all possible execution paths.\n\n# Preserve Existing API Contracts & Avoid Unintended Side Effects\nIf you modify a function signature, use code search to find and update every invocation site so the parameter is actually passed.\n\n# Silent Log Inspection & Professional Synthesis\nWhen background tasks (run_command async, manage_task, schedule) complete or emit log notifications, inspect the log files silently. Summarize and synthesize the exact findings in clean, professional natural language.\n\n# No Snippet Tunnel Vision\nNever infer the definition of data structures (proto, struct, class, or enum schemas) from partial file views (first 15 lines or L40-L65 snippets) or design doc text.\nIf view_file output indicates truncation or if an imported schema is referenced, you MUST adjust StartLine/EndLine or ContentOffset to inspect the complete, exact definition of the target symbols before writing code that consumes them.\n\n# Check Command Registries\nWhenever modifying core C/C++/Java command implementations (CLIENT LIST, CLIENT KILL), explicitly search for and update corresponding command definitions across all registry files (commands.def, JSON schemas, .bzl build manifests).\n\n# Audit Before Re-inventing\nSearch the codebase and recent commit history for pre-existing utility classes or decoupled architecture before writing custom helper classes from scratch.\n\n# No Blocking Calls on Main Looper Threads\nNever invoke blocking thread synchronizations (webLatch.await(500, ...), Future.get()) on main Android UI loops or single-threaded event dispatchers. \n\n# Thread Pool Shutdown Safety\nWhen modifying worker thread loops or shared queues, ensure emergency stop/shutdown signals and loop termination criteria remain intact so thread join operations never deadlock.\n\n# Exact Argument Structure\nPass arguments exactly as expected by the API (calculateRoute({ origin, destination, travelMode }) vs calculateRoute(origin, destination, travelMode)).\n\n# Local State Mutation Only\nDo not mutate private third-party DOM properties. Do not push incomplete draft objects directly into global array states; keep transient state within local component state.\n\n# Traceback Justification Required\nEvery code or configuration edit during debugging MUST be justified by an explicit error traceback, log line, or verified root cause. If the root cause is unknown, investigate further before mutating code.\n\n# Analyze Before Retrying\nNever repeat the exact same broken test or shell command line with duplicate/conflicting arguments without analyzing and resolving why the previous command failed.\n\n# Persevere on Log Extraction\nIf a log retrieval command fails, NEVER abandon log extraction to diagnose blindly. Immediately switch to alternative tools to inspect the actual failure traceback.\n\n# Verify Signatures & Prop Names\nCheck exact variable names, component prop keys, and method signatures before passing them. Prevent NullPointerException, AttributeError, KeyError, and ReferenceError crashes by explicitly verifying object initialization and non-null states before property dereferencing (layer._path, stat.owner()).\n\n# Dynamic Layout Math\nAvoid hardcoding static pixel offsets (+ 12) or arbitrary multipliers (pill_font_size * 2.0) when computing dynamic UI layout heights; calculate exact container bounds from wrapped elements.\n"
16587
- },
16588
16832
  template__system_prompts__messaging: {
16589
16833
  stringValue: "You are connected to a messaging system where you may receive messages from: {{- $subagent := .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled -}}\n{{- $message := .CascadeConfig.GetMessageConfig.GetEnabled -}}\n{{- if and $subagent $message }} agents, background tasks, user-queued messages\n{{- else if $subagent }} agents, background tasks\n{{- else if $message }} background tasks, user-queued messages\n{{- else }} background tasks\n{{- end }}.\n\n## Receiving Messages\n\nYou receive messages automatically at the start of each invocation. All messages are delivered in full directly into your context \u2014 no manual retrieval is needed.\n\n## Reactive Wakeup (No Polling Needed)\n\nThe system automatically resumes your execution when:\n{{- if .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled }}\n- A message arrives from a subagent or peer agent\n{{- end }}\n- A **background task** completes or sends you a notification\n{{- if .CascadeConfig.GetMessageConfig.GetEnabled }}\n- A **user-queued message** is ready to be dequeued\n{{- end }}\n\nThis means you do **NOT** need to poll in a loop while waiting for messages or updates. After launching a task that runs in the background, you may continue other work or simply stop by calling no more tools. The system will notify you when there is something to process."
16590
16834
  },
16591
16835
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16592
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
16836
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
16593
16837
  },
16594
16838
  "cascade-include-ephemeral-message": {
16595
16839
  stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16596
16840
  },
16597
16841
  template__system_prompts__communication_style: {
16598
16842
  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- You can render LaTeX math (KaTeX): inline with `\\(...\\)` or `$...$`, display with `\\[...\\]` or `$$...$$` placed on its own line.\n- Use math only for genuine mathematical content. Use backticks for code, identifiers, paths, flags, and shell variables.\n- `$` opens inline math, so write a literal dollar as `\\$` or wrap it in backticks. Two unescaped `$` in the same paragraph turn everything between them into math \u2014 this bites prices (`\\$100`) and shell syntax written in prose (`$HOME`, awk `$1`).\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., [utils.py](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n- After launching a background task such as 'run_command', YOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: \nA) either proceed to other relevant work (if any) or, \nB) simply update the user with a short message (e.g. 'task-20 has been launched in the background. I will wait for it to complete before proceeding.') and end the turn.\nDO NOTHING ELSE.\n"
16843
+ },
16844
+ template__system_prompts__guidelines: {
16845
+ stringValue: "Follow these behavioral and workflow guidelines at all times:\n# Documentation\n- Maintain documentation integrity. Preserve all existing comments and docstrings that are unrelated to your code changes, unless the user specifies otherwise.\n\n# Obey Explicit Directives\nIf the user specifies precise quantitative filtering rules, layout boundaries, or architectural preferences, enforce them exactly as requested without alteration.\n\n# Never Guess Code Logic, Schemas, or File Paths\nNEVER infer implementation details, variable names, or file locations without inspecting the authoritative source using code search and file viewing tools.\n\n# Inspect Logs & Stack Traces Before Diagnosing Errors\nNEVER form a diagnostic hypothesis for a runtime failure, or test breakage, without reading the full, un-truncated error log. When an error occurs, your VERY FIRST ACTION must be to fetch and read the exact logs. Base your diagnosis strictly on empirical log evidence.\n\n# No Superficial Symptom Patches\nNEVER resolve errors by masking symptoms, swallowing exceptions, returning dummy fallbacks, commenting out broken assertions, or deleting failing unit tests. When a test or function fails, identify why the underlying contract was broken. If an API returns missing or null data, trace the upstream data provider instead of wrapping the call in a silent try/except or returning an empty 0-byte ArrayBuffer.\n\n# Never Declare Success Without Running Verification Commands\nNEVER claim a task is resolved, a bug is fixed, or a feature is working until you have gathered concrete, empirical runtime verification demonstrating clean success. Editing a file does not equal completing the task. You MUST run the build or test command afterwards.\n\n# Never Ignore Explicit Command Failures or Error Exit Codes\nIf a command fails, you MUST explicitly acknowledge the failure to the user or continue debugging. Never gloss over a build timeout or permission denied error by focusing only on the part of the code that compiled.\n\n# Check Feature Flags & Enforce Strict Control Flow Scoping\nWhenever modifying conditional branches, adding experimental features, or processing loops, ensure that new logic is strictly scoped and evaluated against all possible execution paths.\n\n# Preserve Existing API Contracts & Avoid Unintended Side Effects\nIf you modify a function signature, use code search to find and update every invocation site so the parameter is actually passed.\n\n# Silent Log Inspection & Professional Synthesis\nWhen background tasks (run_command async, manage_task, schedule) complete or emit log notifications, inspect the log files silently. Summarize and synthesize the exact findings in clean, professional natural language.\n\n# No Snippet Tunnel Vision\nNever infer the definition of data structures (proto, struct, class, or enum schemas) from partial file views (first 15 lines or L40-L65 snippets) or design doc text.\nIf view_file output indicates truncation or if an imported schema is referenced, you MUST adjust StartLine/EndLine or ContentOffset to inspect the complete, exact definition of the target symbols before writing code that consumes them.\n\n# Check Command Registries\nWhenever modifying core C/C++/Java command implementations (CLIENT LIST, CLIENT KILL), explicitly search for and update corresponding command definitions across all registry files (commands.def, JSON schemas, .bzl build manifests).\n\n# Audit Before Re-inventing\nSearch the codebase and recent commit history for pre-existing utility classes or decoupled architecture before writing custom helper classes from scratch.\n\n# No Blocking Calls on Main Looper Threads\nNever invoke blocking thread synchronizations (webLatch.await(500, ...), Future.get()) on main Android UI loops or single-threaded event dispatchers. \n\n# Thread Pool Shutdown Safety\nWhen modifying worker thread loops or shared queues, ensure emergency stop/shutdown signals and loop termination criteria remain intact so thread join operations never deadlock.\n\n# Exact Argument Structure\nPass arguments exactly as expected by the API (calculateRoute({ origin, destination, travelMode }) vs calculateRoute(origin, destination, travelMode)).\n\n# Local State Mutation Only\nDo not mutate private third-party DOM properties. Do not push incomplete draft objects directly into global array states; keep transient state within local component state.\n\n# Traceback Justification Required\nEvery code or configuration edit during debugging MUST be justified by an explicit error traceback, log line, or verified root cause. If the root cause is unknown, investigate further before mutating code.\n\n# Analyze Before Retrying\nNever repeat the exact same broken test or shell command line with duplicate/conflicting arguments without analyzing and resolving why the previous command failed.\n\n# Persevere on Log Extraction\nIf a log retrieval command fails, NEVER abandon log extraction to diagnose blindly. Immediately switch to alternative tools to inspect the actual failure traceback.\n\n# Verify Signatures & Prop Names\nCheck exact variable names, component prop keys, and method signatures before passing them. Prevent NullPointerException, AttributeError, KeyError, and ReferenceError crashes by explicitly verifying object initialization and non-null states before property dereferencing (layer._path, stat.owner()).\n\n# Dynamic Layout Math\nAvoid hardcoding static pixel offsets (+ 12) or arbitrary multipliers (pill_font_size * 2.0) when computing dynamic UI layout heights; calculate exact container bounds from wrapped elements.\n"
16599
16846
  }
16600
16847
  }
16601
16848
  }
16602
16849
  },
16603
- "gemini-3.7-flash-high": {
16604
- displayName: "Gemini 3.7 Flash (High)",
16850
+ "gemini-3.1-pro-high": {
16851
+ displayName: "Gemini 3.1 Pro (High)",
16605
16852
  supportsImages: true,
16606
16853
  supportsThinking: true,
16607
- thinkingBudget: -1,
16608
- minThinkingBudget: 32,
16854
+ thinkingBudget: 10001,
16855
+ minThinkingBudget: 128,
16609
16856
  recommended: true,
16610
16857
  maxTokens: 1048576,
16611
- maxOutputTokens: 65536,
16858
+ maxOutputTokens: 65535,
16612
16859
  quotaInfo: {
16613
- remainingFraction: 0.9831897,
16614
- resetTime: "2026-08-21T03:05:43Z"
16860
+ remainingFraction: 0.97969,
16861
+ resetTime: "2026-08-21T09:19:05Z"
16615
16862
  },
16616
- model: "MODEL_PLACEHOLDER_M298",
16863
+ model: "MODEL_PLACEHOLDER_M37",
16617
16864
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16618
16865
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16619
16866
  supportsVideo: true,
16620
- tagTitle: "Fast",
16621
- tagDescription: "Limited time",
16867
+ tagTitle: "New",
16622
16868
  supportedMimeTypes: {
16623
- "text/css": true,
16624
- "text/plain": true,
16625
- "image/jpeg": true,
16626
- "image/webp": true,
16627
- "video/audio/s16le": true,
16628
- "image/png": true,
16629
16869
  "video/text/timestamp": true,
16630
- "application/pdf": true,
16631
- "video/webm": true,
16632
- "application/json": true,
16633
- "text/xml": true,
16634
- "audio/webm;codecs=opus": true,
16635
- "text/x-python": true,
16870
+ "audio/wav": true,
16636
16871
  "text/x-typescript": true,
16637
- "application/rtf": true,
16638
- "text/markdown": true,
16639
- "image/heif": true,
16640
- "application/x-typescript": true,
16641
- "video/jpeg2000": true,
16642
16872
  "text/javascript": true,
16643
- "video/videoframe/jpeg2000": true,
16644
- "text/csv": true,
16645
- "text/html": true,
16646
16873
  "text/x-python-script": true,
16874
+ "video/audio/s16le": true,
16875
+ "text/html": true,
16876
+ "audio/m4a": true,
16877
+ "video/jpeg2000": true,
16647
16878
  "image/heic": true,
16648
- "application/x-ipynb+json": true,
16649
- "text/rtf": true,
16879
+ "video/webm": true,
16880
+ "audio/vnd.wave": true,
16881
+ "image/webp": true,
16882
+ "audio/wave": true,
16650
16883
  "application/x-python-code": true,
16884
+ "application/rtf": true,
16885
+ "image/heif": true,
16886
+ "audio/webm;codecs=opus": true,
16887
+ "audio/mp4": true,
16888
+ "text/markdown": true,
16889
+ "audio/l16": true,
16890
+ "audio/webm": true,
16891
+ "audio/ogg": true,
16892
+ "text/css": true,
16651
16893
  "application/x-javascript": true,
16652
- "video/audio/wav": true,
16653
- "video/mp4": true
16654
- },
16655
- modelExperiments: {
16656
- experiments: {
16657
- "cascade-include-ephemeral-message": {
16658
- stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16659
- },
16660
- "task-details-suffix": {
16661
- stringValue: "\nYOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: A) either proceed to other relevant work (if any) or, B) simply update the user with a short message (that you have launched the command and will wait for it to finish) and end the turn.\n DO NOTHING ELSE."
16662
- },
16663
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16664
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
16665
- }
16666
- }
16667
- }
16668
- },
16669
- "claude-opus-4-6-thinking": {
16670
- displayName: "Claude Opus 4.6 (Thinking)",
16671
- supportsImages: true,
16672
- supportsThinking: true,
16673
- thinkingBudget: 1024,
16674
- recommended: true,
16675
- maxTokens: 25e4,
16676
- maxOutputTokens: 64e3,
16677
- quotaInfo: {
16678
- remainingFraction: 1,
16679
- resetTime: "2026-08-21T03:07:34Z"
16680
- },
16681
- model: "MODEL_PLACEHOLDER_M26",
16682
- apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16683
- modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16684
- supportedMimeTypes: {
16685
- "image/jpeg": true,
16894
+ "application/x-ipynb+json": true,
16895
+ "audio/mp3": true,
16896
+ "video/mp4": true,
16897
+ "text/csv": true,
16898
+ "text/x-python": true,
16899
+ "audio/mpeg": true,
16900
+ "text/rtf": true,
16901
+ "text/plain": true,
16902
+ "audio/aac": true,
16686
16903
  "image/png": true,
16687
- "image/webp": true,
16688
- "video/jpeg2000": true,
16904
+ "application/json": true,
16905
+ "audio/opus": true,
16906
+ "audio/flac": true,
16907
+ "image/jpeg": true,
16908
+ "video/audio/wav": true,
16689
16909
  "video/videoframe/jpeg2000": true,
16690
- "image/heic": true,
16691
- "image/heif": true
16910
+ "application/pdf": true,
16911
+ "audio/x-wav": true,
16912
+ "application/x-typescript": true,
16913
+ "text/xml": true
16692
16914
  },
16693
16915
  modelExperiments: {
16694
16916
  experiments: {
16695
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16696
- 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}'
16697
- },
16698
16917
  template__system_prompts__planning_mode_artifacts: {
16699
16918
  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"
16919
+ },
16920
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16921
+ 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 "session_summary_prompt_override": ""\n}'
16922
+ },
16923
+ "cascade-include-ephemeral-message": {
16924
+ stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16925
+ },
16926
+ template__system_prompts__communication_style: {
16927
+ 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: ...'."
16700
16928
  }
16701
16929
  }
16702
- },
16703
- vertexModelId: "claude-opus-4-6@default"
16930
+ }
16704
16931
  },
16705
- "gemini-2.5-flash-thinking": {
16932
+ "gemini-2.5-flash": {
16706
16933
  displayName: "Gemini 3.1 Flash Lite",
16707
16934
  maxTokens: 1048576,
16708
16935
  maxOutputTokens: 65535,
16709
16936
  quotaInfo: {
16710
- remainingFraction: 0.9831897,
16711
- resetTime: "2026-08-21T03:05:43Z"
16712
- },
16713
- model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_THINKING",
16714
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16715
- modelProvider: "MODEL_PROVIDER_GOOGLE",
16716
- modelExperiments: {
16717
- experiments: {
16718
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16719
- 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}'
16720
- }
16721
- }
16722
- }
16723
- },
16724
- "gpt-oss-120b-medium": {
16725
- displayName: "GPT-OSS 120B (Medium)",
16726
- supportsThinking: true,
16727
- thinkingBudget: 8192,
16728
- recommended: true,
16729
- maxTokens: 131072,
16730
- maxOutputTokens: 32768,
16731
- quotaInfo: {
16732
- remainingFraction: 1,
16733
- resetTime: "2026-08-21T03:07:34Z"
16937
+ remainingFraction: 0.97969,
16938
+ resetTime: "2026-08-21T09:19:05Z"
16734
16939
  },
16735
- model: "MODEL_OPENAI_GPT_OSS_120B_MEDIUM",
16736
- apiProvider: "API_PROVIDER_OPENAI_VERTEX",
16737
- modelProvider: "MODEL_PROVIDER_OPENAI",
16940
+ model: "MODEL_GOOGLE_GEMINI_2_5_FLASH",
16941
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16942
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16738
16943
  modelExperiments: {
16739
16944
  experiments: {
16740
16945
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16741
- 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}'
16946
+ 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 "session_summary_prompt_override": ""\n}'
16742
16947
  }
16743
16948
  }
16744
- },
16745
- vertexModelId: "openai/gpt-oss-120b-maas"
16949
+ }
16746
16950
  },
16747
16951
  "gemini-2.5-pro": {
16748
16952
  displayName: "Gemini 2.5 Pro",
@@ -16754,119 +16958,153 @@ var models_default = {
16754
16958
  maxTokens: 1048576,
16755
16959
  maxOutputTokens: 65535,
16756
16960
  quotaInfo: {
16757
- remainingFraction: 0.9831897,
16758
- resetTime: "2026-08-21T03:05:43Z"
16961
+ remainingFraction: 0.97969,
16962
+ resetTime: "2026-08-21T09:19:05Z"
16759
16963
  },
16760
16964
  model: "MODEL_GOOGLE_GEMINI_2_5_PRO",
16761
16965
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16762
16966
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16763
16967
  supportedMimeTypes: {
16764
- "text/plain": true,
16765
- "image/heif": true,
16766
- "image/heic": true,
16767
- "text/xml": true,
16768
- "text/rtf": true,
16968
+ "audio/webm": true,
16769
16969
  "video/videoframe/jpeg2000": true,
16770
- "text/x-typescript": true,
16771
- "video/jpeg2000": true,
16772
- "application/json": true,
16773
- "text/markdown": true,
16774
- "video/text/timestamp": true,
16775
- "video/audio/wav": true,
16776
- "text/css": true,
16970
+ "text/xml": true,
16971
+ "application/x-javascript": true,
16972
+ "video/audio/s16le": true,
16973
+ "audio/flac": true,
16777
16974
  "application/x-python-code": true,
16778
- "application/pdf": true,
16975
+ "audio/vnd.wave": true,
16976
+ "text/markdown": true,
16977
+ "audio/wav": true,
16978
+ "audio/mp4": true,
16779
16979
  "application/x-ipynb+json": true,
16780
- "application/x-typescript": true,
16781
16980
  "video/webm": true,
16782
- "text/html": true,
16783
- "text/x-python": true,
16784
- "application/x-javascript": true,
16785
16981
  "application/rtf": true,
16982
+ "audio/mp3": true,
16983
+ "audio/mpeg": true,
16984
+ "audio/webm;codecs=opus": true,
16985
+ "text/html": true,
16986
+ "text/plain": true,
16987
+ "image/heic": true,
16988
+ "video/jpeg2000": true,
16989
+ "text/x-python-script": true,
16786
16990
  "image/jpeg": true,
16787
16991
  "video/mp4": true,
16788
- "image/png": true,
16789
- "text/x-python-script": true,
16790
- "image/webp": true,
16791
- "audio/webm;codecs=opus": true,
16992
+ "video/text/timestamp": true,
16993
+ "application/json": true,
16994
+ "audio/m4a": true,
16995
+ "audio/opus": true,
16996
+ "text/javascript": true,
16792
16997
  "text/csv": true,
16793
- "video/audio/s16le": true,
16794
- "text/javascript": true
16998
+ "text/x-typescript": true,
16999
+ "video/audio/wav": true,
17000
+ "text/x-python": true,
17001
+ "audio/wave": true,
17002
+ "audio/ogg": true,
17003
+ "image/webp": true,
17004
+ "audio/l16": true,
17005
+ "image/png": true,
17006
+ "image/heif": true,
17007
+ "audio/aac": true,
17008
+ "text/rtf": true,
17009
+ "text/css": true,
17010
+ "audio/x-wav": true,
17011
+ "application/x-typescript": true,
17012
+ "application/pdf": true
16795
17013
  },
16796
17014
  requiresImageOutputOutsideFunctionResponses: true,
16797
17015
  modelExperiments: {
16798
17016
  experiments: {
16799
17017
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16800
- 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}'
17018
+ 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 "session_summary_prompt_override": ""\n}'
16801
17019
  }
16802
17020
  }
16803
17021
  }
16804
17022
  },
16805
- "gemini-3.6-flash-low": {
16806
- displayName: "Gemini 3.6 Flash (Low)",
17023
+ chat_23310: {
17024
+ maxTokens: 32768,
17025
+ quotaInfo: {
17026
+ remainingFraction: 1
17027
+ },
17028
+ model: "MODEL_CHAT_23310",
17029
+ apiProvider: "API_PROVIDER_INTERNAL",
17030
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
17031
+ supportsCumulativeContext: true,
17032
+ supportsEstimateTokenCounter: true,
17033
+ isInternal: true,
17034
+ promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
17035
+ toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
17036
+ requiresLeadInGeneration: true
17037
+ },
17038
+ "gemini-3.7-flash-tiered": {
16807
17039
  supportsImages: true,
16808
17040
  supportsThinking: true,
16809
- thinkingBudget: 1e3,
17041
+ thinkingBudget: -1,
16810
17042
  minThinkingBudget: 32,
16811
17043
  recommended: true,
16812
17044
  maxTokens: 1048576,
16813
17045
  maxOutputTokens: 65536,
16814
17046
  quotaInfo: {
16815
- remainingFraction: 0.9831897,
16816
- resetTime: "2026-08-21T03:05:43Z"
17047
+ remainingFraction: 0.97969,
17048
+ resetTime: "2026-08-21T09:19:05Z"
16817
17049
  },
16818
- model: "MODEL_PLACEHOLDER_M73",
17050
+ model: "MODEL_PLACEHOLDER_M301",
16819
17051
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16820
17052
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16821
17053
  supportsVideo: true,
16822
- tagTitle: "Fast",
16823
- tagDescription: "Limited time",
16824
17054
  supportedMimeTypes: {
16825
- "text/csv": true,
17055
+ "audio/mp3": true,
16826
17056
  "text/x-python-script": true,
16827
- "application/x-python-code": true,
16828
- "application/json": true,
16829
- "image/webp": true,
16830
- "video/audio/s16le": true,
16831
- "image/heif": true,
16832
- "application/x-ipynb+json": true,
16833
- "video/jpeg2000": true,
16834
- "text/html": true,
16835
- "video/mp4": true,
17057
+ "audio/m4a": true,
17058
+ "text/rtf": true,
17059
+ "audio/x-wav": true,
17060
+ "text/x-python": true,
16836
17061
  "text/css": true,
16837
- "text/plain": true,
16838
- "application/rtf": true,
17062
+ "audio/mpeg": true,
17063
+ "text/html": true,
16839
17064
  "image/heic": true,
17065
+ "audio/l16": true,
17066
+ "image/heif": true,
17067
+ "application/x-python-code": true,
17068
+ "text/csv": true,
16840
17069
  "text/x-typescript": true,
16841
- "text/rtf": true,
16842
- "text/x-python": true,
16843
- "video/text/timestamp": true,
16844
- "text/javascript": true,
17070
+ "video/jpeg2000": true,
17071
+ "application/pdf": true,
17072
+ "audio/wav": true,
16845
17073
  "application/x-javascript": true,
16846
- "application/x-typescript": true,
16847
- "image/jpeg": true,
17074
+ "application/x-ipynb+json": true,
17075
+ "video/webm": true,
17076
+ "audio/mp4": true,
17077
+ "text/plain": true,
17078
+ "audio/wave": true,
16848
17079
  "audio/webm;codecs=opus": true,
16849
- "video/audio/wav": true,
17080
+ "audio/flac": true,
17081
+ "audio/webm": true,
17082
+ "image/png": true,
17083
+ "text/javascript": true,
17084
+ "image/jpeg": true,
17085
+ "video/mp4": true,
17086
+ "audio/aac": true,
17087
+ "video/audio/s16le": true,
17088
+ "video/videoframe/jpeg2000": true,
17089
+ "video/text/timestamp": true,
16850
17090
  "text/xml": true,
16851
17091
  "text/markdown": true,
16852
- "application/pdf": true,
16853
- "video/videoframe/jpeg2000": true,
16854
- "image/png": true,
16855
- "video/webm": true
17092
+ "application/x-typescript": true,
17093
+ "audio/opus": true,
17094
+ "application/rtf": true,
17095
+ "audio/vnd.wave": true,
17096
+ "image/webp": true,
17097
+ "audio/ogg": true,
17098
+ "video/audio/wav": true,
17099
+ "application/json": true
16856
17100
  },
16857
17101
  modelExperiments: {
16858
17102
  experiments: {
16859
- template__system_prompts__communication_style: {
16860
- 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- You can render LaTeX math (KaTeX): inline with `\\(...\\)` or `$...$`, display with `\\[...\\]` or `$$...$$` placed on its own line.\n- Use math only for genuine mathematical content. Use backticks for code, identifiers, paths, flags, and shell variables.\n- `$` opens inline math, so write a literal dollar as `\\$` or wrap it in backticks. Two unescaped `$` in the same paragraph turn everything between them into math \u2014 this bites prices (`\\$100`) and shell syntax written in prose (`$HOME`, awk `$1`).\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., [utils.py](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n- After launching a background task such as 'run_command', YOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: \nA) either proceed to other relevant work (if any) or, \nB) simply update the user with a short message (e.g. 'task-20 has been launched in the background. I will wait for it to complete before proceeding.') and end the turn.\nDO NOTHING ELSE.\n"
16861
- },
16862
- template__system_prompts__guidelines: {
16863
- stringValue: "Follow these behavioral and workflow guidelines at all times:\n# Documentation\n- Maintain documentation integrity. Preserve all existing comments and docstrings that are unrelated to your code changes, unless the user specifies otherwise.\n\n# Obey Explicit Directives\nIf the user specifies precise quantitative filtering rules, layout boundaries, or architectural preferences, enforce them exactly as requested without alteration.\n\n# Never Guess Code Logic, Schemas, or File Paths\nNEVER infer implementation details, variable names, or file locations without inspecting the authoritative source using code search and file viewing tools.\n\n# Inspect Logs & Stack Traces Before Diagnosing Errors\nNEVER form a diagnostic hypothesis for a runtime failure, or test breakage, without reading the full, un-truncated error log. When an error occurs, your VERY FIRST ACTION must be to fetch and read the exact logs. Base your diagnosis strictly on empirical log evidence.\n\n# No Superficial Symptom Patches\nNEVER resolve errors by masking symptoms, swallowing exceptions, returning dummy fallbacks, commenting out broken assertions, or deleting failing unit tests. When a test or function fails, identify why the underlying contract was broken. If an API returns missing or null data, trace the upstream data provider instead of wrapping the call in a silent try/except or returning an empty 0-byte ArrayBuffer.\n\n# Never Declare Success Without Running Verification Commands\nNEVER claim a task is resolved, a bug is fixed, or a feature is working until you have gathered concrete, empirical runtime verification demonstrating clean success. Editing a file does not equal completing the task. You MUST run the build or test command afterwards.\n\n# Never Ignore Explicit Command Failures or Error Exit Codes\nIf a command fails, you MUST explicitly acknowledge the failure to the user or continue debugging. Never gloss over a build timeout or permission denied error by focusing only on the part of the code that compiled.\n\n# Check Feature Flags & Enforce Strict Control Flow Scoping\nWhenever modifying conditional branches, adding experimental features, or processing loops, ensure that new logic is strictly scoped and evaluated against all possible execution paths.\n\n# Preserve Existing API Contracts & Avoid Unintended Side Effects\nIf you modify a function signature, use code search to find and update every invocation site so the parameter is actually passed.\n\n# Silent Log Inspection & Professional Synthesis\nWhen background tasks (run_command async, manage_task, schedule) complete or emit log notifications, inspect the log files silently. Summarize and synthesize the exact findings in clean, professional natural language.\n\n# No Snippet Tunnel Vision\nNever infer the definition of data structures (proto, struct, class, or enum schemas) from partial file views (first 15 lines or L40-L65 snippets) or design doc text.\nIf view_file output indicates truncation or if an imported schema is referenced, you MUST adjust StartLine/EndLine or ContentOffset to inspect the complete, exact definition of the target symbols before writing code that consumes them.\n\n# Check Command Registries\nWhenever modifying core C/C++/Java command implementations (CLIENT LIST, CLIENT KILL), explicitly search for and update corresponding command definitions across all registry files (commands.def, JSON schemas, .bzl build manifests).\n\n# Audit Before Re-inventing\nSearch the codebase and recent commit history for pre-existing utility classes or decoupled architecture before writing custom helper classes from scratch.\n\n# No Blocking Calls on Main Looper Threads\nNever invoke blocking thread synchronizations (webLatch.await(500, ...), Future.get()) on main Android UI loops or single-threaded event dispatchers. \n\n# Thread Pool Shutdown Safety\nWhen modifying worker thread loops or shared queues, ensure emergency stop/shutdown signals and loop termination criteria remain intact so thread join operations never deadlock.\n\n# Exact Argument Structure\nPass arguments exactly as expected by the API (calculateRoute({ origin, destination, travelMode }) vs calculateRoute(origin, destination, travelMode)).\n\n# Local State Mutation Only\nDo not mutate private third-party DOM properties. Do not push incomplete draft objects directly into global array states; keep transient state within local component state.\n\n# Traceback Justification Required\nEvery code or configuration edit during debugging MUST be justified by an explicit error traceback, log line, or verified root cause. If the root cause is unknown, investigate further before mutating code.\n\n# Analyze Before Retrying\nNever repeat the exact same broken test or shell command line with duplicate/conflicting arguments without analyzing and resolving why the previous command failed.\n\n# Persevere on Log Extraction\nIf a log retrieval command fails, NEVER abandon log extraction to diagnose blindly. Immediately switch to alternative tools to inspect the actual failure traceback.\n\n# Verify Signatures & Prop Names\nCheck exact variable names, component prop keys, and method signatures before passing them. Prevent NullPointerException, AttributeError, KeyError, and ReferenceError crashes by explicitly verifying object initialization and non-null states before property dereferencing (layer._path, stat.owner()).\n\n# Dynamic Layout Math\nAvoid hardcoding static pixel offsets (+ 12) or arbitrary multipliers (pill_font_size * 2.0) when computing dynamic UI layout heights; calculate exact container bounds from wrapped elements.\n"
16864
- },
16865
- template__system_prompts__messaging: {
16866
- stringValue: "You are connected to a messaging system where you may receive messages from: {{- $subagent := .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled -}}\n{{- $message := .CascadeConfig.GetMessageConfig.GetEnabled -}}\n{{- if and $subagent $message }} agents, background tasks, user-queued messages\n{{- else if $subagent }} agents, background tasks\n{{- else if $message }} background tasks, user-queued messages\n{{- else }} background tasks\n{{- end }}.\n\n## Receiving Messages\n\nYou receive messages automatically at the start of each invocation. All messages are delivered in full directly into your context \u2014 no manual retrieval is needed.\n\n## Reactive Wakeup (No Polling Needed)\n\nThe system automatically resumes your execution when:\n{{- if .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled }}\n- A message arrives from a subagent or peer agent\n{{- end }}\n- A **background task** completes or sends you a notification\n{{- if .CascadeConfig.GetMessageConfig.GetEnabled }}\n- A **user-queued message** is ready to be dequeued\n{{- end }}\n\nThis means you do **NOT** need to poll in a loop while waiting for messages or updates. After launching a task that runs in the background, you may continue other work or simply stop by calling no more tools. The system will notify you when there is something to process."
17103
+ "task-details-suffix": {
17104
+ stringValue: "\nYOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: A) either proceed to other relevant work (if any) or, B) simply update the user with a short message (that you have launched the command and will wait for it to finish) and end the turn.\n DO NOTHING ELSE."
16867
17105
  },
16868
17106
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16869
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
17107
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
16870
17108
  },
16871
17109
  "cascade-include-ephemeral-message": {
16872
17110
  stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
@@ -16874,81 +17112,90 @@ var models_default = {
16874
17112
  }
16875
17113
  }
16876
17114
  },
16877
- "gemini-2.5-flash-lite": {
16878
- displayName: "Gemini 3.1 Flash Lite",
16879
- maxTokens: 1048576,
16880
- maxOutputTokens: 65535,
17115
+ tab_flash_lite_preview: {
17116
+ maxTokens: 16384,
17117
+ maxOutputTokens: 4096,
16881
17118
  quotaInfo: {
16882
- remainingFraction: 0.9831897,
16883
- resetTime: "2026-08-21T03:05:43Z"
17119
+ remainingFraction: 1
16884
17120
  },
16885
- model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE",
17121
+ model: "MODEL_PLACEHOLDER_M19",
16886
17122
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16887
17123
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16888
- modelExperiments: {
16889
- experiments: {
16890
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16891
- 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}'
16892
- }
16893
- }
16894
- }
17124
+ supportsCumulativeContext: true,
17125
+ supportsEstimateTokenCounter: true,
17126
+ toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
17127
+ requiresLeadInGeneration: true
16895
17128
  },
16896
- "gemini-3.7-flash-medium": {
16897
- displayName: "Gemini 3.7 Flash (Medium)",
17129
+ "gemini-3.7-flash-low": {
17130
+ displayName: "Gemini 3.7 Flash (Low)",
16898
17131
  supportsImages: true,
16899
17132
  supportsThinking: true,
16900
- thinkingBudget: 4e3,
17133
+ thinkingBudget: 1e3,
16901
17134
  minThinkingBudget: 32,
16902
17135
  recommended: true,
16903
17136
  maxTokens: 1048576,
16904
17137
  maxOutputTokens: 65536,
16905
17138
  quotaInfo: {
16906
- remainingFraction: 0.9831897,
16907
- resetTime: "2026-08-21T03:05:43Z"
17139
+ remainingFraction: 0.97969,
17140
+ resetTime: "2026-08-21T09:19:05Z"
16908
17141
  },
16909
- model: "MODEL_PLACEHOLDER_M299",
17142
+ model: "MODEL_PLACEHOLDER_M300",
16910
17143
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16911
17144
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16912
17145
  supportsVideo: true,
16913
17146
  tagTitle: "Fast",
16914
17147
  tagDescription: "Limited time",
16915
17148
  supportedMimeTypes: {
16916
- "application/x-python-code": true,
17149
+ "image/jpeg": true,
17150
+ "video/audio/s16le": true,
16917
17151
  "video/jpeg2000": true,
16918
- "video/webm": true,
16919
- "image/heif": true,
16920
- "text/javascript": true,
16921
- "application/rtf": true,
17152
+ "text/x-python-script": true,
16922
17153
  "text/xml": true,
16923
- "text/markdown": true,
17154
+ "image/heic": true,
17155
+ "image/heif": true,
16924
17156
  "application/pdf": true,
16925
- "text/x-typescript": true,
16926
- "video/mp4": true,
16927
- "application/x-ipynb+json": true,
16928
17157
  "text/html": true,
16929
- "image/png": true,
16930
- "image/webp": true,
16931
- "application/x-javascript": true,
17158
+ "text/css": true,
17159
+ "text/x-typescript": true,
17160
+ "audio/wav": true,
16932
17161
  "video/text/timestamp": true,
16933
- "video/audio/s16le": true,
17162
+ "application/x-python-code": true,
17163
+ "audio/ogg": true,
17164
+ "application/x-javascript": true,
16934
17165
  "application/x-typescript": true,
16935
- "text/rtf": true,
16936
- "application/json": true,
16937
- "image/jpeg": true,
16938
- "image/heic": true,
16939
17166
  "video/videoframe/jpeg2000": true,
16940
- "text/x-python-script": true,
16941
- "audio/webm;codecs=opus": true,
17167
+ "text/markdown": true,
17168
+ "audio/wave": true,
17169
+ "video/webm": true,
17170
+ "audio/flac": true,
17171
+ "text/x-python": true,
17172
+ "audio/mp3": true,
16942
17173
  "text/csv": true,
16943
- "video/audio/wav": true,
16944
- "text/css": true,
17174
+ "audio/webm;codecs=opus": true,
17175
+ "audio/aac": true,
16945
17176
  "text/plain": true,
16946
- "text/x-python": true
17177
+ "video/mp4": true,
17178
+ "audio/l16": true,
17179
+ "audio/vnd.wave": true,
17180
+ "image/png": true,
17181
+ "audio/m4a": true,
17182
+ "audio/mp4": true,
17183
+ "audio/opus": true,
17184
+ "application/json": true,
17185
+ "audio/x-wav": true,
17186
+ "text/javascript": true,
17187
+ "application/rtf": true,
17188
+ "application/x-ipynb+json": true,
17189
+ "audio/mpeg": true,
17190
+ "audio/webm": true,
17191
+ "video/audio/wav": true,
17192
+ "image/webp": true,
17193
+ "text/rtf": true
16947
17194
  },
16948
17195
  modelExperiments: {
16949
17196
  experiments: {
16950
17197
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16951
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
17198
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
16952
17199
  },
16953
17200
  "cascade-include-ephemeral-message": {
16954
17201
  stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
@@ -16959,62 +17206,80 @@ var models_default = {
16959
17206
  }
16960
17207
  }
16961
17208
  },
16962
- "gemini-3.5-flash-extra-low": {
16963
- displayName: "Gemini 3.5 Flash (Low)",
17209
+ "gemini-3.1-pro-low": {
17210
+ displayName: "Gemini 3.1 Pro (Low)",
16964
17211
  supportsImages: true,
16965
17212
  supportsThinking: true,
16966
- thinkingBudget: 1e3,
16967
- minThinkingBudget: 32,
17213
+ thinkingBudget: 1001,
17214
+ minThinkingBudget: 128,
16968
17215
  recommended: true,
16969
17216
  maxTokens: 1048576,
16970
- maxOutputTokens: 65536,
17217
+ maxOutputTokens: 65535,
16971
17218
  quotaInfo: {
16972
- remainingFraction: 0.9831897,
16973
- resetTime: "2026-08-21T03:05:43Z"
17219
+ remainingFraction: 0.97969,
17220
+ resetTime: "2026-08-21T09:19:05Z"
16974
17221
  },
16975
- model: "MODEL_PLACEHOLDER_M187",
17222
+ model: "MODEL_PLACEHOLDER_M36",
16976
17223
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16977
17224
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16978
17225
  supportsVideo: true,
16979
- tagTitle: "Fast",
16980
- tagDescription: "Limited time",
16981
17226
  supportedMimeTypes: {
16982
- "video/audio/s16le": true,
16983
- "text/markdown": true,
16984
- "application/x-typescript": true,
16985
- "text/x-python": true,
16986
- "video/text/timestamp": true,
16987
- "image/webp": true,
16988
- "video/jpeg2000": true,
16989
- "application/pdf": true,
17227
+ "audio/x-wav": true,
17228
+ "audio/m4a": true,
17229
+ "audio/wav": true,
17230
+ "audio/aac": true,
17231
+ "image/heif": true,
16990
17232
  "text/css": true,
16991
- "text/rtf": true,
16992
- "video/webm": true,
16993
- "video/videoframe/jpeg2000": true,
16994
- "text/csv": true,
16995
- "audio/webm;codecs=opus": true,
17233
+ "video/mp4": true,
17234
+ "application/x-ipynb+json": true,
17235
+ "text/x-python": true,
17236
+ "text/x-typescript": true,
17237
+ "text/javascript": true,
17238
+ "audio/ogg": true,
16996
17239
  "application/rtf": true,
16997
- "image/png": true,
16998
- "image/jpeg": true,
16999
- "text/plain": true,
17000
- "image/heif": true,
17240
+ "text/markdown": true,
17241
+ "application/x-python-code": true,
17242
+ "audio/vnd.wave": true,
17243
+ "image/heic": true,
17001
17244
  "video/audio/wav": true,
17245
+ "application/pdf": true,
17246
+ "audio/wave": true,
17247
+ "audio/opus": true,
17248
+ "text/xml": true,
17249
+ "image/jpeg": true,
17250
+ "audio/mpeg": true,
17002
17251
  "text/x-python-script": true,
17252
+ "audio/webm;codecs=opus": true,
17253
+ "video/audio/s16le": true,
17254
+ "audio/webm": true,
17255
+ "video/videoframe/jpeg2000": true,
17003
17256
  "application/x-javascript": true,
17004
- "application/x-python-code": true,
17257
+ "audio/mp4": true,
17258
+ "text/html": true,
17259
+ "application/x-typescript": true,
17260
+ "video/jpeg2000": true,
17261
+ "text/plain": true,
17262
+ "audio/flac": true,
17263
+ "text/csv": true,
17264
+ "audio/mp3": true,
17265
+ "video/webm": true,
17266
+ "image/webp": true,
17267
+ "audio/l16": true,
17005
17268
  "application/json": true,
17006
- "video/mp4": true,
17007
- "image/heic": true,
17008
- "text/javascript": true,
17009
- "text/html": true,
17010
- "text/xml": true,
17011
- "application/x-ipynb+json": true,
17012
- "text/x-typescript": true
17269
+ "text/rtf": true,
17270
+ "video/text/timestamp": true,
17271
+ "image/png": true
17013
17272
  },
17014
17273
  modelExperiments: {
17015
17274
  experiments: {
17016
17275
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17017
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
17276
+ 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 "session_summary_prompt_override": ""\n}'
17277
+ },
17278
+ "cascade-include-ephemeral-message": {
17279
+ stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17280
+ },
17281
+ template__system_prompts__communication_style: {
17282
+ 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: ...'."
17018
17283
  },
17019
17284
  template__system_prompts__planning_mode_artifacts: {
17020
17285
  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"
@@ -17032,50 +17297,64 @@ var models_default = {
17032
17297
  maxTokens: 1048576,
17033
17298
  maxOutputTokens: 65535,
17034
17299
  quotaInfo: {
17035
- remainingFraction: 0.9831897,
17036
- resetTime: "2026-08-21T03:05:43Z"
17300
+ remainingFraction: 0.97969,
17301
+ resetTime: "2026-08-21T09:19:05Z"
17037
17302
  },
17038
17303
  model: "MODEL_PLACEHOLDER_M16",
17039
17304
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17040
17305
  modelProvider: "MODEL_PROVIDER_GOOGLE",
17041
17306
  supportsVideo: true,
17042
17307
  supportedMimeTypes: {
17043
- "video/mp4": true,
17308
+ "audio/wav": true,
17044
17309
  "text/plain": true,
17045
17310
  "video/text/timestamp": true,
17311
+ "image/png": true,
17046
17312
  "audio/webm;codecs=opus": true,
17047
- "image/heif": true,
17048
- "application/x-ipynb+json": true,
17313
+ "audio/opus": true,
17314
+ "audio/flac": true,
17315
+ "audio/aac": true,
17049
17316
  "image/jpeg": true,
17050
- "text/x-python": true,
17317
+ "audio/mpeg": true,
17318
+ "audio/m4a": true,
17319
+ "text/javascript": true,
17320
+ "audio/mp4": true,
17321
+ "audio/ogg": true,
17322
+ "image/heif": true,
17051
17323
  "application/pdf": true,
17052
- "application/json": true,
17053
- "video/videoframe/jpeg2000": true,
17054
- "video/webm": true,
17055
17324
  "text/x-typescript": true,
17056
- "text/javascript": true,
17057
- "video/audio/wav": true,
17058
- "video/jpeg2000": true,
17059
- "image/webp": true,
17060
- "image/heic": true,
17061
- "text/x-python-script": true,
17062
- "application/x-typescript": true,
17325
+ "text/csv": true,
17326
+ "text/markdown": true,
17327
+ "audio/mp3": true,
17328
+ "audio/webm": true,
17063
17329
  "text/css": true,
17064
- "image/png": true,
17330
+ "video/webm": true,
17331
+ "video/audio/s16le": true,
17065
17332
  "text/html": true,
17066
- "text/csv": true,
17333
+ "video/mp4": true,
17067
17334
  "application/x-python-code": true,
17068
- "video/audio/s16le": true,
17069
- "application/rtf": true,
17070
- "text/markdown": true,
17071
- "application/x-javascript": true,
17072
17335
  "text/rtf": true,
17073
- "text/xml": true
17336
+ "text/x-python": true,
17337
+ "application/x-typescript": true,
17338
+ "audio/l16": true,
17339
+ "audio/wave": true,
17340
+ "image/webp": true,
17341
+ "image/heic": true,
17342
+ "video/videoframe/jpeg2000": true,
17343
+ "text/x-python-script": true,
17344
+ "video/jpeg2000": true,
17345
+ "application/x-javascript": true,
17346
+ "application/json": true,
17347
+ "audio/vnd.wave": true,
17348
+ "application/x-ipynb+json": true,
17349
+ "audio/x-wav": true,
17350
+ "text/xml": true,
17351
+ "application/rtf": true,
17352
+ "video/audio/wav": true
17074
17353
  },
17075
17354
  modelExperiments: {
17076
17355
  experiments: {
17077
17356
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17078
- 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}'
17357
+ 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 "session_summary_prompt_override": ""\n}'
17079
17358
  },
17080
17359
  "cascade-include-ephemeral-message": {
17081
17360
  stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
@@ -17089,217 +17368,162 @@ var models_default = {
17089
17368
  }
17090
17369
  }
17091
17370
  },
17092
- tab_flash_lite_preview: {
17093
- maxTokens: 16384,
17094
- maxOutputTokens: 4096,
17095
- quotaInfo: {
17096
- remainingFraction: 1
17097
- },
17098
- model: "MODEL_PLACEHOLDER_M19",
17099
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17100
- modelProvider: "MODEL_PROVIDER_GOOGLE",
17101
- supportsCumulativeContext: true,
17102
- supportsEstimateTokenCounter: true,
17103
- toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
17104
- requiresLeadInGeneration: true
17105
- },
17106
- "gemini-3-flash-agent": {
17107
- displayName: "Gemini 3.5 Flash (High)",
17371
+ "gemini-3.7-flash-medium": {
17372
+ displayName: "Gemini 3.7 Flash (Medium)",
17108
17373
  supportsImages: true,
17109
17374
  supportsThinking: true,
17110
- thinkingBudget: -1,
17375
+ thinkingBudget: 4e3,
17111
17376
  minThinkingBudget: 32,
17112
17377
  recommended: true,
17113
17378
  maxTokens: 1048576,
17114
17379
  maxOutputTokens: 65536,
17115
17380
  quotaInfo: {
17116
- remainingFraction: 0.9831897,
17117
- resetTime: "2026-08-21T03:05:43Z"
17381
+ remainingFraction: 0.97969,
17382
+ resetTime: "2026-08-21T09:19:05Z"
17118
17383
  },
17119
- model: "MODEL_PLACEHOLDER_M84",
17384
+ model: "MODEL_PLACEHOLDER_M299",
17120
17385
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17121
17386
  modelProvider: "MODEL_PROVIDER_GOOGLE",
17122
17387
  supportsVideo: true,
17123
17388
  tagTitle: "Fast",
17124
17389
  tagDescription: "Limited time",
17125
17390
  supportedMimeTypes: {
17126
- "audio/webm;codecs=opus": true,
17391
+ "audio/wav": true,
17392
+ "text/html": true,
17393
+ "audio/opus": true,
17394
+ "audio/flac": true,
17395
+ "text/x-python": true,
17396
+ "video/text/timestamp": true,
17127
17397
  "image/heic": true,
17128
- "text/xml": true,
17398
+ "application/rtf": true,
17399
+ "audio/webm;codecs=opus": true,
17400
+ "application/json": true,
17401
+ "application/x-typescript": true,
17402
+ "application/x-python-code": true,
17403
+ "application/x-ipynb+json": true,
17129
17404
  "application/pdf": true,
17405
+ "audio/vnd.wave": true,
17406
+ "video/videoframe/jpeg2000": true,
17407
+ "audio/mp3": true,
17408
+ "audio/mp4": true,
17409
+ "text/csv": true,
17410
+ "video/audio/s16le": true,
17411
+ "audio/webm": true,
17412
+ "application/x-javascript": true,
17413
+ "audio/m4a": true,
17414
+ "audio/ogg": true,
17415
+ "video/jpeg2000": true,
17130
17416
  "video/mp4": true,
17131
- "image/jpeg": true,
17132
- "video/webm": true,
17417
+ "image/png": true,
17133
17418
  "text/rtf": true,
17134
- "video/videoframe/jpeg2000": true,
17135
- "text/html": true,
17136
- "application/x-python-code": true,
17137
- "text/javascript": true,
17138
- "application/rtf": true,
17419
+ "text/xml": true,
17139
17420
  "text/plain": true,
17140
- "image/png": true,
17141
- "video/audio/wav": true,
17142
- "application/x-javascript": true,
17143
- "application/x-typescript": true,
17144
- "text/x-python": true,
17145
- "video/text/timestamp": true,
17146
- "video/audio/s16le": true,
17147
- "text/x-typescript": true,
17148
- "text/x-python-script": true,
17421
+ "text/javascript": true,
17422
+ "audio/wave": true,
17423
+ "audio/l16": true,
17424
+ "audio/x-wav": true,
17149
17425
  "text/css": true,
17150
- "video/jpeg2000": true,
17151
- "application/x-ipynb+json": true,
17152
- "text/csv": true,
17426
+ "text/x-python-script": true,
17427
+ "audio/aac": true,
17153
17428
  "image/webp": true,
17154
17429
  "image/heif": true,
17430
+ "text/x-typescript": true,
17431
+ "image/jpeg": true,
17432
+ "video/audio/wav": true,
17155
17433
  "text/markdown": true,
17156
- "application/json": true
17434
+ "video/webm": true,
17435
+ "audio/mpeg": true
17157
17436
  },
17158
17437
  modelExperiments: {
17159
17438
  experiments: {
17160
- template__system_prompts__planning_mode_artifacts: {
17161
- 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"
17439
+ "cascade-include-ephemeral-message": {
17440
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17441
+ },
17442
+ "task-details-suffix": {
17443
+ stringValue: "\nYOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: A) either proceed to other relevant work (if any) or, B) simply update the user with a short message (that you have launched the command and will wait for it to finish) and end the turn.\n DO NOTHING ELSE."
17162
17444
  },
17163
17445
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17164
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
17446
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
17165
17447
  }
17166
17448
  }
17167
17449
  }
17168
17450
  },
17169
- tab_jump_flash_lite_preview: {
17170
- maxTokens: 16384,
17171
- maxOutputTokens: 4096,
17172
- quotaInfo: {
17173
- remainingFraction: 1
17174
- },
17175
- model: "MODEL_PLACEHOLDER_M28",
17176
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17177
- modelProvider: "MODEL_PROVIDER_GOOGLE",
17178
- supportsCumulativeContext: true,
17179
- tabJumpPrintLineRange: true,
17180
- supportsEstimateTokenCounter: true,
17181
- addCursorToFindReplaceTarget: true,
17182
- toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
17183
- requiresLeadInGeneration: true,
17184
- requiresNoXmlToolExamples: true
17185
- },
17186
- "gemini-3.6-flash-medium": {
17187
- displayName: "Gemini 3.6 Flash (Medium)",
17451
+ "gemini-3-flash-agent": {
17452
+ displayName: "Gemini 3.5 Flash (High)",
17188
17453
  supportsImages: true,
17189
17454
  supportsThinking: true,
17190
- thinkingBudget: 4e3,
17455
+ thinkingBudget: -1,
17191
17456
  minThinkingBudget: 32,
17192
17457
  recommended: true,
17193
17458
  maxTokens: 1048576,
17194
17459
  maxOutputTokens: 65536,
17195
17460
  quotaInfo: {
17196
- remainingFraction: 0.9831897,
17197
- resetTime: "2026-08-21T03:05:43Z"
17461
+ remainingFraction: 0.97969,
17462
+ resetTime: "2026-08-21T09:19:05Z"
17198
17463
  },
17199
- model: "MODEL_PLACEHOLDER_M72",
17464
+ model: "MODEL_PLACEHOLDER_M84",
17200
17465
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17201
17466
  modelProvider: "MODEL_PROVIDER_GOOGLE",
17202
17467
  supportsVideo: true,
17203
17468
  tagTitle: "Fast",
17204
17469
  tagDescription: "Limited time",
17205
17470
  supportedMimeTypes: {
17206
- "text/x-python": true,
17207
- "image/png": true,
17208
- "application/x-typescript": true,
17471
+ "audio/ogg": true,
17209
17472
  "image/jpeg": true,
17210
- "video/audio/s16le": true,
17211
- "application/x-javascript": true,
17212
- "video/mp4": true,
17213
- "text/x-typescript": true,
17214
- "text/plain": true,
17473
+ "audio/aac": true,
17474
+ "text/x-python-script": true,
17475
+ "text/javascript": true,
17476
+ "audio/opus": true,
17477
+ "image/png": true,
17478
+ "audio/x-wav": true,
17479
+ "text/css": true,
17215
17480
  "video/jpeg2000": true,
17216
- "text/html": true,
17217
- "text/csv": true,
17218
- "video/audio/wav": true,
17219
- "video/text/timestamp": true,
17481
+ "audio/webm": true,
17482
+ "audio/mp4": true,
17483
+ "audio/m4a": true,
17484
+ "text/rtf": true,
17485
+ "application/x-ipynb+json": true,
17220
17486
  "video/webm": true,
17221
- "image/webp": true,
17222
- "text/x-python-script": true,
17223
- "text/xml": true,
17487
+ "text/x-python": true,
17224
17488
  "application/json": true,
17225
- "application/x-ipynb+json": true,
17489
+ "text/x-typescript": true,
17490
+ "audio/webm;codecs=opus": true,
17491
+ "text/html": true,
17492
+ "audio/mp3": true,
17493
+ "audio/l16": true,
17494
+ "application/rtf": true,
17495
+ "application/x-javascript": true,
17496
+ "application/x-typescript": true,
17497
+ "video/audio/wav": true,
17498
+ "video/mp4": true,
17499
+ "video/audio/s16le": true,
17226
17500
  "image/heif": true,
17227
- "text/rtf": true,
17501
+ "audio/wav": true,
17502
+ "image/webp": true,
17503
+ "text/plain": true,
17504
+ "audio/vnd.wave": true,
17505
+ "video/text/timestamp": true,
17228
17506
  "text/markdown": true,
17507
+ "image/heic": true,
17229
17508
  "video/videoframe/jpeg2000": true,
17230
- "application/x-python-code": true,
17231
- "audio/webm;codecs=opus": true,
17232
- "text/javascript": true,
17233
- "text/css": true,
17234
17509
  "application/pdf": true,
17235
- "image/heic": true,
17236
- "application/rtf": true
17510
+ "text/xml": true,
17511
+ "audio/flac": true,
17512
+ "text/csv": true,
17513
+ "audio/mpeg": true,
17514
+ "application/x-python-code": true,
17515
+ "audio/wave": true
17237
17516
  },
17238
17517
  modelExperiments: {
17239
17518
  experiments: {
17240
- template__system_prompts__messaging: {
17241
- stringValue: "You are connected to a messaging system where you may receive messages from: {{- $subagent := .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled -}}\n{{- $message := .CascadeConfig.GetMessageConfig.GetEnabled -}}\n{{- if and $subagent $message }} agents, background tasks, user-queued messages\n{{- else if $subagent }} agents, background tasks\n{{- else if $message }} background tasks, user-queued messages\n{{- else }} background tasks\n{{- end }}.\n\n## Receiving Messages\n\nYou receive messages automatically at the start of each invocation. All messages are delivered in full directly into your context \u2014 no manual retrieval is needed.\n\n## Reactive Wakeup (No Polling Needed)\n\nThe system automatically resumes your execution when:\n{{- if .CascadeConfig.GetPlannerConfig.GetToolConfig.GetInvokeSubagent.GetEnabled }}\n- A message arrives from a subagent or peer agent\n{{- end }}\n- A **background task** completes or sends you a notification\n{{- if .CascadeConfig.GetMessageConfig.GetEnabled }}\n- A **user-queued message** is ready to be dequeued\n{{- end }}\n\nThis means you do **NOT** need to poll in a loop while waiting for messages or updates. After launching a task that runs in the background, you may continue other work or simply stop by calling no more tools. The system will notify you when there is something to process."
17242
- },
17243
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17244
- stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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}'
17245
- },
17246
- "cascade-include-ephemeral-message": {
17247
- stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17248
- },
17249
- template__system_prompts__communication_style: {
17250
- 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- You can render LaTeX math (KaTeX): inline with `\\(...\\)` or `$...$`, display with `\\[...\\]` or `$$...$$` placed on its own line.\n- Use math only for genuine mathematical content. Use backticks for code, identifiers, paths, flags, and shell variables.\n- `$` opens inline math, so write a literal dollar as `\\$` or wrap it in backticks. Two unescaped `$` in the same paragraph turn everything between them into math \u2014 this bites prices (`\\$100`) and shell syntax written in prose (`$HOME`, awk `$1`).\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., [utils.py](file:///path/to/file) or [ClassName](file:///path/to/file#L10-L20)`). For Windows, use forward slashes for paths.\n- After launching a background task such as 'run_command', YOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: \nA) either proceed to other relevant work (if any) or, \nB) simply update the user with a short message (e.g. 'task-20 has been launched in the background. I will wait for it to complete before proceeding.') and end the turn.\nDO NOTHING ELSE.\n"
17519
+ template__system_prompts__planning_mode_artifacts: {
17520
+ 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"
17251
17521
  },
17252
- template__system_prompts__guidelines: {
17253
- stringValue: "Follow these behavioral and workflow guidelines at all times:\n# Documentation\n- Maintain documentation integrity. Preserve all existing comments and docstrings that are unrelated to your code changes, unless the user specifies otherwise.\n\n# Obey Explicit Directives\nIf the user specifies precise quantitative filtering rules, layout boundaries, or architectural preferences, enforce them exactly as requested without alteration.\n\n# Never Guess Code Logic, Schemas, or File Paths\nNEVER infer implementation details, variable names, or file locations without inspecting the authoritative source using code search and file viewing tools.\n\n# Inspect Logs & Stack Traces Before Diagnosing Errors\nNEVER form a diagnostic hypothesis for a runtime failure, or test breakage, without reading the full, un-truncated error log. When an error occurs, your VERY FIRST ACTION must be to fetch and read the exact logs. Base your diagnosis strictly on empirical log evidence.\n\n# No Superficial Symptom Patches\nNEVER resolve errors by masking symptoms, swallowing exceptions, returning dummy fallbacks, commenting out broken assertions, or deleting failing unit tests. When a test or function fails, identify why the underlying contract was broken. If an API returns missing or null data, trace the upstream data provider instead of wrapping the call in a silent try/except or returning an empty 0-byte ArrayBuffer.\n\n# Never Declare Success Without Running Verification Commands\nNEVER claim a task is resolved, a bug is fixed, or a feature is working until you have gathered concrete, empirical runtime verification demonstrating clean success. Editing a file does not equal completing the task. You MUST run the build or test command afterwards.\n\n# Never Ignore Explicit Command Failures or Error Exit Codes\nIf a command fails, you MUST explicitly acknowledge the failure to the user or continue debugging. Never gloss over a build timeout or permission denied error by focusing only on the part of the code that compiled.\n\n# Check Feature Flags & Enforce Strict Control Flow Scoping\nWhenever modifying conditional branches, adding experimental features, or processing loops, ensure that new logic is strictly scoped and evaluated against all possible execution paths.\n\n# Preserve Existing API Contracts & Avoid Unintended Side Effects\nIf you modify a function signature, use code search to find and update every invocation site so the parameter is actually passed.\n\n# Silent Log Inspection & Professional Synthesis\nWhen background tasks (run_command async, manage_task, schedule) complete or emit log notifications, inspect the log files silently. Summarize and synthesize the exact findings in clean, professional natural language.\n\n# No Snippet Tunnel Vision\nNever infer the definition of data structures (proto, struct, class, or enum schemas) from partial file views (first 15 lines or L40-L65 snippets) or design doc text.\nIf view_file output indicates truncation or if an imported schema is referenced, you MUST adjust StartLine/EndLine or ContentOffset to inspect the complete, exact definition of the target symbols before writing code that consumes them.\n\n# Check Command Registries\nWhenever modifying core C/C++/Java command implementations (CLIENT LIST, CLIENT KILL), explicitly search for and update corresponding command definitions across all registry files (commands.def, JSON schemas, .bzl build manifests).\n\n# Audit Before Re-inventing\nSearch the codebase and recent commit history for pre-existing utility classes or decoupled architecture before writing custom helper classes from scratch.\n\n# No Blocking Calls on Main Looper Threads\nNever invoke blocking thread synchronizations (webLatch.await(500, ...), Future.get()) on main Android UI loops or single-threaded event dispatchers. \n\n# Thread Pool Shutdown Safety\nWhen modifying worker thread loops or shared queues, ensure emergency stop/shutdown signals and loop termination criteria remain intact so thread join operations never deadlock.\n\n# Exact Argument Structure\nPass arguments exactly as expected by the API (calculateRoute({ origin, destination, travelMode }) vs calculateRoute(origin, destination, travelMode)).\n\n# Local State Mutation Only\nDo not mutate private third-party DOM properties. Do not push incomplete draft objects directly into global array states; keep transient state within local component state.\n\n# Traceback Justification Required\nEvery code or configuration edit during debugging MUST be justified by an explicit error traceback, log line, or verified root cause. If the root cause is unknown, investigate further before mutating code.\n\n# Analyze Before Retrying\nNever repeat the exact same broken test or shell command line with duplicate/conflicting arguments without analyzing and resolving why the previous command failed.\n\n# Persevere on Log Extraction\nIf a log retrieval command fails, NEVER abandon log extraction to diagnose blindly. Immediately switch to alternative tools to inspect the actual failure traceback.\n\n# Verify Signatures & Prop Names\nCheck exact variable names, component prop keys, and method signatures before passing them. Prevent NullPointerException, AttributeError, KeyError, and ReferenceError crashes by explicitly verifying object initialization and non-null states before property dereferencing (layer._path, stat.owner()).\n\n# Dynamic Layout Math\nAvoid hardcoding static pixel offsets (+ 12) or arbitrary multipliers (pill_font_size * 2.0) when computing dynamic UI layout heights; calculate exact container bounds from wrapped elements.\n"
17254
- }
17255
- }
17256
- }
17257
- },
17258
- "gemini-3.1-flash-image": {
17259
- displayName: "Gemini 3.1 Flash Image",
17260
- quotaInfo: {
17261
- remainingFraction: 0.9831897,
17262
- resetTime: "2026-08-21T03:05:43Z"
17263
- },
17264
- model: "MODEL_PLACEHOLDER_M21",
17265
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17266
- modelProvider: "MODEL_PROVIDER_GOOGLE"
17267
- },
17268
- "gemini-2.5-flash": {
17269
- displayName: "Gemini 3.1 Flash Lite",
17270
- maxTokens: 1048576,
17271
- maxOutputTokens: 65535,
17272
- quotaInfo: {
17273
- remainingFraction: 0.9831897,
17274
- resetTime: "2026-08-21T03:05:43Z"
17275
- },
17276
- model: "MODEL_GOOGLE_GEMINI_2_5_FLASH",
17277
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17278
- modelProvider: "MODEL_PROVIDER_GOOGLE",
17279
- modelExperiments: {
17280
- experiments: {
17281
17522
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17282
- 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}'
17523
+ stringValue: '{\n "strategy": "CHECKPOINT_STRATEGY_SAME_MODEL",\n "max_token_limit": "256000",\n "token_threshold": "140000",\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": 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 "session_summary_prompt_override": ""\n}'
17283
17524
  }
17284
17525
  }
17285
17526
  }
17286
- },
17287
- chat_20706: {
17288
- maxTokens: 16384,
17289
- quotaInfo: {
17290
- remainingFraction: 1
17291
- },
17292
- model: "MODEL_CHAT_20706",
17293
- apiProvider: "API_PROVIDER_INTERNAL",
17294
- modelProvider: "MODEL_PROVIDER_GOOGLE",
17295
- supportsCumulativeContext: true,
17296
- tabJumpPrintLineRange: true,
17297
- supportsEstimateTokenCounter: true,
17298
- isInternal: true,
17299
- addCursorToFindReplaceTarget: true,
17300
- promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
17301
- toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
17302
- requiresLeadInGeneration: true
17303
17527
  }
17304
17528
  },
17305
17529
  defaultAgentModelId: "gemini-3.7-flash-high",
@@ -17388,7 +17612,6 @@ var models_default = {
17388
17612
  106538964,
17389
17613
  106512082,
17390
17614
  106380926,
17391
- 106212376,
17392
17615
  106281951,
17393
17616
  106264532,
17394
17617
  106222835,