Snowflake CoCo Desktop が一般提供になったので新機能・運用機能を一通り試してみた

Snowflake CoCo Desktop が一般提供になったので新機能・運用機能を一通り試してみた

Snowflake の AI 開発環境「CoCo Desktop」が GA となりました。本記事では、Preview からの新機能(セマンティックコード検索、SQL Playground の複数シート等)と、本番導入に必須の運用・ガバナンス機能(利用履歴ビュー、クレジット上限、Managed settings)を検証します。
2026.07.23

かわばたです。

Snowflake の AI 開発環境である CoCo Desktopが、2026年7月21日に GA(一般提供)となりました。

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

本記事では、Preview 期からの主な新機能(Memory、セマンティックコード検索、SQL Playground の複数シート等)と、GA を機に押さえておきたい運用・ガバナンス機能(利用履歴ビュー、クレジット上限、Managed settings)を一通り検証します。なお、本記事では製品名を現行の公式表記に合わせて「CoCo Desktop」と記載します。

なお、インストール・基本操作と MCP 連携は以下の記事で扱っているため、本記事では割愛します。

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/

CoCo Desktop GA の概要

CoCo Desktop は macOS / Windows 向けのネイティブデスクトップアプリケーションで、Cortex Code(CoCo)ファミリーのスタンドアロン IDE 版という位置づけです。

形態 概要
CoCo in Snowsight Webベース(Snowsight 内)
CoCo Desktop macOS / Windows 向けスタンドアロン IDE
CoCo CLI ローカルシェル用コマンドラインツール

GA 時点の提供条件・課金は以下のとおりです。

  • cross-region inference が有効な Commercial アカウントで利用可能(Gov、VPS、Sovereign アカウントは対象外)
  • 既存の Snowflake アカウントで利用する場合は、トークン消費ベースの従量課金(pay-as-you-go)
  • 個人開発者向けには、月間の利用枠を含むサブスクリプションがあり、登録から30日間の無料トライアルが提供される。トライアル終了後は解約しない限り有償サブスクリプションへ移行し、月間の利用枠を超過した場合は次の請求期間まで CoCo Desktop を利用できない
  • CoCo Desktop の利用とは別に、SQL 実行時のウェアハウスやストレージには通常の Snowflake の課金が発生する
  • 利用するモデルへのパススルーには Snowflake のモデル条件が適用される

注意: CoCo Desktop 本体は GA ですが、Cortex Code ファミリーとしては MCP 対応・プラグイン・Agent SDK・ACP 対応は執筆時点でも Preview のままです。特に ACP は CoCo CLI をエディタ / IDE のエージェントバックエンドとして利用するための機能であり、CoCo Desktop の機能ではありません。

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

前提条件

  • アクティブロールに以下のデータベースロールが必要です
    • SNOWFLAKE.COPILOT_USER
    • SNOWFLAKE.CORTEX_USER または SNOWFLAKE.CORTEX_AGENT_USER
  • デフォルトでは SNOWFLAKE.COPILOT_USERSNOWFLAKE.CORTEX_USER が PUBLIC ロールに付与されています。SNOWFLAKE.CORTEX_AGENT_USER は PUBLIC にはデフォルト付与されず、利用するロールへの明示的な付与が必要です
  • アカウントで cross-region inference が有効であること

注意: SNOWFLAKE.CORTEX_USER を PUBLIC から revoke すると、CoCo Desktop だけでなく Cortex AI Functions(AI_COMPLETE 等)を含む他の Covered AI Features へのアクセスも失われます。CoCo Desktop の利用だけを制御したい場合は、後述の日次クレジット上限パラメータの利用が公式ドキュメントで案内されています。

  • セマンティックコード検索を使う場合は snowflake-arctic-embed-l-v2.0 モデルへのアクセスが必要です

検証環境

  • 検証日: 2026年7月22日
  • CoCo Desktop: v1.20.0
    2026-07-22_18h33_00
  • OS: Windows
  • Snowflake: Enterpriseエディション

新機能を試してみた

Memory(会話をまたぐ記憶)

エージェントが会話をまたいで事実(好み、プロジェクトのコンテキスト等)を記憶し、新しい会話で自動的に呼び出す機能です。メモリの実体は ~/.snowflake/cortex/memory/ 配下の Markdown ファイルで、全ワークスペース共通のグローバルメモリと、特定ワークスペースのみのプロジェクトメモリの2スコープがあります。

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

Agent Settings → Personalization の Memory セクションで有効化・管理できます。
2026-07-22_18h41_23

会話の中で好みを伝えると「Updating memory」のインジケーターが表示され、メモリに書き込まれます。

新規セッションを開始すると「Reading memory」の表示とともに、前のセッションで伝えた内容が反映されました。

注意: メモリは永続的なコンテキスト用であり、現在のタスクの一時的な状態は保存されません。また Reset memories は取り消しできません。

Custom instructions(常時適用のカスタム指示)

エージェントに常時適用される指示を専用ページで管理できるようになりました。Agent Settings → Personalization のエディターに指示を入力して Save すると、~/.snowflake/cortex/AGENTS.md に保存され、全ワークスペースに適用されます。

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

2026-07-22_19h05_40

設定内容

# 基本方針
- 回答は日本語で行うこと
- コード内のコメントも日本語で記述すること
# SQL 規約
- SQL キーワードは大文字で記述すること(SELECT, FROM, WHERE 等)
- テーブル・カラム名は小文字のスネークケースで記述すること
- SELECT * は使わず、必要なカラムを明示すること
# Snowflake 固有ルール
- 検証用のクエリは WAREHOUSE の指定を明示すること
- コスト影響のある操作(大きなテーブルのフルスキャン等)は実行前に警告すること
# 出力形式
- 手順の説明は番号付きリストで簡潔にまとめること

CoCoデスクトップの設定手順について教えてくださいを確認してみます。

2026-07-22_19h15_53

赤枠の文言からCustom instructionsの設定内容が反映されていそうです。

同じページで組み込みツール(Web Search Tool / Web Fetch Tool / Notebook Tools)のオン・オフも制御でき、トグルは即時反映されます。

注意: Custom instructions は 512 KB が上限です。また Web Search Tool の利用にはアカウントレベルの許可(ENABLE_CORTEX_WEBSEARCH パラメータの有効化)が必要です。

セマンティックコード検索(tgrep)

自然言語でコードベースを「意味」で検索できる機能です。Snowflake Cortex の embeddings(snowflake-arctic-embed-l-v2.0)を利用しており、キーワード完全一致ではなく「接続を検証してからクエリを実行する箇所」のような聞き方で該当コードを特定できます。

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

デフォルトでは自動インデックスされず、ユーザーの明示的なオプトインが必要です。Agent Settings → Indexing から有効化します。

  1. Agent Settings → Indexing を開く
  2. Enable semantic search (tgrep) をオンにする(全ワークスペース共通のグローバル設定)
  3. Search this workspace をオンにする(現在のワークスペース単位の設定)
  4. Index workspace で現在のワークスペースのインデックスを作成する

2026-07-23_08h53_24

※CoCo Desktop のワークスペースには dbt-labs 社の jaffle-shop を格納してあります。

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

インデックス構築後、エージェントに自然言語でコードの場所を尋ねると、該当ファイルが特定されました。

2026-07-23_08h59_00

※インデックス構築による効果は、この小規模なリポジトリだけでは明確に判断しにくいと感じました。一方で、コードやドキュメントがチャンク単位でインデックス化されるため、規模の大きいリポジトリや、自然言語で仕様・実装意図を探したいケースで特に効果を発揮しそうです。

注意: Remote-SSH や dev containers などのリモート / 仮想ワークスペースでは利用できません(ローカル実行のみ)。

コンテキスト管理と /compact

会話のトークン消費状況を可視化する context window と、会話を要約してトークンを解放する /compact コマンドが追加されています。

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

メッセージ入力欄の右下にある context window にマウスホバーすると、トークン使用の内訳がポップオーバーで表示されます。

2026-07-22_19h44_35

長い会話の途中で /compact を実行すると、会話履歴が要約され、同じスレッドを継続したままトークンが解放されます。

変更追跡パネル(Changes)

エージェントがファイルを変更すると「N files changed」のサマリーカードが表示され、unified diff・変更ファイルツリー・スコープセレクタを使って変更内容を確認できます。ファイル単位での accept / reject も可能です。

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

SQL Playground の複数シート

Agent Manager の右側パネルに組み込まれた軽量 SQL エディタで、ワークスペース単位で複数の SQL シート(.sql バッファ)を管理できるようになりました。

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

  • 開き方: 右側ツールバーの SQL Playground アイコン、Command Palette の「Open SQL Playground」、またはエージェント結果の「Open in SQL Playground」アクション
  • 実行: Run ボタンまたは ⌘Enter(macOS)/ Ctrl+Enter(Windows)。カーソル位置のステートメントが実行されます
  • シート管理: サイドバーで新規作成・名前変更・削除・ドラッグ&ドロップでの整理

2026-07-23_09h42_56

チャート表示にも切り替え可能
2026-07-23_09h44_02

注意: SQL Playground のシートはワークスペース配下のソースファイルではなく、~/.snowflake/cortex/sql/<workspace-id>/ に保存されるスクラッチ領域です。シートはワークスペース単位のローカル領域に自動保存されるため、少なくとも検証環境では CoCo Desktop を再起動した後もシートを継続して利用できました。Git 管理や通常のエディタ機能を使いたい場合は「Open in Editor」でエディタタブとして開けます(Playground 側のシートはそのまま残ります)。

発展機能をひととおり動かしてみた

いずれも単体で記事1本になるボリュームのため、本記事では最小限の動作確認に留めます。

Agentic Notebook

エージェントがチャットから Jupyter ノートブック(.ipynb)を直接操作できる機能です。セルの作成・編集・実行、出力の読み取り、DataFrame の検査(pandas / polars / PySpark / Snowpark 対応)まで自律的に行います。組み込み機能のため、CoCo Desktop 側で追加の機能有効化は不要です。ただしセルの実行には、ローカルの Python 環境・conda 環境・既存の Jupyter Server など、利用可能な Jupyter カーネルが必要です(Snowpark を使う場合は snowflake-snowpark-python などの依存関係もカーネル側にインストールしておきます)。

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

エージェントにサンプル DataFrame を作る Notebook の作成を指示すると、セルが生成され、Keep / Undo で変更を確認しながら進められます。

sample_analysis.ipynb に、Snowpark で SNOWFLAKE_SAMPLE_DATA.TPCH_SF1.ORDERS テーブルから月別の売上合計を集計して pandas DataFrame に変換するセルを作成して実行してください。

2026-07-23_10h09_08

Automations

スケジュール実行される保存済みプロンプトです。実行のたびに新規チャットセッションが開始され、完了時にデスクトップ通知が届きます。

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

Automations ビューから New automation でタイトル・プロンプト・頻度を設定して作成し、Run now で即時実行できます。

2026-07-23_10h10_55

ログファイルへの追記を行う内容を設定しました。実行頻度など設定が可能です。

2026-07-23_10h45_40

Run now で即時実行してみます。

2026-07-23_10h55_19

注意: 承認が必要なツール実行に到達すると、Automation の実行は承認待ちで停止します。スケジュール実行を無人で完走させたい場合は、初回に Run now で実行して必要なツール実行権限を承認しておくことを推奨します。

注意: Automations は CoCo Desktop が起動中かつ PC が非スリープ状態のときに実行されます。実行予定時刻にアプリが閉じている場合はスキップされますが、アプリを再度開くと Automation ごとに直近1件の未実行分だけが catch-up run として自動実行されます(それより古い未実行分は破棄されます)。定義はマシン・OS ユーザー単位のローカル保存で同期されず、実行履歴は最大50件です。

Agentic Browser

CoCo Desktop 内蔵のブラウザをエージェントが操作し、Web 閲覧やローカルアプリのテストを実行できます。手動での確認用に Chromium Developer Tools も利用できます。

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

2026-07-23_10h57_54

dbt integration

ワークスペース内の dbt_project.yml を検出すると自動で有効化され、DBT タブから lineage 可視化・コンパイル済み SQL プレビュー・データプレビュー・コマンドバーが利用できます。実行モードはローカルの dbt CLI を使う Local mode(デフォルト)と Snowflake-managed mode の2つです。

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

注意: Snowflake-managed mode では Preview タブに加え、Command bar と Build / Compile / Show のクイックアクションも利用できません(dbt コマンドは Run ボタンと実行ポップオーバーから実行します)。ローカルの dbt CLI は不要になる一方、プロジェクトフォルダ直下の profiles.yml・Personal Database の有効化・有効な Snowflake 接続は必要です。また Snowflake ワークスペースに同期する dbt プロジェクトは、target/dbt_packages/ を含め最大20,000ファイルの制限があります。

Building apps

Streamlit in Snowflake と Snowflake App Runtime の2フレームワークに対応し、スキャフォルディングからローカル開発サーバーでの反復、Snowflake へのデプロイまでをエージェントが支援します。デプロイには Snowflake CLI 3.19 以上が必要です。

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

2026-07-23_11h11_17

Build an app をクリックすると下記のようにエージェントが立ち上がり、自然言語でアプリ開発が行えるようです。

2026-07-23_11h13_01

運用・ガバナンス機能を確認してみた

GA を機に本番導入を検討する場合に押さえておきたい機能です。

利用履歴の確認(CORTEX_CODE_DESKTOP_USAGE_HISTORY ビュー)

SNOWFLAKE.ACCOUNT_USAGE スキーマに CoCo Desktop 専用の利用履歴ビューが用意されています。直近365日のクレジット使用量をユーザー・リクエスト単位で確認でき、TOKENS_GRANULAR / CREDITS_GRANULAR カラムではモデル別の内訳(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

-- 直近30日のユーザー別クレジット消費
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

注意: このビューに含まれるのは CoCo Desktop のリクエストのみで、CoCo CLI や CoCo in Snowsight の利用は含まれません。

日次クレジット上限(CORTEX_CODE_DESKTOP_DAILY_EST_CREDIT_LIMIT_PER_USER)

ユーザーごとの日次クレジット消費に上限を設定できるパラメータです。デフォルトは -1(無制限)で、0 を設定するとアクセスを完全にブロックできます。正の値を設定すると、ローリング24時間の推定使用量が閾値を超えた時点でアクセスがブロックされます。

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

-- 現在の設定値を確認
SHOW PARAMETERS LIKE 'CORTEX_CODE_DESKTOP%' IN ACCOUNT;

2026-07-23_11h15_21

-- ユーザーレベルで上限を設定(アカウントレベルより優先)
ALTER USER coco_test_user SET CORTEX_CODE_DESKTOP_DAILY_EST_CREDIT_LIMIT_PER_USER = 0;

上限到達後は、CoCo Desktop 上で日次クレジット上限に到達した旨のエラーが表示され、ローリング24時間の推定使用量が閾値を下回るまで利用できなくなります。

-- 設定を解除
ALTER USER coco_test_user UNSET CORTEX_CODE_DESKTOP_DAILY_EST_CREDIT_LIMIT_PER_USER;

注意: アカウントレベルで 0 を設定すると全ユーザーがブロックされます。「アカウントレベルで 0 を設定し、許可するユーザーにのみユーザーレベルで正の値を設定する」という運用パターンも可能です。

Permission modes

ツール実行時の承認動作を2つのモードで切り替えられます。

モード 動作
Default Approvals(推奨) 新規・リスクの高いツールコール(bash / MCP / SQL 等)、保護対象ファイルの編集、URL アクセスの前に確認プロンプトを表示
Bypass Approvals ターミナル実行・ファイル編集・MCP ツール・SQL 実行を含む通常の承認を省略。信頼できるコンテキスト限定

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

チャット入力欄の左下にある approval mode picker で切り替えます。この設定はマシン全体(同一マシン上の全プロジェクト)に適用される点に注意が必要です。

注意: Bypass Approvals でも、ブラウザ上でのコード実行(browser_evaluate / browser_run_code)、クリップボード読み取り(browser_read_clipboard)、サブエージェントの起動は常に確認が求められます。裏を返せば、それ以外の操作は破壊的なコマンドを含めて確認なしで実行されるため、信頼できる入力・ワークスペースに限定して利用してください。

運用上の推奨: 通常は Default Approvals を標準とし、Bypass Approvals は隔離された検証用ワークスペースや、内容を十分に理解している反復作業に限定します。追加の防御としてターミナルサンドボックス(Agent terminal sandbox)を併用する方針が公式ドキュメントでも案内されています。

Managed settings(組織での一元管理)

管理者が JSON ファイルで組織のポリシーを強制できる仕組みです。Jamf や Intune などのデバイス管理ツールでの配布が想定されています。

OS 配置パス
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

たとえば以下の設定では、危険なコマンドとリモートスキルを拒否し、Bypass Approvals を無効化し、会話履歴の永続化を禁止し、組織バナーを表示します。

{
  "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
  }
}

permissions.dangerouslyAllowAllfalse にすると Bypass Approvals を組織全体でブロックできます。実機で確認したところ、approval mode picker の Bypass Approvals がグレーアウトされ、「Disabled by admin policy」と表示されて選択できなくなりました。

2026-07-23_11h27_11

注意: version フィールドが欠落・不正な場合、アプリは fail-closed(制限モード)で起動します。ユーザー側から管理者設定を無効化することはできません。

最後に

CoCo Desktop の GA に合わせて、Preview 期からの新機能と運用・ガバナンス機能を一通り検証しました。Memory やセマンティックコード検索といった開発体験の向上に加え、利用履歴ビュー・クレジット上限・Managed settings と、組織導入に必要な統制機能が揃ってきた点が GA の大きなポイントだと感じます。

この記事が何かの参考になれば幸いです!


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

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

Snowflakeの詳細を見る

この記事をシェアする

関連記事