adk-style について
`src/google/adk/` と `tests/unittests/` のコントリビューター向けスタイルガイドです。開発作業やチェック失敗に応じた規約を参照できます。
主な機能
- 01トピック別の ADK 規約
- 02インポートと可視性の指針
- 03型付けと Pydantic の指針
- 04フォーマット、ドキュメント、ログのルール
- 05テストとファイル配置の指針
活用シーン
- 01ADK コードの編集前に規約を確認
- 02失敗した pre-commit や CI チェックの参照先を特定
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ google/ adk-python --skill adk-styleインストール後、Claude Code で/adk-styleを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/async.mddocumentation.mdfile-organization.mdformatting.mdimports.mdlogging.mdpydantic.mdtesting.mdtyping.mdvisibility.md詳細
ADK スタイルガイド
src/google/adk/ および tests/unittests/ の規約です。ほとんどの規約は pre-commit フックまたは CI ジョブによってチェックされるため、違反するとレビューで指摘されるのではなく、PR がブロックされます。変更する項目に対応するリファレンスを確認してください。
リファレンスを選ぶ
| 作業 | リファレンス |
|---|---|
.py ファイルの追加、公開と非公開の判断、__init__.py および __all__ | visibility.md |
import 行の記述、相対インポートと絶対インポート、循環インポート、TYPE_CHECKING、遅延インポート | imports.md |
引数と戻り値の型注釈、AgentMode と生のモード文字列の使い分け、_NodePathBuilder、_BranchPath、build_node、Optional と | None の使い分け、キーワード専用引数、isinstance、アサーション、mypy、# type: ignore と cast | typing.md |
| Pydantic モデル、バリデーター、プライベート属性、またはワイヤ上のペイロードの定義 | pydantic.md |
| インデント、行の長さ、引用符、フォーマッターの実行、各フックのチェック内容 | formatting.md |
| docstring または説明コメントの記述 | documentation.md |
| ログレコードの出力、モジュールロガーの命名、ログレベルの選択 | logging.md |
| ネットワーク、ディスク、データベースなど、I/O を行う処理 | async.md |
| 新しいファイルの配置場所、ライセンスヘッダー、テストの配置場所と命名方法 | file-organization.md |
ユニットテストの作成や再構成、testing_utils のフェイク | testing.md |
チェックに失敗した場合 — 確認する場所
| 失敗したチェック | リファレンス |
|---|---|
check-new-py-prefix | visibility.md |
compliance-checks | logging.md(ロガー名)、typing.md(from __future__ import annotations)、imports.md(cli/ のインポート方向) |
pyink、isort、ruff、addlicense、codespell | formatting.md |
| Mypy Check CI ジョブ | typing.md |
tests/unittests/test_import_loading.py | imports.md |
コメント
Markdown 対応