Snowflake CoCo Desktop became generally available, so I tried out all the new features and operational features

Snowflake CoCo Desktop became generally available, so I tried out all the new features and operational features

Snowflake's AI development environment "CoCo Desktop" has reached GA. This article examines the new features added since Preview (semantic code search, multiple sheets in SQL Playground, etc.) as well as the operational and governance features essential for production deployment (usage history views, credit limits, and Managed settings).
2026.07.23

This page has been translated by machine translation. View original

Kawabata here.

Snowflake's AI development environment, CoCo Desktop, became GA (generally available) on July 21, 2026.

https://docs.snowflake.com/en/release-notes/2026/other/2026-07-21-coco-desktop-ga

This article covers the main new features since the Preview period (Memory, semantic code search, multiple sheets in SQL Playground, etc.) and the operational/governance features worth knowing about at GA (usage history view, credit limits, Managed settings). Note that this article uses the current official product name, "CoCo Desktop."

Installation, basic usage, and MCP integration are covered in the following articles and will not be repeated here.

https://dev.classmethod.jp/articles/snowflake-cortex-code-desktop-install-basic-usage/

https://dev.classmethod.jp/articles/snowflake-cortex-code-desktop-mcp-mlit-real-estate/

【Update】
I was selected as a finalist in the "RISING COMMUNITY LEADER OF THE YEAR" category, APJ slot, of the Snowflake Community Awards.
Please see the link below for details.

https://dev.classmethod.jp/articles/snowflake-community-awards-finalist-activities-review/

Overview of CoCo Desktop GA

CoCo Desktop is a native desktop application for macOS / Windows, positioned as the standalone IDE edition of the Cortex Code (CoCo) family.

Form Overview
CoCo in Snowsight Web-based (within Snowsight)
CoCo Desktop Standalone IDE for macOS / Windows
CoCo CLI Command-line tool for local shell

The availability conditions and billing at GA are as follows.

  • Available on Commercial accounts with cross-region inference enabled (Gov, VPS, and Sovereign accounts are not eligible)
  • When used with an existing Snowflake account, pay-as-you-go billing based on token consumption
  • For individual developers, a subscription with a monthly usage allowance is available, with a 30-day free trial from registration. After the trial ends, it transitions to a paid subscription unless cancelled; if the monthly allowance is exceeded, CoCo Desktop cannot be used until the next billing period
  • Separate from CoCo Desktop usage, standard Snowflake charges apply for warehouses and storage used during SQL execution
  • Snowflake's model terms apply to pass-through usage of the underlying models

Note: CoCo Desktop itself is GA, but within the Cortex Code family, MCP support, plugins, Agent SDK, and ACP support remain in Preview as of the time of writing. In particular, ACP is a feature for using CoCo CLI as the agent backend for editors / IDEs, and is not a feature of CoCo Desktop.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop

Prerequisites

  • The active role requires the following database roles
    • SNOWFLAKE.COPILOT_USER
    • SNOWFLAKE.CORTEX_USER or SNOWFLAKE.CORTEX_AGENT_USER
  • By default, SNOWFLAKE.COPILOT_USER and SNOWFLAKE.CORTEX_USER are granted to the PUBLIC role. SNOWFLAKE.CORTEX_AGENT_USER is not granted to PUBLIC by default and must be explicitly granted to the role that needs it
  • Cross-region inference must be enabled on the account

Note: Revoking SNOWFLAKE.CORTEX_USER from PUBLIC will cause the loss of access not only to CoCo Desktop but also to other Covered AI Features including Cortex AI Functions (AI_COMPLETE, etc.). If you want to control only CoCo Desktop usage, the official documentation recommends using the daily credit limit parameter described later.

  • Semantic code search requires access to the snowflake-arctic-embed-l-v2.0 model

Test Environment

  • Test date: July 22, 2026
  • CoCo Desktop: v1.20.0
    2026-07-22_18h33_00
  • OS: Windows
  • Snowflake: Enterprise edition

Trying Out the New Features

Memory (Cross-conversation memory)

A feature that allows the agent to remember facts (preferences, project context, etc.) across conversations and automatically recall them in new conversations. The memory is stored as Markdown files under ~/.snowflake/cortex/memory/, with two scopes: global memory shared across all workspaces, and project memory specific to a particular workspace.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/memory

It can be enabled and managed in the Memory section under Agent Settings → Personalization.
2026-07-22_18h41_23

Note: Memory is for persistent context and does not store the temporary state of the current task. Also, Reset memories cannot be undone.

Custom instructions (Always-applied custom instructions)

Instructions that are always applied to the agent can now be managed on a dedicated page. Enter instructions in the editor under Agent Settings → Personalization and save them; they are saved to ~/.snowflake/cortex/AGENTS.md and applied across all workspaces.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/personalization

2026-07-22_19h05_40

Configuration content

# Basic policy
- Responses should be in Japanese
- Comments within code should also be written in Japanese
# SQL conventions
- SQL keywords should be written in uppercase (SELECT, FROM, WHERE, etc.)
- Table and column names should be written in lowercase snake_case
- Do not use SELECT *; specify required columns explicitly
# Snowflake-specific rules
- Queries for verification should explicitly specify the WAREHOUSE
- Operations with cost implications (full scans of large tables, etc.) should be warned before execution
# Output format
- Step-by-step instructions should be summarized concisely in a numbered list

Let's check with Please tell me about the setup procedure for CoCo Desktop.

2026-07-22_19h15_53

The text in the red box suggests that the Custom instructions settings are being reflected.

On the same page, you can also control the on/off of built-in tools (Web Search Tool / Web Fetch Tool / Notebook Tools), and the toggles take effect immediately.

Note: The limit for Custom instructions is 512 KB. Also, using the Web Search Tool requires account-level permission (enabling the ENABLE_CORTEX_WEBSEARCH parameter).

Semantic code search (tgrep)

A feature that allows you to search a codebase by "meaning" using natural language. It uses Snowflake Cortex embeddings (snowflake-arctic-embed-l-v2.0) and can identify relevant code with queries like "the part that validates the connection before executing a query" rather than exact keyword matching.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/semantic-code-search

By default, indexing is not automatic and requires explicit opt-in by the user. Enable it from Agent Settings → Indexing.

  1. Open Agent Settings → Indexing
  2. Turn on Enable semantic search (tgrep) (global setting shared across all workspaces)
  3. Turn on Search this workspace (setting per current workspace)
  4. Use Index workspace to build an index for the current workspace

2026-07-23_08h53_24

※The CoCo Desktop workspace contains jaffle-shop from dbt-labs.

https://github.com/dbt-labs/jaffle-shop

After building the index, asking the agent about the location of code in natural language identified the relevant file.

2026-07-23_08h59_00

※I felt it was difficult to clearly judge the effect of index building with this small repository alone. On the other hand, since code and documentation are indexed in chunks, it seems particularly effective for larger repositories or cases where you want to search for specifications or implementation intent in natural language.

Note: Not available in remote / virtual workspaces such as Remote-SSH or dev containers (local execution only).

Context management and /compact

A context window that visualizes token consumption during a conversation and a /compact command that summarizes the conversation to free up tokens have been added.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/context-management

Hovering over the context window in the lower right of the message input field displays a popover showing a breakdown of token usage.

2026-07-22_19h44_35

Running /compact in the middle of a long conversation summarizes the conversation history, freeing up tokens while continuing the same thread.

Changes panel

When the agent modifies files, a summary card showing "N files changed" is displayed, allowing you to review changes using a unified diff, changed file tree, and scope selector. Accept / reject is also possible at the file level.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/agent-view-and-editor-view

2026-07-23_09h11_40

2026-07-23_09h13_30

Multiple sheets in SQL Playground

A lightweight SQL editor built into the right panel of Agent Manager, which now allows you to manage multiple SQL sheets (.sql buffers) per workspace.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/sql-playground

  • How to open: SQL Playground icon in the right toolbar, "Open SQL Playground" in the Command Palette, or the "Open in SQL Playground" action from agent results
  • Execution: Run button or ⌘Enter (macOS) / Ctrl+Enter (Windows). The statement at the cursor position is executed
  • Sheet management: Create new, rename, delete, and organize by drag & drop in the sidebar

2026-07-23_09h42_56

Can also switch to chart view
2026-07-23_09h44_02

Note: SQL Playground sheets are not source files under the workspace; they are saved in a scratch area at ~/.snowflake/cortex/sql/<workspace-id>/. Since sheets are auto-saved to a workspace-local area, they could at least be used continuously after restarting CoCo Desktop in the test environment. If you want to use Git management or normal editor features, you can open them as an editor tab via "Open in Editor" (the sheet on the Playground side remains as is).

Trying Out Advanced Features

Each of these could fill an entire article on its own, so this article covers only minimal operational verification.

Agentic Notebook

A feature that allows the agent to directly manipulate Jupyter notebooks (.ipynb) from the chat. It autonomously creates, edits, and executes cells, reads output, and inspects DataFrames (pandas / polars / PySpark / Snowpark supported). As a built-in feature, no additional feature enablement is required on the CoCo Desktop side. However, executing cells requires an available Jupyter kernel such as a local Python environment, conda environment, or existing Jupyter Server (when using Snowpark, dependencies such as snowflake-snowpark-python must also be installed on the kernel side).

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/agentic-notebook

When instructing the agent to create a Notebook that creates a sample DataFrame, cells are generated and you can proceed while reviewing changes with Keep / Undo.

In sample_analysis.ipynb, please create and execute a cell that aggregates monthly sales totals from the SNOWFLAKE_SAMPLE_DATA.TPCH_SF1.ORDERS table using Snowpark and converts it to a pandas DataFrame.

2026-07-23_10h09_08

Automations

Saved prompts that run on a schedule. A new chat session is started each time they run, and a desktop notification is delivered upon completion.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/automations

From the Automations view, create a new automation by setting a title, prompt, and frequency with New automation, and run it immediately with Run now.

2026-07-23_10h10_55

I configured content to append to a log file. Settings such as execution frequency are available.

2026-07-23_10h45_40

Let's run it immediately with Run now.

2026-07-23_10h55_19

Note: If the automation reaches a tool execution that requires approval, the Automation run stops waiting for approval. It is recommended to run it once with Run now first to approve the required tool execution permissions if you want scheduled runs to complete unattended.

Note: Automations run when CoCo Desktop is running and the PC is not in sleep mode. If the app is closed at the scheduled time, the run is skipped; however, when the app is opened again, only the most recent missed run per Automation is automatically executed as a catch-up run (older missed runs are discarded). Definitions are saved locally per machine / OS user and are not synced; the execution history limit is 50 entries.

Agentic Browser

The agent can operate the browser built into CoCo Desktop to browse the web and run tests for local applications. Chromium Developer Tools are also available for manual inspection.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/agentic-browser

2026-07-23_10h57_54

dbt integration

Automatically activated upon detecting a dbt_project.yml in the workspace, with lineage visualization, compiled SQL preview, data preview, and a command bar available from the DBT tab. There are two execution modes: Local mode (default), which uses the local dbt CLI, and Snowflake-managed mode.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/dbt-integration

2026-07-23_11h08_51

dbt docs
2026-07-23_11h09_34

Note: In Snowflake-managed mode, the Preview tab as well as the Command bar and Build / Compile / Show quick actions are not available (dbt commands are run from the Run button and execution popover). While a local dbt CLI is not required, a profiles.yml directly under the project folder, an enabled Personal Database, and a valid Snowflake connection are necessary. Also, the dbt project synced to the Snowflake workspace has a limit of 20,000 files, including target/ and dbt_packages/.

Building apps

Supporting two frameworks, Streamlit in Snowflake and Snowflake App Runtime, the agent assists with everything from scaffolding to iterating with a local development server to deploying to Snowflake. Snowflake CLI 3.19 or higher is required for deployment.

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/building-apps

2026-07-23_11h11_17

Clicking Build an app launches the agent as shown below, allowing you to develop apps in natural language.

2026-07-23_11h13_01

Checking Operational and Governance Features

These are features worth knowing if you are considering production deployment at GA.

Checking usage history (CORTEX_CODE_DESKTOP_USAGE_HISTORY view)

A usage history view dedicated to CoCo Desktop is available in the SNOWFLAKE.ACCOUNT_USAGE schema. It allows you to check credit usage per user and per request for the past 365 days, and the TOKENS_GRANULAR / CREDITS_GRANULAR columns even show a breakdown by model (input / cache_read_input / cache_write_input / output).

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/cortex-code-desktop-usage-history-view

-- Credit consumption by user over the last 30 days
SELECT USER_ID, USER_NAME, SUM(TOKEN_CREDITS) AS TOTAL_CREDITS
FROM SNOWFLAKE.ACCOUNT_USAGE.CORTEX_CODE_DESKTOP_USAGE_HISTORY
WHERE USAGE_TIME >= DATEADD('day', -30, CURRENT_TIMESTAMP())
GROUP BY USER_ID, USER_NAME
ORDER BY TOTAL_CREDITS DESC;

2026-07-23_11h14_11

Note: This view only includes CoCo Desktop requests; usage from CoCo CLI or CoCo in Snowsight is not included.

Daily credit limit (CORTEX_CODE_DESKTOP_DAILY_EST_CREDIT_LIMIT_PER_USER)

A parameter that allows you to set a daily credit consumption limit per user. The default is -1 (unlimited), and setting it to 0 completely blocks access. Setting a positive value blocks access once the estimated rolling 24-hour usage exceeds the threshold.

https://docs.snowflake.com/en/user-guide/cortex-code/credit-usage-limit

-- Check the current setting value
SHOW PARAMETERS LIKE 'CORTEX_CODE_DESKTOP%' IN ACCOUNT;

2026-07-23_11h15_21

-- Set a limit at the user level (takes precedence over account level)
ALTER USER coco_test_user SET CORTEX_CODE_DESKTOP_DAILY_EST_CREDIT_LIMIT_PER_USER = 0;

After reaching the limit, an error message is displayed in CoCo Desktop indicating that the daily credit limit has been reached, and the user cannot use it until the estimated rolling 24-hour usage drops below the threshold.

-- Remove the setting
ALTER USER coco_test_user UNSET CORTEX_CODE_DESKTOP_DAILY_EST_CREDIT_LIMIT_PER_USER;

Note: Setting 0 at the account level blocks all users. An operational pattern of "setting 0 at the account level and setting a positive value at the user level only for permitted users" is also possible.

Permission modes

The approval behavior when executing tools can be switched between two modes.

Mode Behavior
Default Approvals (recommended) Displays a confirmation prompt before new or high-risk tool calls (bash / MCP / SQL, etc.), editing protected files, and URL access
Bypass Approvals Skips normal approvals including terminal execution, file editing, MCP tools, and SQL execution. Limited to trusted contexts

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/permission-modes

Switch using the approval mode picker in the lower left of the chat input field. Note that this setting applies to the entire machine (all projects on the same machine).

Note: Even with Bypass Approvals, code execution in the browser (browser_evaluate / browser_run_code), clipboard reading (browser_read_clipboard), and launching sub-agents always require confirmation. Conversely, all other operations, including destructive commands, are executed without confirmation, so please limit use to trusted inputs and workspaces.

Operational recommendation: Normally use Default Approvals as the standard, and limit Bypass Approvals to isolated test workspaces or repetitive tasks whose content you fully understand. The official documentation also recommends using the agent terminal sandbox (Agent terminal sandbox) as an additional layer of defense.

Managed settings (Centralized management for organizations)

A mechanism for administrators to enforce organizational policies via a JSON file. It is designed for distribution via device management tools such as Jamf or Intune.

OS Placement path
macOS /Library/Application Support/Cortex/managed-settings.json
Windows C:\ProgramData\Cortex\managed-settings.json

https://docs.snowflake.com/en/user-guide/cortex-code/cortex-code-desktop/managed-settings

For example, the following configuration rejects dangerous commands and remote skills, disables Bypass Approvals, prohibits persistence of conversation history, and displays an organizational banner.

{
  "version": "1.0",
  "permissions": {
    "deny": ["bash(rm:*)", "bash(curl:*)", "bash(wget:*)", "skill(remote:*)"],
    "defaultMode": "allow",
    "dangerouslyAllowAll": false
  },
  "settings": {
    "forceNoHistoryMode": true
  },
  "ui": {
    "showManagedBanner": true,
    "bannerText": "Managed by your organization.",
    "hideDangerousOptions": true
  }
}

Setting permissions.dangerouslyAllowAll to false allows you to block Bypass Approvals across the entire organization. When verified on an actual device, the Bypass Approvals option in the approval mode picker was grayed out and displayed "Disabled by admin policy," making it unselectable.

2026-07-23_11h27_11

Note: If the version field is missing or invalid, the app starts in fail-closed (restricted mode). Users cannot disable administrator settings.

Conclusion

In conjunction with the GA of CoCo Desktop, I verified the new features since the Preview period and the operational/governance features. In addition to improvements to the development experience such as Memory and semantic code search, I feel that the key point of GA is that the governance features necessary for organizational deployment — usage history view, credit limits, and Managed settings — have come together.

I hope this article is helpful in some way!


Snowflake World Tour Tokyo 2026に参加しませんか?

Snowflakeの国内最大級イベント「Snowflake World Tour Tokyo」が2026年9月10日(木)・11日(金)にグランドプリンスホテル新高輪にて開催されます。
最新のAI・データ活用事例やライブデモを体感できる無料イベントです。

Snowflake World Tour Tokyoイベントに参加する


Snowflake Community Awards ファイナリストに選出されました

DevelopersIO で Snowflake 記事を執筆している かわばた が、Snowflake Community Awards「RISING COMMUNITY LEADER OF THE YEAR」部門・APJ枠のファイナリストに選ばれました。
最終選考の30%はコミュニティ投票です。記事がお役に立っていたようでしたら、9月15日(火)までにぜひ一票お願いします。フォームの「(4 of 6) RISING COMMUNITY LEADER OF THE YEAR」で Tomohiro Kawabata | Classmethod, Japan を選択、2分ほどで完了します。

投票フォームを開く


Snowflakeの導入支援はクラスメソッドに!

クラスメソッドでは Snowflake の導入を支援しております。
製品の詳細や支援の内容についてお気軽にお問い合わせください。

Snowflakeの詳細を見る

Share this article