Claude Codeを毎日使っていると、ある時点で気がつきます。「同じような指示を、何度も書いてないか」と。私の場合、SEO記事の下書きを依頼する時の前置きが、いつも似たような3段落になっていました。

これを1つの合言葉で済ませられるのが、カスタムスラッシュコマンドの仕組みです。

同じ指示を毎日打つのが面倒になった

仕事の中で繰り返し出てくる指示というのは、案外多いものです。

私の例で言うと、記事の構成案を出させる、議事録を整える、提案書のドラフトを起こす。やる中身はその都度違いますが、最初の指示部分はほぼ同じ文章を書いていました。Claude Codeへの最初の数行を毎回タイプする時間は、合計で意外と長い。

これを /article と打つだけで呼び出せたら、と思ったのが、自作コマンドに手を出したきっかけです。

.claude/commands/ に置くだけで使える

仕組みは拍子抜けするほどシンプルです。プロジェクト直下に .claude/commands/ というフォルダを作り、その中に xxx.md というファイルを置く。これで /xxx というスラッシュコマンドがClaude Codeに認識されます。

中身は、AIに伝えたい指示文を普通の文章で書くだけ。プログラムを書く必要はありません。

ファイル名がそのままコマンド名になる、という直感的な作りです。article.md/articlereview.md/review といった具合に。

最初の1つを作る手順

実際に作るとこんな流れです。

  1. プロジェクト直下に .claude/commands/ フォルダを作る
  2. その中に kakku.md (たとえば「家計簿の集計」コマンド) を作る
  3. ファイルの中に「やってほしいこと」を文章で書く
  4. Claude Codeを開き直して /kakku と打つ

ファイルの中身は、人間に頼む時の指示を書くつもりで構いません。「銀行のCSVを読み込み、月ごとの支出をカテゴリ別に集計し、表でまとめる」のように、目的・前提・出力形式を順に書くと、AIが迷わずに動きやすくなります。

最初は短くてOKです。動かしながら、足りない指示を追記していくと、コマンドが育っていきます。

引数を受け取らせる

応用としては、コマンドに引数を渡せます。たとえば /kakku 2026-04 と打って、ファイル内で 2026-04 を受け取って処理する、という使い方。

引数を使うかどうかで、汎用性が大きく変わります。月や対象ファイルを変えるだけで同じ作業を回したい場面では、引数対応のコマンドにしておくと、何度でも使い回せます。

私は記事制作の /article コマンドに、対象キーワードを引数で渡すように作りました。「/article claude code wsl のように呼べば、そのキーワードでKW調査から執筆まで一気通貫」というイメージです。

チーム共有とプロジェクト固有の使い分け

カスタムコマンドの保存場所には2種類あります。

プロジェクト直下の .claude/commands/ に置けば、そのプロジェクトの全員(リポジトリに入っている人)が使えます。チームで共通の手順を持ちたい時はこちら。Gitにコミットして共有します。

自分のホームディレクトリ配下に置けば、自分のあらゆるプロジェクトで使える個人用コマンドになります。プロジェクトをまたいで使いたい汎用コマンドはこちら向き。

私の場合は、メディア固有の /article はプロジェクトに、雑用の /translate のような個人ユースはホームに、と分けています。

私が作って効いたコマンド

参考までに、私のリポジトリで稼働しているコマンドをいくつか紹介します。

/article — KW調査からmicroCMSへの投入までを一括で進めるコマンド。これがいちばん時間を削ってくれました。記事1本にかかる初動コストが、体感で半分以下になりました。

/planning — 新しい事業企画の検討を始める時の、論点リスト出しコマンド。考え始める前の「何を考えるか」が固まっている状態でスタートできるのが大きい。

スキルという別の機能との違いは、別記事にまとめてあります。

まとめ

  • カスタムスラッシュコマンドは .claude/commands/xxx.md を置くだけで作れる
  • ファイル名がそのままコマンド名になる
  • 中身はAIへの指示を文章で書くだけ、プログラム不要
  • 引数を渡せるので、同じ手順を使い回せる
  • プロジェクト共有用とホーム配下の個人用で使い分ける
  • 繰り返し打っている指示こそ、最優先でコマンド化すると効く