🌿 えふてぃブログ

Claude Code CLIのカスタムコマンドでブログ記事の品質チェックを効率化した話


こんにちは、えふてぃです。

雑多なブログや技術ブログも投稿する中で、これあってるんだっけ?と思うことが多々あります。

情報が間違ってしまうことはなるべく減らしたい。

特に技術記事では、バージョンアップで仕様が変わったり、非推奨になった機能があったりして、記事の信頼性に関わる問題になります。

でも毎回の記事で1から精査すると結構な作業日数になってしまう。

ということでClaude Codeのカスタムコマンド機能を使って、記事の事実確認を自動化する仕組みを作ってみました。

この記事では、その実装方法と使い方を詳しく紹介したいと思います。

改めてClaude Codeのカスタムコマンドとは

Claude Codeには、.claude/commands/ ディレクトリに独自のコマンドを定義できる機能があります。
マークダウン形式でコマンドの動作を記述するだけで、/コマンド名 で呼び出せるようになります。

📝 カスタムコマンドの基本
  • .claude/commands/ 配下にマークダウンファイルを配置
  • ファイル名がコマンド名になる(例: fact-check.md/fact-check
  • プロンプトとして機能し、Claudeにタスクを指示できる

ブログ品質チェックコマンドの設計

今回作成した /fact-check コマンドは、以下のような設計になっています。

チェック対象

記事の種類に応じて、検証すべき事実を変えています:

技術記事の場合:

  • バージョン番号、リリース日
  • APIの仕様、コマンドの構文
  • ツールやフレームワークの機能
  • 環境情報、互換性

雑記記事(お酒・映画)の場合:

  • 製品名、生産地、メーカー
  • 公開年、監督、出演者
  • 価格帯、アルコール度数
  • 格付け、認定情報

一般的な事実:

  • 統計データ、数値
  • 歴史的な出来事、日付
  • 引用や参照

検証の優先順位

すべての情報を検証していると時間がかかるので、優先順位を設定しました:

高優先度(必ず検証):

  • 技術的な仕様、バージョン番号
  • コマンドやコードの構文
  • 製品の正式名称
  • 数値データ(度数、価格など)

中優先度(できれば検証):

  • 歴史的背景
  • 一般的な知識
  • 業界の慣習や傾向

低優先度(検証不要な場合も):

  • 個人的な体験や感想
  • 主観的な評価
  • 「〜だと思います」など、意見として明記されている内容

実装方法

ファイル構成

.claude/
└── commands/
    └── fact-check.md

fact-check.mdの中身

カスタムコマンドは、以下のような構成になっています:

# ブログ記事ファクトチェックコマンド

あなたはブログ記事の事実確認を行うアシスタントです。

## 引数

ユーザーから提供される記事のファイルパス: $ARGUMENTS

## 手順

1. **記事ファイルを読み込む**
   - 指定された記事ファイルを読み込む
   - 記事の種類(技術記事・雑記記事・ショート)を判断する

2. **検証すべき事実をリストアップする**
   - 技術記事の場合:
     - バージョン番号、リリース日
     - APIの仕様、コマンドの構文
     - ツールやフレームワークの機能
     - 環境情報、互換性
   - 雑記記事(お酒・映画など)の場合:
     - 製品名、生産地、メーカー
     - 公開年、監督、出演者
     - 価格帯、アルコール度数
     - 格付け、認定情報
   - 一般的な事実:
     - 統計データ、数値
     - 歴史的な出来事、日付
     - 引用や参照

3. **Web検索で事実を確認する**
   - 各事実について、WebSearchツールを使って検証する
   - 公式ドキュメント、公式サイトを優先的に参照
   - 複数の情報源で確認する
   - 最新の情報かどうか確認する

4. **結果を出力する**
   - 検証した事実を分類して出力
   - 修正が必要な箇所を優先度付きでまとめる

## 検証の優先順位

**高優先度(必ず検証)**
- 技術的な仕様、バージョン番号
- コマンドやコードの構文
- 製品の正式名称
- 数値データ(度数、価格など)

**中優先度(できれば検証)**
- 歴史的背景
- 一般的な知識
- 業界の慣習や傾向

**低優先度(検証不要な場合も)**
- 個人的な体験や感想
- 主観的な評価
- 意見として明記されている内容
💡 $ARGUMENTSの活用

$ARGUMENTS を使うことで、コマンド実行時に渡された引数(この場合はファイルパス)を受け取れます。
例: /fact-check src/content/blog/2025/10/example.mdx

出力フォーマット

検証結果は、以下のようなフォーマットで出力されます:

## ファクトチェック結果

**記事**: [記事タイトル]
**記事タイプ**: [技術記事/雑記記事/コラム]
**検証日**: [YYYY-MM-DD]

---

### ✅ 正確な情報
1. **事実内容**: Node.jsのバージョンは20.x
   - **検証結果**: 正確
   - **情報源**: https://nodejs.org/

### ⚠️ 要確認の情報
1. **事実内容**: Astroのバージョンは3.0.0
   - **検証結果**: 要確認
   - **理由**: 現在の最新バージョンは4.0.0
   - **推奨対応**: バージョン番号を更新

### ❌ 不正確な情報
(該当する場合のみ表示)

### 🔍 検証不可の情報
(該当する場合のみ表示)

実際の使い方

基本的な使い方

記事を書き終えたら、以下のコマンドを実行:

/fact-check src/content/blog/2025/10/your-article.mdx

Claudeが記事を読み込み、事実確認が必要な箇所を自動的に抽出してWeb検索で検証してくれます。

実際に使ってみた例

例えば、Astroに関する技術記事を検証した時の結果がこちら:

👤

/fact-check src/content/blog/2025/10/astro-dark-mode.mdx

ファクトチェック結果

記事: Astroでダークモード実装ガイド
記事タイプ: 技術記事
検証日: 2025-10-26


✅ 正確な情報

  1. 事実内容: Astroのバージョンは4.0.0

⚠️ 要確認の情報

  1. 事実内容: prefers-color-schemeの対応ブラウザは95%以上
    • 検証結果: 要確認
    • 理由: 2025年10月現在、Can I Useによると対応率は約96.5%
    • 推奨対応: 数値を更新するか、「ほぼすべてのモダンブラウザ」といった表現に変更

📊 総評

正確な情報: 8件
要確認の情報: 1件
不正確な情報: 0件
検証不可の情報: 0件

総合評価: 概ね正確

コメント: 全体的に情報は正確です。1件の要確認事項については、最新の統計に更新することをお勧めします。

🤖

このように、具体的な修正案まで提示してくれるので、すぐに対応できます。

工夫したポイント

1. 記事の種類を自動判定

技術記事とお酒の記事では、検証すべき内容が全く違います。
そこで、記事のカテゴリーや内容から自動的に判定し、適切なチェック項目を選択するようにしました。

2. 検証不可の情報も明示

Web検索で見つからない情報や、個人的な体験談については「検証不可」として明示します。
これにより、「情報源がない=削除すべき」ではなく、適切に判断できるようになりました。

3. 修正の優先順位を提示

すべての指摘を同じ重要度で扱うと、どこから手を付ければいいか分からなくなります。
そこで、「優先度: 高・中・低」に分類し、修正すべき順番を明確にしました。

実際に使ってみて良かったこと

メリット

  1. 記事の信頼性が向上した

    • バージョン番号の間違いや古い情報をすぐに発見できる
    • 技術記事を書くときに最新の仕様との差を把握
  2. 確認作業の時間が大幅に短縮

    • 手動で検索して確認していた作業が自動化された
    • 複数の記事を一括でチェックできる
  3. 見落としが減った

    • 人間が見落としがちな細かい数値の誤りも発見してくれる
    • 参考リンクの妥当性も確認できる
  4. 知らなかったことが知れて面白い

    • 技術記事なら違う実装方法が存在すること
    • 雑多記事では自分の知らない細かい情報や背景を知れて楽しい

改善の余地

一方で、以下のような課題もあります:

  1. Web検索の精度に依存する

    • 日本語の情報が少ない場合、検証が難しい
    • 最新すぎる情報は検索結果に出てこないことがある
  2. 個人的な体験談の扱い

    • 「〜だと感じました」のような主観的な内容は検証不要だが、それを自動判定するのは難しい
  3. 検証の粒度

    • すべての文を検証すると時間がかかる
    • どこまで細かくチェックするかのバランスが重要

まとめ:ブログの品質を保つために

Claude Codeのカスタムコマンド機能を使って、ブログ記事の品質チェックを自動化する方法を紹介しました。

ポイント:

  • カスタムコマンドは .claude/commands/ に配置するだけで作成できる
  • 記事の種類に応じて検証内容を変えることが重要
  • 優先順位を付けることで、効率的に修正できる
  • 検証不可の情報も明示することで、適切な判断ができる

技術記事やおすすめ記事、レビュー記事など、事実確認が必要な記事を書いている方は、ぜひ試してみてください。
記事の信頼性が向上し、さらに知らない新しい発見も見つけることができるかもです。


このブログが面白いと思った方は、是非とも下のボタンをクリックして、記事シェアやフォローをしていただけると嬉しいです!

この記事をシェア: はてブ

📚 関連記事

【第2章】Meta タグとOGP設定でSNSシェアを最適化!Astroブログで実装してみた

【第2章】Meta タグとOGP設定でSNSシェアを最適化!Astroブログで実装してみた

SEO対策の第2章として、Meta タグとOGP設定をAstroブログに実装してみました。検索結果やSNSシェアの見栄えを改善する方法を、実際のコード例と試行錯誤のプロセスを交えて解説します。

技術
【第1章】SEO対策とは?個人ブログ開発者が検索順位を上げるために調べた4つの施策

【第1章】SEO対策とは?個人ブログ開発者が検索順位を上げるために調べた4つの施策

SEO対策って何をすればいいの?と思って調べてみた話をまとめました。検索エンジンで上位表示されるために重要な4つの施策(コンテンツ最適化、技術的SEO、UX、外部対策)とGoogleの評価基準(E-E-A-T)を解説します。

技術 ショート
Claude Code CLIのカスタムコマンドでブログ運営を効率化する方法

Claude Code CLIのカスタムコマンドでブログ運営を効率化する方法

Claude Code CLIのカスタムコマンドで、記事作成からレビューまで自動化したら爆速になった!実際に作った「ブログ作成を支援」「ブログのレビュー」コマンドのコードと使い方を全部公開。ブログ運営を効率化したい人におすすめです。

技術
Astroブログでダークモード実装してみた話【FOUC対策からアクセシビリティまで】

Astroブログでダークモード実装してみた話【FOUC対策からアクセシビリティまで】

Astroブログにダークモード実装した時にぶつかったFOUC問題、LocalStorageとの連携、アクセシビリティ対応まで、実際に躓いたポイントと解決方法を全部コード付きで解説します。個人開発でダークモード入れたい人は必見です!

技術