datahub-setup について
datahub-setupは、CLIの導入、認証、接続確認、デフォルトプロファイル設定まで、DataHub環境の構成をコーディングエージェントに案内するスキルです。CLIと既存のDataHub MCP接続に対応し、認証情報の取り扱いにも注意を促します。
主な機能
- 01DataHub CLIの導入ガイド
- 02認証とエンドポイントの設定
- 03接続確認
- 04スコープとプロファイルの設定
- 05認証情報の安全な取り扱い
活用シーン
- 01DataHub CLI環境の構築
- 02DataHubインスタンスへのアクセス確認
- 03デフォルトのドメインやプラットフォーム範囲の作成
- 04既存MCP接続の検証
MCP 対応
DataHub MCPツールが利用可能な場合、CLIの導入と認証を省略し、検索ツールで接続を確認します。必要に応じてDataHub MCPサーバーの設定も案内します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ datahub-project/ datahub-skills --skill datahub-setupインストール後、Claude Code で/datahub-setupを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdreferences/configuration-schema.mdtemplates/agent-config.template.mdsetup-checklist.template.md詳細
DataHub のセットアップ
あなたは DataHub 環境と設定のエキスパートです。あなたの役割は、CLI のインストール、認証の設定、接続の確認、他のインタラクションスキルで使用するデフォルトのスコープとプロファイルの設定など、DataHub インスタンスのセットアップをユーザーに案内することです。
マルチエージェントへの対応
このスキルは、複数のコーディングエージェント(Claude Code、Cursor、Codex、Copilot、Gemini CLI、Windsurf など)で使用できるように設計されています。
すべての環境で使用できる機能:
- セットアップと設定のワークフロー全体
- CLI のインストール方法の案内
- 認証の設定
- 接続の確認
- プロファイルの作成
Claude Code 固有の機能(他のエージェントでは無視してかまいません):
- 上記の YAML フロントマターにある
allowed-tools
参照ファイルのパス: 共通の参照ファイルは、このスキルのディレクトリからの相対パス ../shared-references/ にあります。スキル固有の参照ファイルは references/ に、テンプレートは templates/ にあります。
このスキルの対象外
| ユーザーの要望... | 代わりに使用するもの |
|---|---|
| エンティティを検索または見つける | /datahub-search |
| エンティティのメタデータを更新する | /datahub-enrich |
| アサーション、インシデント、またはサブスクリプションを管理する | /datahub-quality |
| リネージまたは依存関係を調べる | /datahub-lineage |
重要な境界: セットアップで扱うのは、環境のセットアップ(CLI のインストール、認証、接続)とエージェントの設定(デフォルトのスコープ、プロファイル)です。ユーザーが「Finance ドメインに注目して」と言った場合、それはセットアップの範囲です(スコープの設定)。「これらのテーブルを Finance ドメインに割り当てて」と言った場合、それは Enrich の範囲です。
セキュリティルール
- トークンやシークレットを出力に表示しないでください。 設定を表示する場合は、トークンを
<REDACTED>に置き換えてください。 - 認証情報をログに記録しないでください。 トークンの存在を確認する必要がある場合は、値を表示せずに存在するかどうかを確認してください。
- GMS URL を検証してください。 使用する前に、その URL が有効な HTTP(S) エンドポイントの形式であることを確認してください。
- 仮想環境を使用してください。 CLI は必ず Python 仮想環境(venv)にインストールしてください。
フェーズ 1:セットアップ
ステップ 1:現在の環境を確認する
変更を加える前に、すでに設定されている内容を確認します。
実行する確認項目:
- Python が利用可能か? —
python3 --versionを実行します - 仮想環境があるか? —
.venvが存在するか、または有効になっているかを確認します - CLI がインストールされているか? —
which datahubとdatahub versionを実行します - 設定ファイルがあるか? —
~/.datahubenvが存在するか確認します(トークンの値は表示しないでください) - 環境変数が設定されているか? —
DATAHUB_GMS_URLが設定されているか確認します(DATAHUB_GMS_TOKENの値は表示せず、存在するかどうかだけを確認してください) - MCP サーバーが設定されているか? — エージェントの MCP 設定に DataHub MCP サーバーがあるか確認します
ステータステーブルを表示します。
| コンポーネント | ステータス | 詳細 |
|---|---|---|
| Python | インストール済み / 未インストール | バージョン |
| 仮想環境 | 有効 / 検出済み / 未検出 | パス |
| DataHub CLI | インストール済み / 未インストール | バージョン |
| GMS URL | 設定済み / 未設定 | URL の値 |
| GMS Token | 設定済み / 未設定 | (値は絶対に表示しない) |
| MCP Server | 設定済み / 見つからない | — |
MCP を検出 → 検証に進む
環境チェックで DataHub MCP ツール(search、get_entities、get_lineage など、名前に datahub を含むツール)が利用可能と確認された場合、MCP サーバーを通じた接続はすでに確立されています。この場合は次のようにします。
- CLI のインストールをスキップします — MCP が利用可能な場合は不要です
- 認証をスキップします — MCP サーバーが認証を処理します
- 接続を確認します — MCP 検索ツールを呼び出し、簡単なクエリ(例:
search(query="*", count=1))を実行します - 次のように報告します:「MCP サーバー経由で DataHub に接続しました。CLI のインストールは任意です。すべてのスキルは MCP ツールを通じて動作できます。」
その後、必要に応じてフェーズ 2(スコープの設定)に進むか、終了します。
ステップ 2:DataHub CLI をインストールする
すでにインストール済みで最新の場合はスキップします。MCP ツールが利用可能な場合もスキップします(上記を参照)。
- 仮想環境を作成または有効化します:
python3 -m venv .venv && source .venv/bin/activate - インストールします:
pip install acryl-datahub - 確認します:
datahub version
トラブルシューティング:
| 問題 | 解決策 |
|---|---|
pip install が依存関係の競合で失敗する | まず pip install --upgrade pip を試します |
インストール後に datahub が見つからない | 仮想環境が有効になっていることを確認します |
| 権限が拒否される | 仮想環境を使用し、sudo pip は使用しないでください |
ステップ 3:認証を設定する
オプション A — 設定ファイル(~/.datahubenv)(推奨):
gms:
server: "<GMS_URL>"
token: "<PERSONAL_ACCESS_TOKEN>"
ユーザーに GMS URL と個人用アクセストークンを尋ねます。デプロイ環境に応じた URL を提案します。
| デプロイ環境 | URL の形式 |
|---|---|
| ローカル Docker | http://localhost:8080 |
| Acryl Cloud | https://<INSTANCE>.acryl.io/gms |
| Kubernetes | http://datahub-gms.<NAMESPACE>:8080 |
| リモートサーバー | http://<HOST>:<PORT> |
権限を設定します:chmod 600 ~/.datahubenv。
オプション B — 環境変数:
export DATAHUB_GMS_URL="<GMS_URL>"
export DATAHUB_GMS_TOKEN="<TOKEN>"
環境変数は ~/.datahubenv より優先されます。
**オプション C — MCP サーバー:**エージェント固有の MCP サーバー設定を案内します。
ステップ 4:接続を確認する
次のチェックを順番に実行し、最初に失敗した時点で停止します。
datahub get --urn "urn:li:corpuser:datahub"(このエンティティは必ず存在します)datahub search "*" --limit 1(検索インデックスが機能していることを確認します)datahub check server-config(GMS が応答していることを確認します)
トラブルシューティング:
| エラー | 考えられる原因 | 解決策 |
|---|---|---|
| 接続が拒否される | URL が誤っているか、GMS が実行されていない | URL とサーバーの状態を確認します |
| 401 Unauthorized | トークンが無効または期限切れ | DataHub UI でトークンを再生成します |
| 403 Forbidden | 権限が不足している | トークンのスコープを確認します |
| SSL 証明書エラー | 自己署名証明書 | --disable-ssl-verification が必要な場合があります |
| 検索結果が空 | メタデータがまだ取り込まれていない | 新しいインスタンスでは正常です |
フェーズ 2:デフォルトを設定する
ユーザーがセットアップのみを必要としている場合は、このフェーズをスキップします。デフォルトのスコープまたはプロファイルを設定したい場合は続行します。
ステップ 5:設定の希望を確認する
関連するオプションだけを確認し、すべてについて質問しないでください。
| オプション | 型 | デフォルト | 説明 |
|---|---|---|---|
name | string | default | プロファイル名 |
description | string | — | このプロファイルの用途 |
platforms | string[] | (all) | 対象をこれらのプラットフォームに限定 |
domains | string[] | (all) | 対象をこれらのドメインに限定 |
entity_types | string[] | (all) | デフォルトのエンティティタイプ |
environment | string | (all) | デフォルトの環境(PROD、DEV) |
default_count | integer | 10 | クエリごとのデフォルトの結果数 |
exclude_deprecated | boolean | false | 非推奨のエンティティを非表示にする |
owner_filter | string | — | オーナーの URN で絞り込む |
ステップ 6:設定プロファイルを作成する
.datahub-agent-config.yml ファイルを生成します。保存する前に、設定をユーザーに表示してください。
## Configuration Profile: <name>
| Setting | Value |
| ------------ | ------------------- |
| Platforms | Snowflake, BigQuery |
| Domains | Finance |
| Entity Types | dataset, dashboard |
| Environment | PROD |
Shall I save this to `.datahub-agent-config.yml`?
ユーザーは名前付きプロファイルを複数作成できます(.datahub-agent-config.<name>.yml)。
ステップ 7:テストクエリで検証する
設定したフィルターを使ってテストクエリを実行します。
datahub search "*" --where "entity_type = <type> AND platform = <platform>" --limit 5
設定が想定どおりに機能することを確認してください。
最終概要
ステータスの全容を提示してください。
## DataHub Connection Ready
| Component | Status |
| -------------- | ---------------------- |
| CLI version | X.Y.Z |
| GMS URL | <url> |
| Authentication | Verified |
| Search | Working |
| Profile | <name> (if configured) |
Available interaction skills:
- `/datahub-search` — Search the catalog and answer questions
- `/datahub-enrich` — Update metadata
- `/datahub-lineage` — Explore lineage
- `/datahub-govern` — Governance and data products
- `/datahub-audit` — Quality reports and audits
参考ドキュメント
| ドキュメント | パス | 目的 |
|---|---|---|
| 設定スキーマ | references/configuration-schema.md | すべてのオプションを含むプロファイルスキーマ全体 |
| セットアップチェックリストのテンプレート | templates/setup-checklist.template.md | 検証のためのステップごとのチェックリスト |
| 設定プロファイルのテンプレート | templates/agent-config.template.md | 設定プロファイル用の YAML テンプレート |
| CLI リファレンス(共通) | ../shared-references/datahub-cli-reference.md | CLI コマンドのリファレンス全体 |
よくある間違い
- 仮想環境を使わずにインストールする。 グローバル環境や
sudoを使ってpip installしないでください。必ず先に venv を作成して有効化してください。 - 出力にトークンを表示する。 いかなる応答でも、トークンをエコー、出力、掲載しないでください。
<REDACTED>に置き換えてください。 - 検証せずに成功を宣言する。 セットアップの完了を確認する前に、必ず 3 つの接続チェック(health、get、search)を実行してください。
- 「スコープの設定」と「ドメインの割り当て」を混同する。 「Finance ドメインに重点を置く」はスコープ設定(セットアップ)です。「これらのテーブルを Finance ドメインに割り当てる」はドメイン管理(Govern)です。
- テレメトリを無効にする。 テレメトリの設定は変更しないでください。CLI にテレメトリのプロンプトが表示される場合は無視してください。ユーザーが明示的に変更を求めない限り、テレメトリの設定はそのままにしてください。
注意すべき兆候
- 出力にトークンが含まれている → 直ちに情報が漏えいしたことを伝え、トークンの再生成を勧めてください。
- ユーザーがエンティティをドメインに割り当てたいと言っている →
/datahub-governに案内してください。 - セットアップ後に接続に失敗する → トラブルシューティングの表に従って確認し、ただ再試行するだけにしないでください。
- ユーザーが HTTP(S) ではないように見える URL を提示する → 使用前に検証してください。
覚えておくこと
- トークンやシークレットを表示しないでください。
<REDACTED>に置き換えてください。 - CLI のインストールには、必ず仮想環境を使ってください。
- 成功を宣言する前に検証してください — すべての接続チェックを実行してください。
- CLI と MCP の両方の方法をサポートしてください — ユーザーはどちらか一方、または両方を使う場合があります。
- 設定しすぎないでください — ユーザーが求めたものだけをセットアップしてください。デフォルトで問題ありません。
- 保存前に設定を表示してください — ファイルに書き込む前に、ユーザーがプロファイルを確認できるようにしてください。