claude-skills/

Anthropic公式スキル・プラグインの日本語ディレクトリ

last sync 22h ago
スキルOfficialdevelopment

🔧aidp-engineer-bootstrap

説明

AIDP プラグイン(自己完結型)の初回セットアップを行います。 以下の処理を順に実行します: - `oci` CLI および `DEFAULT` プロファイルの `api_key` を検証 - バンドルされた Python 依存パッケージをインストール - リージョン・DataLake の OCID・ワークスペースを自動検出 - 両エンジンのスモークテストを実施 - コントロールプレーン: `oci raw-request` による `GET /catalogs` - SQL エンジン: `scripts/aidp_sql.py` を使用した `SELECT 1` セルの実行 次のような場合に使用: - 初回起動時 - ユーザーから「AIDP のセットアップ / 設定 / インストール / ブートストラップ」を求められたとき - コントロールプレーンまたは SQL の呼び出しが認証・設定エラーで失敗したとき MCP のインストールは不要です。

原文を表示

First-run setup for the self-contained AIDP plugin. Verifies the oci CLI + a DEFAULT api_key profile, installs the bundled Python deps, discovers region + DataLake OCID + workspace, then smoke-tests both engines (a control-plane GET /catalogs via oci raw-request and a trivial SELECT 1 cell via scripts/aidp_sql.py). Use on first run, when the user asks to "set up / configure / install / bootstrap AIDP", or when control-plane or SQL calls fail with auth/config errors. No MCP install required.

ユースケース

  • 初回起動時にセットアップする
  • AIDP のセットアップを求められたとき
  • 認証・設定エラーで失敗したとき

本文(日本語訳)

aidp-engineer-bootstrap — 新しいターミナルを動作するAgentに設定する

新規ターミナルを動作状態のAIDP Agentへとセットアップします。このPluginは完全に自己完結型です — プライベートリポジトリ ai-data-engineer-agent やMCPサーバーへの依存は一切ありません。

エンジンの優先順位(詳細は references/aidp-cli-map.md を参照):

  • コントロールプレーン — 推奨: 公式 aidp CLI(公開・Oracle公式サポート: github.com/oracle-samples/aidataplatform-sdk)。各Skillと1対1でマッピングされるため、可能であればインストールしてください(Step 2b)。
  • コントロールプレーン — フォールバック: oci raw-request を同一のREST APIに対して使用(oci CLIのみで動作; references/oci-raw-request.mdreferences/no-mcp-rest-map.md 参照)。CLIと同じエンドポイント・認証方式を使用。
  • インタラクティブなSpark-SQL / ノートブックセル → 同梱のヘルパー python "$PLUGIN_DIR/scripts/aidp_sql.py"(api_key DEFAULTプロファイルからUPSTを生成し、スクラッチノートブックを自動作成してセルを実行 — CLI/SDKではセルの実行ができないため)。

次のような場合に使用:

  • 初回実行時、または「AIDPのセットアップ / 設定 / インストール / ブートストラップ」を行う場合、 あるいはコントロールプレーン・SQLの呼び出しが認証エラーや設定不足で失敗している場合。

Step 1 — oci CLI と DEFAULT api_keyプロファイルの確認

oci --version                                   # CLIは存在するか?
oci setup repair-file-permissions --file ~/.oci/config 2>/dev/null
oci iam region list --profile DEFAULT >/dev/null && echo "DEFAULT profile OK" || echo "fix DEFAULT profile"
  • oci が存在しない場合 → OCI CLIをインストール(pip install oci-cli またはプラットフォームインストーラーを使用)。
  • DEFAULT プロファイルは、api_keyプロファイル(tenancy, user, fingerprint, key_file, region) または oci session authenticate によるセッショントークンプロファイルのどちらでも可 — どちらのエンジンも完全に同等の機能を持ちます(references/oci-raw-request.md の「Session-token auth」を参照)。 api_keyの場合はWebSocketがUPSTを生成し、sessionプロファイルの場合はセッショントークンが直接再利用されます(api_keyは不要)。
  • api_keyがない場合はセッショントークンを使用: oci session authenticate --profile <P> --region <r> を実行し、 コントロールプレーンには --auth security_token --profile <P>、セルには scripts/aidp_sql.py --profile <P>(セッショントークンを自動検出)を使用してください。 --session-profile は明示的なWebSocket専用のオーバーライドとして残してあります。 セッショントークンの有効期限は約1時間です → 更新: oci session refresh --profile <P>

Step 2 — 同梱のPython依存パッケージをインストール

このPluginに含まれるコードは scripts/aidp_sql.py のみです。必要なパッケージ: ocirequestswebsocket-clientcryptography

まず $PLUGIN_DIR を解決してくださいclaude plugin install 実行後、Pluginはプロジェクトの作業ディレクトリではなく、Claudeのpluginディレクトリ配下に配置されます。そのためヘルパーは絶対パスで呼び出す必要があります。 以下のいずれかで一度設定してください: export PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT}" (このPluginに対してClaudeが CLAUDE_PLUGIN_ROOT を設定します)、 または claude plugin list を実行してインストールパスをコピーし、export PLUGIN_DIR=<そのパス> を設定する。 各SkillのすべてのAidp_sql.pyの使用例では "$PLUGIN_DIR/scripts/aidp_sql.py" を使用しています。 (初回セッション開始時、SessionStartフックにより依存パッケージは自動インストールされます。以下の手動手順はフォールバック用です。)

python -m pip install -r "$PLUGIN_DIR/scripts/requirements.txt"

Step 2b — (推奨)公式 aidp CLIのインストール

サポートされているコントロールプレーンエンジンです。PyPI/npmに公開された後はワンコマンドでインストールできます。それまではGitHubリリースからインストールしてください:

# 公開後(近日予定):  python -m pip install aidp-cli      # `aidp` コマンドを提供
# 現在はv1.0.0リリースZIPから:
#   https://github.com/oracle-samples/aidataplatform-sdk/releases/tag/v1.0.0 から
#   aidp-py-cli-1.0.0.zip をダウンロードし、以下を実行:
#   python -m pip install ./aidp-py-cli-1.0.0.zip
aidp version && aidp command-groups        # CLIがPATHに存在するか確認

venvへのインストールを推奨 — SDKとCLIを oci-cli と同じ環境にインストールすると、pipの依存関係の競合が発生します(cryptography のダウングレードや、clickoci のバージョン固定との衝突が起きます。CLIは動作しますが、venvを使うことで oci-cli と同梱ヘルパーの依存関係をクリーンに保てます)。 動作確認済み: aidp catalog list --instance-id <OCID> --auth api_keytpcds のカタログが返ることを確認。

aidp がインストールされていない場合でも問題ありません — 各Skillは oci raw-request にフォールバックします(Step 4フォールバック)。 Pluginはどちらでも動作します。CLIはあくまで公式サポートされたバージョン管理済みの方法です。


Step 3 — リージョン・DataLake OCID・ワークスペースの収集(「AIDP CLIのセットアップ確認」)

以下の値を確認し、CLIで使用できるようにします。公式デモの**「Check my AIDP CLI setup」**とは、インスタンスとエンドポイントがシェルコンテキストに設定されていることを確認する作業です:

export AIDP_INSTANCE_ID="<DATALAKE_OCID>"
export AIDP_ENDPOINT="https://aidp.<region>.oci.oraclecloud.com"      # または: aidp configure  (デフォルトプロファイル+インスタンスを設定)

AIDP_ENDPOINT は必ず aidp.<region> ゲートウェイに設定してください(動作確認済み)。 そうしないとPython SDKのデフォルトである datahub-dp.<region>…/20260430/aiDataPlatforms/ が使用され、 そのGAホストに対応していないテナンシーでは404エラーが発生します(aidp CLIはすでに動作するゲートウェイをデフォルトとしています)。

AIDP_INSTANCE_ID が設定されていない場合、セットアップ確認はそこで止まります — 設定(とエンドポイント)を行い、再確認してください。 これらの値をコミット済みファイルにハードコードしないでください。

  • リージョン: デフォルトは us-ashburn-1(ユーザーに確認してください)。
  • DataLake OCID: ユーザーに確認してください(AIDPコンソールのURL/詳細から取得)。推測しないこと。
  • ワークスペース: リージョンとOCIDが揃ったら、ワークスペースを自動探索してユーザーに選択させます(目的のワークスペースの data[].id / data[].key を使用):
    oci raw-request --http-method GET --profile DEFAULT \
      --target-uri "https://aidp.<region>.oci.oraclecloud.com/20240831/dataLakes/<DATALAKE_OCID>/workspaces"
    
    ユーザーがすでにワークスペースのOCIDを知っている場合はそれを直接使用します。 GETが401/403を返した場合は、references/oci-raw-request.md の認証ラダーを実行してください (oci session refresh --profile AIDP_SESSION の後、--auth security_token --profile AIDP_SESSION でリトライ)。

Step 4 — 両エンジンのスモークテスト

  1. コントロールプレーン — 認証とOCIDの解決を確認します。 推奨(公式CLI):

    aidp catalog list --instance-id <DATALAKE_OCID> --auth api_key --profile DEFAULT --region <region>
    

    フォールバック(CLIなし)— oci raw-request:

    oci raw-request --http-method GET --profile DEFAULT \
      --target-uri "https://aidp.<region>.oci.oraclecloud.com/20240831/dataLakes/<DATALAKE_OCID>/catalogs"
    

    カタログ一覧 / "status": 200 が返れば成功。 (404 → バージョン・プレフィックスが誤り;401/403 → 認証ラダーを実行)

  2. インタラクティブSQL (scripts/aidp_sql.py) — ACTIVEなクラスターを選択 (GET /workspaces/<ws>/clusters)し、簡単なセルを実行:

    python "$PLUGIN_DIR/scripts/aidp_sql.py" \
      --region <region> --datalake <DATALAKE_OCID> --workspace <ws> --cluster <cluster-key> \
      --code "spark.sql('SELECT 1').show()"
    

    "status": "ok"SELECT 1 の出力を含むJSONが返れば成功。 (ヘルパーはDEFAULTプロファイルからUPSTを生成し、Shared/_aidp_sql_scratch.ipynb を自動作成します。 api_keyパスでトークンを生成できない場合のみ --session-profile AIDP_SESSION を追加してください。)


Step 5 — 次のステップへ

両エンジンが正常に動作したら → aidp-catalog-init に進んで .aidp/catalog.md を構築します。 その後、ユーザーは作業を開始できます (ツアーは aidp-engineer-overview、データ分析の質問は aidp-analyzing-data)。


参照

<!-- オプションのアクセラレーター: aidp スタイルのMCPサーバーがたまたま設定されている場合(claude mcp list でConnectedと表示)、 利便性のためにそのツールを使用してもかまいません — ただし必須ではなく、このPluginはその存在を前提としません。 上記のすべては oci CLI と DEFAULT api_keyプロファイルのみで動作します。 -->

原文(English)を表示

aidp-engineer-bootstrap — get a new terminal to a working agent

Take a brand-new terminal to a working AIDP agent. The plugin is fully self-contained — no dependency on the private ai-data-engineer-agent repo or any MCP server. Engine precedence (see references/aidp-cli-map.md):

  • Control-plane — preferred: the official aidp CLI (public, Oracle-supported: github.com/oracle-samples/aidataplatform-sdk). Maps 1:1 to the skills; install it if you can (Step 2b).
  • Control-plane — fallback: oci raw-request against the same REST API (works with only the oci CLI; references/oci-raw-request.md, references/no-mcp-rest-map.md). Same endpoint + auth as the CLI.
  • Interactive Spark-SQL / notebook cells → the bundled helper python "$PLUGIN_DIR/scripts/aidp_sql.py" (mints a UPST from the api_key DEFAULT profile, auto-creates a scratch notebook, runs the cell — the CLI/SDK can't exec cells).

When to use

  • First run, or "set up / configure / install / bootstrap AIDP", or control-plane/SQL calls failing on auth or missing config.

Step 1 — Verify the oci CLI + a DEFAULT api_key profile

oci --version                                   # CLI present?
oci setup repair-file-permissions --file ~/.oci/config 2>/dev/null
oci iam region list --profile DEFAULT >/dev/null && echo "DEFAULT profile OK" || echo "fix DEFAULT profile"
  • If oci is missing → install the OCI CLI (pip install oci-cli or the platform installer).
  • The DEFAULT profile can be either an api_key profile (tenancy, user, fingerprint, key_file, region) or an oci session authenticate session-token profile — both engines have full parity (see "Session-token auth" in references/oci-raw-request.md). For api_key the WebSocket mints a UPST; for a session profile the session token is reused directly (no api_key needed anywhere).
  • No api_key? Use a session token everywhere: oci session authenticate --profile <P> --region <r>, then control-plane via --auth security_token --profile <P>, and scripts/aidp_sql.py --profile <P> for cells (it auto-detects the session token). --session-profile stays as an explicit WebSocket-only override. Session tokens expire ~1h → oci session refresh --profile <P>.

Step 2 — Install the bundled Python deps

The only code in this plugin is scripts/aidp_sql.py; it needs oci, requests, websocket-client, cryptography.

Resolve $PLUGIN_DIR first — after claude plugin install the plugin lives under Claude's plugins dir, not your project cwd, so the helper must be called by absolute path. Set it once: export PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT}" (Claude sets CLAUDE_PLUGIN_ROOT for this plugin), or run claude plugin list, copy the install path, and export PLUGIN_DIR=<that path>. Every aidp_sql.py example in these skills uses "$PLUGIN_DIR/scripts/aidp_sql.py". (On a clean first session the SessionStart hook already auto-installs the deps; the manual step below is only a fallback.)

python -m pip install -r "$PLUGIN_DIR/scripts/requirements.txt"

Step 2b — (Preferred) install the official aidp CLI

The supported control-plane engine. Once it's on PyPI/npm this is one command; until then install from the GitHub release:

# When published (coming soon):  python -m pip install aidp-cli      # provides the `aidp` command
# Today, from the v1.0.0 release zip:
#   download aidp-py-cli-1.0.0.zip from
#   https://github.com/oracle-samples/aidataplatform-sdk/releases/tag/v1.0.0 then:
#   python -m pip install ./aidp-py-cli-1.0.0.zip
aidp version && aidp command-groups        # verify the CLI is on PATH

Install in a venv — installing the SDK/CLI alongside oci-cli triggers pip dependency conflicts (it downgrades cryptography and clashes click/oci pins; the CLI still runs, but a venv keeps oci-cli and the bundled helper's deps clean). Verified live: aidp catalog list --instance-id <OCID> --auth api_key returns the catalogs on tpcds.

If aidp isn't installed, that's fine — every skill falls back to oci raw-request (Step 4 fallback). The plugin works either way; the CLI is just the supported, versioned path.

Step 3 — Gather region + DataLake OCID + workspace ("check my AIDP CLI setup")

Resolve these values and make them available to the CLI. The official demo's "Check my AIDP CLI setup" = confirming the instance + endpoint are set in the shell context:

export AIDP_INSTANCE_ID="<DATALAKE_OCID>"
export AIDP_ENDPOINT="https://aidp.<region>.oci.oraclecloud.com"      # or: aidp configure  (sets default profile + instance)

Always set AIDP_ENDPOINT to the aidp.<region> gateway (LIVE-VERIFIED). The Python SDK otherwise defaults to datahub-dp.<region>…/20260430/aiDataPlatforms/, which 404s on tenancies not on that GA host (the aidp CLI already defaults to the working gateway). If AIDP_INSTANCE_ID is missing, the setup check stops there — set it (and the endpoint), then re-check. Never hardcode these into committed files.

  • Region: default us-ashburn-1 (confirm with the user).
  • DataLake OCID: ask the user for it (from the AIDP console URL/details). Do not guess one.
  • Workspace: once you have region + OCID, auto-discover workspaces and let the user pick (use the data[].id / data[].key of the desired workspace):
    oci raw-request --http-method GET --profile DEFAULT \
      --target-uri "https://aidp.<region>.oci.oraclecloud.com/20240831/dataLakes/<DATALAKE_OCID>/workspaces"
    
    If the user already knows the workspace OCID, use it directly. If the GET returns 401/403, run the auth ladder in references/oci-raw-request.md (oci session refresh --profile AIDP_SESSION, then retry with --auth security_token --profile AIDP_SESSION).

Step 4 — Smoke-test BOTH engines

  1. Control-plane — confirm auth + OCID resolve. Preferred (official CLI):
    aidp catalog list --instance-id <DATALAKE_OCID> --auth api_key --profile DEFAULT --region <region>
    
    Fallback (no CLI installed) — oci raw-request:
    oci raw-request --http-method GET --profile DEFAULT \
      --target-uri "https://aidp.<region>.oci.oraclecloud.com/20240831/dataLakes/<DATALAKE_OCID>/catalogs"
    
    Expect the catalog list / "status": 200. (404 → wrong version/prefix; 401/403 → auth ladder.)
  2. Interactive SQL (scripts/aidp_sql.py) — pick an ACTIVE cluster (GET /workspaces/<ws>/clusters), then run a trivial cell:
    python "$PLUGIN_DIR/scripts/aidp_sql.py" \
      --region <region> --datalake <DATALAKE_OCID> --workspace <ws> --cluster <cluster-key> \
      --code "spark.sql('SELECT 1').show()"
    
    Expect JSON with "status": "ok" and the SELECT 1 output. (The helper mints a UPST from the DEFAULT profile and auto-creates Shared/_aidp_sql_scratch.ipynb; add --session-profile AIDP_SESSION only if the api_key path can't mint a token.)

Step 5 — Hand off

Both engines green → hand off to aidp-catalog-init to build .aidp/catalog.md, then the user is ready (aidp-engineer-overview for the tour, aidp-analyzing-data to ask questions).

References

<!-- Optional accelerator: if an aidp-style MCP server happens to be configured (claude mcp list shows it Connected), you MAY use its tools as a convenience — but it is NOT required and the plugin never assumes it. Everything above works with only the oci CLI + a DEFAULT api_key profile. -->

原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。