保守しやすいコードコメント・docstring生成

半年後の担当者が困らない適切な粒度と形式でコメントを統一する

プロンプト · 変数 3個

あなたは他人が書いたコードを頻繁に引き継ぐ開発者です。コメントを付ける基準は「半年後にこのコードを初めて開いた人が何を知っておくべきか」です。

以下のコードは{{言語}}で書かれており、コメントは{{注釈の形式}}で統一したいと考えています。

コードを読み、適切なコメントを追加してください。コード自体は1文字も変更せず、コメントのみを追加した全体のコードをそのまま出力してください。

コメントには、コードを読めば分かることではなく、コードだけでは意図が分からない背景情報を記述してください。例えば割引額を計算する行に「割引額を計算する」と書くのではなく、「クーポン割引は決済金額の30%を上限とする(仕様上の上限)」のように、なぜその値や処理になっているのかを記載してください。関数の説明には、何を受け取って何を返すか、例外時にはどのような挙動になるかを含めてください。

すべての行にコメントを付けないでください。ビジネスロジックの判断が入っている箇所、例外を処理している箇所、将来修正する際に注意が必要な箇所にのみ記載してください。コードを読んでも理由が分からず推測するしかない部分は、コメントにするのではなく最後に「確認が必要な箇所」として箇条書きでまとめてください。

コード: """ {{コード}} """

コピーしたらここに貼り付け · ChatGPT・Claudeはプロンプト入りで開きます ChatGPTで開く ↗Claudeで開く ↗Geminiで開く ↗ ビルダーで編集 授業用カード画像を保存

このプロンプトには個人情報が入りうる変数があります。実名・番号・会社名は仮名に置き換えてください。

なぜこう書くのか

役割
あなたは他人が書いたコードを頻繁に引き継ぐ開発者です。コメントを付ける基準は「半年後にこのコードを初めて開いた人が何を知っておくべきか」です。
文脈
以下のコードは{{言語}}で書かれており、コメントは{{注釈の形式}}で統一したいと考えています。
課題
コードを読み、適切なコメントを追加してください。コード自体は1文字も変更せず、コメントのみを追加した全体のコードをそのまま出力してください。
例示
コメントには、コードを読めば分かることではなく、コードだけでは意図が分からない背景情報を記述してください。例えば割引額を計算する行に「割引額を計算する」と書くのではなく、「クーポン割引は決済金額の30%を上限とする(仕様上の上限)」のように、なぜその値や処理になっているのかを記載してください。関数の説明には、何を受け取って何を返すか、例外時にはどのような挙動になるかを含めてください。
制約
すべての行にコメントを付けないでください。ビジネスロジックの判断が入っている箇所、例外を処理している箇所、将来修正する際に注意が必要な箇所にのみ記載してください。コードを読んでも理由が分からず推測するしかない部分は、コメントにするのではなく最後に「確認が必要な箇所」として箇条書きでまとめてください。
入力資料
コード: """ {{コード}} """

コードへのコメント付けをAIに任せると、多くの場合は全行に機械的なコメントが付いてしまいます。total = sum(...) の上に「合計を計算する」と付くような形です。間違いではありませんが、コードを自然言語で言い直したに過ぎず、ファイルが冗長になるだけで「なぜ30%なのか」といった本質的な理由は書かれません。このプロンプトはコメントの内容だけでなく、コメントを付与すべき場所の基準を定義します。

例示をプロンプト内に直接含めている点がその工夫です。「意味のあるコメントを付けてください」という曖昧な指示では出力が変わりません。悪い例と良い例を対比して示すことでAIが基準を理解し、他の行に対しても適切な密度でコメントを付与します。

制約は2つの方向から設定しています。「コードは1文字も変更しないでください」と指定しないと、AIはコメントを付けながら変数名を勝手に変更したり、条件分岐をリファクタリングしたりしてしまいます。コメント追加の差分だけを確認したいのに、コード変更が混ざるとレビューが難しくなります。「すべての行に付けないでください」で過剰なコメントを防ぎ、「確認が必要な箇所」リストを設けることで、AIが仕様を勝手に推測して不正確なコメントを書くことを防ぎます。

コメントの形式をスタイル名で指定することも重要です。指定がないと、ある関数には詳細なパラメータ表が付き、別の関数には1行説明しか付かないといったブレが生じますが、形式名を明示することでファイル全体の統一感を保てます。コードを """ で囲むのは、コード内にすでにあるコメントがAIへの指示として誤認されないようにするためです。

用語が分からなければAha AIで: few-shot, output-format

悪い例との比較

よくある悪い例

このコードにコメントを付けて

(コードを貼り付け)

ほぼすべての行に当たり前のコメントが付いて返ってきます。コードをそのまま日本語に翻訳しただけのものが多く、かえってコードが読みづらくなります。さらに、コメントを付ける過程で変数名やインデントが意図せず変更されていることも多く、差分に気づかないままコミットしてしまうリスクがあります。

バリエーション

既存コメントとコードの乖離をチェックする時

既存コメントとコードの乖離をチェックする時

以下の{{言語}}コードには既にコメントが記載されています。コードとコメントを照合し、現在のコードの実装と合致していないコメントのみを抽出してください。「該当箇所・コメントの記載内容・コードの実際の挙動・修正案のコメント」の表形式で整理し、問題のないコメントは表に含めないでください。

""" {{コード}} """

古いコメントはコメントがない状態よりも危険です。新規に書き直させるのではなく差分照合に限定することで、正しいコメントまで書き換えられるのを防ぎます。

引き継ぎ用のファイル冒頭説明を作成する時

引き継ぎ用のファイル冒頭説明を作成する時

以下の{{言語}}コードを引き継ぐ人のために、ファイルの最上部に配置する説明文を{{注釈の形式}}で作成してください。このファイルが担う役割、前提としている値や状態、改修時に合わせて確認すべき関連箇所を順番に記載し、10行以内に収めてください。

""" {{コード}} """

関数単位のコメントではなくファイル単位の概要が必要な場合に使用します。行数を制限することで、コード内容の過剰な要約になるのを防ぎます。

モデル別の注意

ファイル全体を一度に入力すると後半の関数のコメントが短くなりがちです。関数を5〜6個ずつに分けて入力し、形式の指定を毎回添えてください。

コード全体を再出力させると、長いファイルでは後半が途切れたり途中が「…省略」となったりすることがあります。その場合は関数を5〜6個ずつに分けて投入するか、全体コードではなく「コメント内容と付与する行・場所」のみを表形式で出力させて手動で適用する方が安全です。

関連プロンプト

最終更新 2026-09-02 · 誤りがありますか? 知らせる