【ITニュース解説】7 Slash Commands Worth Committing to Your Repo, With the Markdown File for Each
2026年10月20日に「Dev.to」が公開したITニュース「7 Slash Commands Worth Committing to Your Repo, With the Markdown File for Each」について初心者にもわかりやすく解説しています。
ITニュース概要
AIコーディングツールで繰り返し実行する作業を、Markdownファイルとしてリポジトリに共有可能なスラッシュコマンドに登録し、チーム開発を効率化する方法を解説。コードレビューやPR作成、バグ再現など7つの具体例と設定方法を紹介する。チーム全体の作業効率向上に役立つ。
ITニュース解説
ソフトウェア開発の現場では、人工知能(AI)を活用したコーディング支援ツールが急速に普及している。これらのツールは、開発者の作業を効率化する一方で、AIに繰り返し同じような指示(プロンプト)を入力するという新たな定型作業を生み出すことがあった。例えば、「このブランチの変更点をレビューしてほしい」「特定のバグを再現するテストを作成してほしい」といった指示は、日々何度もチーム内で繰り返される。このような状況を解決し、AIエージェントの利用をよりスムーズにするための工夫として、「スラッシュコマンド」が注目されている。
スラッシュコマンドとは、AIコーディングツール内で /コマンド名 の形式で呼び出せる、あらかじめ定義された指示のことである。これらのコマンドは、Markdownファイルというシンプルなテキスト形式で記述され、プロジェクトのリポジトリ(ソースコードなどのファイルを管理する場所)にコミット(変更を記録)することで、チーム全体で共有し、再利用できるようになる。これにより、メンバーは毎回同じ指示を打ち込む手間を省き、AIエージェントに正確かつ一貫したタスクを依頼できるようになるのだ。
主要なAIコーディングツールの一つであるClaude Codeでは、.claude/commands/ ディレクトリ内にMarkdownファイルを配置することで、スラッシュコマンドを作成できる。例えば、review-branch.md というファイルを置けば、/review-branch というコマンドが利用可能になる。これらのコマンドファイルは、Markdownの本文部分にAIへの具体的な指示を記述し、そのファイルの冒頭には「フロントマター」と呼ばれるメタデータ(付加情報)を記述する。フロントマターには、コマンドの簡単な説明(description)、引数のヒント(argument-hint)、そして最も重要な点として、AIがコマンド内で実行を許可されるツール(allowed-tools)を指定できる。特に、allowed-tools は、AIが勝手に予期せぬシェルコマンド(OSに直接指示を与えるコマンド、例えば git status など)を実行してしまうリスクを防ぐために重要である。
また、コマンドには $ARGUMENTS というプレースホルダーを含めることで、コマンド呼び出し時にユーザーが与える引数を受け取ることができる。さらに、プロンプトの中に ! で始まる行を記述すると、AIがプロンプトを見る前にその行がシェルコマンドとして実行され、その出力結果がプロンプトの中に挿入される機能もある。ただし、セキュリティ上の理由から、ユーザーが入力した $ARGUMENTS をこの ! 行のシェルコマンドの中に直接含めることは避けるべきだ。最近では、コマンドファイルとは別に「スキル」という概念も導入され、.claude/skills/<name>/SKILL.md のようにディレクトリ構成を持つスキルが推奨されている。これは、スキルに関連する他のファイルも同じフォルダ内にまとめられるためだが、従来のコマンドファイルも引き続き機能する。
OpenAIのCodexでも、同様にカスタムプロンプト(スキル)の機能が提供されている。以前はローカル環境に保存する形式だったが、現在は .agents/skills/<name>/SKILL.md のパスに配置することで、リポジトリを通じてチーム間で共有できるスキルとして管理することが推奨されている。Codexのスキルも、特定のポリシーを設定することで、AIが自動的にそのスキルを呼び出すことを防ぎ、ユーザーが明示的に呼び出す場合に限定できる。これは、AIが意図しない行動を取ることを防ぐ安全策として重要だ。
記事では、特に利用頻度の高い7つのスラッシュコマンドの例が紹介されている。これらは大きく3つのカテゴリに分けられる。
一つ目は「読み取りのみ」のコマンドで、AIが自律的に状況を判断して呼び出しても安全なものだ。例えば、/review-branch はブランチの変更内容をレビューし、バグや不足しているテストを報告する。/explain-diff は、特定の差分(変更点)をファイルごとに平易な言葉で説明し、コードレビューを助ける。/pr-body は、プルリクエスト(自分の開発ブランチでの変更をメインのブランチに統合してもらうための提案)の本文を自動で作成してくれる。これらはコードの変更を伴わないため、AIが自律的に判断して実行しても問題がない。
二つ目は「エージェントが事前に確認を要する」コマンドで、コードの生成や変更を伴うため、AIが自律的に呼び出すことを禁止する設定(disable-model-invocation: true)がされている。/test-first は、新しい機能や振る舞いを実装する前に、まずそれを満たさない「失敗するテスト」を書き、その後でテストをパスさせる最小限のコード変更を行うという、テスト駆動開発のプラクティスを支援する。/repro-bug は、報告されたバグを再現するテストやスクリプトを作成し、実際にバグが再現されることを確認してから、その修正案を提案するという手順を踏ませることで、不確実な修正を避ける。これらのコマンドは、AIにコード変更を許可する前に、人間による確認のステップを強制することで、誤った変更を防ぐ。
三つ目は「ブランチの終了処理」に関するコマンドで、これらもAIの自律的呼び出しは禁止されている。/changelog-entry は、プロジェクトの変更履歴ファイル(CHANGELOG.md)に、現在のブランチでの変更内容を追記する。/cleanup-worktree は、マージ済み(他のブランチと統合済み)の作業用ブランチと、それに対応するワークツリー(作業ディレクトリ)を安全に削除する。このコマンドには、意図しないファイル削除を防ぐための複数の安全装置が組み込まれており、AIが勝手に重要なファイルを削除するリスクを極力排除している。
これらのスラッシュコマンドは、作成後にGitリポジトリにコミットすることで、チームのすべてのメンバーがすぐに利用できるようになる。これにより、チーム全体の開発プロセスが標準化され、AIエージェントの活用効率が大幅に向上する。さらに、Hermes IDEのような統合開発環境(IDE)は、これらのコマンドを一覧表示し、クリック一つで呼び出せる機能を提供することで、コマンドの発見性と利便性を高めている。これにより、開発者はコマンド名を覚える必要なく、必要な時に必要なAIの助けを借りることができる。
このように、スラッシュコマンドは、AIコーディングエージェントの能力を最大限に引き出し、開発チームの生産性とコード品質を向上させるための強力な手段となる。定型的なタスクをAIに任せつつ、重要な決定や変更には人間の確認を挟むという安全なワークフローを構築することで、AIを開発プロセスに効果的に組み込むことができるのだ。