@anthonyhaussman/opencode-agy-auth 1.1.12 → 1.1.13-alpha.1

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.12";
271
+ var AGY_CLI_VERSION = "1.1.13";
272
272
 
273
273
  // src/sdk/user-agent.ts
274
274
  var cachedUserAgent = null;
@@ -15910,58 +15910,78 @@ import { randomUUID as randomUUID3 } from "crypto";
15910
15910
  // models.json
15911
15911
  var models_default = {
15912
15912
  models: {
15913
- "gemini-3.1-pro-low": {
15914
- displayName: "Gemini 3.1 Pro (Low)",
15913
+ chat_20706: {
15914
+ maxTokens: 16384,
15915
+ quotaInfo: {
15916
+ remainingFraction: 1
15917
+ },
15918
+ model: "MODEL_CHAT_20706",
15919
+ apiProvider: "API_PROVIDER_INTERNAL",
15920
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
15921
+ supportsCumulativeContext: true,
15922
+ tabJumpPrintLineRange: true,
15923
+ supportsEstimateTokenCounter: true,
15924
+ isInternal: true,
15925
+ addCursorToFindReplaceTarget: true,
15926
+ promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
15927
+ toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
15928
+ requiresLeadInGeneration: true
15929
+ },
15930
+ "gemini-pro-agent": {
15931
+ displayName: "Gemini 3.1 Pro (High)",
15915
15932
  supportsImages: true,
15916
15933
  supportsThinking: true,
15917
- thinkingBudget: 1001,
15934
+ thinkingBudget: 10001,
15918
15935
  minThinkingBudget: 128,
15919
15936
  recommended: true,
15920
15937
  maxTokens: 1048576,
15921
15938
  maxOutputTokens: 65535,
15922
15939
  quotaInfo: {
15923
- remainingFraction: 1,
15924
- resetTime: "2026-08-12T03:11:27Z"
15940
+ remainingFraction: 0.9805744,
15941
+ resetTime: "2026-08-14T09:59:17Z"
15925
15942
  },
15926
- model: "MODEL_PLACEHOLDER_M36",
15943
+ model: "MODEL_PLACEHOLDER_M16",
15927
15944
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
15928
15945
  modelProvider: "MODEL_PROVIDER_GOOGLE",
15929
15946
  supportsVideo: true,
15930
15947
  supportedMimeTypes: {
15931
- "application/x-ipynb+json": true,
15932
- "application/rtf": true,
15933
- "image/heic": true,
15934
- "image/heif": true,
15935
- "application/pdf": true,
15936
- "text/css": true,
15937
- "application/x-javascript": true,
15948
+ "video/webm": true,
15949
+ "text/csv": true,
15938
15950
  "image/webp": true,
15939
- "video/audio/s16le": true,
15940
15951
  "video/jpeg2000": true,
15952
+ "video/audio/s16le": true,
15941
15953
  "application/x-typescript": true,
15942
- "video/webm": true,
15954
+ "image/heif": true,
15955
+ "text/html": true,
15956
+ "text/xml": true,
15957
+ "text/css": true,
15958
+ "text/plain": true,
15959
+ "image/png": true,
15960
+ "video/mp4": true,
15943
15961
  "image/jpeg": true,
15944
- "text/markdown": true,
15962
+ "video/videoframe/jpeg2000": true,
15963
+ "text/x-typescript": true,
15964
+ "application/x-javascript": true,
15965
+ "application/x-python-code": true,
15945
15966
  "text/javascript": true,
15946
- "text/x-python-script": true,
15947
15967
  "video/audio/wav": true,
15948
- "video/videoframe/jpeg2000": true,
15949
- "text/plain": true,
15950
- "image/png": true,
15968
+ "audio/webm;codecs=opus": true,
15969
+ "text/markdown": true,
15970
+ "text/x-python-script": true,
15971
+ "image/heic": true,
15972
+ "application/x-ipynb+json": true,
15951
15973
  "text/x-python": true,
15974
+ "application/rtf": true,
15952
15975
  "video/text/timestamp": true,
15953
- "audio/webm;codecs=opus": true,
15954
- "text/rtf": true,
15955
- "video/mp4": true,
15956
15976
  "application/json": true,
15957
- "text/x-typescript": true,
15958
- "application/x-python-code": true,
15959
- "text/html": true,
15960
- "text/xml": true,
15961
- "text/csv": true
15977
+ "text/rtf": true,
15978
+ "application/pdf": true
15962
15979
  },
15963
15980
  modelExperiments: {
15964
15981
  experiments: {
15982
+ template__system_prompts__communication_style: {
15983
+ 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: ...'."
15984
+ },
15965
15985
  template__system_prompts__planning_mode_artifacts: {
15966
15986
  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"
15967
15987
  },
@@ -15970,15 +15990,30 @@ var models_default = {
15970
15990
  },
15971
15991
  "cascade-include-ephemeral-message": {
15972
15992
  stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
15973
- },
15974
- template__system_prompts__communication_style: {
15975
- 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: ...'."
15976
15993
  }
15977
15994
  }
15978
15995
  }
15979
15996
  },
15980
- "gemini-3-flash-agent": {
15981
- displayName: "Gemini 3.5 Flash (High)",
15997
+ "gemini-2.5-flash-lite": {
15998
+ displayName: "Gemini 3.1 Flash Lite",
15999
+ maxTokens: 1048576,
16000
+ maxOutputTokens: 65535,
16001
+ quotaInfo: {
16002
+ remainingFraction: 0.9805744,
16003
+ resetTime: "2026-08-14T09:59:17Z"
16004
+ },
16005
+ model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE",
16006
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16007
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16008
+ modelExperiments: {
16009
+ experiments: {
16010
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16011
+ 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}'
16012
+ }
16013
+ }
16014
+ }
16015
+ },
16016
+ "gemini-3.7-flash-tiered": {
15982
16017
  supportsImages: true,
15983
16018
  supportsThinking: true,
15984
16019
  thinkingBudget: -1,
@@ -15987,139 +16022,137 @@ var models_default = {
15987
16022
  maxTokens: 1048576,
15988
16023
  maxOutputTokens: 65536,
15989
16024
  quotaInfo: {
15990
- remainingFraction: 1,
15991
- resetTime: "2026-08-12T03:11:27Z"
16025
+ remainingFraction: 0.9805744,
16026
+ resetTime: "2026-08-14T09:59:17Z"
15992
16027
  },
15993
- model: "MODEL_PLACEHOLDER_M47",
16028
+ model: "MODEL_PLACEHOLDER_M301",
15994
16029
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
15995
16030
  modelProvider: "MODEL_PROVIDER_GOOGLE",
15996
16031
  supportsVideo: true,
15997
- tagTitle: "Fast",
15998
- tagDescription: "Limited time",
15999
16032
  supportedMimeTypes: {
16000
- "application/json": true,
16033
+ "text/css": true,
16001
16034
  "application/rtf": true,
16002
- "text/javascript": true,
16003
16035
  "text/csv": true,
16036
+ "application/x-ipynb+json": true,
16037
+ "text/x-python-script": true,
16038
+ "video/videoframe/jpeg2000": true,
16039
+ "text/markdown": true,
16040
+ "text/javascript": true,
16041
+ "image/heic": true,
16042
+ "video/webm": true,
16043
+ "application/pdf": true,
16044
+ "image/jpeg": true,
16045
+ "text/plain": true,
16046
+ "text/x-typescript": true,
16047
+ "text/rtf": true,
16004
16048
  "video/audio/s16le": true,
16005
16049
  "application/x-javascript": true,
16006
- "application/x-typescript": true,
16007
- "image/webp": true,
16008
- "audio/webm;codecs=opus": true,
16050
+ "image/heif": true,
16051
+ "text/html": true,
16009
16052
  "image/png": true,
16010
- "application/pdf": true,
16053
+ "audio/webm;codecs=opus": true,
16054
+ "video/text/timestamp": true,
16011
16055
  "video/audio/wav": true,
16012
16056
  "video/jpeg2000": true,
16013
- "image/heif": true,
16014
- "text/html": true,
16015
- "application/x-python-code": true,
16016
16057
  "text/xml": true,
16017
- "text/markdown": true,
16018
- "text/rtf": true,
16019
- "text/x-python": true,
16020
- "image/jpeg": true,
16021
- "video/videoframe/jpeg2000": true,
16022
- "text/plain": true,
16023
- "image/heic": true,
16024
- "text/css": true,
16025
16058
  "video/mp4": true,
16026
- "text/x-python-script": true,
16027
- "video/webm": true,
16028
- "video/text/timestamp": true,
16029
- "text/x-typescript": true,
16030
- "application/x-ipynb+json": true
16059
+ "application/x-typescript": true,
16060
+ "image/webp": true,
16061
+ "application/json": true,
16062
+ "text/x-python": true,
16063
+ "application/x-python-code": true
16031
16064
  },
16032
16065
  modelExperiments: {
16033
16066
  experiments: {
16034
- template__system_prompts__messaging: {
16035
- 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."
16036
- },
16037
- template__system_prompts__planning_mode_artifacts: {
16038
- 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"
16039
- },
16040
16067
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16041
16068
  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}'
16042
16069
  },
16043
- template__system_prompts__communication_style: {
16044
- 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"
16070
+ "cascade-include-ephemeral-message": {
16071
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16045
16072
  },
16046
- template__system_prompts__guidelines: {
16047
- 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"
16073
+ "task-details-suffix": {
16074
+ stringValue: "\nYOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: A) either proceed to other relevant work (if any) or, B) simply update the user with a short message (that you have launched the command and will wait for it to finish) and end the turn.\n DO NOTHING ELSE."
16048
16075
  }
16049
16076
  }
16050
16077
  }
16051
16078
  },
16052
- tab_flash_lite_preview: {
16053
- maxTokens: 16384,
16054
- maxOutputTokens: 4096,
16079
+ chat_23310: {
16080
+ maxTokens: 32768,
16055
16081
  quotaInfo: {
16056
16082
  remainingFraction: 1
16057
16083
  },
16058
- model: "MODEL_PLACEHOLDER_M19",
16059
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16084
+ model: "MODEL_CHAT_23310",
16085
+ apiProvider: "API_PROVIDER_INTERNAL",
16060
16086
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16061
16087
  supportsCumulativeContext: true,
16062
16088
  supportsEstimateTokenCounter: true,
16089
+ isInternal: true,
16090
+ promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
16063
16091
  toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16064
16092
  requiresLeadInGeneration: true
16065
16093
  },
16066
- "gemini-3-flash": {
16067
- displayName: "Gemini 3 Flash",
16094
+ "gemini-3.7-flash-medium": {
16095
+ displayName: "Gemini 3.7 Flash (Medium)",
16068
16096
  supportsImages: true,
16069
16097
  supportsThinking: true,
16070
- thinkingBudget: -1,
16098
+ thinkingBudget: 4e3,
16071
16099
  minThinkingBudget: 32,
16072
16100
  recommended: true,
16073
16101
  maxTokens: 1048576,
16074
16102
  maxOutputTokens: 65536,
16075
16103
  quotaInfo: {
16076
- remainingFraction: 1,
16077
- resetTime: "2026-08-12T03:11:27Z"
16104
+ remainingFraction: 0.9805744,
16105
+ resetTime: "2026-08-14T09:59:17Z"
16078
16106
  },
16079
- model: "MODEL_PLACEHOLDER_M18",
16107
+ model: "MODEL_PLACEHOLDER_M299",
16080
16108
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16081
16109
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16082
16110
  supportsVideo: true,
16111
+ tagTitle: "Fast",
16112
+ tagDescription: "Limited time",
16083
16113
  supportedMimeTypes: {
16084
- "video/audio/wav": true,
16114
+ "application/x-typescript": true,
16115
+ "application/json": true,
16116
+ "video/jpeg2000": true,
16117
+ "video/mp4": true,
16085
16118
  "application/x-javascript": true,
16086
- "text/rtf": true,
16087
- "text/html": true,
16088
16119
  "text/xml": true,
16089
- "application/x-python-code": true,
16090
- "application/json": true,
16091
- "image/jpeg": true,
16092
- "image/heif": true,
16120
+ "video/videoframe/jpeg2000": true,
16093
16121
  "image/heic": true,
16094
- "application/x-ipynb+json": true,
16095
- "image/png": true,
16096
- "video/text/timestamp": true,
16097
- "text/plain": true,
16122
+ "image/jpeg": true,
16123
+ "application/pdf": true,
16124
+ "video/webm": true,
16098
16125
  "application/rtf": true,
16099
- "image/webp": true,
16100
- "text/css": true,
16101
- "video/jpeg2000": true,
16102
- "text/markdown": true,
16126
+ "text/x-python-script": true,
16127
+ "text/html": true,
16103
16128
  "text/csv": true,
16129
+ "video/audio/wav": true,
16104
16130
  "video/audio/s16le": true,
16105
- "text/x-python-script": true,
16106
- "text/x-python": true,
16107
- "text/x-typescript": true,
16108
- "video/videoframe/jpeg2000": true,
16109
- "video/mp4": true,
16110
- "video/webm": true,
16111
- "application/x-typescript": true,
16131
+ "text/plain": true,
16112
16132
  "audio/webm;codecs=opus": true,
16113
- "application/pdf": true,
16114
- "text/javascript": true
16133
+ "application/x-ipynb+json": true,
16134
+ "text/rtf": true,
16135
+ "text/css": true,
16136
+ "video/text/timestamp": true,
16137
+ "text/x-typescript": true,
16138
+ "image/heif": true,
16139
+ "text/javascript": true,
16140
+ "image/webp": true,
16141
+ "image/png": true,
16142
+ "text/x-python": true,
16143
+ "text/markdown": true,
16144
+ "application/x-python-code": true
16115
16145
  },
16116
16146
  modelExperiments: {
16117
16147
  experiments: {
16118
- template__system_prompts__communication_style: {
16119
- 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.'
16148
+ "task-details-suffix": {
16149
+ 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."
16120
16150
  },
16121
16151
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16122
- 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}'
16152
+ 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}'
16153
+ },
16154
+ "cascade-include-ephemeral-message": {
16155
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16123
16156
  }
16124
16157
  }
16125
16158
  }
@@ -16133,7 +16166,7 @@ var models_default = {
16133
16166
  maxOutputTokens: 32768,
16134
16167
  quotaInfo: {
16135
16168
  remainingFraction: 1,
16136
- resetTime: "2026-08-12T03:11:27Z"
16169
+ resetTime: "2026-08-14T10:05:14Z"
16137
16170
  },
16138
16171
  model: "MODEL_OPENAI_GPT_OSS_120B_MEDIUM",
16139
16172
  apiProvider: "API_PROVIDER_OPENAI_VERTEX",
@@ -16147,131 +16180,143 @@ var models_default = {
16147
16180
  },
16148
16181
  vertexModelId: "openai/gpt-oss-120b-maas"
16149
16182
  },
16150
- "gemini-2.5-flash-lite": {
16151
- displayName: "Gemini 3.1 Flash Lite",
16152
- maxTokens: 1048576,
16153
- maxOutputTokens: 65535,
16183
+ "claude-opus-4-6-thinking": {
16184
+ displayName: "Claude Opus 4.6 (Thinking)",
16185
+ supportsImages: true,
16186
+ supportsThinking: true,
16187
+ thinkingBudget: 1024,
16188
+ recommended: true,
16189
+ maxTokens: 25e4,
16190
+ maxOutputTokens: 64e3,
16154
16191
  quotaInfo: {
16155
16192
  remainingFraction: 1,
16156
- resetTime: "2026-08-12T03:11:27Z"
16193
+ resetTime: "2026-08-14T10:05:14Z"
16194
+ },
16195
+ model: "MODEL_PLACEHOLDER_M26",
16196
+ apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16197
+ modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16198
+ supportedMimeTypes: {
16199
+ "video/jpeg2000": true,
16200
+ "video/videoframe/jpeg2000": true,
16201
+ "image/heic": true,
16202
+ "image/heif": true,
16203
+ "image/jpeg": true,
16204
+ "image/png": true,
16205
+ "image/webp": true
16157
16206
  },
16158
- model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE",
16159
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16160
- modelProvider: "MODEL_PROVIDER_GOOGLE",
16161
16207
  modelExperiments: {
16162
16208
  experiments: {
16163
16209
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16164
- 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}'
16210
+ 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}'
16211
+ },
16212
+ template__system_prompts__planning_mode_artifacts: {
16213
+ 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"
16165
16214
  }
16166
16215
  }
16167
- }
16168
- },
16169
- "gemini-3.1-pro-high": {
16170
- displayName: "Gemini 3.1 Pro (High)",
16216
+ },
16217
+ vertexModelId: "claude-opus-4-6@default"
16218
+ },
16219
+ "claude-sonnet-4-6": {
16220
+ displayName: "Claude Sonnet 4.6 (Thinking)",
16171
16221
  supportsImages: true,
16172
16222
  supportsThinking: true,
16173
- thinkingBudget: 10001,
16174
- minThinkingBudget: 128,
16223
+ thinkingBudget: 1024,
16175
16224
  recommended: true,
16176
- maxTokens: 1048576,
16177
- maxOutputTokens: 65535,
16225
+ maxTokens: 25e4,
16226
+ maxOutputTokens: 64e3,
16178
16227
  quotaInfo: {
16179
16228
  remainingFraction: 1,
16180
- resetTime: "2026-08-12T03:11:27Z"
16229
+ resetTime: "2026-08-14T10:05:14Z"
16181
16230
  },
16182
- model: "MODEL_PLACEHOLDER_M37",
16183
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16184
- modelProvider: "MODEL_PROVIDER_GOOGLE",
16185
- supportsVideo: true,
16186
- tagTitle: "New",
16231
+ model: "MODEL_PLACEHOLDER_M35",
16232
+ apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16233
+ modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16187
16234
  supportedMimeTypes: {
16188
- "application/rtf": true,
16189
- "application/x-javascript": true,
16190
- "text/html": true,
16191
- "video/mp4": true,
16192
- "text/csv": true,
16193
- "application/x-python-code": true,
16194
- "text/xml": true,
16195
- "text/x-python-script": true,
16196
- "video/audio/wav": true,
16197
- "application/x-typescript": true,
16198
- "video/webm": true,
16199
- "video/text/timestamp": true,
16200
- "image/webp": true,
16201
16235
  "video/videoframe/jpeg2000": true,
16202
- "audio/webm;codecs=opus": true,
16203
16236
  "image/heic": true,
16204
- "text/css": true,
16205
- "application/pdf": true,
16206
- "video/jpeg2000": true,
16207
- "application/json": true,
16208
- "image/jpeg": true,
16209
- "text/plain": true,
16210
- "video/audio/s16le": true,
16211
- "text/markdown": true,
16212
- "text/x-typescript": true,
16213
16237
  "image/heif": true,
16214
- "text/javascript": true,
16215
- "text/x-python": true,
16216
- "application/x-ipynb+json": true,
16217
- "text/rtf": true,
16218
- "image/png": true
16238
+ "image/jpeg": true,
16239
+ "image/png": true,
16240
+ "image/webp": true,
16241
+ "video/jpeg2000": true
16219
16242
  },
16220
16243
  modelExperiments: {
16221
16244
  experiments: {
16222
16245
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16223
- 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}'
16224
- },
16225
- "cascade-include-ephemeral-message": {
16226
- stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16227
- },
16228
- template__system_prompts__communication_style: {
16229
- 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: ...'."
16246
+ 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}'
16230
16247
  },
16231
16248
  template__system_prompts__planning_mode_artifacts: {
16232
16249
  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"
16233
16250
  }
16234
16251
  }
16235
- }
16252
+ },
16253
+ vertexModelId: "claude-sonnet-4-6@default"
16236
16254
  },
16237
- "claude-opus-4-6-thinking": {
16238
- displayName: "Claude Opus 4.6 (Thinking)",
16255
+ "gemini-3.5-flash-extra-low": {
16256
+ displayName: "Gemini 3.5 Flash (Low)",
16239
16257
  supportsImages: true,
16240
16258
  supportsThinking: true,
16241
- thinkingBudget: 1024,
16259
+ thinkingBudget: 1e3,
16260
+ minThinkingBudget: 32,
16242
16261
  recommended: true,
16243
- maxTokens: 25e4,
16244
- maxOutputTokens: 64e3,
16262
+ maxTokens: 1048576,
16263
+ maxOutputTokens: 65536,
16245
16264
  quotaInfo: {
16246
- remainingFraction: 1,
16247
- resetTime: "2026-08-12T03:11:27Z"
16265
+ remainingFraction: 0.9805744,
16266
+ resetTime: "2026-08-14T09:59:17Z"
16248
16267
  },
16249
- model: "MODEL_PLACEHOLDER_M26",
16250
- apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16251
- modelProvider: "MODEL_PROVIDER_ANTHROPIC",
16268
+ model: "MODEL_PLACEHOLDER_M187",
16269
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16270
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16271
+ supportsVideo: true,
16272
+ tagTitle: "Fast",
16273
+ tagDescription: "Limited time",
16252
16274
  supportedMimeTypes: {
16253
16275
  "image/webp": true,
16254
- "video/jpeg2000": true,
16276
+ "image/png": true,
16277
+ "image/jpeg": true,
16278
+ "application/x-ipynb+json": true,
16279
+ "application/rtf": true,
16280
+ "text/csv": true,
16281
+ "image/heif": true,
16282
+ "video/audio/s16le": true,
16283
+ "text/x-typescript": true,
16284
+ "video/mp4": true,
16285
+ "text/javascript": true,
16286
+ "text/x-python-script": true,
16287
+ "text/xml": true,
16288
+ "application/pdf": true,
16289
+ "text/css": true,
16290
+ "application/x-javascript": true,
16291
+ "text/plain": true,
16292
+ "application/json": true,
16255
16293
  "video/videoframe/jpeg2000": true,
16294
+ "text/html": true,
16295
+ "text/markdown": true,
16296
+ "video/jpeg2000": true,
16256
16297
  "image/heic": true,
16257
- "image/heif": true,
16258
- "image/jpeg": true,
16259
- "image/png": true
16298
+ "video/text/timestamp": true,
16299
+ "video/webm": true,
16300
+ "application/x-python-code": true,
16301
+ "text/x-python": true,
16302
+ "audio/webm;codecs=opus": true,
16303
+ "application/x-typescript": true,
16304
+ "text/rtf": true,
16305
+ "video/audio/wav": true
16260
16306
  },
16261
16307
  modelExperiments: {
16262
16308
  experiments: {
16309
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16310
+ 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}'
16311
+ },
16263
16312
  template__system_prompts__planning_mode_artifacts: {
16264
16313
  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"
16265
- },
16266
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16267
- 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}'
16268
16314
  }
16269
16315
  }
16270
- },
16271
- vertexModelId: "claude-opus-4-6@default"
16316
+ }
16272
16317
  },
16273
- "gemini-3.6-flash-high": {
16274
- displayName: "Gemini 3.6 Flash (High)",
16318
+ "gemini-3.7-flash-high": {
16319
+ displayName: "Gemini 3.7 Flash (High)",
16275
16320
  supportsImages: true,
16276
16321
  supportsThinking: true,
16277
16322
  thinkingBudget: -1,
@@ -16280,50 +16325,53 @@ var models_default = {
16280
16325
  maxTokens: 1048576,
16281
16326
  maxOutputTokens: 65536,
16282
16327
  quotaInfo: {
16283
- remainingFraction: 1,
16284
- resetTime: "2026-08-12T03:11:27Z"
16328
+ remainingFraction: 0.9805744,
16329
+ resetTime: "2026-08-14T09:59:17Z"
16285
16330
  },
16286
- model: "MODEL_PLACEHOLDER_M71",
16331
+ model: "MODEL_PLACEHOLDER_M298",
16287
16332
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16288
16333
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16289
16334
  supportsVideo: true,
16290
16335
  tagTitle: "Fast",
16291
16336
  tagDescription: "Limited time",
16292
16337
  supportedMimeTypes: {
16338
+ "video/audio/s16le": true,
16293
16339
  "text/rtf": true,
16294
- "video/videoframe/jpeg2000": true,
16295
- "text/x-python-script": true,
16296
- "text/x-python": true,
16297
- "image/jpeg": true,
16298
- "application/json": true,
16299
- "text/x-typescript": true,
16300
- "video/mp4": true,
16301
- "text/javascript": true,
16302
- "text/xml": true,
16303
- "image/webp": true,
16304
- "text/markdown": true,
16305
16340
  "application/rtf": true,
16306
- "video/text/timestamp": true,
16307
- "image/heic": true,
16308
- "text/html": true,
16309
16341
  "video/audio/wav": true,
16310
- "application/x-ipynb+json": true,
16311
- "image/png": true,
16312
- "application/x-typescript": true,
16313
- "video/webm": true,
16314
16342
  "video/jpeg2000": true,
16315
- "text/csv": true,
16316
- "audio/webm;codecs=opus": true,
16317
- "text/css": true,
16318
- "image/heif": true,
16343
+ "text/html": true,
16344
+ "image/webp": true,
16345
+ "application/x-javascript": true,
16319
16346
  "application/pdf": true,
16347
+ "text/x-python": true,
16348
+ "application/x-typescript": true,
16349
+ "image/png": true,
16350
+ "text/x-python-script": true,
16351
+ "text/javascript": true,
16352
+ "text/xml": true,
16353
+ "text/css": true,
16354
+ "audio/webm;codecs=opus": true,
16355
+ "video/webm": true,
16356
+ "application/json": true,
16357
+ "application/x-ipynb+json": true,
16358
+ "image/heic": true,
16359
+ "video/text/timestamp": true,
16360
+ "video/mp4": true,
16320
16361
  "application/x-python-code": true,
16362
+ "text/x-typescript": true,
16363
+ "image/heif": true,
16364
+ "text/markdown": true,
16365
+ "image/jpeg": true,
16366
+ "video/videoframe/jpeg2000": true,
16321
16367
  "text/plain": true,
16322
- "video/audio/s16le": true,
16323
- "application/x-javascript": true
16368
+ "text/csv": true
16324
16369
  },
16325
16370
  modelExperiments: {
16326
16371
  experiments: {
16372
+ "task-details-suffix": {
16373
+ 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."
16374
+ },
16327
16375
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16328
16376
  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}'
16329
16377
  },
@@ -16333,46 +16381,117 @@ var models_default = {
16333
16381
  }
16334
16382
  }
16335
16383
  },
16336
- "gemini-3.1-flash-image": {
16337
- displayName: "Gemini 3.1 Flash Image",
16338
- quotaInfo: {
16339
- remainingFraction: 1,
16340
- resetTime: "2026-08-12T03:11:27Z"
16341
- },
16342
- model: "MODEL_PLACEHOLDER_M21",
16343
- apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16344
- modelProvider: "MODEL_PROVIDER_GOOGLE"
16345
- },
16346
- "gemini-2.5-flash": {
16347
- displayName: "Gemini 3.1 Flash Lite",
16384
+ "gemini-3-flash": {
16385
+ displayName: "Gemini 3 Flash",
16386
+ supportsImages: true,
16387
+ supportsThinking: true,
16388
+ thinkingBudget: -1,
16389
+ minThinkingBudget: 32,
16390
+ recommended: true,
16348
16391
  maxTokens: 1048576,
16349
- maxOutputTokens: 65535,
16392
+ maxOutputTokens: 65536,
16350
16393
  quotaInfo: {
16351
- remainingFraction: 1,
16352
- resetTime: "2026-08-12T03:11:27Z"
16394
+ remainingFraction: 0.9805744,
16395
+ resetTime: "2026-08-14T09:59:17Z"
16353
16396
  },
16354
- model: "MODEL_GOOGLE_GEMINI_2_5_FLASH",
16397
+ model: "MODEL_PLACEHOLDER_M18",
16355
16398
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16356
16399
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16400
+ supportsVideo: true,
16401
+ supportedMimeTypes: {
16402
+ "application/rtf": true,
16403
+ "video/jpeg2000": true,
16404
+ "text/javascript": true,
16405
+ "text/x-python-script": true,
16406
+ "text/xml": true,
16407
+ "image/heif": true,
16408
+ "text/css": true,
16409
+ "application/pdf": true,
16410
+ "video/videoframe/jpeg2000": true,
16411
+ "image/jpeg": true,
16412
+ "video/text/timestamp": true,
16413
+ "video/webm": true,
16414
+ "application/x-javascript": true,
16415
+ "text/rtf": true,
16416
+ "image/png": true,
16417
+ "video/mp4": true,
16418
+ "application/x-python-code": true,
16419
+ "text/x-typescript": true,
16420
+ "image/webp": true,
16421
+ "text/csv": true,
16422
+ "audio/webm;codecs=opus": true,
16423
+ "video/audio/s16le": true,
16424
+ "text/plain": true,
16425
+ "video/audio/wav": true,
16426
+ "text/x-python": true,
16427
+ "application/json": true,
16428
+ "application/x-typescript": true,
16429
+ "application/x-ipynb+json": true,
16430
+ "text/markdown": true,
16431
+ "image/heic": true,
16432
+ "text/html": true
16433
+ },
16357
16434
  modelExperiments: {
16358
16435
  experiments: {
16436
+ template__system_prompts__communication_style: {
16437
+ 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.'
16438
+ },
16359
16439
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16360
16440
  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}'
16361
16441
  }
16362
16442
  }
16363
16443
  }
16364
16444
  },
16365
- "gemini-3.1-flash-lite": {
16366
- displayName: "Gemini 3.1 Flash Lite",
16445
+ "gemini-2.5-pro": {
16446
+ displayName: "Gemini 2.5 Pro",
16447
+ supportsImages: true,
16448
+ supportsThinking: true,
16449
+ thinkingBudget: 1024,
16450
+ minThinkingBudget: 128,
16451
+ recommended: true,
16367
16452
  maxTokens: 1048576,
16368
16453
  maxOutputTokens: 65535,
16369
16454
  quotaInfo: {
16370
- remainingFraction: 1,
16371
- resetTime: "2026-08-12T03:11:27Z"
16455
+ remainingFraction: 0.9805744,
16456
+ resetTime: "2026-08-14T09:59:17Z"
16372
16457
  },
16373
- model: "MODEL_PLACEHOLDER_M50",
16458
+ model: "MODEL_GOOGLE_GEMINI_2_5_PRO",
16374
16459
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16375
16460
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16461
+ supportedMimeTypes: {
16462
+ "audio/webm;codecs=opus": true,
16463
+ "application/json": true,
16464
+ "application/x-javascript": true,
16465
+ "text/plain": true,
16466
+ "image/webp": true,
16467
+ "text/css": true,
16468
+ "image/jpeg": true,
16469
+ "application/x-python-code": true,
16470
+ "text/csv": true,
16471
+ "video/jpeg2000": true,
16472
+ "image/png": true,
16473
+ "application/rtf": true,
16474
+ "video/audio/wav": true,
16475
+ "text/x-python-script": true,
16476
+ "application/x-ipynb+json": true,
16477
+ "text/javascript": true,
16478
+ "video/audio/s16le": true,
16479
+ "text/x-python": true,
16480
+ "application/pdf": true,
16481
+ "text/rtf": true,
16482
+ "image/heic": true,
16483
+ "text/markdown": true,
16484
+ "video/webm": true,
16485
+ "text/xml": true,
16486
+ "application/x-typescript": true,
16487
+ "video/videoframe/jpeg2000": true,
16488
+ "video/text/timestamp": true,
16489
+ "text/x-typescript": true,
16490
+ "text/html": true,
16491
+ "video/mp4": true,
16492
+ "image/heif": true
16493
+ },
16494
+ requiresImageOutputOutsideFunctionResponses: true,
16376
16495
  modelExperiments: {
16377
16496
  experiments: {
16378
16497
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
@@ -16381,8 +16500,8 @@ var models_default = {
16381
16500
  }
16382
16501
  }
16383
16502
  },
16384
- "gemini-3.5-flash-extra-low": {
16385
- displayName: "Gemini 3.5 Flash (Low)",
16503
+ "gemini-3.6-flash-low": {
16504
+ displayName: "Gemini 3.6 Flash (Low)",
16386
16505
  supportsImages: true,
16387
16506
  supportsThinking: true,
16388
16507
  thinkingBudget: 1e3,
@@ -16391,147 +16510,141 @@ var models_default = {
16391
16510
  maxTokens: 1048576,
16392
16511
  maxOutputTokens: 65536,
16393
16512
  quotaInfo: {
16394
- remainingFraction: 1,
16395
- resetTime: "2026-08-12T03:11:27Z"
16513
+ remainingFraction: 0.9805744,
16514
+ resetTime: "2026-08-14T09:59:17Z"
16396
16515
  },
16397
- model: "MODEL_PLACEHOLDER_M187",
16516
+ model: "MODEL_PLACEHOLDER_M73",
16398
16517
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16399
16518
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16400
16519
  supportsVideo: true,
16401
16520
  tagTitle: "Fast",
16402
16521
  tagDescription: "Limited time",
16403
16522
  supportedMimeTypes: {
16404
- "image/webp": true,
16405
- "application/x-python-code": true,
16406
- "video/audio/wav": true,
16407
- "image/heif": true,
16408
- "text/html": true,
16409
- "text/plain": true,
16410
- "video/mp4": true,
16411
- "text/xml": true,
16412
- "application/rtf": true,
16413
- "image/jpeg": true,
16414
- "text/x-python-script": true,
16415
- "text/csv": true,
16416
- "image/heic": true,
16417
- "video/webm": true,
16418
- "text/markdown": true,
16523
+ "text/x-typescript": true,
16419
16524
  "text/javascript": true,
16420
- "application/x-ipynb+json": true,
16421
- "text/css": true,
16525
+ "video/webm": true,
16526
+ "text/csv": true,
16422
16527
  "video/text/timestamp": true,
16423
- "text/x-typescript": true,
16424
- "video/audio/s16le": true,
16528
+ "image/jpeg": true,
16529
+ "video/audio/wav": true,
16530
+ "text/css": true,
16531
+ "text/x-python-script": true,
16425
16532
  "text/x-python": true,
16533
+ "application/x-javascript": true,
16534
+ "text/plain": true,
16535
+ "image/webp": true,
16426
16536
  "text/rtf": true,
16427
- "video/jpeg2000": true,
16537
+ "video/audio/s16le": true,
16538
+ "text/html": true,
16539
+ "application/rtf": true,
16428
16540
  "audio/webm;codecs=opus": true,
16541
+ "video/mp4": true,
16542
+ "application/json": true,
16429
16543
  "video/videoframe/jpeg2000": true,
16544
+ "image/png": true,
16545
+ "image/heif": true,
16546
+ "video/jpeg2000": true,
16547
+ "application/x-ipynb+json": true,
16548
+ "text/xml": true,
16430
16549
  "application/x-typescript": true,
16550
+ "text/markdown": true,
16431
16551
  "application/pdf": true,
16432
- "application/json": true,
16433
- "application/x-javascript": true,
16434
- "image/png": true
16552
+ "image/heic": true,
16553
+ "application/x-python-code": true
16435
16554
  },
16436
16555
  modelExperiments: {
16437
16556
  experiments: {
16557
+ template__system_prompts__communication_style: {
16558
+ 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"
16559
+ },
16560
+ template__system_prompts__guidelines: {
16561
+ 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"
16562
+ },
16563
+ template__system_prompts__messaging: {
16564
+ 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."
16565
+ },
16438
16566
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16439
16567
  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}'
16440
16568
  },
16441
- template__system_prompts__planning_mode_artifacts: {
16442
- 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"
16569
+ "cascade-include-ephemeral-message": {
16570
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16443
16571
  }
16444
16572
  }
16445
16573
  }
16446
16574
  },
16447
- tab_jump_flash_lite_preview: {
16575
+ tab_flash_lite_preview: {
16448
16576
  maxTokens: 16384,
16449
16577
  maxOutputTokens: 4096,
16450
16578
  quotaInfo: {
16451
16579
  remainingFraction: 1
16452
16580
  },
16453
- model: "MODEL_PLACEHOLDER_M28",
16581
+ model: "MODEL_PLACEHOLDER_M19",
16454
16582
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16455
16583
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16456
16584
  supportsCumulativeContext: true,
16457
- tabJumpPrintLineRange: true,
16458
16585
  supportsEstimateTokenCounter: true,
16459
- addCursorToFindReplaceTarget: true,
16460
- toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16461
- requiresLeadInGeneration: true,
16462
- requiresNoXmlToolExamples: true
16463
- },
16464
- chat_20706: {
16465
- maxTokens: 16384,
16466
- quotaInfo: {
16467
- remainingFraction: 1
16468
- },
16469
- model: "MODEL_CHAT_20706",
16470
- apiProvider: "API_PROVIDER_INTERNAL",
16471
- modelProvider: "MODEL_PROVIDER_GOOGLE",
16472
- supportsCumulativeContext: true,
16473
- tabJumpPrintLineRange: true,
16474
- supportsEstimateTokenCounter: true,
16475
- isInternal: true,
16476
- addCursorToFindReplaceTarget: true,
16477
- promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
16478
16586
  toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16479
16587
  requiresLeadInGeneration: true
16480
16588
  },
16481
- "gemini-2.5-pro": {
16482
- displayName: "Gemini 2.5 Pro",
16589
+ "gemini-3.5-flash-low": {
16590
+ displayName: "Gemini 3.5 Flash (Medium)",
16483
16591
  supportsImages: true,
16484
16592
  supportsThinking: true,
16485
- thinkingBudget: 1024,
16486
- minThinkingBudget: 128,
16593
+ thinkingBudget: 4e3,
16594
+ minThinkingBudget: 32,
16487
16595
  recommended: true,
16488
16596
  maxTokens: 1048576,
16489
- maxOutputTokens: 65535,
16597
+ maxOutputTokens: 65536,
16490
16598
  quotaInfo: {
16491
- remainingFraction: 1,
16492
- resetTime: "2026-08-12T03:11:27Z"
16599
+ remainingFraction: 0.9805744,
16600
+ resetTime: "2026-08-14T09:59:17Z"
16493
16601
  },
16494
- model: "MODEL_GOOGLE_GEMINI_2_5_PRO",
16602
+ model: "MODEL_PLACEHOLDER_M20",
16495
16603
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16496
16604
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16605
+ supportsVideo: true,
16606
+ tagTitle: "Fast",
16607
+ tagDescription: "Limited time",
16497
16608
  supportedMimeTypes: {
16498
- "image/jpeg": true,
16609
+ "video/mp4": true,
16499
16610
  "text/plain": true,
16500
- "application/x-ipynb+json": true,
16611
+ "video/webm": true,
16612
+ "video/text/timestamp": true,
16613
+ "application/pdf": true,
16614
+ "text/x-python-script": true,
16615
+ "image/webp": true,
16616
+ "application/x-javascript": true,
16617
+ "text/x-typescript": true,
16618
+ "video/audio/wav": true,
16619
+ "application/json": true,
16620
+ "video/videoframe/jpeg2000": true,
16501
16621
  "text/csv": true,
16622
+ "text/javascript": true,
16623
+ "image/jpeg": true,
16624
+ "application/x-python-code": true,
16625
+ "audio/webm;codecs=opus": true,
16626
+ "application/rtf": true,
16502
16627
  "image/heic": true,
16628
+ "image/heif": true,
16503
16629
  "text/x-python": true,
16504
- "application/rtf": true,
16505
- "text/html": true,
16506
16630
  "text/rtf": true,
16507
- "text/x-typescript": true,
16508
- "application/x-javascript": true,
16509
- "video/audio/wav": true,
16510
16631
  "text/css": true,
16511
- "video/text/timestamp": true,
16512
- "image/heif": true,
16513
- "audio/webm;codecs=opus": true,
16632
+ "text/html": true,
16633
+ "application/x-ipynb+json": true,
16634
+ "image/png": true,
16635
+ "video/audio/s16le": true,
16514
16636
  "application/x-typescript": true,
16515
- "video/videoframe/jpeg2000": true,
16516
- "video/webm": true,
16517
16637
  "video/jpeg2000": true,
16518
- "application/json": true,
16519
- "application/pdf": true,
16520
- "text/javascript": true,
16521
- "text/x-python-script": true,
16522
- "video/audio/s16le": true,
16523
- "text/xml": true,
16524
- "image/webp": true,
16525
16638
  "text/markdown": true,
16526
- "application/x-python-code": true,
16527
- "video/mp4": true,
16528
- "image/png": true
16639
+ "text/xml": true
16529
16640
  },
16530
- requiresImageOutputOutsideFunctionResponses: true,
16531
16641
  modelExperiments: {
16532
16642
  experiments: {
16533
16643
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16534
- 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}'
16644
+ 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}'
16645
+ },
16646
+ template__system_prompts__planning_mode_artifacts: {
16647
+ 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"
16535
16648
  }
16536
16649
  }
16537
16650
  }
@@ -16545,45 +16658,45 @@ var models_default = {
16545
16658
  maxTokens: 1048576,
16546
16659
  maxOutputTokens: 65536,
16547
16660
  quotaInfo: {
16548
- remainingFraction: 1,
16549
- resetTime: "2026-08-12T03:11:27Z"
16661
+ remainingFraction: 0.9805744,
16662
+ resetTime: "2026-08-14T09:59:17Z"
16550
16663
  },
16551
16664
  model: "MODEL_PLACEHOLDER_M196",
16552
16665
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16553
16666
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16554
16667
  supportsVideo: true,
16555
16668
  supportedMimeTypes: {
16556
- "text/plain": true,
16557
- "text/xml": true,
16558
- "application/json": true,
16669
+ "application/x-python-code": true,
16670
+ "text/html": true,
16559
16671
  "video/audio/wav": true,
16560
- "application/pdf": true,
16561
- "audio/webm;codecs=opus": true,
16562
- "application/x-ipynb+json": true,
16563
16672
  "image/heic": true,
16564
- "text/csv": true,
16565
16673
  "text/rtf": true,
16566
- "video/audio/s16le": true,
16567
- "video/mp4": true,
16568
- "video/webm": true,
16569
- "text/html": true,
16674
+ "application/x-typescript": true,
16675
+ "text/markdown": true,
16570
16676
  "application/x-javascript": true,
16571
- "image/heif": true,
16572
16677
  "text/x-python-script": true,
16678
+ "image/webp": true,
16679
+ "audio/webm;codecs=opus": true,
16573
16680
  "image/jpeg": true,
16574
- "application/rtf": true,
16575
- "text/x-python": true,
16681
+ "application/pdf": true,
16682
+ "text/csv": true,
16683
+ "video/audio/s16le": true,
16684
+ "application/json": true,
16576
16685
  "video/text/timestamp": true,
16577
- "video/jpeg2000": true,
16578
- "text/javascript": true,
16579
- "application/x-python-code": true,
16580
- "image/webp": true,
16581
- "text/x-typescript": true,
16686
+ "image/heif": true,
16687
+ "video/webm": true,
16688
+ "application/x-ipynb+json": true,
16582
16689
  "video/videoframe/jpeg2000": true,
16690
+ "text/javascript": true,
16691
+ "text/plain": true,
16583
16692
  "text/css": true,
16584
- "text/markdown": true,
16585
- "application/x-typescript": true,
16586
- "image/png": true
16693
+ "image/png": true,
16694
+ "video/mp4": true,
16695
+ "text/xml": true,
16696
+ "application/rtf": true,
16697
+ "text/x-typescript": true,
16698
+ "video/jpeg2000": true,
16699
+ "text/x-python": true
16587
16700
  },
16588
16701
  modelExperiments: {
16589
16702
  experiments: {
@@ -16605,8 +16718,8 @@ var models_default = {
16605
16718
  }
16606
16719
  }
16607
16720
  },
16608
- "gemini-3.6-flash-low": {
16609
- displayName: "Gemini 3.6 Flash (Low)",
16721
+ "gemini-3.7-flash-low": {
16722
+ displayName: "Gemini 3.7 Flash (Low)",
16610
16723
  supportsImages: true,
16611
16724
  supportsThinking: true,
16612
16725
  thinkingBudget: 1e3,
@@ -16615,70 +16728,93 @@ var models_default = {
16615
16728
  maxTokens: 1048576,
16616
16729
  maxOutputTokens: 65536,
16617
16730
  quotaInfo: {
16618
- remainingFraction: 1,
16619
- resetTime: "2026-08-12T03:11:27Z"
16731
+ remainingFraction: 0.9805744,
16732
+ resetTime: "2026-08-14T09:59:17Z"
16620
16733
  },
16621
- model: "MODEL_PLACEHOLDER_M73",
16734
+ model: "MODEL_PLACEHOLDER_M300",
16622
16735
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16623
16736
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16624
16737
  supportsVideo: true,
16625
16738
  tagTitle: "Fast",
16626
16739
  tagDescription: "Limited time",
16627
16740
  supportedMimeTypes: {
16628
- "text/x-python": true,
16629
- "image/webp": true,
16630
- "video/audio/wav": true,
16631
- "video/text/timestamp": true,
16632
16741
  "application/pdf": true,
16633
16742
  "text/css": true,
16634
- "text/x-typescript": true,
16635
- "video/audio/s16le": true,
16636
- "text/csv": true,
16637
- "application/rtf": true,
16638
- "image/png": true,
16639
- "text/rtf": true,
16640
- "text/plain": true,
16641
- "image/heic": true,
16642
16743
  "application/x-typescript": true,
16643
- "video/videoframe/jpeg2000": true,
16644
- "text/markdown": true,
16645
- "image/jpeg": true,
16646
- "text/html": true,
16647
- "image/heif": true,
16648
- "application/json": true,
16649
- "video/webm": true,
16650
- "application/x-javascript": true,
16651
- "text/xml": true,
16652
- "application/x-python-code": true,
16653
16744
  "audio/webm;codecs=opus": true,
16745
+ "video/text/timestamp": true,
16746
+ "text/x-python": true,
16654
16747
  "text/x-python-script": true,
16748
+ "image/heic": true,
16655
16749
  "video/mp4": true,
16750
+ "video/audio/wav": true,
16751
+ "application/rtf": true,
16752
+ "video/webm": true,
16753
+ "video/audio/s16le": true,
16656
16754
  "video/jpeg2000": true,
16755
+ "text/html": true,
16756
+ "image/webp": true,
16757
+ "video/videoframe/jpeg2000": true,
16758
+ "image/png": true,
16759
+ "image/heif": true,
16760
+ "image/jpeg": true,
16761
+ "text/x-typescript": true,
16762
+ "text/csv": true,
16763
+ "text/markdown": true,
16657
16764
  "text/javascript": true,
16658
- "application/x-ipynb+json": true
16765
+ "application/x-python-code": true,
16766
+ "application/x-javascript": true,
16767
+ "text/plain": true,
16768
+ "application/json": true,
16769
+ "application/x-ipynb+json": true,
16770
+ "text/xml": true,
16771
+ "text/rtf": true
16659
16772
  },
16660
16773
  modelExperiments: {
16661
16774
  experiments: {
16662
- template__system_prompts__guidelines: {
16663
- 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"
16664
- },
16665
- template__system_prompts__messaging: {
16666
- 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."
16775
+ "task-details-suffix": {
16776
+ 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."
16667
16777
  },
16668
16778
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16669
16779
  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}'
16670
16780
  },
16671
16781
  "cascade-include-ephemeral-message": {
16672
16782
  stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16673
- },
16674
- template__system_prompts__communication_style: {
16675
- 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"
16676
16783
  }
16677
16784
  }
16678
16785
  }
16679
16786
  },
16680
- "gemini-3.5-flash-low": {
16681
- displayName: "Gemini 3.5 Flash (Medium)",
16787
+ "gemini-2.5-flash": {
16788
+ displayName: "Gemini 3.1 Flash Lite",
16789
+ maxTokens: 1048576,
16790
+ maxOutputTokens: 65535,
16791
+ quotaInfo: {
16792
+ remainingFraction: 0.9805744,
16793
+ resetTime: "2026-08-14T09:59:17Z"
16794
+ },
16795
+ model: "MODEL_GOOGLE_GEMINI_2_5_FLASH",
16796
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16797
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16798
+ modelExperiments: {
16799
+ experiments: {
16800
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16801
+ 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}'
16802
+ }
16803
+ }
16804
+ }
16805
+ },
16806
+ "gemini-3.1-flash-image": {
16807
+ displayName: "Gemini 3.1 Flash Image",
16808
+ quotaInfo: {
16809
+ remainingFraction: 0.9805744,
16810
+ resetTime: "2026-08-14T09:59:17Z"
16811
+ },
16812
+ model: "MODEL_PLACEHOLDER_M21",
16813
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16814
+ modelProvider: "MODEL_PROVIDER_GOOGLE"
16815
+ },
16816
+ "gemini-3.6-flash-medium": {
16817
+ displayName: "Gemini 3.6 Flash (Medium)",
16682
16818
  supportsImages: true,
16683
16819
  supportsThinking: true,
16684
16820
  thinkingBudget: 4e3,
@@ -16687,47 +16823,119 @@ var models_default = {
16687
16823
  maxTokens: 1048576,
16688
16824
  maxOutputTokens: 65536,
16689
16825
  quotaInfo: {
16690
- remainingFraction: 1,
16691
- resetTime: "2026-08-12T03:11:27Z"
16826
+ remainingFraction: 0.9805744,
16827
+ resetTime: "2026-08-14T09:59:17Z"
16692
16828
  },
16693
- model: "MODEL_PLACEHOLDER_M20",
16829
+ model: "MODEL_PLACEHOLDER_M72",
16694
16830
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16695
16831
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16696
16832
  supportsVideo: true,
16697
16833
  tagTitle: "Fast",
16698
16834
  tagDescription: "Limited time",
16699
16835
  supportedMimeTypes: {
16700
- "video/webm": true,
16701
- "video/videoframe/jpeg2000": true,
16702
- "audio/webm;codecs=opus": true,
16703
- "image/png": true,
16836
+ "image/heic": true,
16837
+ "text/plain": true,
16704
16838
  "text/markdown": true,
16705
- "image/webp": true,
16706
- "application/x-python-code": true,
16707
- "video/mp4": true,
16708
16839
  "application/x-ipynb+json": true,
16709
- "text/plain": true,
16710
- "text/html": true,
16711
- "application/rtf": true,
16712
- "application/x-typescript": true,
16713
- "image/heic": true,
16714
- "application/pdf": true,
16715
- "image/jpeg": true,
16716
16840
  "text/css": true,
16841
+ "text/javascript": true,
16842
+ "video/audio/wav": true,
16843
+ "application/pdf": true,
16844
+ "video/mp4": true,
16845
+ "text/csv": true,
16846
+ "audio/webm;codecs=opus": true,
16847
+ "application/x-typescript": true,
16848
+ "application/rtf": true,
16717
16849
  "application/json": true,
16850
+ "image/heif": true,
16851
+ "video/jpeg2000": true,
16852
+ "text/xml": true,
16853
+ "image/webp": true,
16854
+ "text/x-typescript": true,
16855
+ "text/html": true,
16856
+ "image/png": true,
16857
+ "video/videoframe/jpeg2000": true,
16858
+ "text/x-python-script": true,
16859
+ "application/x-python-code": true,
16860
+ "text/rtf": true,
16861
+ "video/webm": true,
16862
+ "image/jpeg": true,
16718
16863
  "text/x-python": true,
16864
+ "video/text/timestamp": true,
16865
+ "video/audio/s16le": true,
16866
+ "application/x-javascript": true
16867
+ },
16868
+ modelExperiments: {
16869
+ experiments: {
16870
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16871
+ 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}'
16872
+ },
16873
+ "cascade-include-ephemeral-message": {
16874
+ stringValue: '{\n "enabled": false,\n "disabledHeuristics": ["planning_mode", "bash_command_reminder", "running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
16875
+ },
16876
+ template__system_prompts__communication_style: {
16877
+ 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"
16878
+ },
16879
+ template__system_prompts__guidelines: {
16880
+ 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"
16881
+ },
16882
+ template__system_prompts__messaging: {
16883
+ 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."
16884
+ }
16885
+ }
16886
+ }
16887
+ },
16888
+ "gemini-3-flash-agent": {
16889
+ displayName: "Gemini 3.5 Flash (High)",
16890
+ supportsImages: true,
16891
+ supportsThinking: true,
16892
+ thinkingBudget: -1,
16893
+ minThinkingBudget: 32,
16894
+ recommended: true,
16895
+ maxTokens: 1048576,
16896
+ maxOutputTokens: 65536,
16897
+ quotaInfo: {
16898
+ remainingFraction: 0.9805744,
16899
+ resetTime: "2026-08-14T09:59:17Z"
16900
+ },
16901
+ model: "MODEL_PLACEHOLDER_M84",
16902
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16903
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
16904
+ supportsVideo: true,
16905
+ tagTitle: "Fast",
16906
+ tagDescription: "Limited time",
16907
+ supportedMimeTypes: {
16908
+ "image/jpeg": true,
16909
+ "text/css": true,
16910
+ "text/csv": true,
16911
+ "application/x-typescript": true,
16912
+ "application/x-javascript": true,
16913
+ "image/heic": true,
16914
+ "text/rtf": true,
16915
+ "image/webp": true,
16916
+ "image/png": true,
16719
16917
  "text/x-python-script": true,
16720
- "text/x-typescript": true,
16721
- "image/heif": true,
16918
+ "text/html": true,
16919
+ "video/webm": true,
16920
+ "video/text/timestamp": true,
16722
16921
  "text/xml": true,
16922
+ "text/markdown": true,
16923
+ "application/rtf": true,
16924
+ "text/x-python": true,
16925
+ "application/json": true,
16926
+ "application/pdf": true,
16927
+ "audio/webm;codecs=opus": true,
16928
+ "video/audio/s16le": true,
16723
16929
  "video/jpeg2000": true,
16724
- "video/audio/wav": true,
16725
16930
  "text/javascript": true,
16726
- "video/audio/s16le": true,
16727
- "text/rtf": true,
16728
- "application/x-javascript": true,
16729
- "text/csv": true,
16730
- "video/text/timestamp": true
16931
+ "application/x-ipynb+json": true,
16932
+ "text/plain": true,
16933
+ "video/mp4": true,
16934
+ "application/x-python-code": true,
16935
+ "video/videoframe/jpeg2000": true,
16936
+ "video/audio/wav": true,
16937
+ "image/heif": true,
16938
+ "text/x-typescript": true
16731
16939
  },
16732
16940
  modelExperiments: {
16733
16941
  experiments: {
@@ -16740,74 +16948,72 @@ var models_default = {
16740
16948
  }
16741
16949
  }
16742
16950
  },
16743
- "gemini-2.5-flash-thinking": {
16744
- displayName: "Gemini 3.1 Flash Lite",
16745
- maxTokens: 1048576,
16746
- maxOutputTokens: 65535,
16951
+ tab_jump_flash_lite_preview: {
16952
+ maxTokens: 16384,
16953
+ maxOutputTokens: 4096,
16747
16954
  quotaInfo: {
16748
- remainingFraction: 1,
16749
- resetTime: "2026-08-12T03:11:27Z"
16955
+ remainingFraction: 1
16750
16956
  },
16751
- model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_THINKING",
16957
+ model: "MODEL_PLACEHOLDER_M28",
16752
16958
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16753
16959
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16754
- modelExperiments: {
16755
- experiments: {
16756
- CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16757
- 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}'
16758
- }
16759
- }
16760
- }
16960
+ supportsCumulativeContext: true,
16961
+ tabJumpPrintLineRange: true,
16962
+ supportsEstimateTokenCounter: true,
16963
+ addCursorToFindReplaceTarget: true,
16964
+ toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16965
+ requiresLeadInGeneration: true,
16966
+ requiresNoXmlToolExamples: true
16761
16967
  },
16762
- "gemini-pro-agent": {
16763
- displayName: "Gemini 3.1 Pro (High)",
16968
+ "gemini-3.1-pro-low": {
16969
+ displayName: "Gemini 3.1 Pro (Low)",
16764
16970
  supportsImages: true,
16765
16971
  supportsThinking: true,
16766
- thinkingBudget: 10001,
16972
+ thinkingBudget: 1001,
16767
16973
  minThinkingBudget: 128,
16768
16974
  recommended: true,
16769
16975
  maxTokens: 1048576,
16770
16976
  maxOutputTokens: 65535,
16771
16977
  quotaInfo: {
16772
- remainingFraction: 1,
16773
- resetTime: "2026-08-12T03:11:27Z"
16978
+ remainingFraction: 0.9805744,
16979
+ resetTime: "2026-08-14T09:59:17Z"
16774
16980
  },
16775
- model: "MODEL_PLACEHOLDER_M16",
16981
+ model: "MODEL_PLACEHOLDER_M36",
16776
16982
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16777
16983
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16778
16984
  supportsVideo: true,
16779
16985
  supportedMimeTypes: {
16780
- "text/rtf": true,
16781
- "video/jpeg2000": true,
16782
- "video/text/timestamp": true,
16783
- "text/html": true,
16784
- "text/plain": true,
16785
- "audio/webm;codecs=opus": true,
16786
- "application/x-python-code": true,
16787
- "application/pdf": true,
16788
16986
  "text/markdown": true,
16789
- "text/csv": true,
16790
- "image/webp": true,
16791
- "video/audio/s16le": true,
16792
- "application/json": true,
16793
- "video/videoframe/jpeg2000": true,
16794
- "application/x-ipynb+json": true,
16795
- "text/javascript": true,
16796
- "application/x-typescript": true,
16797
16987
  "image/heic": true,
16798
- "image/heif": true,
16988
+ "text/x-typescript": true,
16989
+ "text/javascript": true,
16990
+ "video/jpeg2000": true,
16991
+ "image/jpeg": true,
16992
+ "application/x-javascript": true,
16799
16993
  "text/css": true,
16994
+ "video/mp4": true,
16995
+ "application/x-python-code": true,
16996
+ "application/x-typescript": true,
16800
16997
  "image/png": true,
16801
16998
  "video/audio/wav": true,
16802
- "video/mp4": true,
16803
- "image/jpeg": true,
16804
- "text/x-python-script": true,
16805
- "text/x-typescript": true,
16806
- "video/webm": true,
16999
+ "image/webp": true,
16807
17000
  "application/rtf": true,
17001
+ "video/text/timestamp": true,
17002
+ "application/pdf": true,
17003
+ "video/webm": true,
17004
+ "text/plain": true,
17005
+ "text/x-python-script": true,
17006
+ "video/audio/s16le": true,
17007
+ "text/csv": true,
17008
+ "audio/webm;codecs=opus": true,
17009
+ "application/x-ipynb+json": true,
17010
+ "video/videoframe/jpeg2000": true,
17011
+ "image/heif": true,
17012
+ "text/rtf": true,
16808
17013
  "text/x-python": true,
16809
- "application/x-javascript": true,
16810
- "text/xml": true
17014
+ "application/json": true,
17015
+ "text/xml": true,
17016
+ "text/html": true
16811
17017
  },
16812
17018
  modelExperiments: {
16813
17019
  experiments: {
@@ -16826,72 +17032,76 @@ var models_default = {
16826
17032
  }
16827
17033
  }
16828
17034
  },
16829
- chat_23310: {
16830
- maxTokens: 32768,
17035
+ "gemini-3.1-flash-lite": {
17036
+ displayName: "Gemini 3.1 Flash Lite",
17037
+ maxTokens: 1048576,
17038
+ maxOutputTokens: 65535,
16831
17039
  quotaInfo: {
16832
- remainingFraction: 1
17040
+ remainingFraction: 0.9805744,
17041
+ resetTime: "2026-08-14T09:59:17Z"
16833
17042
  },
16834
- model: "MODEL_CHAT_23310",
16835
- apiProvider: "API_PROVIDER_INTERNAL",
17043
+ model: "MODEL_PLACEHOLDER_M50",
17044
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16836
17045
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16837
- supportsCumulativeContext: true,
16838
- supportsEstimateTokenCounter: true,
16839
- isInternal: true,
16840
- promptTemplaterType: "PROMPT_TEMPLATER_TYPE_CHATML",
16841
- toolFormatterType: "TOOL_FORMATTER_TYPE_XML",
16842
- requiresLeadInGeneration: true
17046
+ modelExperiments: {
17047
+ experiments: {
17048
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17049
+ 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}'
17050
+ }
17051
+ }
17052
+ }
16843
17053
  },
16844
- "gemini-3.6-flash-medium": {
16845
- displayName: "Gemini 3.6 Flash (Medium)",
17054
+ "gemini-3.6-flash-high": {
17055
+ displayName: "Gemini 3.6 Flash (High)",
16846
17056
  supportsImages: true,
16847
17057
  supportsThinking: true,
16848
- thinkingBudget: 4e3,
17058
+ thinkingBudget: -1,
16849
17059
  minThinkingBudget: 32,
16850
17060
  recommended: true,
16851
17061
  maxTokens: 1048576,
16852
17062
  maxOutputTokens: 65536,
16853
17063
  quotaInfo: {
16854
- remainingFraction: 1,
16855
- resetTime: "2026-08-12T03:11:27Z"
17064
+ remainingFraction: 0.9805744,
17065
+ resetTime: "2026-08-14T09:59:17Z"
16856
17066
  },
16857
- model: "MODEL_PLACEHOLDER_M72",
17067
+ model: "MODEL_PLACEHOLDER_M71",
16858
17068
  apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
16859
17069
  modelProvider: "MODEL_PROVIDER_GOOGLE",
16860
17070
  supportsVideo: true,
16861
17071
  tagTitle: "Fast",
16862
17072
  tagDescription: "Limited time",
16863
17073
  supportedMimeTypes: {
16864
- "application/x-javascript": true,
16865
- "audio/webm;codecs=opus": true,
16866
- "application/x-ipynb+json": true,
16867
- "image/png": true,
16868
- "text/x-python": true,
16869
- "image/heic": true,
16870
- "text/x-typescript": true,
16871
- "application/x-python-code": true,
16872
- "image/jpeg": true,
17074
+ "text/xml": true,
16873
17075
  "video/audio/s16le": true,
16874
- "video/videoframe/jpeg2000": true,
16875
- "text/html": true,
16876
17076
  "text/markdown": true,
16877
- "video/text/timestamp": true,
16878
- "video/jpeg2000": true,
16879
17077
  "image/webp": true,
17078
+ "application/json": true,
17079
+ "text/x-python-script": true,
17080
+ "image/jpeg": true,
16880
17081
  "application/rtf": true,
17082
+ "application/x-python-code": true,
17083
+ "text/csv": true,
17084
+ "image/png": true,
17085
+ "text/x-typescript": true,
17086
+ "application/x-javascript": true,
17087
+ "text/html": true,
17088
+ "application/x-ipynb+json": true,
17089
+ "video/webm": true,
17090
+ "image/heic": true,
17091
+ "text/plain": true,
17092
+ "application/x-typescript": true,
17093
+ "text/css": true,
16881
17094
  "text/rtf": true,
16882
- "application/pdf": true,
16883
- "application/json": true,
17095
+ "text/x-python": true,
17096
+ "video/audio/wav": true,
16884
17097
  "video/mp4": true,
16885
- "text/plain": true,
17098
+ "video/videoframe/jpeg2000": true,
17099
+ "video/text/timestamp": true,
17100
+ "audio/webm;codecs=opus": true,
16886
17101
  "text/javascript": true,
16887
- "video/webm": true,
16888
- "text/x-python-script": true,
16889
- "application/x-typescript": true,
17102
+ "application/pdf": true,
16890
17103
  "image/heif": true,
16891
- "text/xml": true,
16892
- "text/csv": true,
16893
- "text/css": true,
16894
- "video/audio/wav": true
17104
+ "video/jpeg2000": true
16895
17105
  },
16896
17106
  modelExperiments: {
16897
17107
  experiments: {
@@ -16913,50 +17123,104 @@ var models_default = {
16913
17123
  }
16914
17124
  }
16915
17125
  },
16916
- "claude-sonnet-4-6": {
16917
- displayName: "Claude Sonnet 4.6 (Thinking)",
17126
+ "gemini-3.1-pro-high": {
17127
+ displayName: "Gemini 3.1 Pro (High)",
16918
17128
  supportsImages: true,
16919
17129
  supportsThinking: true,
16920
- thinkingBudget: 1024,
17130
+ thinkingBudget: 10001,
17131
+ minThinkingBudget: 128,
16921
17132
  recommended: true,
16922
- maxTokens: 25e4,
16923
- maxOutputTokens: 64e3,
17133
+ maxTokens: 1048576,
17134
+ maxOutputTokens: 65535,
16924
17135
  quotaInfo: {
16925
- remainingFraction: 1,
16926
- resetTime: "2026-08-12T03:11:27Z"
17136
+ remainingFraction: 0.9805744,
17137
+ resetTime: "2026-08-14T09:59:17Z"
16927
17138
  },
16928
- model: "MODEL_PLACEHOLDER_M35",
16929
- apiProvider: "API_PROVIDER_ANTHROPIC_VERTEX",
16930
- modelProvider: "MODEL_PROVIDER_ANTHROPIC",
17139
+ model: "MODEL_PLACEHOLDER_M37",
17140
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17141
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
17142
+ supportsVideo: true,
17143
+ tagTitle: "New",
16931
17144
  supportedMimeTypes: {
16932
- "image/heic": true,
17145
+ "text/x-typescript": true,
17146
+ "text/html": true,
16933
17147
  "image/heif": true,
17148
+ "text/markdown": true,
17149
+ "text/xml": true,
17150
+ "application/x-typescript": true,
17151
+ "application/rtf": true,
17152
+ "application/x-python-code": true,
17153
+ "video/videoframe/jpeg2000": true,
17154
+ "text/x-python": true,
17155
+ "application/json": true,
17156
+ "video/jpeg2000": true,
17157
+ "text/javascript": true,
17158
+ "application/x-javascript": true,
17159
+ "application/x-ipynb+json": true,
16934
17160
  "image/jpeg": true,
17161
+ "video/audio/wav": true,
17162
+ "audio/webm;codecs=opus": true,
17163
+ "text/rtf": true,
17164
+ "text/css": true,
17165
+ "text/x-python-script": true,
17166
+ "video/text/timestamp": true,
16935
17167
  "image/png": true,
17168
+ "video/audio/s16le": true,
17169
+ "image/heic": true,
16936
17170
  "image/webp": true,
16937
- "video/jpeg2000": true,
16938
- "video/videoframe/jpeg2000": true
17171
+ "video/webm": true,
17172
+ "video/mp4": true,
17173
+ "text/plain": true,
17174
+ "text/csv": true,
17175
+ "application/pdf": true
16939
17176
  },
16940
17177
  modelExperiments: {
16941
17178
  experiments: {
16942
17179
  CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
16943
- 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}'
17180
+ 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}'
17181
+ },
17182
+ "cascade-include-ephemeral-message": {
17183
+ stringValue: '{\n "enabled": true,\n "disabledHeuristics": ["running_tasks_reminder"],\n "staticMessages": [],\n "useAllowlist": false,\n "enabledHeuristics": []\n}'
17184
+ },
17185
+ template__system_prompts__communication_style: {
17186
+ 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: ...'."
16944
17187
  },
16945
17188
  template__system_prompts__planning_mode_artifacts: {
16946
17189
  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"
16947
17190
  }
16948
17191
  }
17192
+ }
17193
+ },
17194
+ "gemini-2.5-flash-thinking": {
17195
+ displayName: "Gemini 3.1 Flash Lite",
17196
+ maxTokens: 1048576,
17197
+ maxOutputTokens: 65535,
17198
+ quotaInfo: {
17199
+ remainingFraction: 0.9805744,
17200
+ resetTime: "2026-08-14T09:59:17Z"
16949
17201
  },
16950
- vertexModelId: "claude-sonnet-4-6@default"
17202
+ model: "MODEL_GOOGLE_GEMINI_2_5_FLASH_THINKING",
17203
+ apiProvider: "API_PROVIDER_GOOGLE_GEMINI",
17204
+ modelProvider: "MODEL_PROVIDER_GOOGLE",
17205
+ modelExperiments: {
17206
+ experiments: {
17207
+ CASCADE_USE_EXPERIMENT_CHECKPOINTER: {
17208
+ 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}'
17209
+ }
17210
+ }
17211
+ }
16951
17212
  }
16952
17213
  },
16953
- defaultAgentModelId: "gemini-3.6-flash-high",
17214
+ defaultAgentModelId: "gemini-3.7-flash-high",
16954
17215
  agentModelSorts: [
16955
17216
  {
16956
17217
  displayName: "Recommended",
16957
17218
  groups: [
16958
17219
  {
16959
17220
  modelIds: [
17221
+ "gemini-3.7-flash-high",
17222
+ "gemini-3.7-flash-medium",
17223
+ "gemini-3.7-flash-low",
16960
17224
  "gemini-3.6-flash-high",
16961
17225
  "gemini-3.6-flash-medium",
16962
17226
  "gemini-3.6-flash-low",
@@ -17003,8 +17267,6 @@ var models_default = {
17003
17267
  "models/proactive-observer-v10"
17004
17268
  ],
17005
17269
  experimentIds: [
17006
- 106571595,
17007
- 106409969,
17008
17270
  106140402,
17009
17271
  105979552,
17010
17272
  105979574,
@@ -17025,6 +17287,7 @@ var models_default = {
17025
17287
  106064030,
17026
17288
  106567313,
17027
17289
  106396310,
17290
+ 106470334,
17028
17291
  105757908,
17029
17292
  106106760,
17030
17293
  106021688,
@@ -17056,6 +17319,7 @@ var models_default = {
17056
17319
  106064028,
17057
17320
  106567309,
17058
17321
  106396304,
17322
+ 106470330,
17059
17323
  106283614,
17060
17324
  106568384,
17061
17325
  106038164,
@@ -17067,7 +17331,7 @@ var models_default = {
17067
17331
  "gemini-3.1-flash-lite"
17068
17332
  ],
17069
17333
  flash: [
17070
- "gemini-3.6-flash-tiered"
17334
+ "gemini-3.7-flash-tiered"
17071
17335
  ],
17072
17336
  pro: [
17073
17337
  "gemini-3.1-pro-low"
@@ -18284,6 +18548,15 @@ var latestAgyAuthResolver;
18284
18548
  var latestAgyConfiguredProjectId;
18285
18549
  var latestAgyUserAgentModel;
18286
18550
  var STATIC_MODELS_SIMPLE = {
18551
+ "gemini-3.7-flash": {
18552
+ name: "Gemini 3.7 Flash",
18553
+ description: "Gemini 3.7 Flash base model. Select tier at runtime.",
18554
+ maxTokens: 1048576,
18555
+ maxOutputTokens: 65536,
18556
+ toolCall: true,
18557
+ reasoning: true,
18558
+ attachment: true
18559
+ },
18287
18560
  "gemini-3.6-flash": {
18288
18561
  name: "Gemini 3.6 Flash",
18289
18562
  description: "Gemini 3.6 Flash base model. Select tier at runtime.",
@@ -18340,6 +18613,11 @@ var STATIC_MODELS_SIMPLE = {
18340
18613
  }
18341
18614
  };
18342
18615
  var TIER_MAPPING = {
18616
+ "gemini-3.7-flash": {
18617
+ low: "gemini-3.7-flash-low",
18618
+ medium: "gemini-3.7-flash-medium",
18619
+ high: "gemini-3.7-flash-high"
18620
+ },
18343
18621
  "gemini-3.6-flash": {
18344
18622
  minimal: "gemini-3.6-flash-low",
18345
18623
  low: "gemini-3.6-flash-low",