ANTIGRAVITY LABEN
記事一覧/Agents & Manager
Agents & Manager/2026-07-18上級

エージェントに任せるコード検索を契約として書く — /codesearch の正規表現既定を実測で読み直す

Antigravity CLI 1.1.3 の /codesearch はクエリを既定で正規表現として解釈します。979本のMDXを抱えるリポジトリで正規表現とリテラルの差を実測し、過剰ヒット・4.5MBの出力・静かなずれを避けるクエリ設計をまとめました。

Antigravity CLI13codesearchエージェント設計14正規表現検索設計

プレミアム記事

「呼び出し元を全部書き換えてください」と頼んだ翌朝、一箇所だけ古いままの行が残っていました。

エージェントの作業ログを遡ると、書き換え自体は丁寧でした。問題はその手前です。エージェントが最初に投げた検索が、その行を拾っていなかった。手を動かす前の一手で、対象が静かに欠けていたわけです。

修正漏れは目で見つかります。検索漏れは、見つかりません。何も返ってこなかったのではなく、返ってきたものが全部だと信じてしまうからです。

個人開発でエージェントに夜間の作業を任せていると、この手の取りこぼしは翌朝まで誰にも見られません。本番のコードに古い呼び出しが残ったまま、ビルドは緑のまま通ります。

/codesearch 1.1.3 が置いた既定

Antigravity CLI 1.1.3(7/16)で /codesearch が追加されました。エイリアスは /cs/search です。

仕様のうち、運用に効くのは次の3点です。

項目挙動
クエリの解釈既定で正規表現として読まれる
-F / --literal完全一致(リテラル)に切り替える
f: / file:グロブでパスを含める・除外する

既定が正規表現である、という一行を軽く読み飛ばしていました。私自身、検索窓に打つ文字列は「探したい文字列そのもの」だという前提を、長いあいだ疑わずにいたのです。

けれど config.jsonuseState(ja|en も、正規表現として読めば別の意味を持ちます。人間が投げるなら、返ってきた結果を見て「あ、違うな」と気づきます。エージェントは気づきません。返ってきた集合を、そのまま作業対象として受け取ります。

手元のリポジトリで、差を測る

推測で書きたくなかったので、測りました。

対象は Antigravity Lab のリポジトリそのものです。日本語記事の MDX が 979 本、src/ 配下が 73 ファイル。/codesearch と同じ意味論(既定が正規表現、-F でリテラル)を手元の grep -Egrep -F で再現し、同一クエリのヒット行数を突き合わせました。

クエリ正規表現(既定)リテラル(-F
config.json1251250
tsconfig.json86860
package.json200199+1
.mdx4135+6
antigravity.google4835+13

config.json は差がゼロでした。ドットが任意の一文字にマッチするとはいえ、configXjson のような文字列がリポジトリに無ければ、事故は起きません。ここが厄介なところです。**大半のクエリでは、正規表現既定は何も壊しません。**だから既定を疑う機会が来ない。

差が出たのは antigravity.google でした。48件中13件、約 27% が過剰ヒットです。実体を見ると、こうでした。

src/generated/articles.json:antigravity-google
content/articles/ja/integrations/antigravity-google-workspace-mcp-daily-workflow.mdx:antigravity-google

ドットがハイフンにマッチしています。ドメイン名を探したつもりが、スラッグを拾っていた。公式サイトへの外部リンクを棚卸ししようとして、記事のURLパスが混ざる形です。

.mdx の過剰ヒット6件も同じ構図で、実体は |mdx mdx_mdx"mdx でした。拡張子を数えたつもりが、その手前の一文字ごと拾っている。

どれも、結果を眺めれば人間なら気づきます。エージェントに「この一覧を全部直して」と渡した瞬間、気づく人がいなくなります。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
979本のMDXで実測した、正規表現既定とリテラルのヒット差(最大 27% が過剰ヒット)
区切り文字ひとつで 4.5MB を返すクエリと、0件を返すクエリの分かれ目
検索クエリを契約として書く3つの規約と、ドリフトを測る Python ハーネス
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Antigravity Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

Agents & Manager2026-07-14
AGENTS.md を一行直したら挙動が崩れた — 指示そのものを回帰テストする仕組み
エージェントに渡す指示(AGENTS.md やスキル文)を直すたびに、別のタスクが静かに壊れます。コードでなく指示を被験体にした回帰ハーネスを、固定タスク集と決定的アサーションで実装し、無人運用に組み込むまでを示します。
Agents & Manager2026-06-15
Antigravity のエージェントを「完了の自己申告」から卒業させる — 完了契約と外部検証の実装メモ
Antigravity のエージェントが「完了しました」と報告したのに未完了だった事故を、完了判定をコードへ外部化する設計で潰してきました。完了契約・3層の自動検証・無人実行での扱い・CI 統合までを実装で示します。
Agents & Manager2026-05-06
エージェントに「審美眼」を持たせる — Antigravity × Gemini Vision で構築する UI 品質自動評価パイプライン
「このUIは良いか悪いか」という曖昧な判断をコードに落とし込む方法を探ります。Antigravity と Gemini Vision を組み合わせて、スクリーンショット取得からAI評価、改善提案、自動修正、CI/CD統合までを一本のエージェントパイプラインとして実装します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →