@anthonyhaussman/opencode-agy-auth 1.1.17-alpha.0 → 1.1.18-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/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.17";
271
+ var AGY_CLI_VERSION = "1.1.18";
272
272
 
273
273
  // src/sdk/user-agent.ts
274
274
  var cachedUserAgent = null;
@@ -16001,204 +16001,155 @@ import { randomUUID as randomUUID3 } from "crypto";
16001
16001
  // models.json
16002
16002
  var models_default = {
16003
16003
  models: {
16004
- tab_jump_flash_lite_preview: {
16004
+ tab_flash_lite_preview: {
16005
16005
  maxTokens: 16384,
16006
16006
  maxOutputTokens: 4096,
16007
16007
  quotaInfo: {
16008
16008
  remainingFraction: 1
16009
16009
  },
16010
- model: "MODEL_PLACEHOLDER_M28",
16010
+ model: "MODEL_PLACEHOLDER_M19",
16011
16011
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16012
16012
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16013
16013
  supportsCumulativeContext: true,
16014
- tabJumpPrintLineRange: true,
16015
16014
  supportsEstimateTokenCounter: true,
16016
- addCursorToFindReplaceTarget: true,
16017
16015
  toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16018
- requiresLeadInGeneration: true,
16019
- requiresNoXmlToolExamples: true
16016
+ requiresLeadInGeneration: true
16020
16017
  },
16021
- "gemini-3.5-flash-low": {
16022
- displayName: "Gemini 3.5 Flash (Medium)",
16018
+ "gemini-3.1-flash-lite": {
16019
+ displayName: "Gemini 3.1 Flash Lite",
16020
+ maxTokens: 1048576,
16021
+ maxOutputTokens: 65535,
16022
+ quotaInfo: {
16023
+ remainingFraction: 0.9783466,
16024
+ resetTime: "2026-08-22T17:36:20Z"
16025
+ },
16026
+ model: "MODEL_PLACEHOLDER_M50",
16027
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16028
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16029
+ modelExperiments: {
16030
+ experiments: {
16031
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16032
+ 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}'
16033
+ }
16034
+ }
16035
+ }
16036
+ },
16037
+ "gemini-3.1-pro-low": {
16038
+ displayName: "Gemini 3.1 Pro (Low)",
16023
16039
  supportsImages: true,
16024
16040
  supportsThinking: true,
16025
- thinkingBudget: 4e3,
16026
- minThinkingBudget: 32,
16041
+ thinkingBudget: 1001,
16042
+ minThinkingBudget: 128,
16027
16043
  recommended: true,
16028
16044
  maxTokens: 1048576,
16029
- maxOutputTokens: 65536,
16045
+ maxOutputTokens: 65535,
16030
16046
  quotaInfo: {
16031
- remainingFraction: 0.97969,
16032
- resetTime: "2026-08-21T09:19:05Z"
16047
+ remainingFraction: 0.9783466,
16048
+ resetTime: "2026-08-22T17:36:20Z"
16033
16049
  },
16034
- model: "MODEL_PLACEHOLDER_M20",
16050
+ model: "MODEL_PLACEHOLDER_M36",
16035
16051
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16036
16052
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16037
16053
  supportsVideo: true,
16038
- tagTitle: "Fast",
16039
- tagDescription: "Limited time",
16040
16054
  supportedMimeTypes: {
16041
- "video/audio/s16le": true,
16042
- "text/css": true,
16043
- "audio/mp4": true,
16055
+ "text/plain": true,
16044
16056
  "image/jpeg": true,
16045
- "audio/l16": true,
16046
- "image/png": true,
16047
- "text/x-typescript": true,
16048
- "text/xml": true,
16049
- "application/rtf": true,
16057
+ "text/x-python-script": true,
16050
16058
  "audio/mpeg": true,
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,
16059
+ "image/webp": true,
16060
+ "audio/wave": true,
16061
+ "video/webm": true,
16062
+ "text/x-python": true,
16063
+ "application/x-python-code": true,
16064
+ "audio/mp4": true,
16058
16065
  "image/heic": true,
16059
- "audio/webm;codecs=opus": true,
16060
16066
  "text/html": true,
16061
- "text/x-python": true,
16067
+ "text/markdown": true,
16068
+ "text/xml": true,
16069
+ "text/javascript": true,
16070
+ "audio/webm;codecs=opus": true,
16071
+ "application/json": true,
16062
16072
  "application/x-javascript": true,
16073
+ "audio/wav": true,
16063
16074
  "image/heif": true,
16064
- "audio/x-wav": true,
16065
- "video/jpeg2000": true,
16066
- "audio/opus": true,
16075
+ "audio/webm": true,
16076
+ "application/pdf": true,
16077
+ "video/mp4": true,
16078
+ "video/videoframe/jpeg2000": true,
16079
+ "text/csv": true,
16080
+ "image/png": true,
16067
16081
  "video/text/timestamp": true,
16082
+ "audio/vnd.wave": true,
16083
+ "video/jpeg2000": true,
16084
+ "application/x-ipynb+json": true,
16085
+ "video/audio/s16le": true,
16086
+ "audio/m4a": true,
16087
+ "audio/mp3": true,
16068
16088
  "text/rtf": true,
16069
- "video/mp4": true,
16070
16089
  "audio/flac": true,
16071
- "text/x-python-script": true,
16072
16090
  "video/audio/wav": true,
16073
- "application/json": true,
16074
- "video/videoframe/jpeg2000": true,
16091
+ "application/rtf": true,
16075
16092
  "application/x-typescript": true,
16076
- "image/webp": true,
16077
- "text/javascript": 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,
16093
+ "text/css": true,
16094
+ "text/x-typescript": true,
16095
+ "audio/opus": true,
16084
16096
  "audio/aac": true,
16085
- "video/webm": true
16097
+ "audio/l16": true,
16098
+ "audio/ogg": true,
16099
+ "audio/x-wav": true
16086
16100
  },
16087
16101
  modelExperiments: {
16088
16102
  experiments: {
16089
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
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}'
16103
+ template__system_prompts__communication_style: {
16104
+ 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: ...'."
16091
16105
  },
16092
16106
  template__system_prompts__planning_mode_artifacts: {
16093
16107
  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"
16108
+ },
16109
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16110
+ 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}'
16111
+ },
16112
+ "cascade-include-ephemeral-message": {
16113
+ stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16094
16114
  }
16095
16115
  }
16096
16116
  }
16097
16117
  },
16098
- "gemini-3.6-flash-high": {
16099
- displayName: "Gemini 3.6 Flash (High)",
16118
+ "claude-opus-4-6-thinking": {
16119
+ displayName: "Claude Opus 4.6 (Thinking)",
16100
16120
  supportsImages: true,
16101
16121
  supportsThinking: true,
16102
- thinkingBudget: -1,
16103
- minThinkingBudget: 32,
16122
+ thinkingBudget: 1024,
16104
16123
  recommended: true,
16105
- maxTokens: 1048576,
16106
- maxOutputTokens: 65536,
16124
+ maxTokens: 25e4,
16125
+ maxOutputTokens: 64e3,
16107
16126
  quotaInfo: {
16108
- remainingFraction: 0.97969,
16109
- resetTime: "2026-08-21T09:19:05Z"
16127
+ remainingFraction: 1,
16128
+ resetTime: "2026-08-22T17:39:05Z"
16110
16129
  },
16111
- model: "MODEL_PLACEHOLDER_M71",
16112
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16113
- modelProvider: "MODEL_PROVIDER_GOOGLE",
16114
- supportsVideo: true,
16115
- tagTitle: "Fast",
16116
- tagDescription: "Limited time",
16130
+ model: "MODEL_PLACEHOLDER_M26",
16131
+ apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16132
+ modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16117
16133
  supportedMimeTypes: {
16118
- "audio/x-wav": true,
16119
- "text/html": true,
16120
- "application/pdf": true,
16121
- "audio/l16": true,
16122
- "video/audio/wav": true,
16123
- "application/x-typescript": true,
16134
+ "image/jpeg": true,
16124
16135
  "image/png": true,
16125
- "audio/m4a": true,
16126
- "text/csv": true,
16127
- "application/x-python-code": true,
16128
- "audio/mpeg": true,
16129
- "image/heif": true,
16130
16136
  "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,
16136
- "video/mp4": 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,
16144
- "application/rtf": true,
16145
- "application/x-ipynb+json": true,
16146
- "audio/aac": true,
16147
- "audio/opus": true,
16148
16137
  "video/jpeg2000": true,
16149
- "audio/flac": true,
16150
- "text/rtf": true,
16151
- "application/json": true,
16152
- "text/markdown": true,
16153
- "video/audio/s16le": true,
16154
- "audio/wave": true,
16155
- "image/heic": 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
16138
  "video/videoframe/jpeg2000": true,
16162
- "audio/mp3": true
16139
+ "image/heic": true,
16140
+ "image/heif": true
16163
16141
  },
16164
16142
  modelExperiments: {
16165
16143
  experiments: {
16166
16144
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
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}'
16168
- },
16169
- "cascade-include-ephemeral-message": {
16170
- stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16171
- },
16172
- template__system_prompts__communication_style: {
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"
16145
+ 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}'
16177
16146
  },
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."
16147
+ template__system_prompts__planning_mode_artifacts: {
16148
+ 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"
16180
16149
  }
16181
16150
  }
16182
- }
16183
- },
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
16151
  },
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
- }
16152
+ vertexModelId: "claude-opus-4-6@default"
16202
16153
  },
16203
16154
  chat_20706: {
16204
16155
  maxTokens: 16384,
@@ -16217,107 +16168,124 @@ var models_default = {
16217
16168
  toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16218
16169
  requiresLeadInGeneration: true
16219
16170
  },
16220
- "gemini-2.5-flash-lite": {
16221
- displayName: "Gemini 3.1 Flash Lite",
16222
- maxTokens: 1048576,
16223
- maxOutputTokens: 65535,
16171
+ "claude-sonnet-4-6": {
16172
+ displayName: "Claude Sonnet 4.6 (Thinking)",
16173
+ supportsImages: true,
16174
+ supportsThinking: true,
16175
+ thinkingBudget: 1024,
16176
+ recommended: true,
16177
+ maxTokens: 25e4,
16178
+ maxOutputTokens: 64e3,
16224
16179
  quotaInfo: {
16225
- remainingFraction: 0.97969,
16226
- resetTime: "2026-08-21T09:19:05Z"
16180
+ remainingFraction: 1,
16181
+ resetTime: "2026-08-22T17:39:05Z"
16182
+ },
16183
+ model: "MODEL_PLACEHOLDER_M35",
16184
+ apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16185
+ modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16186
+ supportedMimeTypes: {
16187
+ "video/jpeg2000": true,
16188
+ "video/videoframe/jpeg2000": true,
16189
+ "image/heic": true,
16190
+ "image/heif": true,
16191
+ "image/jpeg": true,
16192
+ "image/png": true,
16193
+ "image/webp": true
16227
16194
  },
16228
- model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE",
16229
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16230
- modelProvider: "MODEL_PROVIDER_GOOGLE",
16231
16195
  modelExperiments: {
16232
16196
  experiments: {
16233
16197
  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}'
16198
+ 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}'
16199
+ },
16200
+ template__system_prompts__planning_mode_artifacts: {
16201
+ 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"
16235
16202
  }
16236
16203
  }
16237
- }
16204
+ },
16205
+ vertexModelId: "claude-sonnet-4-6@default"
16238
16206
  },
16239
- "gemini-3.7-flash-high": {
16240
- displayName: "Gemini 3.7 Flash (High)",
16207
+ "gemini-pro-agent": {
16208
+ displayName: "Gemini 3.1 Pro (High)",
16241
16209
  supportsImages: true,
16242
16210
  supportsThinking: true,
16243
- thinkingBudget: -1,
16244
- minThinkingBudget: 32,
16211
+ thinkingBudget: 10001,
16212
+ minThinkingBudget: 128,
16245
16213
  recommended: true,
16246
16214
  maxTokens: 1048576,
16247
- maxOutputTokens: 65536,
16215
+ maxOutputTokens: 65535,
16248
16216
  quotaInfo: {
16249
- remainingFraction: 0.97969,
16250
- resetTime: "2026-08-21T09:19:05Z"
16217
+ remainingFraction: 0.9783466,
16218
+ resetTime: "2026-08-22T17:36:20Z"
16251
16219
  },
16252
- model: "MODEL_PLACEHOLDER_M298",
16220
+ model: "MODEL_PLACEHOLDER_M16",
16253
16221
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16254
16222
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16255
16223
  supportsVideo: true,
16256
- tagTitle: "Fast",
16257
- tagDescription: "Limited time",
16258
16224
  supportedMimeTypes: {
16259
- "video/webm": true,
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,
16225
+ "audio/vnd.wave": true,
16226
+ "text/x-typescript": true,
16268
16227
  "audio/x-wav": true,
16269
- "image/heic": true,
16270
- "video/audio/wav": true,
16271
- "audio/aac": true,
16272
- "application/x-javascript": true,
16228
+ "audio/mp4": true,
16273
16229
  "application/x-ipynb+json": true,
16274
- "image/png": true,
16275
- "audio/mp3": true,
16276
- "text/x-python-script": true,
16277
- "video/text/timestamp": true,
16278
- "text/css": true,
16230
+ "text/markdown": true,
16231
+ "application/pdf": true,
16232
+ "video/jpeg2000": true,
16233
+ "audio/opus": true,
16234
+ "image/jpeg": true,
16235
+ "text/javascript": true,
16236
+ "audio/webm": true,
16237
+ "audio/aac": true,
16238
+ "audio/l16": true,
16279
16239
  "video/audio/s16le": true,
16240
+ "image/webp": true,
16241
+ "application/json": true,
16242
+ "application/rtf": true,
16243
+ "image/png": true,
16244
+ "text/rtf": true,
16280
16245
  "image/heif": true,
16281
- "audio/mp4": true,
16282
- "audio/webm": true,
16283
- "text/x-typescript": true,
16246
+ "video/audio/wav": true,
16247
+ "audio/webm;codecs=opus": true,
16248
+ "text/x-python-script": true,
16249
+ "audio/mp3": true,
16250
+ "text/plain": true,
16284
16251
  "audio/m4a": true,
16285
- "audio/vnd.wave": true,
16286
16252
  "application/x-python-code": true,
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,
16253
+ "audio/flac": true,
16294
16254
  "audio/ogg": true,
16295
- "image/webp": true,
16296
- "video/videoframe/jpeg2000": true,
16297
16255
  "text/xml": true,
16298
- "application/x-typescript": true,
16256
+ "video/text/timestamp": true,
16257
+ "text/html": true,
16258
+ "image/heic": true,
16299
16259
  "audio/wav": true,
16260
+ "video/webm": true,
16261
+ "text/css": true,
16262
+ "audio/wave": true,
16263
+ "video/mp4": true,
16264
+ "video/videoframe/jpeg2000": true,
16265
+ "application/x-javascript": true,
16266
+ "audio/mpeg": true,
16300
16267
  "text/x-python": true,
16301
16268
  "text/csv": true,
16302
- "video/jpeg2000": true,
16303
- "application/rtf": true
16269
+ "application/x-typescript": true
16304
16270
  },
16305
16271
  modelExperiments: {
16306
16272
  experiments: {
16273
+ template__system_prompts__planning_mode_artifacts: {
16274
+ 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"
16275
+ },
16307
16276
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
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}'
16277
+ 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}'
16309
16278
  },
16310
16279
  "cascade-include-ephemeral-message": {
16311
- stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16280
+ stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16312
16281
  },
16313
- "task-details-suffix": {
16314
- 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."
16282
+ template__system_prompts__communication_style: {
16283
+ 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: ...'."
16315
16284
  }
16316
16285
  }
16317
16286
  }
16318
16287
  },
16319
- "gemini-3-flash": {
16320
- displayName: "Gemini 3 Flash",
16288
+ "gemini-3.6-flash-tiered": {
16321
16289
  supportsImages: true,
16322
16290
  supportsThinking: true,
16323
16291
  thinkingBudget: -1,
@@ -16326,136 +16294,65 @@ var models_default = {
16326
16294
  maxTokens: 1048576,
16327
16295
  maxOutputTokens: 65536,
16328
16296
  quotaInfo: {
16329
- remainingFraction: 0.97969,
16330
- resetTime: "2026-08-21T09:19:05Z"
16297
+ remainingFraction: 0.9783466,
16298
+ resetTime: "2026-08-22T17:36:20Z"
16331
16299
  },
16332
- model: "MODEL_PLACEHOLDER_M18",
16300
+ model: "MODEL_PLACEHOLDER_M196",
16333
16301
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16334
16302
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16335
16303
  supportsVideo: true,
16336
16304
  supportedMimeTypes: {
16337
- "image/heif": true,
16338
- "audio/aac": true,
16339
- "audio/flac": true,
16340
- "text/css": true,
16341
- "audio/mp4": true,
16342
- "application/x-ipynb+json": true,
16343
- "application/json": true,
16344
- "video/videoframe/jpeg2000": true,
16345
- "text/rtf": true,
16346
- "image/png": true,
16347
- "application/pdf": true,
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,
16305
+ "video/audio/s16le": true,
16306
+ "text/x-typescript": true,
16355
16307
  "audio/ogg": true,
16356
- "image/jpeg": true,
16308
+ "application/rtf": true,
16309
+ "audio/m4a": true,
16310
+ "audio/mpeg": true,
16357
16311
  "image/webp": true,
16358
- "text/x-python-script": true,
16359
- "text/csv": true,
16312
+ "audio/webm": true,
16313
+ "audio/l16": true,
16360
16314
  "audio/vnd.wave": true,
16361
- "text/javascript": true,
16362
- "audio/mpeg": true,
16363
- "application/rtf": true,
16364
16315
  "text/plain": true,
16365
- "audio/webm;codecs=opus": true,
16366
- "video/mp4": true,
16367
- "application/x-typescript": true,
16368
- "text/x-python": true,
16369
- "video/webm": 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,
16316
+ "application/json": true,
16317
+ "image/png": true,
16318
+ "text/javascript": true,
16378
16319
  "audio/wave": true,
16320
+ "video/webm": true,
16321
+ "image/heic": true,
16322
+ "text/rtf": true,
16323
+ "application/x-python-code": true,
16379
16324
  "video/audio/wav": true,
16380
- "text/html": true,
16381
- "image/heic": true
16382
- },
16383
- modelExperiments: {
16384
- experiments: {
16385
- template__system_prompts__communication_style: {
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.'
16387
- },
16388
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
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}'
16390
- }
16391
- }
16392
- }
16393
- },
16394
- "gemini-3.6-flash-tiered": {
16395
- supportsImages: true,
16396
- supportsThinking: true,
16397
- thinkingBudget: -1,
16398
- minThinkingBudget: 32,
16399
- recommended: true,
16400
- maxTokens: 1048576,
16401
- maxOutputTokens: 65536,
16402
- quotaInfo: {
16403
- remainingFraction: 0.97969,
16404
- resetTime: "2026-08-21T09:19:05Z"
16405
- },
16406
- model: "MODEL_PLACEHOLDER_M196",
16407
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16408
- modelProvider: "MODEL_PROVIDER_GOOGLE",
16409
- supportsVideo: true,
16410
- supportedMimeTypes: {
16411
- "audio/webm;codecs=opus": true,
16412
- "audio/l16": true,
16413
16325
  "audio/flac": true,
16414
- "application/x-python-code": true,
16326
+ "image/jpeg": true,
16327
+ "image/heif": true,
16328
+ "application/x-javascript": true,
16329
+ "video/text/timestamp": true,
16330
+ "video/videoframe/jpeg2000": true,
16331
+ "video/mp4": true,
16415
16332
  "text/x-python-script": true,
16416
- "image/webp": true,
16333
+ "text/html": true,
16417
16334
  "application/x-typescript": true,
16418
- "video/videoframe/jpeg2000": true,
16419
- "application/rtf": 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,
16335
+ "audio/webm;codecs=opus": true,
16336
+ "audio/mp3": true,
16337
+ "text/markdown": true,
16428
16338
  "audio/wav": true,
16429
16339
  "application/x-ipynb+json": true,
16430
- "application/x-javascript": true,
16431
- "text/html": true,
16340
+ "audio/aac": true,
16341
+ "audio/opus": true,
16342
+ "video/jpeg2000": true,
16343
+ "text/xml": true,
16432
16344
  "application/pdf": true,
16433
- "video/text/timestamp": true,
16434
- "text/rtf": true,
16435
- "video/webm": 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,
16345
+ "text/css": true,
16444
16346
  "text/csv": true,
16445
- "audio/vnd.wave": true,
16446
- "text/markdown": true,
16447
- "audio/mpeg": true,
16448
- "audio/webm": true,
16449
- "text/plain": true,
16450
- "image/png": true,
16451
- "text/xml": true,
16452
- "image/heif": true,
16453
- "text/x-typescript": true,
16454
- "application/json": true,
16455
- "audio/mp3": true
16347
+ "audio/mp4": true,
16348
+ "audio/x-wav": true,
16349
+ "text/x-python": true
16456
16350
  },
16457
16351
  modelExperiments: {
16458
16352
  experiments: {
16353
+ template__system_prompts__messaging: {
16354
+ 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."
16355
+ },
16459
16356
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16460
16357
  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}'
16461
16358
  },
@@ -16467,265 +16364,269 @@ var models_default = {
16467
16364
  },
16468
16365
  template__system_prompts__guidelines: {
16469
16366
  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."
16473
16367
  }
16474
16368
  }
16475
16369
  }
16476
16370
  },
16477
- "gemini-3.6-flash-medium": {
16478
- displayName: "Gemini 3.6 Flash (Medium)",
16371
+ tab_jump_flash_lite_preview: {
16372
+ maxTokens: 16384,
16373
+ maxOutputTokens: 4096,
16374
+ quotaInfo: {
16375
+ remainingFraction: 1
16376
+ },
16377
+ model: "MODEL_PLACEHOLDER_M28",
16378
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16379
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16380
+ supportsCumulativeContext: true,
16381
+ tabJumpPrintLineRange: true,
16382
+ supportsEstimateTokenCounter: true,
16383
+ addCursorToFindReplaceTarget: true,
16384
+ toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16385
+ requiresLeadInGeneration: true,
16386
+ requiresNoXmlToolExamples: true
16387
+ },
16388
+ "gemini-3.7-flash-tiered": {
16479
16389
  supportsImages: true,
16480
16390
  supportsThinking: true,
16481
- thinkingBudget: 4e3,
16391
+ thinkingBudget: -1,
16482
16392
  minThinkingBudget: 32,
16483
16393
  recommended: true,
16484
16394
  maxTokens: 1048576,
16485
16395
  maxOutputTokens: 65536,
16486
16396
  quotaInfo: {
16487
- remainingFraction: 0.97969,
16488
- resetTime: "2026-08-21T09:19:05Z"
16397
+ remainingFraction: 0.9783466,
16398
+ resetTime: "2026-08-22T17:36:20Z"
16489
16399
  },
16490
- model: "MODEL_PLACEHOLDER_M72",
16400
+ model: "MODEL_PLACEHOLDER_M301",
16491
16401
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16492
16402
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16493
16403
  supportsVideo: true,
16494
- tagTitle: "Fast",
16495
- tagDescription: "Limited time",
16496
16404
  supportedMimeTypes: {
16497
- "audio/mp3": true,
16405
+ "audio/x-wav": true,
16406
+ "text/x-typescript": true,
16407
+ "video/audio/s16le": true,
16498
16408
  "text/x-python-script": true,
16499
- "audio/opus": true,
16500
- "application/x-javascript": true,
16409
+ "audio/aac": true,
16410
+ "application/rtf": true,
16411
+ "text/rtf": true,
16501
16412
  "video/text/timestamp": true,
16502
- "audio/ogg": true,
16503
- "text/xml": true,
16504
- "audio/x-wav": true,
16505
- "video/audio/wav": true,
16506
- "video/webm": true,
16507
- "audio/wav": true,
16508
- "audio/mpeg": true,
16509
- "image/jpeg": true,
16510
- "text/x-python": true,
16511
- "text/csv": true,
16512
16413
  "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,
16414
+ "image/heic": true,
16415
+ "text/csv": true,
16416
+ "audio/wave": true,
16417
+ "text/x-python": true,
16418
+ "image/png": true,
16521
16419
  "video/videoframe/jpeg2000": true,
16522
- "text/plain": true,
16523
- "image/heif": true,
16420
+ "audio/webm;codecs=opus": true,
16421
+ "application/x-javascript": true,
16524
16422
  "image/webp": true,
16525
16423
  "application/pdf": true,
16526
- "image/heic": true,
16424
+ "audio/mp3": true,
16425
+ "image/jpeg": true,
16426
+ "application/x-typescript": true,
16427
+ "application/x-python-code": true,
16428
+ "text/html": true,
16429
+ "video/webm": true,
16527
16430
  "audio/mp4": true,
16528
16431
  "text/markdown": true,
16529
- "text/x-typescript": true,
16530
- "application/x-python-code": true,
16531
- "audio/webm;codecs=opus": true,
16532
- "audio/wave": true,
16533
- "video/mp4": true,
16534
- "image/png": true,
16535
- "application/x-typescript": true,
16432
+ "text/css": true,
16433
+ "audio/wav": true,
16434
+ "image/heif": true,
16435
+ "audio/vnd.wave": true,
16436
+ "text/javascript": true,
16437
+ "text/xml": true,
16438
+ "video/audio/wav": true,
16536
16439
  "audio/webm": true,
16537
- "audio/flac": true,
16440
+ "video/jpeg2000": true,
16441
+ "audio/opus": true,
16442
+ "text/plain": true,
16443
+ "audio/ogg": true,
16444
+ "video/mp4": true,
16538
16445
  "application/json": true,
16539
- "application/rtf": true,
16540
- "video/audio/s16le": true,
16541
- "audio/vnd.wave": true
16446
+ "audio/m4a": true,
16447
+ "application/x-ipynb+json": true,
16448
+ "audio/flac": true,
16449
+ "audio/mpeg": true
16542
16450
  },
16543
16451
  modelExperiments: {
16544
16452
  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
- },
16548
16453
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16549
16454
  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
16455
  },
16551
16456
  "cascade-include-ephemeral-message": {
16552
16457
  stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16553
16458
  },
16554
- template__system_prompts__communication_style: {
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"
16459
+ "task-details-suffix": {
16460
+ 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."
16559
16461
  }
16560
16462
  }
16561
16463
  }
16562
16464
  },
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)",
16465
+ "gemini-3.6-flash-medium": {
16466
+ displayName: "Gemini 3.6 Flash (Medium)",
16575
16467
  supportsImages: true,
16576
16468
  supportsThinking: true,
16577
- thinkingBudget: 1e3,
16469
+ thinkingBudget: 4e3,
16578
16470
  minThinkingBudget: 32,
16579
16471
  recommended: true,
16580
16472
  maxTokens: 1048576,
16581
16473
  maxOutputTokens: 65536,
16582
16474
  quotaInfo: {
16583
- remainingFraction: 0.97969,
16584
- resetTime: "2026-08-21T09:19:05Z"
16475
+ remainingFraction: 0.9783466,
16476
+ resetTime: "2026-08-22T17:36:20Z"
16585
16477
  },
16586
- model: "MODEL_PLACEHOLDER_M187",
16478
+ model: "MODEL_PLACEHOLDER_M72",
16587
16479
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16588
16480
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16589
16481
  supportsVideo: true,
16590
16482
  tagTitle: "Fast",
16591
16483
  tagDescription: "Limited time",
16592
16484
  supportedMimeTypes: {
16593
- "text/markdown": true,
16485
+ "audio/aac": true,
16486
+ "text/csv": true,
16487
+ "application/json": true,
16594
16488
  "video/videoframe/jpeg2000": true,
16489
+ "audio/ogg": true,
16490
+ "audio/webm": true,
16491
+ "video/mp4": true,
16595
16492
  "image/heif": true,
16596
- "audio/wave": true,
16597
16493
  "text/rtf": true,
16598
- "audio/mp3": true,
16599
16494
  "audio/flac": true,
16600
- "video/audio/wav": true,
16601
- "image/heic": true,
16495
+ "image/png": true,
16496
+ "image/jpeg": true,
16497
+ "video/text/timestamp": true,
16498
+ "text/plain": true,
16602
16499
  "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
16500
  "text/html": true,
16611
- "application/x-javascript": true,
16612
- "text/javascript": true,
16613
- "text/x-python-script": true,
16501
+ "audio/mp3": true,
16614
16502
  "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,
16503
+ "video/audio/wav": true,
16504
+ "image/heic": true,
16624
16505
  "application/x-typescript": true,
16506
+ "video/audio/s16le": true,
16507
+ "application/x-ipynb+json": true,
16508
+ "audio/wave": true,
16509
+ "audio/vnd.wave": true,
16510
+ "audio/x-wav": true,
16511
+ "text/javascript": true,
16625
16512
  "audio/l16": true,
16626
- "audio/webm;codecs=opus": true,
16627
- "image/png": true,
16513
+ "audio/wav": true,
16514
+ "image/webp": true,
16628
16515
  "audio/opus": true,
16629
- "audio/ogg": true,
16516
+ "application/x-python-code": true,
16517
+ "video/webm": true,
16518
+ "video/jpeg2000": true,
16519
+ "text/x-python-script": true,
16520
+ "application/x-javascript": true,
16521
+ "audio/m4a": true,
16522
+ "text/markdown": true,
16523
+ "audio/mpeg": true,
16630
16524
  "text/x-typescript": true,
16631
- "audio/x-wav": true,
16632
- "video/mp4": true,
16633
- "audio/vnd.wave": true,
16525
+ "audio/webm;codecs=opus": true,
16526
+ "audio/mp4": true,
16527
+ "text/css": true,
16634
16528
  "text/xml": true,
16635
- "image/webp": true,
16636
- "audio/aac": true,
16637
- "audio/mp4": true
16529
+ "application/rtf": true
16638
16530
  },
16639
16531
  modelExperiments: {
16640
16532
  experiments: {
16641
16533
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16642
16534
  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
16535
  },
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"
16536
+ "cascade-include-ephemeral-message": {
16537
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16538
+ },
16539
+ template__system_prompts__communication_style: {
16540
+ 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"
16541
+ },
16542
+ template__system_prompts__guidelines: {
16543
+ 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"
16544
+ },
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."
16646
16547
  }
16647
16548
  }
16648
16549
  }
16649
16550
  },
16650
- "claude-sonnet-4-6": {
16651
- displayName: "Claude Sonnet 4.6 (Thinking)",
16551
+ "gemini-2.5-pro": {
16552
+ displayName: "Gemini 2.5 Pro",
16652
16553
  supportsImages: true,
16653
16554
  supportsThinking: true,
16654
16555
  thinkingBudget: 1024,
16556
+ minThinkingBudget: 128,
16655
16557
  recommended: true,
16656
- maxTokens: 25e4,
16657
- maxOutputTokens: 64e3,
16558
+ maxTokens: 1048576,
16559
+ maxOutputTokens: 65535,
16658
16560
  quotaInfo: {
16659
- remainingFraction: 1,
16660
- resetTime: "2026-08-21T09:20:48Z"
16561
+ remainingFraction: 0.9783466,
16562
+ resetTime: "2026-08-22T17:36:20Z"
16661
16563
  },
16662
- model: "MODEL_PLACEHOLDER_M35",
16663
- apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16664
- modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16564
+ model: "MODEL_GOOGLE_GEMINI_2_5_PRO",
16565
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16566
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16665
16567
  supportedMimeTypes: {
16666
- "image/webp": true,
16667
- "video/jpeg2000": true,
16568
+ "audio/webm": true,
16569
+ "application/json": true,
16668
16570
  "video/videoframe/jpeg2000": true,
16669
- "image/heic": true,
16670
- "image/heif": true,
16671
- "image/jpeg": true,
16672
- "image/png": true
16673
- },
16674
- modelExperiments: {
16675
- experiments: {
16676
- template__system_prompts__planning_mode_artifacts: {
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}'
16681
- }
16682
- }
16683
- },
16684
- vertexModelId: "claude-sonnet-4-6@default"
16685
- },
16686
- "claude-opus-4-6-thinking": {
16687
- displayName: "Claude Opus 4.6 (Thinking)",
16688
- supportsImages: true,
16689
- supportsThinking: true,
16690
- thinkingBudget: 1024,
16691
- recommended: true,
16692
- maxTokens: 25e4,
16693
- maxOutputTokens: 64e3,
16694
- quotaInfo: {
16695
- remainingFraction: 1,
16696
- resetTime: "2026-08-21T09:20:48Z"
16697
- },
16698
- model: "MODEL_PLACEHOLDER_M26",
16699
- apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16700
- modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16701
- supportedMimeTypes: {
16702
16571
  "image/jpeg": true,
16572
+ "audio/vnd.wave": true,
16573
+ "audio/flac": true,
16574
+ "audio/l16": true,
16575
+ "application/x-ipynb+json": true,
16576
+ "audio/mpeg": true,
16577
+ "application/x-javascript": true,
16578
+ "video/audio/s16le": true,
16703
16579
  "image/png": true,
16580
+ "application/x-typescript": true,
16581
+ "text/rtf": true,
16582
+ "audio/m4a": true,
16583
+ "audio/mp3": true,
16584
+ "audio/ogg": true,
16585
+ "audio/webm;codecs=opus": true,
16586
+ "audio/x-wav": true,
16587
+ "text/x-typescript": true,
16588
+ "audio/opus": true,
16589
+ "application/rtf": true,
16590
+ "application/pdf": true,
16591
+ "text/javascript": true,
16592
+ "video/audio/wav": true,
16593
+ "text/html": true,
16594
+ "audio/wave": true,
16595
+ "audio/aac": true,
16596
+ "video/mp4": true,
16597
+ "image/heic": true,
16598
+ "application/x-python-code": true,
16704
16599
  "image/webp": true,
16600
+ "audio/mp4": true,
16601
+ "text/x-python": true,
16602
+ "text/x-python-script": true,
16603
+ "video/text/timestamp": true,
16604
+ "audio/wav": true,
16605
+ "video/webm": true,
16606
+ "image/heif": true,
16607
+ "text/plain": true,
16705
16608
  "video/jpeg2000": true,
16706
- "video/videoframe/jpeg2000": true,
16707
- "image/heic": true,
16708
- "image/heif": true
16609
+ "text/markdown": true,
16610
+ "text/csv": true,
16611
+ "text/xml": true,
16612
+ "text/css": true
16709
16613
  },
16614
+ requiresImageOutputOutsideFunctionResponses: true,
16710
16615
  modelExperiments: {
16711
16616
  experiments: {
16712
16617
  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
- },
16715
- template__system_prompts__planning_mode_artifacts: {
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"
16618
+ 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}'
16717
16619
  }
16718
16620
  }
16719
- },
16720
- vertexModelId: "claude-opus-4-6@default"
16621
+ }
16721
16622
  },
16722
16623
  "gemini-2.5-flash-thinking": {
16723
16624
  displayName: "Gemini 3.1 Flash Lite",
16724
16625
  maxTokens: 1048576,
16725
16626
  maxOutputTokens: 65535,
16726
16627
  quotaInfo: {
16727
- remainingFraction: 0.97969,
16728
- resetTime: "2026-08-21T09:19:05Z"
16628
+ remainingFraction: 0.9783466,
16629
+ resetTime: "2026-08-22T17:36:20Z"
16729
16630
  },
16730
16631
  model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_THINKING",
16731
16632
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
@@ -16738,31 +16639,8 @@ var models_default = {
16738
16639
  }
16739
16640
  }
16740
16641
  },
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)",
16642
+ "gemini-3.5-flash-extra-low": {
16643
+ displayName: "Gemini 3.5 Flash (Low)",
16766
16644
  supportsImages: true,
16767
16645
  supportsThinking: true,
16768
16646
  thinkingBudget: 1e3,
@@ -16771,173 +16649,237 @@ var models_default = {
16771
16649
  maxTokens: 1048576,
16772
16650
  maxOutputTokens: 65536,
16773
16651
  quotaInfo: {
16774
- remainingFraction: 0.97969,
16775
- resetTime: "2026-08-21T09:19:05Z"
16652
+ remainingFraction: 0.9783466,
16653
+ resetTime: "2026-08-22T17:36:20Z"
16776
16654
  },
16777
- model: "MODEL_PLACEHOLDER_M73",
16655
+ model: "MODEL_PLACEHOLDER_M187",
16778
16656
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16779
16657
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16780
16658
  supportsVideo: true,
16781
16659
  tagTitle: "Fast",
16782
16660
  tagDescription: "Limited time",
16783
16661
  supportedMimeTypes: {
16784
- "application/rtf": true,
16785
- "image/webp": true,
16786
- "audio/wave": true,
16787
- "image/png": true,
16788
- "audio/l16": true,
16789
- "text/plain": true,
16790
- "text/x-python": 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,
16799
- "text/csv": true,
16800
- "text/markdown": true,
16662
+ "audio/opus": true,
16663
+ "audio/mp3": true,
16664
+ "application/x-ipynb+json": true,
16801
16665
  "application/x-python-code": true,
16802
16666
  "text/javascript": true,
16803
- "application/x-ipynb+json": true,
16804
- "text/rtf": true,
16805
- "image/heif": true,
16806
- "text/css": true,
16807
- "text/x-typescript": true,
16808
- "audio/vnd.wave": true,
16809
- "application/json": true,
16810
16667
  "video/audio/s16le": true,
16668
+ "text/plain": true,
16669
+ "text/xml": true,
16811
16670
  "audio/flac": true,
16812
- "audio/opus": true,
16813
- "audio/mp3": true,
16814
- "video/jpeg2000": true,
16815
- "audio/wav": true,
16671
+ "audio/webm;codecs=opus": true,
16672
+ "video/text/timestamp": true,
16673
+ "audio/wave": true,
16816
16674
  "text/html": true,
16817
16675
  "audio/x-wav": true,
16676
+ "text/css": true,
16677
+ "video/mp4": true,
16678
+ "audio/l16": true,
16679
+ "image/webp": true,
16680
+ "application/json": true,
16681
+ "text/x-python-script": true,
16682
+ "audio/mpeg": true,
16683
+ "audio/m4a": true,
16818
16684
  "image/heic": true,
16819
16685
  "application/x-typescript": true,
16820
- "audio/webm": true,
16821
- "video/videoframe/jpeg2000": true,
16822
- "application/pdf": true,
16686
+ "text/csv": true,
16687
+ "text/markdown": true,
16688
+ "text/rtf": true,
16823
16689
  "audio/mp4": true,
16824
- "video/mp4": true,
16825
- "audio/m4a": true,
16826
- "audio/mpeg": true,
16690
+ "application/pdf": true,
16691
+ "audio/aac": true,
16692
+ "image/heif": true,
16693
+ "video/audio/wav": true,
16694
+ "video/videoframe/jpeg2000": true,
16695
+ "audio/wav": true,
16696
+ "image/png": true,
16697
+ "audio/ogg": true,
16698
+ "text/x-typescript": true,
16699
+ "text/x-python": true,
16700
+ "application/rtf": true,
16701
+ "audio/vnd.wave": true,
16827
16702
  "image/jpeg": true,
16828
- "application/x-javascript": true
16703
+ "video/jpeg2000": true,
16704
+ "video/webm": true,
16705
+ "application/x-javascript": true,
16706
+ "audio/webm": true
16829
16707
  },
16830
16708
  modelExperiments: {
16831
16709
  experiments: {
16832
- template__system_prompts__messaging: {
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."
16834
- },
16835
16710
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16836
16711
  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}'
16837
16712
  },
16838
- "cascade-include-ephemeral-message": {
16839
- stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16840
- },
16841
- template__system_prompts__communication_style: {
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"
16713
+ template__system_prompts__planning_mode_artifacts: {
16714
+ 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"
16846
16715
  }
16847
16716
  }
16848
16717
  }
16849
16718
  },
16850
- "gemini-3.1-pro-high": {
16851
- displayName: "Gemini 3.1 Pro (High)",
16719
+ "gemini-3-flash": {
16720
+ displayName: "Gemini 3 Flash",
16852
16721
  supportsImages: true,
16853
16722
  supportsThinking: true,
16854
- thinkingBudget: 10001,
16855
- minThinkingBudget: 128,
16723
+ thinkingBudget: -1,
16724
+ minThinkingBudget: 32,
16856
16725
  recommended: true,
16857
16726
  maxTokens: 1048576,
16858
- maxOutputTokens: 65535,
16727
+ maxOutputTokens: 65536,
16859
16728
  quotaInfo: {
16860
- remainingFraction: 0.97969,
16861
- resetTime: "2026-08-21T09:19:05Z"
16729
+ remainingFraction: 0.9783466,
16730
+ resetTime: "2026-08-22T17:36:20Z"
16862
16731
  },
16863
- model: "MODEL_PLACEHOLDER_M37",
16732
+ model: "MODEL_PLACEHOLDER_M18",
16864
16733
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16865
16734
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16866
16735
  supportsVideo: true,
16867
- tagTitle: "New",
16868
16736
  supportedMimeTypes: {
16869
- "video/text/timestamp": true,
16870
- "audio/wav": true,
16871
- "text/x-typescript": true,
16872
- "text/javascript": true,
16873
16737
  "text/x-python-script": true,
16874
- "video/audio/s16le": true,
16738
+ "audio/flac": true,
16875
16739
  "text/html": true,
16876
- "audio/m4a": true,
16877
- "video/jpeg2000": true,
16878
- "image/heic": true,
16879
- "video/webm": true,
16880
- "audio/vnd.wave": true,
16881
- "image/webp": true,
16740
+ "application/x-javascript": true,
16882
16741
  "audio/wave": true,
16883
- "application/x-python-code": true,
16884
- "application/rtf": true,
16885
- "image/heif": true,
16886
16742
  "audio/webm;codecs=opus": true,
16743
+ "application/x-typescript": true,
16744
+ "image/heif": true,
16745
+ "audio/x-wav": true,
16746
+ "audio/mpeg": true,
16747
+ "video/audio/wav": true,
16748
+ "video/mp4": true,
16887
16749
  "audio/mp4": true,
16888
- "text/markdown": true,
16889
- "audio/l16": true,
16750
+ "audio/vnd.wave": true,
16890
16751
  "audio/webm": true,
16752
+ "video/jpeg2000": true,
16891
16753
  "audio/ogg": true,
16754
+ "video/webm": true,
16755
+ "audio/opus": true,
16756
+ "video/text/timestamp": true,
16757
+ "application/x-python-code": true,
16892
16758
  "text/css": true,
16759
+ "image/jpeg": true,
16760
+ "application/rtf": true,
16761
+ "text/xml": true,
16762
+ "text/x-typescript": true,
16763
+ "image/webp": true,
16764
+ "text/x-python": true,
16765
+ "text/javascript": true,
16766
+ "text/rtf": true,
16767
+ "text/markdown": true,
16768
+ "audio/wav": true,
16769
+ "video/videoframe/jpeg2000": true,
16770
+ "image/heic": true,
16771
+ "text/csv": true,
16772
+ "application/x-ipynb+json": true,
16773
+ "audio/mp3": true,
16774
+ "audio/m4a": true,
16775
+ "text/plain": true,
16776
+ "video/audio/s16le": true,
16777
+ "audio/aac": true,
16778
+ "image/png": true,
16779
+ "application/json": true,
16780
+ "application/pdf": true,
16781
+ "audio/l16": true
16782
+ },
16783
+ modelExperiments: {
16784
+ experiments: {
16785
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16786
+ 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}'
16787
+ },
16788
+ template__system_prompts__communication_style: {
16789
+ 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.'
16790
+ }
16791
+ }
16792
+ }
16793
+ },
16794
+ "gemini-3.7-flash-high": {
16795
+ displayName: "Gemini 3.7 Flash (High)",
16796
+ supportsImages: true,
16797
+ supportsThinking: true,
16798
+ thinkingBudget: -1,
16799
+ minThinkingBudget: 32,
16800
+ recommended: true,
16801
+ maxTokens: 1048576,
16802
+ maxOutputTokens: 65536,
16803
+ quotaInfo: {
16804
+ remainingFraction: 0.9783466,
16805
+ resetTime: "2026-08-22T17:36:20Z"
16806
+ },
16807
+ model: "MODEL_PLACEHOLDER_M298",
16808
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16809
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16810
+ supportsVideo: true,
16811
+ tagTitle: "Fast",
16812
+ tagDescription: "Limited time",
16813
+ supportedMimeTypes: {
16814
+ "audio/webm;codecs=opus": true,
16815
+ "text/javascript": true,
16816
+ "text/html": true,
16893
16817
  "application/x-javascript": true,
16894
- "application/x-ipynb+json": true,
16895
- "audio/mp3": true,
16896
- "video/mp4": true,
16897
- "text/csv": true,
16898
- "text/x-python": true,
16818
+ "text/x-python-script": true,
16899
16819
  "audio/mpeg": true,
16820
+ "image/jpeg": true,
16900
16821
  "text/rtf": true,
16901
- "text/plain": true,
16902
16822
  "audio/aac": true,
16903
- "image/png": true,
16823
+ "text/csv": true,
16824
+ "application/pdf": true,
16825
+ "text/markdown": true,
16826
+ "audio/wav": true,
16827
+ "audio/wave": true,
16904
16828
  "application/json": true,
16905
- "audio/opus": true,
16829
+ "application/x-python-code": true,
16830
+ "video/mp4": true,
16831
+ "video/webm": true,
16832
+ "audio/x-wav": true,
16906
16833
  "audio/flac": true,
16907
- "image/jpeg": true,
16834
+ "audio/m4a": true,
16835
+ "audio/vnd.wave": true,
16836
+ "image/heic": true,
16837
+ "audio/ogg": true,
16838
+ "text/x-python": true,
16839
+ "audio/webm": true,
16840
+ "image/heif": true,
16841
+ "text/x-typescript": true,
16842
+ "application/x-typescript": true,
16843
+ "audio/l16": true,
16844
+ "audio/opus": true,
16845
+ "text/css": true,
16846
+ "video/audio/s16le": true,
16847
+ "video/jpeg2000": true,
16848
+ "application/x-ipynb+json": true,
16908
16849
  "video/audio/wav": true,
16909
16850
  "video/videoframe/jpeg2000": true,
16910
- "application/pdf": true,
16911
- "audio/x-wav": true,
16912
- "application/x-typescript": true,
16913
- "text/xml": true
16851
+ "image/png": true,
16852
+ "image/webp": true,
16853
+ "video/text/timestamp": true,
16854
+ "application/rtf": true,
16855
+ "text/plain": true,
16856
+ "text/xml": true,
16857
+ "audio/mp3": true,
16858
+ "audio/mp4": true
16914
16859
  },
16915
16860
  modelExperiments: {
16916
16861
  experiments: {
16917
- template__system_prompts__planning_mode_artifacts: {
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
16862
  "cascade-include-ephemeral-message": {
16924
- stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16863
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16925
16864
  },
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: ...'."
16865
+ "task-details-suffix": {
16866
+ 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
+ },
16868
+ 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 "session_summary_prompt_override": ""\n}'
16928
16870
  }
16929
16871
  }
16930
16872
  }
16931
16873
  },
16932
- "gemini-2.5-flash": {
16874
+ "gemini-2.5-flash-lite": {
16933
16875
  displayName: "Gemini 3.1 Flash Lite",
16934
16876
  maxTokens: 1048576,
16935
16877
  maxOutputTokens: 65535,
16936
16878
  quotaInfo: {
16937
- remainingFraction: 0.97969,
16938
- resetTime: "2026-08-21T09:19:05Z"
16879
+ remainingFraction: 0.9783466,
16880
+ resetTime: "2026-08-22T17:36:20Z"
16939
16881
  },
16940
- model: "MODEL_GOOGLE_GEMINI_2_5_FLASH",
16882
+ model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE",
16941
16883
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16942
16884
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16943
16885
  modelExperiments: {
@@ -16948,249 +16890,258 @@ var models_default = {
16948
16890
  }
16949
16891
  }
16950
16892
  },
16951
- "gemini-2.5-pro": {
16952
- displayName: "Gemini 2.5 Pro",
16893
+ "gemini-3.6-flash-high": {
16894
+ displayName: "Gemini 3.6 Flash (High)",
16953
16895
  supportsImages: true,
16954
16896
  supportsThinking: true,
16955
- thinkingBudget: 1024,
16956
- minThinkingBudget: 128,
16897
+ thinkingBudget: -1,
16898
+ minThinkingBudget: 32,
16957
16899
  recommended: true,
16958
16900
  maxTokens: 1048576,
16959
- maxOutputTokens: 65535,
16901
+ maxOutputTokens: 65536,
16960
16902
  quotaInfo: {
16961
- remainingFraction: 0.97969,
16962
- resetTime: "2026-08-21T09:19:05Z"
16903
+ remainingFraction: 0.9783466,
16904
+ resetTime: "2026-08-22T17:36:20Z"
16963
16905
  },
16964
- model: "MODEL_GOOGLE_GEMINI_2_5_PRO",
16906
+ model: "MODEL_PLACEHOLDER_M71",
16965
16907
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16966
16908
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16909
+ supportsVideo: true,
16910
+ tagTitle: "Fast",
16911
+ tagDescription: "Limited time",
16967
16912
  supportedMimeTypes: {
16968
- "audio/webm": true,
16969
- "video/videoframe/jpeg2000": true,
16913
+ "audio/aac": true,
16914
+ "application/x-python-code": true,
16915
+ "application/x-typescript": true,
16916
+ "text/css": true,
16917
+ "audio/mp4": true,
16918
+ "image/webp": true,
16919
+ "audio/x-wav": true,
16920
+ "audio/opus": true,
16921
+ "image/heic": true,
16922
+ "text/csv": true,
16923
+ "text/rtf": true,
16924
+ "audio/wave": true,
16925
+ "video/audio/s16le": true,
16926
+ "video/mp4": true,
16970
16927
  "text/xml": true,
16928
+ "video/text/timestamp": true,
16929
+ "application/rtf": true,
16971
16930
  "application/x-javascript": true,
16972
- "video/audio/s16le": true,
16973
- "audio/flac": true,
16974
- "application/x-python-code": true,
16931
+ "image/jpeg": true,
16932
+ "text/x-python-script": true,
16933
+ "video/jpeg2000": true,
16975
16934
  "audio/vnd.wave": true,
16935
+ "text/x-python": true,
16936
+ "text/javascript": true,
16937
+ "video/videoframe/jpeg2000": true,
16938
+ "application/x-ipynb+json": true,
16939
+ "audio/flac": true,
16976
16940
  "text/markdown": true,
16941
+ "audio/l16": true,
16942
+ "application/json": true,
16977
16943
  "audio/wav": true,
16978
- "audio/mp4": true,
16979
- "application/x-ipynb+json": true,
16944
+ "audio/ogg": true,
16980
16945
  "video/webm": true,
16981
- "application/rtf": true,
16946
+ "text/html": true,
16982
16947
  "audio/mp3": true,
16948
+ "video/audio/wav": true,
16983
16949
  "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,
16990
- "image/jpeg": true,
16991
- "video/mp4": true,
16992
- "video/text/timestamp": true,
16993
- "application/json": true,
16994
16950
  "audio/m4a": true,
16995
- "audio/opus": true,
16996
- "text/javascript": true,
16997
- "text/csv": 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,
16951
+ "audio/webm;codecs=opus": true,
16952
+ "audio/webm": true,
17005
16953
  "image/png": true,
16954
+ "text/x-typescript": true,
17006
16955
  "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,
16956
+ "text/plain": true,
17012
16957
  "application/pdf": true
17013
16958
  },
17014
- requiresImageOutputOutsideFunctionResponses: true,
17015
16959
  modelExperiments: {
17016
16960
  experiments: {
16961
+ template__system_prompts__messaging: {
16962
+ 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."
16963
+ },
17017
16964
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
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}'
16965
+ 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}'
16966
+ },
16967
+ "cascade-include-ephemeral-message": {
16968
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16969
+ },
16970
+ template__system_prompts__communication_style: {
16971
+ 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"
16972
+ },
16973
+ template__system_prompts__guidelines: {
16974
+ 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"
17019
16975
  }
17020
16976
  }
17021
16977
  }
17022
16978
  },
17023
- chat_23310: {
17024
- maxTokens: 32768,
16979
+ "gemini-2.5-flash": {
16980
+ displayName: "Gemini 3.1 Flash Lite",
16981
+ maxTokens: 1048576,
16982
+ maxOutputTokens: 65535,
17025
16983
  quotaInfo: {
17026
- remainingFraction: 1
16984
+ remainingFraction: 0.9783466,
16985
+ resetTime: "2026-08-22T17:36:20Z"
17027
16986
  },
17028
- model: "MODEL_CHAT_23310",
17029
- apiProvider: "API_PROVIDER_INTERNAL",
16987
+ model: "MODEL_GOOGLE_GEMINI_2_5_FLASH",
16988
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17030
16989
  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
16990
+ modelExperiments: {
16991
+ experiments: {
16992
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16993
+ 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}'
16994
+ }
16995
+ }
16996
+ }
17037
16997
  },
17038
- "gemini-3.7-flash-tiered": {
16998
+ "gemini-3.1-pro-high": {
16999
+ displayName: "Gemini 3.1 Pro (High)",
17039
17000
  supportsImages: true,
17040
17001
  supportsThinking: true,
17041
- thinkingBudget: -1,
17042
- minThinkingBudget: 32,
17002
+ thinkingBudget: 10001,
17003
+ minThinkingBudget: 128,
17043
17004
  recommended: true,
17044
17005
  maxTokens: 1048576,
17045
- maxOutputTokens: 65536,
17006
+ maxOutputTokens: 65535,
17046
17007
  quotaInfo: {
17047
- remainingFraction: 0.97969,
17048
- resetTime: "2026-08-21T09:19:05Z"
17008
+ remainingFraction: 0.9783466,
17009
+ resetTime: "2026-08-22T17:36:20Z"
17049
17010
  },
17050
- model: "MODEL_PLACEHOLDER_M301",
17011
+ model: "MODEL_PLACEHOLDER_M37",
17051
17012
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17052
17013
  modelProvider: "MODEL_PROVIDER_GOOGLE",
17053
17014
  supportsVideo: true,
17015
+ tagTitle: "New",
17054
17016
  supportedMimeTypes: {
17055
- "audio/mp3": true,
17056
- "text/x-python-script": true,
17057
- "audio/m4a": true,
17017
+ "image/heif": true,
17018
+ "audio/wav": true,
17019
+ "text/markdown": true,
17020
+ "image/png": true,
17021
+ "application/x-ipynb+json": true,
17022
+ "audio/mpeg": true,
17058
17023
  "text/rtf": true,
17059
- "audio/x-wav": true,
17024
+ "application/x-python-code": true,
17025
+ "application/json": true,
17060
17026
  "text/x-python": true,
17061
- "text/css": true,
17062
- "audio/mpeg": true,
17063
17027
  "text/html": true,
17064
- "image/heic": true,
17065
17028
  "audio/l16": true,
17066
- "image/heif": true,
17067
- "application/x-python-code": true,
17029
+ "video/audio/s16le": true,
17030
+ "text/xml": true,
17031
+ "audio/opus": true,
17032
+ "video/mp4": true,
17033
+ "audio/webm;codecs=opus": true,
17034
+ "application/rtf": true,
17035
+ "video/audio/wav": true,
17036
+ "audio/ogg": true,
17037
+ "audio/mp3": true,
17038
+ "audio/aac": true,
17039
+ "application/x-javascript": true,
17068
17040
  "text/csv": true,
17069
- "text/x-typescript": true,
17070
- "video/jpeg2000": true,
17041
+ "text/css": true,
17042
+ "image/heic": true,
17071
17043
  "application/pdf": true,
17072
- "audio/wav": true,
17073
- "application/x-javascript": true,
17074
- "application/x-ipynb+json": true,
17075
- "video/webm": true,
17076
- "audio/mp4": true,
17077
- "text/plain": true,
17078
- "audio/wave": true,
17079
- "audio/webm;codecs=opus": true,
17080
- "audio/flac": true,
17081
- "audio/webm": true,
17082
- "image/png": true,
17083
17044
  "text/javascript": true,
17084
17045
  "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,
17090
- "text/xml": true,
17091
- "text/markdown": true,
17092
17046
  "application/x-typescript": true,
17093
- "audio/opus": true,
17094
- "application/rtf": true,
17047
+ "video/videoframe/jpeg2000": true,
17048
+ "audio/webm": true,
17049
+ "video/text/timestamp": true,
17095
17050
  "audio/vnd.wave": true,
17051
+ "audio/x-wav": true,
17052
+ "video/webm": true,
17053
+ "audio/m4a": true,
17054
+ "audio/mp4": true,
17055
+ "text/x-python-script": true,
17096
17056
  "image/webp": true,
17097
- "audio/ogg": true,
17098
- "video/audio/wav": true,
17099
- "application/json": true
17057
+ "text/plain": true,
17058
+ "text/x-typescript": true,
17059
+ "audio/wave": true,
17060
+ "audio/flac": true,
17061
+ "video/jpeg2000": true
17100
17062
  },
17101
17063
  modelExperiments: {
17102
17064
  experiments: {
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."
17065
+ template__system_prompts__planning_mode_artifacts: {
17066
+ 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"
17105
17067
  },
17106
17068
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
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}'
17069
+ 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}'
17108
17070
  },
17109
17071
  "cascade-include-ephemeral-message": {
17110
- stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17072
+ stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17073
+ },
17074
+ template__system_prompts__communication_style: {
17075
+ 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: ...'."
17111
17076
  }
17112
17077
  }
17113
17078
  }
17114
17079
  },
17115
- tab_flash_lite_preview: {
17116
- maxTokens: 16384,
17117
- maxOutputTokens: 4096,
17118
- quotaInfo: {
17119
- remainingFraction: 1
17120
- },
17121
- model: "MODEL_PLACEHOLDER_M19",
17122
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17123
- modelProvider: "MODEL_PROVIDER_GOOGLE",
17124
- supportsCumulativeContext: true,
17125
- supportsEstimateTokenCounter: true,
17126
- toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
17127
- requiresLeadInGeneration: true
17128
- },
17129
- "gemini-3.7-flash-low": {
17130
- displayName: "Gemini 3.7 Flash (Low)",
17080
+ "gemini-3.7-flash-medium": {
17081
+ displayName: "Gemini 3.7 Flash (Medium)",
17131
17082
  supportsImages: true,
17132
17083
  supportsThinking: true,
17133
- thinkingBudget: 1e3,
17084
+ thinkingBudget: 4e3,
17134
17085
  minThinkingBudget: 32,
17135
17086
  recommended: true,
17136
17087
  maxTokens: 1048576,
17137
17088
  maxOutputTokens: 65536,
17138
17089
  quotaInfo: {
17139
- remainingFraction: 0.97969,
17140
- resetTime: "2026-08-21T09:19:05Z"
17090
+ remainingFraction: 0.9783466,
17091
+ resetTime: "2026-08-22T17:36:20Z"
17141
17092
  },
17142
- model: "MODEL_PLACEHOLDER_M300",
17093
+ model: "MODEL_PLACEHOLDER_M299",
17143
17094
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17144
17095
  modelProvider: "MODEL_PROVIDER_GOOGLE",
17145
17096
  supportsVideo: true,
17146
17097
  tagTitle: "Fast",
17147
17098
  tagDescription: "Limited time",
17148
17099
  supportedMimeTypes: {
17149
- "image/jpeg": true,
17150
- "video/audio/s16le": true,
17151
- "video/jpeg2000": true,
17152
- "text/x-python-script": true,
17153
- "text/xml": true,
17100
+ "audio/opus": true,
17154
17101
  "image/heic": true,
17155
- "image/heif": true,
17156
- "application/pdf": true,
17157
17102
  "text/html": true,
17158
- "text/css": true,
17103
+ "audio/flac": true,
17104
+ "audio/vnd.wave": true,
17105
+ "text/markdown": true,
17106
+ "audio/m4a": true,
17107
+ "image/jpeg": true,
17108
+ "text/plain": true,
17109
+ "audio/webm;codecs=opus": true,
17110
+ "image/heif": true,
17159
17111
  "text/x-typescript": true,
17160
- "audio/wav": true,
17161
- "video/text/timestamp": true,
17162
- "application/x-python-code": true,
17163
- "audio/ogg": true,
17164
- "application/x-javascript": true,
17165
- "application/x-typescript": true,
17112
+ "audio/webm": true,
17113
+ "image/png": true,
17114
+ "audio/mp4": true,
17115
+ "image/webp": true,
17116
+ "text/x-python-script": true,
17166
17117
  "video/videoframe/jpeg2000": true,
17167
- "text/markdown": true,
17118
+ "video/audio/s16le": true,
17168
17119
  "audio/wave": true,
17169
- "video/webm": true,
17170
- "audio/flac": true,
17171
- "text/x-python": true,
17172
- "audio/mp3": true,
17173
- "text/csv": true,
17174
- "audio/webm;codecs=opus": true,
17175
- "audio/aac": true,
17176
- "text/plain": true,
17177
17120
  "video/mp4": true,
17121
+ "audio/x-wav": true,
17122
+ "audio/mpeg": true,
17123
+ "application/pdf": true,
17178
17124
  "audio/l16": true,
17179
- "audio/vnd.wave": true,
17180
- "image/png": true,
17181
- "audio/m4a": true,
17182
- "audio/mp4": true,
17183
- "audio/opus": true,
17125
+ "video/audio/wav": true,
17184
17126
  "application/json": true,
17185
- "audio/x-wav": true,
17186
- "text/javascript": true,
17127
+ "video/webm": true,
17128
+ "video/text/timestamp": true,
17129
+ "video/jpeg2000": true,
17187
17130
  "application/rtf": true,
17131
+ "text/xml": true,
17188
17132
  "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
17133
+ "application/x-python-code": true,
17134
+ "text/x-python": true,
17135
+ "audio/mp3": true,
17136
+ "application/x-typescript": true,
17137
+ "audio/ogg": true,
17138
+ "audio/aac": true,
17139
+ "text/rtf": true,
17140
+ "application/x-javascript": true,
17141
+ "text/javascript": true,
17142
+ "text/csv": true,
17143
+ "text/css": true,
17144
+ "audio/wav": true
17194
17145
  },
17195
17146
  modelExperiments: {
17196
17147
  experiments: {
@@ -17206,161 +17157,162 @@ var models_default = {
17206
17157
  }
17207
17158
  }
17208
17159
  },
17209
- "gemini-3.1-pro-low": {
17210
- displayName: "Gemini 3.1 Pro (Low)",
17160
+ "gemini-3.6-flash-low": {
17161
+ displayName: "Gemini 3.6 Flash (Low)",
17211
17162
  supportsImages: true,
17212
17163
  supportsThinking: true,
17213
- thinkingBudget: 1001,
17214
- minThinkingBudget: 128,
17164
+ thinkingBudget: 1e3,
17165
+ minThinkingBudget: 32,
17215
17166
  recommended: true,
17216
17167
  maxTokens: 1048576,
17217
- maxOutputTokens: 65535,
17168
+ maxOutputTokens: 65536,
17218
17169
  quotaInfo: {
17219
- remainingFraction: 0.97969,
17220
- resetTime: "2026-08-21T09:19:05Z"
17170
+ remainingFraction: 0.9783466,
17171
+ resetTime: "2026-08-22T17:36:20Z"
17221
17172
  },
17222
- model: "MODEL_PLACEHOLDER_M36",
17173
+ model: "MODEL_PLACEHOLDER_M73",
17223
17174
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17224
17175
  modelProvider: "MODEL_PROVIDER_GOOGLE",
17225
17176
  supportsVideo: true,
17177
+ tagTitle: "Fast",
17178
+ tagDescription: "Limited time",
17226
17179
  supportedMimeTypes: {
17180
+ "text/html": true,
17181
+ "application/pdf": true,
17182
+ "video/audio/s16le": true,
17183
+ "text/xml": true,
17227
17184
  "audio/x-wav": true,
17228
- "audio/m4a": true,
17229
- "audio/wav": true,
17185
+ "audio/flac": true,
17186
+ "audio/webm;codecs=opus": true,
17187
+ "audio/vnd.wave": true,
17230
17188
  "audio/aac": true,
17231
- "image/heif": true,
17232
- "text/css": true,
17233
- "video/mp4": true,
17234
17189
  "application/x-ipynb+json": true,
17190
+ "audio/mpeg": true,
17191
+ "audio/wav": true,
17192
+ "audio/mp4": true,
17193
+ "video/videoframe/jpeg2000": true,
17194
+ "audio/l16": true,
17235
17195
  "text/x-python": true,
17236
- "text/x-typescript": true,
17237
- "text/javascript": true,
17238
- "audio/ogg": true,
17239
- "application/rtf": true,
17240
- "text/markdown": true,
17241
17196
  "application/x-python-code": true,
17242
- "audio/vnd.wave": true,
17197
+ "text/csv": true,
17243
17198
  "image/heic": true,
17244
17199
  "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,
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,
17256
- "application/x-javascript": 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
17200
  "video/webm": true,
17201
+ "audio/mp3": true,
17266
17202
  "image/webp": true,
17267
- "audio/l16": true,
17203
+ "application/x-javascript": true,
17204
+ "text/x-python-script": true,
17205
+ "text/markdown": true,
17206
+ "audio/m4a": true,
17207
+ "text/x-typescript": true,
17208
+ "audio/wave": true,
17268
17209
  "application/json": true,
17269
17210
  "text/rtf": true,
17211
+ "audio/webm": true,
17212
+ "text/css": true,
17213
+ "video/jpeg2000": true,
17214
+ "video/mp4": true,
17215
+ "application/rtf": true,
17216
+ "text/javascript": true,
17217
+ "image/jpeg": true,
17270
17218
  "video/text/timestamp": true,
17271
- "image/png": true
17219
+ "image/heif": true,
17220
+ "audio/ogg": true,
17221
+ "application/x-typescript": true,
17222
+ "text/plain": true,
17223
+ "image/png": true,
17224
+ "audio/opus": true
17272
17225
  },
17273
17226
  modelExperiments: {
17274
17227
  experiments: {
17275
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
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}'
17228
+ template__system_prompts__communication_style: {
17229
+ 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"
17277
17230
  },
17278
- "cascade-include-ephemeral-message": {
17279
- stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17231
+ template__system_prompts__guidelines: {
17232
+ 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"
17280
17233
  },
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: ...'."
17234
+ template__system_prompts__messaging: {
17235
+ 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."
17283
17236
  },
17284
- template__system_prompts__planning_mode_artifacts: {
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"
17237
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17238
+ 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}'
17239
+ },
17240
+ "cascade-include-ephemeral-message": {
17241
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17286
17242
  }
17287
17243
  }
17288
17244
  }
17289
17245
  },
17290
- "gemini-pro-agent": {
17291
- displayName: "Gemini 3.1 Pro (High)",
17246
+ "gemini-3-flash-agent": {
17247
+ displayName: "Gemini 3.5 Flash (High)",
17292
17248
  supportsImages: true,
17293
17249
  supportsThinking: true,
17294
- thinkingBudget: 10001,
17295
- minThinkingBudget: 128,
17250
+ thinkingBudget: -1,
17251
+ minThinkingBudget: 32,
17296
17252
  recommended: true,
17297
17253
  maxTokens: 1048576,
17298
- maxOutputTokens: 65535,
17254
+ maxOutputTokens: 65536,
17299
17255
  quotaInfo: {
17300
- remainingFraction: 0.97969,
17301
- resetTime: "2026-08-21T09:19:05Z"
17256
+ remainingFraction: 0.9783466,
17257
+ resetTime: "2026-08-22T17:36:20Z"
17302
17258
  },
17303
- model: "MODEL_PLACEHOLDER_M16",
17259
+ model: "MODEL_PLACEHOLDER_M84",
17304
17260
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17305
17261
  modelProvider: "MODEL_PROVIDER_GOOGLE",
17306
17262
  supportsVideo: true,
17263
+ tagTitle: "Fast",
17264
+ tagDescription: "Limited time",
17307
17265
  supportedMimeTypes: {
17308
- "audio/wav": true,
17309
- "text/plain": true,
17310
- "video/text/timestamp": true,
17311
- "image/png": true,
17312
- "audio/webm;codecs=opus": true,
17313
- "audio/opus": true,
17314
- "audio/flac": true,
17315
- "audio/aac": true,
17316
- "image/jpeg": true,
17266
+ "audio/x-wav": true,
17267
+ "audio/mp3": true,
17268
+ "text/x-typescript": true,
17269
+ "video/mp4": true,
17270
+ "video/audio/s16le": true,
17317
17271
  "audio/mpeg": true,
17318
- "audio/m4a": true,
17319
- "text/javascript": true,
17272
+ "application/x-python-code": true,
17320
17273
  "audio/mp4": true,
17321
- "audio/ogg": true,
17322
- "image/heif": true,
17274
+ "text/markdown": true,
17275
+ "audio/aac": true,
17276
+ "audio/webm": true,
17277
+ "image/webp": true,
17278
+ "video/jpeg2000": true,
17279
+ "text/x-python-script": true,
17280
+ "audio/vnd.wave": true,
17281
+ "application/x-javascript": true,
17282
+ "audio/opus": true,
17283
+ "audio/wav": true,
17284
+ "text/xml": true,
17285
+ "audio/wave": true,
17323
17286
  "application/pdf": true,
17324
- "text/x-typescript": true,
17287
+ "audio/flac": true,
17288
+ "text/plain": true,
17325
17289
  "text/csv": true,
17326
- "text/markdown": true,
17327
- "audio/mp3": true,
17328
- "audio/webm": true,
17290
+ "application/json": true,
17329
17291
  "text/css": true,
17330
- "video/webm": true,
17331
- "video/audio/s16le": true,
17332
- "text/html": true,
17333
- "video/mp4": true,
17334
- "application/x-python-code": true,
17335
- "text/rtf": true,
17336
- "text/x-python": true,
17292
+ "video/text/timestamp": true,
17337
17293
  "application/x-typescript": true,
17338
- "audio/l16": true,
17339
- "audio/wave": true,
17340
- "image/webp": true,
17341
17294
  "image/heic": true,
17295
+ "video/audio/wav": true,
17296
+ "image/heif": true,
17297
+ "audio/webm;codecs=opus": true,
17298
+ "image/png": true,
17299
+ "text/html": true,
17342
17300
  "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,
17301
+ "image/jpeg": true,
17302
+ "audio/l16": true,
17351
17303
  "application/rtf": true,
17352
- "video/audio/wav": true
17304
+ "audio/m4a": true,
17305
+ "text/x-python": true,
17306
+ "video/webm": true,
17307
+ "application/x-ipynb+json": true,
17308
+ "text/javascript": true,
17309
+ "text/rtf": true,
17310
+ "audio/ogg": true
17353
17311
  },
17354
17312
  modelExperiments: {
17355
17313
  experiments: {
17356
17314
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
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}'
17358
- },
17359
- "cascade-include-ephemeral-message": {
17360
- stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17361
- },
17362
- template__system_prompts__communication_style: {
17363
- 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: ...'."
17315
+ 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}'
17364
17316
  },
17365
17317
  template__system_prompts__planning_mode_artifacts: {
17366
17318
  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"
@@ -17368,8 +17320,46 @@ var models_default = {
17368
17320
  }
17369
17321
  }
17370
17322
  },
17371
- "gemini-3.7-flash-medium": {
17372
- displayName: "Gemini 3.7 Flash (Medium)",
17323
+ "gpt-oss-120b-medium": {
17324
+ displayName: "GPT-OSS 120B (Medium)",
17325
+ supportsThinking: true,
17326
+ thinkingBudget: 8192,
17327
+ recommended: true,
17328
+ maxTokens: 131072,
17329
+ maxOutputTokens: 32768,
17330
+ quotaInfo: {
17331
+ remainingFraction: 1,
17332
+ resetTime: "2026-08-22T17:39:05Z"
17333
+ },
17334
+ model: "MODEL_OPENAI_GPT_OSS_120B_MEDIUM",
17335
+ apiProvider: "API_PROVIDER_OPENAI_VERTEX",
17336
+ modelProvider: "MODEL_PROVIDER_OPENAI",
17337
+ modelExperiments: {
17338
+ experiments: {
17339
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17340
+ 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}'
17341
+ }
17342
+ }
17343
+ },
17344
+ vertexModelId: "openai/gpt-oss-120b-maas"
17345
+ },
17346
+ chat_23310: {
17347
+ maxTokens: 32768,
17348
+ quotaInfo: {
17349
+ remainingFraction: 1
17350
+ },
17351
+ model: "MODEL_CHAT_23310",
17352
+ apiProvider: "API_PROVIDER_INTERNAL",
17353
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
17354
+ supportsCumulativeContext: true,
17355
+ supportsEstimateTokenCounter: true,
17356
+ isInternal: true,
17357
+ promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
17358
+ toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
17359
+ requiresLeadInGeneration: true
17360
+ },
17361
+ "gemini-3.5-flash-low": {
17362
+ displayName: "Gemini 3.5 Flash (Medium)",
17373
17363
  supportsImages: true,
17374
17364
  supportsThinking: true,
17375
17365
  thinkingBudget: 4e3,
@@ -17378,152 +17368,162 @@ var models_default = {
17378
17368
  maxTokens: 1048576,
17379
17369
  maxOutputTokens: 65536,
17380
17370
  quotaInfo: {
17381
- remainingFraction: 0.97969,
17382
- resetTime: "2026-08-21T09:19:05Z"
17371
+ remainingFraction: 0.9783466,
17372
+ resetTime: "2026-08-22T17:36:20Z"
17383
17373
  },
17384
- model: "MODEL_PLACEHOLDER_M299",
17374
+ model: "MODEL_PLACEHOLDER_M20",
17385
17375
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17386
17376
  modelProvider: "MODEL_PROVIDER_GOOGLE",
17387
17377
  supportsVideo: true,
17388
17378
  tagTitle: "Fast",
17389
17379
  tagDescription: "Limited time",
17390
17380
  supportedMimeTypes: {
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,
17397
- "image/heic": 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,
17404
17381
  "application/pdf": true,
17405
- "audio/vnd.wave": true,
17406
- "video/videoframe/jpeg2000": true,
17382
+ "audio/wav": true,
17383
+ "image/png": true,
17407
17384
  "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,
17385
+ "audio/flac": true,
17413
17386
  "audio/m4a": true,
17414
- "audio/ogg": true,
17387
+ "audio/x-wav": true,
17388
+ "audio/opus": true,
17415
17389
  "video/jpeg2000": true,
17416
- "video/mp4": true,
17417
- "image/png": true,
17390
+ "text/csv": true,
17418
17391
  "text/rtf": true,
17419
- "text/xml": true,
17420
- "text/plain": true,
17421
- "text/javascript": true,
17422
- "audio/wave": true,
17423
- "audio/l16": true,
17424
- "audio/x-wav": true,
17425
- "text/css": true,
17426
- "text/x-python-script": true,
17427
17392
  "audio/aac": true,
17428
- "image/webp": true,
17393
+ "video/audio/wav": true,
17429
17394
  "image/heif": true,
17395
+ "video/webm": true,
17396
+ "application/x-typescript": true,
17397
+ "text/javascript": true,
17430
17398
  "text/x-typescript": true,
17399
+ "audio/webm": true,
17400
+ "audio/l16": true,
17401
+ "video/text/timestamp": true,
17402
+ "video/audio/s16le": true,
17403
+ "application/rtf": true,
17404
+ "video/mp4": true,
17431
17405
  "image/jpeg": true,
17432
- "video/audio/wav": true,
17406
+ "audio/webm;codecs=opus": true,
17407
+ "application/x-ipynb+json": true,
17408
+ "audio/ogg": true,
17409
+ "text/x-python": true,
17410
+ "image/heic": true,
17433
17411
  "text/markdown": true,
17434
- "video/webm": true,
17435
- "audio/mpeg": true
17412
+ "application/x-javascript": true,
17413
+ "text/css": true,
17414
+ "text/xml": true,
17415
+ "application/json": true,
17416
+ "audio/mp4": true,
17417
+ "application/x-python-code": true,
17418
+ "audio/wave": true,
17419
+ "video/videoframe/jpeg2000": true,
17420
+ "audio/vnd.wave": true,
17421
+ "audio/mpeg": true,
17422
+ "image/webp": true,
17423
+ "text/x-python-script": true,
17424
+ "text/plain": true,
17425
+ "text/html": true
17436
17426
  },
17437
17427
  modelExperiments: {
17438
17428
  experiments: {
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."
17444
- },
17445
17429
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17446
17430
  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}'
17431
+ },
17432
+ template__system_prompts__planning_mode_artifacts: {
17433
+ 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"
17447
17434
  }
17448
17435
  }
17449
17436
  }
17450
17437
  },
17451
- "gemini-3-flash-agent": {
17452
- displayName: "Gemini 3.5 Flash (High)",
17438
+ "gemini-3.7-flash-low": {
17439
+ displayName: "Gemini 3.7 Flash (Low)",
17453
17440
  supportsImages: true,
17454
17441
  supportsThinking: true,
17455
- thinkingBudget: -1,
17442
+ thinkingBudget: 1e3,
17456
17443
  minThinkingBudget: 32,
17457
17444
  recommended: true,
17458
17445
  maxTokens: 1048576,
17459
17446
  maxOutputTokens: 65536,
17460
17447
  quotaInfo: {
17461
- remainingFraction: 0.97969,
17462
- resetTime: "2026-08-21T09:19:05Z"
17448
+ remainingFraction: 0.9783466,
17449
+ resetTime: "2026-08-22T17:36:20Z"
17463
17450
  },
17464
- model: "MODEL_PLACEHOLDER_M84",
17451
+ model: "MODEL_PLACEHOLDER_M300",
17465
17452
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17466
17453
  modelProvider: "MODEL_PROVIDER_GOOGLE",
17467
17454
  supportsVideo: true,
17468
17455
  tagTitle: "Fast",
17469
17456
  tagDescription: "Limited time",
17470
17457
  supportedMimeTypes: {
17471
- "audio/ogg": true,
17458
+ "image/heic": true,
17472
17459
  "image/jpeg": true,
17460
+ "audio/flac": true,
17473
17461
  "audio/aac": true,
17462
+ "application/x-typescript": true,
17463
+ "application/x-javascript": true,
17464
+ "audio/mp3": true,
17465
+ "audio/wav": true,
17466
+ "application/x-python-code": true,
17467
+ "text/markdown": true,
17468
+ "audio/wave": true,
17474
17469
  "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,
17480
- "video/jpeg2000": true,
17481
- "audio/webm": true,
17482
- "audio/mp4": true,
17483
- "audio/m4a": true,
17484
- "text/rtf": true,
17485
- "application/x-ipynb+json": true,
17486
- "video/webm": true,
17487
- "text/x-python": true,
17470
+ "text/xml": true,
17488
17471
  "application/json": true,
17489
- "text/x-typescript": true,
17490
- "audio/webm;codecs=opus": true,
17491
- "text/html": true,
17492
- "audio/mp3": true,
17472
+ "audio/x-wav": true,
17493
17473
  "audio/l16": true,
17494
- "application/rtf": true,
17495
- "application/x-javascript": true,
17496
- "application/x-typescript": true,
17474
+ "text/javascript": true,
17475
+ "video/audio/s16le": true,
17497
17476
  "video/audio/wav": true,
17477
+ "audio/ogg": true,
17478
+ "application/rtf": true,
17479
+ "text/css": true,
17498
17480
  "video/mp4": true,
17499
- "video/audio/s16le": true,
17481
+ "audio/mpeg": true,
17482
+ "video/videoframe/jpeg2000": true,
17483
+ "audio/webm;codecs=opus": true,
17484
+ "text/rtf": true,
17500
17485
  "image/heif": true,
17501
- "audio/wav": true,
17486
+ "application/pdf": true,
17487
+ "video/jpeg2000": true,
17488
+ "audio/mp4": true,
17502
17489
  "image/webp": true,
17503
- "text/plain": true,
17490
+ "text/x-python": true,
17504
17491
  "audio/vnd.wave": true,
17505
17492
  "video/text/timestamp": true,
17506
- "text/markdown": true,
17507
- "image/heic": true,
17508
- "video/videoframe/jpeg2000": true,
17509
- "application/pdf": true,
17510
- "text/xml": true,
17511
- "audio/flac": true,
17493
+ "video/webm": true,
17494
+ "text/plain": true,
17495
+ "text/x-typescript": true,
17496
+ "text/html": true,
17512
17497
  "text/csv": true,
17513
- "audio/mpeg": true,
17514
- "application/x-python-code": true,
17515
- "audio/wave": true
17498
+ "application/x-ipynb+json": true,
17499
+ "image/png": true,
17500
+ "audio/webm": true,
17501
+ "audio/opus": true,
17502
+ "audio/m4a": true
17516
17503
  },
17517
17504
  modelExperiments: {
17518
17505
  experiments: {
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"
17521
- },
17522
17506
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17523
17507
  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}'
17508
+ },
17509
+ "cascade-include-ephemeral-message": {
17510
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17511
+ },
17512
+ "task-details-suffix": {
17513
+ 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."
17524
17514
  }
17525
17515
  }
17526
17516
  }
17517
+ },
17518
+ "gemini-3.1-flash-image": {
17519
+ displayName: "Gemini 3.1 Flash Image",
17520
+ quotaInfo: {
17521
+ remainingFraction: 0.9783466,
17522
+ resetTime: "2026-08-22T17:36:20Z"
17523
+ },
17524
+ model: "MODEL_PLACEHOLDER_M21",
17525
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17526
+ modelProvider: "MODEL_PROVIDER_GOOGLE"
17527
17527
  }
17528
17528
  },
17529
17529
  defaultAgentModelId: "gemini-3.7-flash-high",
@@ -17582,11 +17582,10 @@ var models_default = {
17582
17582
  "models/proactive-observer-v10"
17583
17583
  ],
17584
17584
  experimentIds: [
17585
- 106581054,
17585
+ 106140402,
17586
17586
  105979552,
17587
17587
  105979574,
17588
17588
  106015333,
17589
- 105979579,
17590
17589
  106568772,
17591
17590
  105867471,
17592
17591
  106548982,