aicore-admin-resources について
SAP AI Coreへのアクセス設定とリソースグループ管理を支援するスキルです。認証情報の確認やプロファイル切り替えに加え、機密情報を保護する運用ルールを備えています。
主な機能
- 01認証情報と有効なリソースグループの確認
- 02CLI・環境変数・設定ファイルでの認証設定
- 03環境プロファイルの切り替え
- 04リソースグループの一覧と確認
- 05トークンとクライアントシークレットの保護
活用シーン
- 01スクリプト実行前の SAP AI Core 設定確認
- 02複数環境での認証情報の切り替え
- 03リソースグループとラベルの確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sap/ ai-skills-library --skill aicore-admin-resourcesインストール後、Claude Code で/aicore-admin-resourcesを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/SETUP.mdscripts/check_setup.pycreate_resource_group.pydelete_resource_group.pyget_token.pylist_resource_groups.pypatch_resource_group.pyset_profile.sh詳細
ルール
- 認証情報が不明な場合、またはスクリプトで認証エラーが発生した場合は、必ず最初に
check_setup.pyを実行してください。 AICORE_BASE_URLの末尾には/v2が必要です。これは最もよくある設定ミスです。- クライアントシークレットやトークンの値を、平文で表示またはログに記録しないでください。ユーザーに必要な情報だけを出力してください(例:設定全体ではなく、リソースグループ)。
- X.509 証明書認証はクライアントシークレットの代替手段です。どちらもサポートされています。
セットアップの確認
認証情報を検証し、アクティブなリソースグループを出力します。
uv run scripts/check_setup.py
成功時の出力例:
{
"status": "ok",
"resource_group": "<your-resource-group>",
"base_url": "https://api.ai.<region>...",
"auth_url": "https://..."
}
失敗した場合は、認証情報の設定手順について references/SETUP.md を参照してください。
認証トークンの取得
curl でのテストに便利な、生の Bearer トークンを標準出力に出力します。
export TOKEN=$(uv run scripts/get_token.py)
トークンは必ず変数に格納してください。get_token.py を単独で実行したり、2>&1 を付けて実行したりしないでください。生の JWT が会話に出力されます。成功メッセージはすでに標準エラー出力に安全に出力されます。$() でキャプチャすれば、トークンのみを取得できます。
認証情報の設定
3 つの方法があります。詳しい手順については references/SETUP.md を参照してください。
| 方法 | コマンド/操作 |
|---|---|
| 対話型 CLI(推奨) | aicore configure |
| 環境変数 | AICORE_AUTH_URL、AICORE_CLIENT_ID、AICORE_CLIENT_SECRET、AICORE_BASE_URL、AICORE_RESOURCE_GROUP を設定 |
| プロファイル設定ファイル | ~/.aicore/config.json を作成 |
よくあるエラー
| エラー | 対処方法 |
|---|---|
401 Unauthorized | aicore configure を再実行してください。client_id またはシークレットが正しくありません |
404 Not Found | AICORE_BASE_URL の末尾に /v2 を追加してください |
Resource group not found | AI Core Launchpad で作成するか、管理者に問い合わせてください |
No credentials found | 必須の環境変数を設定するか、aicore configure を実行してください |
プロファイルの切り替え(複数のランドスケープ)
複数のランドスケープをまたいで作業する場合、認証情報は AICORE_HOME(デフォルト:~/.aicore)配下の config_<profile>.json ファイルに保存されます。エージェントの実行ごとにシェル環境が初期化されるため、エージェントの起動前、または各コマンドと同時にプロファイルを設定する必要があります。
方法 1 — エージェントの起動前にシェルで設定する:
export AICORE_HOME=/path/to/credentials # only needed if not ~/.aicore
export AICORE_PROFILE=<profile>
# then start the agent — it inherits the env vars
方法 2 — 同じシェルで読み込んで実行する(エージェントで使用する場合):
source scripts/set_profile.sh <profile> && uv run scripts/check_setup.py
方法 3 — コマンドごとに設定する:
AICORE_PROFILE=<profile> uv run scripts/check_setup.py
利用可能なプロファイルを一覧表示するには:
source scripts/set_profile.sh
リソースグループの管理
# List all resource groups:
uv run scripts/list_resource_groups.py
# Show detailed view (includes labels):
uv run scripts/list_resource_groups.py --response-format detailed
# JSON output:
uv run scripts/list_resource_groups.py --json
# Inspect a single resource group:
uv run scripts/list_resource_groups.py --resource-group-id <id>
# Create a resource group:
uv run scripts/create_resource_group.py --id <id>
# Create with labels (keys must be prefixed ext.ai.sap.com/ or scenarios.ai.sap.com/):
uv run scripts/create_resource_group.py --id <id> --label ext.ai.sap.com/team=data --label ext.ai.sap.com/env=prod
# Update labels (replaces the full label set):
uv run scripts/patch_resource_group.py --id <id> --label ext.ai.sap.com/team=data
# Delete a resource group (--confirm is required):
uv run scripts/delete_resource_group.py --id <id> --confirm
注:リソースグループ ID は、小文字の英数字を 3~10 文字使用する必要があります(ハイフンは使用できますが、先頭または末尾には使用できません)。ラベルキーには ext.ai.sap.com/ または scenarios.ai.sap.com/ のプレフィックスが必要です。team=data のようなプレフィックスのないキーは、400 エラーで拒否されます。作成直後はプロビジョニングが完了していないため、削除時に 409(「Conflicting ongoing action」)が返されることがあります。しばらく待ってから再試行してください。
引き継ぎ
- デプロイメントを管理する準備ができましたか? →
aicore-lifecycle-managementを呼び出してください - 利用可能なモデルを一覧表示しますか? →
genai-hub-foundation-modelsを呼び出してください
参照ファイルを読み込むタイミング
| 条件 | 読み込むファイル |
|---|---|
| 認証情報/認証に関するエラー、またはセットアップに関する質問 | references/SETUP.md |