feat(container): Antigravity CLI (agy) をベースイメージへ追加する - #130
Conversation
Google の AI コーディングエージェント Antigravity CLI を、既存の claude / gemini / codex / kiro と同じくコンテナ内からすぐ使えるようにする。 インストーラは ~/.local/bin へ単体バイナリを置く方式で、SHA512 を検証し linux の amd64 / arm64 どちらでも動くため、claude と同じ USER ubuntu 側へ置いた。 併せて .bashrc / .zshrc / .profile へ PATH 行を足すが、devbase が入れる行と 内容が同一で実害は無い (--skip-path 相当の口は現行スクリプトに無い)。 エイリアスは --dangerously-skip-permissions 付きにする。Gemini CLI の --yolo に 相当するフラグは Antigravity CLI には無く、確認の抑止はこの 1 本だけである。 設定と認証は ~/.gemini/antigravity-cli/ 配下に置かれるため、PLAN39 で グループ単位に永続化した .gemini にそのまま乗る。コンテナを作り直しても 再認証は要らず、アカウントグループをまたいで共有もされない。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HQWF4ETha9HwZs18k6ijUk
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 1 | codex | REQUEST_CHANGES
インストール失敗を成功扱いにする経路を解消し、ビルド時に agy の実体を検証してください。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 1 | gemini | REQUEST_CHANGES
docs/comparison.md(行 85, 154, 217 付近): AI CLI ツールの一覧(claude/codex/gemini/kiro)を記載している箇所が複数あります。本 PR でagyを追加したため、これらの記載にもagyを併記してドキュメントの一貫性を保つことを提案します。
curl をパイプで bash へ直結すると、Dockerfile の既定 shell に pipefail が 無いため curl の失敗が bash の成功で覆い隠され、agy を含まないイメージが 成功扱いで生成されうる。インストーラを一度ファイルへ落としてから実行し、 最後に ~/.local/bin/agy --version で実体を検証する。 併せて docs/comparison.md の AI CLI 一覧 3 箇所へ agy を併記する。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HQWF4ETha9HwZs18k6ijUk
🔧 cross-review fix | round 1commit: 対応件数
重要度別(独自再判定後)
修正内容1. [major] 本 Dockerfile に curl -fsSL https://antigravity.google/cli/install.sh -o agy-install.sh; \
bash agy-install.sh; \
rm -f agy-install.sh; \
"$HOME/.local/bin/agy" --version; \
2. [minor] 指摘どおり 3 箇所(L85 / L154 / L217)が
deferredなし。 rejectedなし。 検証
|
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 2 | codex | APPROVE
修正が必要な事項はありません。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 2 | gemini | APPROVE
変更内容(Antigravity CLI 追加、エイリアス設定、設定ディレクトリの永続化、ドキュメント・CHANGELOGの追従)に不足や副作用のリスクは見当たりません。
設定の永続化先 (.gemini) も既存のグループボリュームのリストと一致しており、再作成時の安全性が確保されています。Docker の RUN でパイプ直結を避けている点も適切です。
Pull Request
概要
Google の AI コーディングエージェント Antigravity CLI (
agy) をベースイメージへ追加し、既存のclaude/gemini/codex/kiroと同じくコンテナ内からすぐ使えるようにします。インストーラは
~/.local/binへ単体バイナリを置く方式で、SHA512 を検証し linux の amd64 / arm64 どちらでも動くため、claudeと同じ USER ubuntu 側へ置きました。設定と認証は~/.gemini/antigravity-cli/配下に置かれるため、PLAN39 でグループ単位に永続化した.geminiにそのまま乗ります(コンテナを作り直しても再認証は不要、グループをまたいだ共有も起きません)。関連 Issue
変更点
containers/base/Dockerfilecurl -fsSL https://antigravity.google/cli/install.sh | bashを実行agyを--dangerously-skip-permissions付きで追加。Gemini CLI の--yoloに相当するフラグは Antigravity CLI には無く、確認の抑止はこの 1 本だけですdocs/user/container-operations.md— AI CLI エイリアス表にagyを追加。.geminiの行に Antigravity CLI の設定が同居することを追記CHANGELOG.md— Unreleased の Added に追加動作確認
./bin/devbase --helpが正常に動作するuv run pytestが green(1676 passed)agyが PATH 上にあり1.1.22を返すtype agyがエイリアスとして展開されるdocs/,README.md) を更新したスクリーンショット・ログ(任意)
補足
FROM devbase-baseを焼き直さないとagyが入りません。.bashrc/.zshrc/.profileへ PATH 行を追記します。devbase が入れる行と内容が同一なので実害はありません。現行スクリプトに実在するフラグは-d/--dirと-hだけで、公式ドキュメントに載っている--skip-aliases/--skip-pathはスクリプト側に存在しませんでした。agyはバックグラウンドで自己更新しますが、~/.local/binは永続化対象外なのでコンテナ作り直しでイメージの版へ戻ります。