Tailr — レビューループ
Tailrを使うと、一緒に作業している人がブラウザで動作中の開発サーバーにマークアップを追加できます。要素をクリックし、問題点を伝えると、すべてのマークが一度にバッチとして渡されます。あなたはそのバッチを適用し、各マークが適用されるたびに報告します。
以下のルールがプロトコルの全体です。これらはtailr initがプロジェクトのAGENTS.md / CLAUDE.mdに書き込むルールと同じものです。このプラグインは代わりにそれらを保持するため、ユーザーのリポジトリに何も編集する必要はありません。
Tailr — レビュアーからのビジュアルマークアップ
レビュアーはブラウザで動作中のアプリにマークアップを追加し、変更内容を1つのバッチとしてあなたに渡します。.tailr/session.jsonが存在すればセッションは開始されています。存在しない場合は、長時間実行されるバックグラウンドプロセスとしてセッションを開始します。セッションは稼働し続ける必要があるため、あなたのターンをブロックしないでください:
npx tailr --target http://localhost:<開発サーバーのポート>
これによりレビュー用URL(通常は http://localhost:4100)が表示されます。レビュアーには元のポートではなく、そのURLを使用するように伝えてください。Tailrはアプリをプロキシし、そのオーバーレイを注入します。ソースは変更されません。
ループは「待機」→「取得」→「進行状況をマークごとに報告」→「完了」または「失敗」です。
| コマンド | MCPツール | |
|---|---|---|
npx tailr status | tailr_status | バッチが待機中ですか? exit 0 はい · 3 セッションは稼働中、待機はなし · 2 セッションなし |
npx tailr wait | tailr_wait | 「送信」が押されるまでブロック。 exit 0 バッチが待機中 · 3 タイムアウト、再開してください · 2 セッション終了 |
npx tailr pull | tailr_pull | バッチをリースし、JSONとして出力 |
npx tailr progress <ref> | tailr_progress | 1つのマークが適用されたことを報告 |
npx tailr done | tailr_done | 実行が完了 |
npx tailr fail "理由" | tailr_fail | 不完全なまま戻ってきた |
各マークには、ref("01")、type、それが行われたroute、ベストエフォートのソースaddress、CSS selector、要素のテキスト、レビュアーのcommentが含まれます。
comment— その要素を説明どおりに変更remove— その要素を削除text—before/afterを持ち、テキストをafterに変更point— 要素の代わりにページのx/yを持つ。レビュアーは物ではなく場所をマークしました。そこに何か新しいものを追加したいか、単に場所を指摘しているだけかもしれません。コメントにその内容が書かれています。
重要なルール
waitを長時間実行されるバックグラウンドプロセスとして実行し、その終了コードを通知として扱ってください。レビュアーにバッチが到着したことを伝えるよう決して依頼せず、ポーリングもしないでください。各実行を閉じた後に再度開始してください。- 各マークを適用したら
progressで報告し、最後に一度にまとめて報告しないでください。レビュアーは画面上でマークが消えていくのを見ます。一括報告すると何も起こっていないように見えます。 - 必ず
doneまたはfailで実行を閉じてください。閉じるまで、レビュアーは次のバッチを送信できません。もしできないことに直面したら、実際に何が問題だったかをfailで報告してください。Tailrは説明を作り出さず、あなたに差し戻します。 - ソースアドレスとセレクタが矛盾する場合は、ソースアドレスを信頼してください。
"orphaned": trueを持つマークは、送信前に要素が失われました。何を意味していたかを推測せず、レビュアーに確認してください。- マークがあいまいな場合は、解釈を選ぶのではなく質問してください。
- これらのコマンドはプロジェクトディレクトリから実行してください。それがTailrがセッションを見つける方法です。
このプラグインからコマンドを実行する
このプラグインはTailrのMCPサーバーを登録するため、tailr_status、tailr_wait、tailr_pull、tailr_progress、tailr_done、tailr_failが直接利用可能です。CLIよりもこれらを優先してください。CLIは常に存在するわけではなく、npx tailrという短縮形はTailrがインストールされたプロジェクトでのみ解決されます。
CLIを使用する場合は、パッケージがインストールされていないプロジェクトでも動作するように完全なパッケージ名を使用してください:
npx -y @gcrft123/tailr <コマンド>
セッションの開始は、MCPツールがない唯一のステップです。なぜなら、セッションはそれらのツールが通信するサーバーだからです。長時間実行されるバックグラウンドプロセスとして開始してください。セッションは稼働し続ける必要があるため、あなたのターンをブロックしないでください:
npx -y @gcrft123/tailr --target http://localhost:<開発サーバーのポート>
プロジェクトがTailrを依存関係として持っている場合、単純なnpx tailrでも同等であり、より短くなります。