AI エージェントのセットアップ
[TOC]
コンテキスト
データチームには AI 支援開発の標準的なアプローチがありません。このガイドはそのギャップを埋めます。これは複数のチームメイトの間ですでにうまく機能してきた内容に基づいており、ゼロから自分で考え出すのではなく、全員がしっかりとした出発点を持てるようにします。
ここでは、ターミナルベースの 2 つのエージェント、Claude Code と OpenCode を説明します。どちらもサポートされており、チームのデフォルトは決まっていません。自分のワークフローに合う方を使用してください。チームの共有スキルは Agent Skills 形式に従っているため、1 つのローカルクローンをどちらのツールでも使用できます。
このガイドは以下のセットアップを扱います。
- Claude Code と OpenCode — ターミナルベースの AI コーディングエージェント
- Snowflake CLI と dbt MCP サーバー — エージェントセッション中のデータアクセス
- MacWhisper — 音声ベースのプロンプト入力(任意)
Claude Code のセットアップ
より包括的なガイドは内部ハンドブックにあります。以下の手順は、データチームに特化した簡略版です。
Claude Code のセットアップ手順
ステップ 1: Claude Code のインストール
Claude Code セットアップガイドに従って Claude Code をインストールします。このガイドでは、インストール、GitLab アカウントでの認証、承認済みの利用ポリシーについて説明しています。
インストールを確認します。
claude --version
インストールされたバージョン番号が表示されるはずです。
ステップ 2: analytics リポジトリから Claude Code を起動
jump analytics
claude
ステップ 3: GitLab MCP サーバーを追加
GitLab MCP セットアップガイドに従って GitLab MCP サーバーを追加します。
GitLab MCP サーバーにより、エージェントはセッション中に GitLab を直接操作できます。Issue の読み取り、マージリクエストの作成と更新、レビューコメントの読み取り、パイプラインとジョブのステータス確認が可能になります。Data Team のスキルのいくつかはこのサーバーに依存しています。
接続を確認するには、Claude Code 内で /mcp を実行します。GitLab サーバーが接続済みとして表示されるはずです。
ステップ 4: plan をデフォルトモードに設定
Claude Code セッション内で /config を実行して、設定を確認、変更します。ここで変更した内容はすべて Claude Code の設定ファイルに自動的に書き込まれるため、設定ファイルを手動で編集する必要はありません。
defaultMode を plan に設定します。これにより、デフォルトでより安全で慎重なモードに留まります。実行する準備ができたら、明示的に編集モードに切り替えます。これは、以下で説明する OpenCode のデフォルトエージェント設定に相当する Claude Code の設定です。
あわせて /config でモデルと出力スタイルも確認するとよいでしょう。
ステップ 5: エージェント利用ガイドの確認
Claude Code の使用を開始する前に、エージェント利用ガイドを確認して、以下を理解してください。
- エージェントと MCP の仕組み
- 設定のベストプラクティス(グローバル対プロジェクトレベル)
- Plan モードを使うタイミング
- プロンプト入力のベストプラクティスとコンテキスト管理
- 利用可能なスキルとエージェント
OpenCode のセットアップ
より包括的なガイドは内部ハンドブックにあります。以下の手順は、データチームに特化した簡略版です。
OpenCode のセットアップ手順
ステップ 1: OpenCode のインストール
curl -fsSL https://opencode.ai/install | bash
ステップ 2: インストールの確認
OpenCode が PATH で利用可能であることを確認します。
which opencode
which opencode が何も返さない場合、次を実行して OpenCode を PATH に追加します。
echo 'export PATH=~/.opencode/bin:$PATH' >> ~/.zshrc && source ~/.zshrc
次に、インストールを確認します。
opencode --version
インストールされたバージョン番号が表示されるはずです。
ステップ 3: analytics リポジトリから OpenCode を起動
jump analytics
opencode
ステップ 4: GitLab Duo を AI プロバイダーとして設定
GitLab Duo は OAuth を使用します。作成や管理が必要なトークンはありません。
- OpenCode 内で
/connectを実行し、GitLab Duo を選択します - OpenCode が OAuth フローを完了するためにブラウザを開きます
@gitlab.comアカウントでサインインし、アプリを承認します- 自動的に OpenCode にリダイレクトされます
接続したら、hi と入力して OpenCode が応答することを確認してテストします。
ステップ 5: Golden Config の適用
OpenCode Golden Pathの設定を適用します。
注:
opencode.jsonではなく~/.config/opencode/opencode.jsoncを使用してください。.jsonc拡張子はコメントを許可するため、設定に注釈を付けるのに便利です。
ステップ 6: plan をデフォルトエージェントに設定
~/.config/opencode/config.json(これはステップ 5 の opencode.jsonc Golden Config とは別のファイルです)を開き、default_agent を追加します。
{
"$schema": "https://opencode.ai/config.json",
...
"default_agent": "plan"
}
これにより、デフォルトでより安全で慎重なモードに留まります。実行する準備ができたら、明示的に Build に切り替えます。
ステップ 7: エージェント利用ガイドの確認
OpenCode の使用を開始する前に、エージェント利用ガイドを確認して、以下を理解してください。
- エージェントと MCP の仕組み
- 設定のベストプラクティス(グローバル対プロジェクトレベル)
- Plan モードと Build モードの使い分け
- プロンプト入力のベストプラクティスとコンテキスト管理
- 利用可能なスキルとエージェント
ビデオリソース
GitLab Unfiltered アカウントの使用が必要です。
- OpenCode セットアップチュートリアル(3 分 30 秒)
- OpenCode デモ(5 分 30 秒)
他のアプリケーションへの接続
エージェントは、ツールチェーンのより多くのツールにアクセスできるほど役立ちます。以下のセクションでは、データチームが日常的に利用する接続、つまり Snowflake へのクエリと dbt プロジェクトの把握について説明します。
Snowflake CLI
エージェントは、Data Team におけるローカルからの Snowflake アクセスの標準である Snowflake CLI(snow)を通じて Snowflake にクエリを実行します。インストールと設定は、そのページに従ってください。
snow connection test に成功すれば、Claude Code と OpenCode のどちらもセッション中に Snowflake にクエリを実行できます。Claude Code はターミナルで snow sql を実行し、OpenCode は組み込みの snowflake ツールを使用します。
注: 以前ここで説明していた Snowflake MCP サーバーは保守されなくなり、Snowflake CLI に置き換えられました。以前に MCP サーバーをセットアップした場合も、移行手順はありません。CLI をインストールし、代わりに使用してください。
dbt MCP サーバー
dbt MCP サーバーにより、エージェントは dbt プロジェクトのモデル構造、リネージュ、ノード詳細を把握できます。これは analytics リポジトリでのみ関係します。
まず、dbt virtualenv がセットアップされていることを確認します。
jump analytics
make run-dbt
ls .venv/bin/dbt # Should show the dbt executable
ls .venv/bin/dbt がファイルパスを返せば、準備完了です。
次に、以下を ~/.zshrc に追加します。analytics リポジトリが別の場所にある場合は、ANALYTICS_DIR を調整してください。
# Analytics MCP Environment Variables
export ANALYTICS_DIR="$HOME/repos/analytics"
export DBT_PROJECT_DIR="$ANALYTICS_DIR/transform/snowflake-dbt"
export DBT_PATH="$DBT_PROJECT_DIR/.venv/bin/dbt"
エージェントを起動する予定のシェルで source ~/.zshrc を実行します。
接続を確認します。
Claude Code で /mcp、または OpenCode で /mcps を実行します。dbt サーバーが接続済みとして表示されるはずです。
スキルのセットアップ
リポジトリ内でエージェントを実行する場合、そのリポジトリ独自のスキルはセットアップ不要です。エージェントがフロントマターを読み取り、タスクが一致すると呼び出します。
リポジトリ間で共有されるスキルは異なります。それらは data-team-agentic-skillsにあり、エージェントが認識できるようにするには、ローカルのスキルディレクトリにシンボリックリンクを作成する必要があります。リポジトリ独自のスキルが共有スキルを呼び出す場合も同様です。そのリポジトリの README に記載されたセットアップ手順に従ってください。
音声プロンプト入力のための MacWhisper(任意)
詳細なプロンプトを打ち込むのは遅いものです。MacWhisper は macOS の音声テキスト変換アプリで、コンテキストを説明したり問題を声に出して考えたりするのをはるかに速くします。特に、入力するより考える時間の方が短くなるような長いプロンプトに有効です。
組み込みの macOS Dictation アプリよりも目に見えて正確で、クラウドベースの文字起こしとは異なり完全にデバイス上で動作するため、データがマシンの外に出ることはありません。
a1f3c26a)