removing-comments について
明確な範囲を定めてコードコメントを削除するワークフロースキルです。独立したレビューを必須とし、コメントだけの削除とユーザー承認が必要な変更を分けます。
主な機能
- 01対象ファイル範囲の明確化
- 02コメントの独立レビュー
- 03編集前のレビュー結果検証
- 04自動削除と承認必須の変更の分離
- 05最終差分の確認と関連チェック
活用シーン
- 01指定ファイルから不適切なコメントを削除
- 02ソース編集前にコメントの指摘を確認
- 03コメント変更と残作業の報告
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ bostonaholic/ skills --skill removing-commentsインストール後、Claude Code で/removing-commentsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/reviewer.mdscripts/changed-files.shcheck-report.mjsshared/code-comments.mdfindings.mdindependent-review.md詳細
コメントなし
- コードコメントのルールで残さないことになっているコメントをすべて削除します(指摘事項には指摘事項の形式を使用します)。
- コメントだけの削除のみを自動で行います。それ以外の変更は、ユーザーの承認を待ちます。
- このコマンドは追跡対象のソース編集を許可するものです。コメントを含む差分があるからといって、このコマンドの実行を推測してはいけません。
対象範囲
- リクエストでファイル、ディレクトリ、コミット範囲、ブランチ、または PR が指定されている場合は、データとして扱います。
- 対象範囲を一度だけ解決し、リポジトリ外にスコープファイルを作成します。各行には、リポジトリルートからの相対パスで既存ファイルを1つ記載します。すべてのレビューと編集をその範囲内に保ち、指摘事項が範囲外を指していても、対象範囲を広げてはいけません。
- 対象範囲が指定されていない場合は、リポジトリ内で
"<skill-dir>/scripts/changed-files.sh" > <scope>を実行します。このスクリプトはフェッチを行わないため、origin/<base>が古い可能性がある場合は、先にgit fetch origin <base>を実行します。終了コードが1の場合は、標準エラー出力をそのまま伝えて終了します。終了コードが2の場合は、使用方法の誤りです。このスクリプトは引数を取りません。対象範囲が空の場合は、何も行わずに正常終了します。 - レビュー前の作業ツリーの状態を記録し、変更を元に戻せるようにします。
レビュー
- 分類は独立したレビュアーが行います。レビュアー向けブリーフを、新しいコンテキストのサブエージェントで実行します。この会話をフォークしたサブエージェントは使用せず、独立レビューのルールに従い、読み取りと検索のツールのみを使用します。
- スコープファイルのパスとブリーフでリンクされているファイルを渡します。作成者の議論や、提案する判定は渡しません。
- そのようなサブエージェントを実行できない場合は、実行できないことを伝えて終了します。
レビュアーの返答をリポジトリ外のファイルに保存し、node "<skill-dir>/scripts/check-report.mjs" <scope> < <report> を実行します。
-
終了コード0:標準出力は指摘事項の JSON です。それに基づいて適用します。
-
終了コード1:レポートは無効です。標準エラー出力の各
invalid行に、満たされていない契約が示されます。 -
終了コード2:標準エラー出力をそのまま伝えて終了します。
-
このスクリプトは証拠の重み付けや作業ツリーの確認ができないため、証拠が分類を裏付けていないレポートや、レビュアーが何かを変更したレポートも却下します。
-
却下した場合は、満たされていない契約をそれぞれ明記して、新しいレビュアーを1回実行します。2回目のレポートも無効な場合は、指摘事項を適用せずに終了します。
適用
removeCommentOnlyのコメントをそれぞれ削除します。keepのコメントは変更せずに残します。- すべての
removeRootCauseとencodeの指摘事項を、名前を付けた1つのセットとして提示し、承認を求めます。- 承認された場合、根本原因に関する指摘事項ごとに、そのコメントが回避しようとしている挙動を再現し、原因を修正するための最小限の対象範囲内の修正を行って検証した後、コメントを削除します。エンコーディングに関する指摘事項はそれぞれ実装し、コメントを削除します。承認されたセット以外の変更は加えません。
- 拒否された場合、または承認を得られない場合は、それらのコメントを残し、各根本原因を未修正、各制約を未適用として報告します。
- 最終差分を確認して対象範囲外の変更がないことを確かめ、コード、型、テスト、Lint、または CI の編集すべてを対象とする、最も範囲の狭いプロジェクトチェックを実行します。
レビュー済み、削除済み、維持、エンコード済み、未適用、未修正のコメント数に加えて、レビュアーの再試行回数、実行したチェック、未解決の対象範囲外作業を報告します。読み取り専用の制限がツールの権限ではなくレビュアー向けプロンプトによるものだった場合は、その旨を1行で伝えます。コミット、プッシュ、プルリクエストの作成は行いません。
コメント
Markdown 対応