adk-setup について
`adk-python` の開発環境を準備するためのスキルです。uv 環境の作成、依存関係とフックの導入、テストによるリポジトリの確認を開発者向けに案内します。
主な機能
- 01Python 3.11 の uv 環境作成
- 02すべての依存関係の導入
- 03pre-commit と tox の設定
- 04リポジトリの Git フック導入
- 05ユニットテストと整形チェック
活用シーン
- 01ローカルの `adk-python` 開発環境の準備
- 02ユニットテストによる変更の確認
- 03コミット前の整形と lint チェック
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ google/ adk-python --skill adk-setupインストール後、Claude Code で/adk-setupを入力して読み込まれたか確認します。
詳細
ADK Python の開発環境のセットアップ
uv で管理する仮想環境にすべての依存関係エクストラをインストールし、pre-commit フックを設定して、ユニットテストがすべて成功する adk-python のチェックアウトをセットアップします。
前提条件
-
Python。 ADK は 3.11 から 3.15 までをサポートしています(
pyproject.tomlのrequires-python = ">=3.11")。ここでは、リポジトリ独自のツールでデフォルトに設定されているバージョンである 3.11 を使用します。python3 --version -
uv。 依存関係は
pyproject.tomlで宣言されています。以下のuv syncの手順で、このリポジトリでは無視されるローカルのuv.lockが作成されます。ロックファイルを必要とする tox のロックランナーを使う前に、この手順を実行してください。uv --version
インストールされていない場合は、次の手順でインストールします。
curl -LsSf https://astral.sh/uv/install.sh | sh
セットアップ
以下の手順は、リポジトリのルートディレクトリから実行します。
-
仮想環境を作成して有効化します。
uv venv --python "python3.11" ".venv" source .venv/bin/activate -
すべての依存関係エクストラをインストールします。
uv sync --all-extras--all-extrasを指定すると、testとdevのエクストラがインストールされます。デフォルトの依存関係だけを同期すると、pytestとリンターがインストールされません。 -
pre-commit と tox をスタンドアロンツールとしてインストールします。
uv tool install pre-commit uv tool install tox --with tox-uvどちらも
devエクストラに含まれています。uv ツールとしてインストールすると PATH に追加されるため、仮想環境を有効化しなくても、git フックと複数バージョンでのテスト実行が可能になります。 -
addlicenseをインストールします(任意、Go が必要です)。go install github.com/google/addlicense@latestインストールしていない場合、pre-commit フックは
Warning: addlicense not installed, skippingと表示して処理を続行します。そのため、Go ツールチェーンがなくてもセットアップは妨げられません。ライセンスヘッダーの不足は CI で検出されます。 -
git フックをインストールします。
pre-commit installコミット時に、フックは
isort、pyink、mdformatで自動フォーマットを行い、その後ruff、addlicense、codespell、およびリポジトリ独自のコンプライアンスチェックを実行します。 -
環境を確認します。
pytest tests/unittests -n autoここですべて成功すれば、セットアップは完了です。
-n autoにはpytest-xdistが必要です。これは手順 2 でtestエクストラとともにインストールされます。
主なコマンド
| タスク | コマンド |
|---|---|
| ユニットテストを実行する | pytest tests/unittests |
| ユニットテストを並列実行する | pytest tests/unittests -n auto |
| テストファイルを 1 つ実行する | pytest tests/unittests/agents/test_base_agent.py |
| サポート対象のすべての Python でテストを実行する | tox(uv が不足しているインタープリターをダウンロードします) |
| すべてをフォーマットして lint する | pre-commit run --all-files |
| Web UI を起動する | adk web {agents_dir} |
| CLI からエージェントを実行する | adk run {agent_dir} |
| wheel をビルドする | uv build |