Claude Codeのカスタムコマンドでnote用記事を自動生成する
はじめに
当社では、ここ数年、オウンドメディアとして自社サーバ上でTechblogを運営しています。
ここ最近、AIサーチへの対応やリーチ拡大を目的として、日本のブログプラットフォーム「note」への記事展開を検討してきました。
Techblogのデプロイ時にCI/CDの機能で、あわあせてnote側に自動的に転載ができるような動きが良いのですが、noteには公式APIのようなものがありません。
また、単純に同じ記事をコピーするとSEOやAIサーチにペナルティが発生する可能性があります。
そこで、Techblog記事の要約版を自動生成し、内容チェックとnoteへの掲載を人力で行い、詳細はTechblogに誘導するという方針を採用しました。
この要約記事の作成を効率化するために、Claude Code CLIのカスタムコマンド機能を活用したプロジェクトを構築しました。
Claude Code CLIとは
今更、説明不要かもですが
Claude Code CLIは、Anthropic社が提供するClaude AIをコマンドラインから利用できるツールです。対話形式でコードの生成や修正、ファイル操作などを行うことができます。
特に注目すべき機能として、カスタムスキル Skillsがあります。これは、よく使う処理をコマンドとして定義しておき、簡単に呼び出せるようにする機能です。
カスタムコマンドによる効率化
今回のプロジェクトでは、/generate-note というカスタムコマンドを作成しました。
ディレクトリ構成
techblog2note/
├── .claude/
│ └── skills/
│ └── generate-note/
│ └── SKILL.md # カスタムコマンド定義
├── NOTE_GENERATION_GUIDE.md # note記事生成のガイドライン
├── output/ # 生成されたnote記事の出力先
└── CLAUDE.md # プロジェクト全体の指針
SKILL.mdの内容
.claude/skills/generate-note/SKILL.md にコマンドの定義を記述します。
---
name: generate-note
description: Techblog記事からnote用のサマリー記事を生成します
argument-hint: [記事フォルダ名]
allowed-tools: Read, Write, Glob
---
フロントマターでコマンド名、説明、引数のヒント、使用可能なツールを定義します。
その後に処理手順を自然言語で記述します。
# note記事生成
## 処理手順
1. NOTE_GENERATION_GUIDE.md を読み込んで、生成ルールを理解する
2. 指定されたTechblog記事を読み込む
3. ガイドラインに従ってnote用のサマリー記事を生成
4. output/[記事フォルダ名]-note.md に保存
5. チェックリストに基づいて確認
note記事の生成ルール
NOTE_GENERATION_GUIDE.md に詳細なルールを定義しています。
- 文字数: 800〜1,200文字程度
- 構成: 概要 + 3つのポイント + まとめ
- リンク: Techblog記事へのリンクを2箇所に含める
- 画像: 含めない(テキストのみ)
- Hugo shortcodes: 標準markdownに変換
SEOやAIサーチのペナルティを回避するため、完全なコピーではなくサマリーとして生成することがポイントです。
カスタムコマンドのメリット
- 再現性: 毎回同じルールで記事を生成できる
- 効率化: コマンド一発で処理が完了
- 品質担保: ガイドラインを事前に定義しておくことで、一定の品質を保てる
- 属人化の防止: 誰でも同じ結果を得られる
ワークフロー
Techblog記事(markdown)
↓
Claude Code CLI + /generate-note コマンド
↓
note用サマリー記事(markdown)
↓
人間によるチェック・調整
↓
noteへ手動掲載
生成AIによる自動化と人間のチェックを組み合わせた、ハイブリッドなワークフローを採用しています。
今後の展開
このプロジェクトにより、Techblog記事からnote用記事を効率的に生成できる仕組みが整いました。
今後は以下の展開を予定しています。
- 新規記事: Techblogに新しい記事を公開する際、同時にnote用記事も生成
- 過去記事: 既存のTechblog記事についても、順次note側への展開を進めていく
noteはAIサーチにも対応しており、より多くの読者にリーチできる可能性があります。カスタムコマンドによる効率化により、手間をかけずに両プラットフォームでの情報発信を継続していきたいと考えています。
まとめ
Claude Code CLIのカスタムスキル機能を活用することで、定型的な作業を効率化できます。今回のプロジェクトでは、Techblog記事からnote用サマリー記事を生成するコマンドを作成しました。
- カスタムコマンドは
.claude/skills/[コマンド名]/SKILL.mdに定義 - フロントマターでメタ情報、本文で処理手順を記述
/[コマンド名] [引数]で呼び出し可能
生成AIを活用した業務効率化の一例として、参考になれば幸いです。