すべての記事
設定ファイルを開かずに MCP サーバーを足す — agy mcp サブコマンドで構成を持ち運ぶ
8月20日の Antigravity CLI 1.1.16 で mcp サブコマンドが追加され、MCP サーバーの追加と切り替えを設定ファイルの手編集なしに行えるようになりました。stdio と HTTP それぞれの登録手順、障害の切り分け方、構成を別のマシンへ運ぶスクリプト化までをまとめます。
stream-json 入力で Antigravity CLI を外部から回すとき、会話をどこで切るか
print モードに加わった --input-format stream-json は、外部のドライバがセッションを開いたまま一件ずつ流せる仕組みです。24 件のジョブで会話が抱える量を計測し、バイト予算だけで切ると仕事の途中で文脈が切れることを確かめ、切る単位の決め方を整理します。
MCP サーバーが1本も起動しない原因は、起動前の 40 行で特定できます
設定ファイルの1件の書き間違いで MCP サーバーが揃って起動しなくなる状況を、起動前に検査する小さなスクリプトで潰す手順です。実際に壊した設定へ通した出力と、JSON の同名キーが黙って消える落とし穴まで扱います。
止めたはずの MCP サーバが残り続ける — 停止方法 4 種を 84 回測って見えた setsid の壁
セッションを閉じたのに MCP サーバがポートを握ったまま残る。停止方法 4 種を 84 試行で測ると、プロセスグループ宛の SIGTERM は孤児率 0% でも、子が setsid した瞬間に 100% へ戻りました。/proc の ppid を辿る子孫スイープの実装まで。
起動 3 ミリ秒の裏で、最初のターンはツールを 0 本しか見ていませんでした
MCP の非ブロッキングロードで起動待ちは 2,907ms から 3ms になりました。けれど待ちは消えず、最初のターンへ移っていました。待ちの行き先を実測し、必要な分だけ待つレディネスゲートを設計します。
サーバーごとに秒数を書く前に測ったこと — MCP の接続と呼び出しは 486 倍違っていました
2.4.3 で MCP サーバーごとにタイムアウトの秒数を指定できるようになりました。何秒が妥当かを決めるために stdio サーバーを自作して境界別に実測し、単一の値では覆えない理由と、いま設定に書いている値の決め方をまとめます。
MCP を束ねると read_file が 3 つになる — ツール名の衝突を起動前に落とす
複数の MCP サーバーを束ねるとツール名は静かに衝突します。5 サーバー 21 ツールの構成で 43% が衝突していた実測と、起動前に検出して決定的な別名を割り当てる Python プリフライトの設計をまとめました。
無応答の MCP サーバーでエージェントが止まる — 接続・一覧・呼び出しに別々のタイムアウトを敷く
Antigravity CLI 1.1.3 は、無応答の MCP サーバーがエージェントを無限に止める問題を、接続・ツール一覧・ツール呼び出しごとのタイムアウトで塞ぎました。3つの境界で失敗の出方が違う理由を整理し、防御ラッパーとサーキットブレーカー、失敗時だけの通知を、動くコードと夜間運用の実測でまとめます。
起動を止める一つのファイル — config.json の破損に備える設定健全性ガード
Antigravity 2.3.1 は config.json が空または壊れていると起動できない不具合を修正しました。修正されたのは症状で、壊れる原因は残ります。スケジュール実行の直前に設定を検証し、良い状態を控え、壊れていれば戻す3層のガードを、動くコードと個人運用の実測でまとめます。
黙って通していた確認ツールを、ソフト拒否から allow ルールに起こす
Antigravity CLI 1.1.3 で、ヘッドレスの -p は確認の要るツールを黙って自動承認する代わりに、ソフト拒否して必要な allow ルール名を stderr に示すようになりました。この出力を「発見」に使い、全許可からではなく空許可から最小権限を組み上げる逆向きのループを、動くハーネスと個人運用の実測でまとめます。
無人ランで作業フォルダが突然『別の人の持ち物』になる — 所有者ドリフトを検知して書ける場所へ逃がす
数週間緑だった無人スケジュールが、ある朝 git config を書けずに止まりました。原因は永続作業フォルダの所有者ドリフト。存在チェックでは通り書き込みだけが弾かれる罠を切り分け、書込可否を実測して別の場所へ逃がすプリフライトを実装まで残します。
無人ランのログを SQLite に流し込み、失敗を横断で数える
Antigravity CLI を無人スケジュールで回すと、ランごとに JSON Lines のログが溜まっていきます。ファイルを grep で追うのをやめ、小さな SQLite に取り込んで「どのステップがいつ落ちるか」を1本のクエリで数える方法を、取り込みスクリプトと診断 SQL、実際の集計結果ごと共有します。