スキル

ast-grep スキル:テキスト照合ではなく構文構造でコードを検索する

AST 構造でコードを探したい人向け。前提は、このマシンに ast-grep が既に入っており、質問でこのスキルの使用を明示してから読み取り専用検索を行うこと。

公式ソース · ast-grep agent-skill

インストール

npx skills add ast-grep/agent-skill

誰向けか

プログラミングアシスタントに、テキスト照合ではなくコード構造(抽象構文木)で検索させたいときに、このスキルを使う。公式では Claude Code のプラグインマーケットに置かれ、ast-grep の構造検索を提供する。

前提条件:このマシンに ast-grep が既に入っており、アシスタントがスキルをインストールできること。説明には ast-grep 本体の入れ方は書かれていない。インストーラを補わないこと。説明は Claude Code を名指ししている。他のクライアントを公式専用と書かないこと。その名簿以外で使えるかは原文にない。

インストールの主経路は npx コマンド1本だけ。入れたあと、質問でこのスキルの使用を明示する必要がある。例: “Use ast-grep to find...”。説明では 2025 年 11 月時点でも、Claude Code は適切な場面すべてで ast-grep を自動判定できない。設置先ディレクトリは書かれていない。入れたあとは、今使っているアシスタントで、このスキルを名前指定して使えることだけ確認する。

3分で最初の試行

公式ページ:

https://github.com/ast-grep/agent-skill

先にこのマシンで ast-grep が使えることを確認し、推奨インストールを実行する(スキルファイルをこのマシンに書き込むので、先にリポジトリ名を照合する):

npx skills add ast-grep/agent-skill

コマンドが失敗したら止める。成功しても、先に業務コードを変えない。既存リポジトリを開き、自然言語で明確に Use ast-grep to find... と言い、低リスクな構造目標を出す。例:ある関数呼び出しの形を探す。アシスタントには、まず ast-grep が適するか分析し、照合用のサンプルとルールを書き、先にサンプルでテストするよう求める。

成功の合図:アシスタントが明示的に ast-grep を使い、ルールがサンプルで検証され、リポジトリ全体の結果にファイルパスと行番号が付いている。ルールファイルへの書き込みや業務コード変更を始めようとしたら、先に止め、副作用を確認してから続ける。

使用例

例1:読み取り専用の構造検索。質問では ast-grep を明示的に名指しする。アシスタントに構造で一致を見つけさせ、ファイルパスと行番号を返させる。最初は結果だけ見る。ついでにリファクタさせない。説明に言語範囲やサンプルリポジトリはない。想像上の言語リストから推論しない。

例2:先にルールを書き、検証し、最後にリポジトリ全体を検索する。説明の手順は次のとおり。クエリが ast-grep に向くか分析する。照合用サンプルコードを作る。ルールを書く。サンプルでテストする。通ってからコードベース全体を検索する。最後にパスと行番号を出す。サンプルテストが通ったときだけ、全体検索を許す。ルールファイルのパスや CLI フラグは書かれていない。欠けているものを補わない。

利用の境界

主経路が書いているのは次だけ:

npx skills add ast-grep/agent-skill

このマシンには ast-grep が既に入っている必要がある。起動は明示的に名指しする。例: “Use ast-grep to find...”。あらゆる場面で自動選択されると思わないこと。

能力の根拠があるのは構造検索と、「サンプル → ルール → テスト → 全体 → パスと行番号」という連鎖だけ。Claude Code プラグインマーケットのスキルとして書かれているが、初回は本文に出てこないマーケットのクリック手順に切り替えない。

ast-grep のインストールコマンド、課金、言語範囲、設置先ディレクトリは書かれていない。初回は読み取り専用の検索だけにする。リファクタの入口にしない。根拠のない項目は未知のままにし、操作を補わない。