AIが生成した低品質なコンテンツは至る所に存在します。そしてなぜか、単純な自然言語のプロンプトを記述し、AIコーディングエージェントが大量のコードやテキストを出力するのを待つだけで、いまだに感心する人がいます。生成AIコーディングツールは未来の技術であり、ソフトウェアおよびデータエンジニアリングの状況を包括的に再構築しています。しかし、AIコーディングエージェントが事実上無制限にコードを生成できるという事実は、それほど重要ではありません。
重要なのは、プロのデータエンジニアがこれらのツールをどのように考え、使用すべきかということです。AIエージェントに結果を出力させることは誰にでもできますが、それは成果とは言えません。プロのデータエンジニアと他の人を分けるのは、AIツールを使用して再現性のある高品質な結果を生み出す能力です。本記事の目的は、AIコーディングエージェント、特にSnowflake CoCoを使用したデータエンジニアリングの最新のベストプラクティスを共有することです。
本記事では、AIを活用したプロフェッショナルなデータエンジニアリングの4つのベストプラクティス、CoCoがSnowflake向けの一般的なコーディングエージェントよりも優れている理由、そしてチームのワークフローを再現可能にするスキルとプラグインの構築方法について説明します。
AIコーディングエージェントを使用したデータエンジニアリングのベストプラクティス
セットアップに入る前に、全体的なベストプラクティスをいくつか紹介します。
- 最小限から始め、失敗から反復する:最初から過剰に設計することは避けてください。プロンプトを実行し、エージェントが間違えた点を確認してから、ルールを追加します。
- モデルがすでにインテリジェントであることを理解する:最近のフロンティアモデルは最新のデータでトレーニングされており、ほとんどのデータエンジニアリングのタスクを実行できます。通常、モデルが推論できないことだけを伝える必要があります。
- 簡潔さを厳しい制約として扱う:コンテキストウィンドウは固定されており、セッション中に共有されます。すべての文について検討してください。エージェントは本当にこれを必要としているでしょうか。
- 再現性を目標にする:指示、スキル、ツールにより、個人の専門知識が再現性のある高品質な結果に変わります。
コーディングエージェントの使用によって実際の問題が発生しているケースがすでに見られるため、特に注意すべき点がさらに2つあります。
1つ目は、エージェントはエンタープライズデータエンジニアリングのツールに代わるものではないということです。AIコーディングエージェントは、データエンジニアがデータパイプラインを設計、構築、監視するのに役立ちますが、本番環境では専用のツールを使用する必要があります。変換にはdbt、展開にはschemachange、Flyway、TerraformなどのDCMツールを使用します。確立されたツールを使用せずに、エージェントを使用して本番環境で直接アクティビティを実行すると、脆弱性が生じます。
2つ目は、これに密接に関連しています。エージェントは本番環境で直接変更を加えるべきではありません。明確な指示があっても、エージェントは実行中にコンテンツを動的に生成するため、出力は非決定性になります。非決定性のプロセスが本番環境で直接機能することを許可するのは、常に悪い習慣とされてきました。AIを追加してもそれは変わりません。
SnowflakeのデータエンジニアにCoCoが選ばれる理由
フロンティアLLMは、ほとんどのデータエンジニアリングのタスクにおいてすでに非常に効果的です。これらを使用するほとんどのAIコーディングツールは、純粋に役立ちます。しかし、Snowflakeを使用するデータエンジニアにとっては、CoCoが最適な選択肢です。その理由は以下のとおりです。
- 推論はSnowflakeのセキュリティ境界内で実行される:LLMはサードパーティのAIプロバイダーにルーティングされるのではなく、Snowflakeのインフラストラクチャ内に展開および実行され、データはSnowflakeのガバナンス制御およびデータ分類ポリシーの下で処理されます。
- ネイティブなSnowflake統合:CoCoは、最初のプロンプトからスキーマ、テーブル、ウェアハウスの構成、クエリ履歴を読み取ることができます。
- Snowflakeネイティブワークフロー向けの多数の組み込みスキル:プロンプトがドメインに一致すると、ダイナミックテーブル、Snowpipe Streaming、Snowflake Openflow、Sparkの移行、dbt、Snowpark、機械学習、DCMなどがそれぞれ自動的に読み込まれます。
- モデルの柔軟性:タスクに合わせて、主要なオープンソースモデルなどを含むトップクラスのフロンティアモデルから選択できます。
CoCoへのアクセス方法:CLI、デスクトップ、Snowsight
CoCoは3つの環境で実行されます。CLIは、ターミナルネイティブなエンジニア向けのコマンドラインツールです。デスクトップは完全なVS CodeベースのIDEであり、ローカルリポジトリやOSツールとSnowflakeネイティブのインテリジェンスを併用したい方に最適です。SnowsightのCoCoはインストール不要です。Snowflakeのクラウドで長時間のタスクを開始し、完了した作業に戻りたいエンジニアに適しています。3つすべてが、ほとんど同じ機能を共有しています。
CoCo CLIをインストールするには、以下を使用します。
- macOSまたはLinux(WSLを含む):
curl -LsS https://ai.snowflake.com/static/cc-scripts/install.sh | sh
- Windows(ネイティブ、PowerShell):
irm https://ai.snowflake.com/static/cc-scripts/install.ps1 | iex
CoCoデスクトップはai.snowflake.comからダウンロードできます。左側のナビゲーションから直接SnowsightのCoCoにアクセスできます。インストールは不要です。
接続すると、CoCoは既存のSnowflake接続を使用します。/statusを実行して動作していることを確認し、最初の質問をします。
What databases do I have access to?CoCoのスキルとプラグインを使用して再現可能なワークフローを構築する方法
一連の単発のプロンプトを使用すれば、誰でもAIエージェントに結果を出力させることができます。しかし、その結果はアクティビティや人によって大きく異なります。プロのデータエンジニアは、問題を1つずつ解決するだけでなく、ソリューションをエンコードします。

データエンジニアが再現可能なソリューションをエンコードするのに役立つ、いくつかの標準が登場しています。
- AGENTS.md: セッションごとに変更されないリポジトリレベルの規則、コマンド、プロジェクト構造
- Skills:ドメイン固有の指示と知識をセッションに注入するMarkdownファイル
- Subagents:特殊な自律型タスク向けのカスタムエージェント定義
- Slash commands:CoCo CLIプロンプトから呼び出されるプロジェクトスタイルのコマンド
- Hooks:PreToolUseやUserPromptSubmitなどのイベントで実行されるライフサイクルフック
- MCP servers:外部ツールをエージェントに公開するModel Context Protocolサーバー
以下のセクションでは、開始するにあたって最も重要なスキルとプラグインについて説明します。
エージェントスキル
スキルは、再現可能なマルチステップのワークフローを実装します。これらは指示、スクリプト、ツールで構成されており、ほとんどのAIコーディングエージェントでサポートされています。オープンスタンダードはagentskills.ioに文書化されています。
「エージェントスキルは、専門知識とワークフローでAIエージェントの機能を拡張するための軽量でオープンなフォーマットです。基本的に、スキルはSKILL.mdファイルを含むフォルダーです。このファイルには、メタデータ(少なくとも名前と説明)と、特定のタスクの実行方法をエージェントに指示する命令が含まれています。スキルには、スクリプト、参考資料、テンプレート、その他のリソースをバンドルすることもできます。」
スキルを構築する際に覚えておくべき重要な点が1つあります。モデルはすでにインテリジェントです。通常、推論できないことだけを伝える必要があります。dbtの場合、dbtとは何か、プロジェクトを構築する方法をモデルに教える必要はありません。モデルはすでに知っています。スキルに取り込むのは、チーム固有の再現可能なプロセスです。たとえば、dbtプロジェクトを構築してテストする際の正確な手順、命名規則、パーティショニング戦略などです。

スキルは、Markdownファイルを介して自然言語で定義されます。コアとなる指示はSKILL.mdファイルにあります。少なくとも、スキルはその単一のファイルを含むフォルダーですが、真の力は再利用可能なスクリプトを/scriptsフォルダーにバンドルすることで発揮され、これによりスキルの一貫性と再現性が高まります。
SKILL.mdファイルは、YAMLフロントマターで始まり、その後にMarkdownの指示が続きます。必要なのはnameとdescriptionのみです。モデルは説明を使用して、スキルを呼び出すタイミングを決定します。最小限の例を以下に示します。

新しいエンジニアが吸収するのに何週間もかかるような組織的な知識がチームにある場合、スキルを使用してそれをエンコードし、すべてのセッションでCoCoが利用できるようにすることができます。スキルは、ほとんどのAIコーディングエージェントで実装されているオープンスタンダードです。そのライフサイクル(バージョン管理、展開、更新)の管理において、プラグインが役立ちます。
CoCoプラグイン
プロフェッショナルなデータエンジニアリングにはプロフェッショナルなSDLCプラクティスが必要であり、スキルを個別に管理することは見た目以上に困難です。プラグインは、skills, subagents, slash commands, hooks, MCP serversを単一の管理単位にバンドルする、より豊富なパッケージングおよび展開単位によってこの問題に対処します。
プラグインは、以下の理由から、スキル単体よりも優れたパッケージングおよび展開の単位です。
- バージョン管理:マニフェストにはバージョンフィールドがありますが、スキル単体にはありません。
- CIで検証可能:「cortex plugin validate」を使用すると、出荷前に正式なチェックを行うことができます。
- 単一のインストール可能な単位:「cortex plugin install」は1つのコマンドですが、スキルでは各スキルに対して「cortex skill add」が必要です。
- 更新可能:「cortex plugin update」は、登録されたソースから最新のバージョンを取得します。
- バンドル可能:1つのプラグインには、skills, hooks, MCP servers, subagentsが一貫した機能として含まれています。
- レジストリ追跡を使用可能:インストールされたプラグインは、ソース、インストール時間、アクティブ状態とともにregistry.jsonに記録されます。
プラグインは、既知のパスにマニフェストファイルを含む自己完結型のディレクトリです。
my-plugin/
├── .cortex-plugin/
│ ├── plugin.json # manifest (required)
│ └── activation.md
├── skills/
│ └── my-skill/SKILL.md
├── commands/
│ └── my-command.md
├── agents/
│ └── my-agent.md
├── hooks/hooks.json
└── .mcp.jsonキーファイルはplugin.jsonです。
{
"name": "data-engineering",
"description": "Skills, hooks, and MCP servers for Snowflake data engineering",
"version": "1.0.0",
"author": { "name": "Data Platform Team" },
"skills": ["./skills"],
"agents": ["./agents"],
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{ "type": "command", "command": "bash hooks/validate-bash.sh" }
]
}
]
},
"mcpServers": {
"internal-api": {
"type": "http",
"url": "https://internal.example.com/mcp"
}
}
}Snowflakeのプラグインカタログを使用すると、プラグインをSnowflakeの組み込みレジストリに展開でき、ネイティブなガバナンスとアクセス制御を使用して組織全体で共有および検出できるようになります。
再現性は、プロフェッショナルとプロンプトを入力するだけの人を分ける基準です。AIネイティブの世界で最も重要になるデータエンジニアは、組織的な知識をスキル、プラグイン、標準にエンコードし、自分自身だけでなくチーム全体の能力を高めることができる人です。
使用を開始する
データエンジニアでありながら、まだAIコーディングエージェントを定期的に使用していない場合は、今すぐ始めてください。CoCoのドキュメントと、CoCo CLIおよびデスクトップの入門用クイックスタートから始めましょう。これらでは、実際のSnowflakeの例を使用して、インストール、最初のクエリ、セッション管理などについて説明しています。
すでにAIコーディングエージェントを使用しているものの、依然として主に単発のプロンプトで作業している場合は、このクイックスタートガイドを参考にしてスキルとプラグインの構築を開始してください。そこにこそ、複利的な見返りがあります。



