AIにプログラムを作ってもらう前に、まず現状を知りたい。そんなときに使えるのがReport Firstです。
Report Firstは、プロジェクトの現状、課題、未確認事項を短く整理するSkillです。解決策を急いで出しません。人間が判断するための地図を先に作ります。
Report Firstを作った理由は、現状を俯瞰したかったから
AIに相談すると、すぐに修正案や実装方法が返ってきます。
それは便利です。ただ、何が起きているのかを十分に見ないまま、次の行動へ進んでしまうことがあります。
「自分は何を知っていて、何をまだ知らないのか」を一度整理したい。そう思って作ったのがReport Firstです。
最初から正しい答えを出すためではありません。判断する前に、現在地を見えるようにするためです。
私自身、最初は悩みをうまく言葉にできませんでした。作りたいもの、困っていること、まだ確かめていないことが、頭の中で一つの塊になっていたからです。
その失敗を図にすると、左側のような状態です。Report Firstでは、その塊を全体像・課題・未確認に分けます。すると、次に何を判断すればよいかが見えてきます。
AIにいきなり修正させると、問題を取り違えやすい
初心者がAIでプログラムを作るとき、最初に「ここを直して」「この機能を追加して」と頼みがちです。
しかし、見えている症状が原因とは限りません。
- どのファイルが実際に動いているのか
- いつから問題が起きているのか
- 期待する動作は何か
- まだ確認できていないことは何か
ここを整理しないまま修正すると、AIがもっともらしいコードを出しても、問題の中心から外れることがあります。
Report Firstは3つだけに分けて報告する
Report Firstの出力は、次の3つです。
1. 全体像
何があり、どうつながっているかを整理します。
2. 課題
現在わかっている問題や、目的とのズレを示します。
3. 未確認
まだ事実として確かめられていないことを分けます。
この3つを混ぜないことが大切です。推測を事実のように書かないためです。
Report Firstは修正案を出さない
Report Firstの役割は、判断の前段階までです。
- 実装しない
- ファイルを変更しない
- 公開しない
- 削除やデプロイをしない
- 解決策を勝手に決めない
人間は、レポートを見てから「何を優先するか」「どこまで直すか」「このまま進めるか」を決めます。
AIに任せる範囲を増やすほど、人間の判断を先に置くことが重要になります。
初心者向けの使い方
使い方は3段階です。
- Skillをインストールする
- 新しい会話でReport Firstを呼び出す
- レポートを見てから、人間が次の行動を決める
新しい会話で、次のように入力します。
/report-first
このプロジェクトを俯瞰してレポートしてください。
出力は「全体像・課題・未確認」の3つだけにしてください。
解決策、実装、質問は不要です。
Codexなど、Skill名を$で呼ぶ環境では、次の書き方もできます。
$report-first
このプロジェクトの現状・課題・未確認を整理してください。
具体例:ボタンが動かないとき
「ボタンを押しても動かない。JavaScriptを直して」と頼む前に、Report Firstを使います。
すると、次のような観点で確認できます。
- ボタンが表示されているファイル
- 読み込まれているJavaScript
- クリック時に実行される処理
- ブラウザにエラーが出ているか
- 本当に期待する動作が決まっているか
この結果を見てから、修正するのか、仕様を決め直すのかを人間が選びます。
Grill Meの前にReport Firstを使う
Grill Meは、目的や優先順位を質問で深掘りするSkillです。
ただし、質問に答えるための前提がまだ曖昧なことがあります。
そのときは、先にReport Firstを使います。
Report Firstで現在地を確認する
↓
全体像・課題・未確認を分ける
↓
人間が目的と優先順位を考える
↓
Grill Meで考えを深掘りする
「何が起きているかわからない」ときはReport First。
「何を作るべきか決めきれない」ときはGrill Meです。
Report FirstとGrill Meを使い分ける
Report Firstは、現状を俯瞰するためのSkillです。
Grill Meは、そのレポートを見たあとに、目的や優先順位を質問で深掘りするために使えます。
レポートを見て、目的や優先順位が決まっているなら、そのまま実装や検証へ進めます。
まだ判断に迷うなら、Grill Meで質問してもらいます。
CodexとClaude Codeへの入れ方
GitHubのattrip/attripthemaにあるreport-firstを、使うエージェントごとに入れます。対象リポジトリのルートで実行してください。
Codexの場合:
npx skills@latest add attrip/attripthema --skill report-first --agent codex -y
# 日本語なら「CodexにReport Firstを入れて」という意味
Claude Codeの場合:
npx skills@latest add attrip/attripthema --skill report-first --agent claude-code -y
# 日本語なら「Claude CodeにReport Firstを入れて」という意味
Codexは.agents/skills/report-first/、Claude Codeは.claude/skills/report-first/に入ります。Claude Codeで全プロジェクトから使う場合は、--globalを追加します。
インストール後、Codexは$report-first、Claude Codeは/report-firstを入力してください。
$report-first
# 日本語なら「このプロジェクトを俯瞰し、全体像・課題・未確認を整理して」という意味
Please map this project's current state.
Output only: Current State, Issues, and Unknowns.
Do not propose fixes or implementation yet.
SkillのソースはGitHubのReport Firstで確認できます。
最初に現状を知ると、AIとの分担が変わる
AIに最初から答えを出させるのではなく、まず現状を整理させる。人間は、その情報をもとに判断する。
この順番にすると、AIが勝手に問題を決める危険を減らせます。
プログラム初心者にとって、最初に覚えるべきAIへの頼み方は「作って」だけではありません。
まず、何が起きているかをReport Firstで整理して。






