Shareuhack | 開発者向けAI教科書自動化ワークフロー:Claude Code + Pandoc完全ガイド
開発者向けAI教科書自動化ワークフロー:Claude Code + Pandoc完全ガイド

開発者向けAI教科書自動化ワークフロー:Claude Code + Pandoc完全ガイド

April 6, 2026
LunaMiaEno
著者Luna·調査Mia·レビューEno·継続更新中·19 分で読了

開発者向けAI教科書自動化ワークフロー:Claude Code + Pandoc完全ガイド

ChatGPTでコースシラバスを丸ごと生成して喜んでいたが、Google Docsに貼り付けてから見出しのフォーマット調整、目次の修正、フォントサイズの統一に45分を費やした——そして第3章に大きなエラーを発見し、書き直しが必要になった。再生成し、また貼り付け、またフォーマットを直す。この繰り返しが、新しい教科書を作るたびに発生する。

これがノーコードツールの隠れたコストだ:フォーマット調整の時間がコンテンツ生成の時間を上回ることがある。さらに悪いことに、バージョン管理がなければ前回の変更内容がわからず、バッチ自動化がなければ10冊の教科書は10回の手作業を意味する。

PythonとコマンドラインについてI基礎知識があれば、この記事では**「一度設定すれば、ずっと使える」**自動化パイプラインの構築方法を紹介する:Claude Codeで生成 → Markdown管理 → Pandoc変換 → EPUB/PDF出力。

🚀 コードを書きたくない場合:バージョン管理やバッチ自動化は不要で、AI教科書生成をすぐに試したい方は、ノーコードAI教科書生成ガイドを参照してください。そちらのパスはコーディング不要で1〜2時間で完了し、後からここに戻って開発者向けワークフローにアップグレードすることもできます。


TL;DR

📌 要点まとめ

  • 課題:ノーコードツールにはバージョン管理、自動化、バッチ生成のサポートが欠けている。
  • 解決策:Claude Code + Markdown + Pandoc + Python自動化パイプライン。
  • 主なメリット:完全なフォーマット制御、Gitバージョン管理、再利用可能なスクリプト。
  • 時間の投資:初期セットアップ約2〜4時間、以降は教科書1冊あたり1〜2時間。
  • コスト:Claude Pro(月20ドル、オプション);Pandoc、Python、GitはすべてI無料。
  • 対象読者:CLIに慣れた開発者、テクニカルライター、バッチ生成やカスタマイズが必要なパワーユーザー。
  • 実例nihongo-claude — Claude Codeが要件に基づいて計画・生成したN3日本語学習教材。

開発者向けワークフローを選ぶべき場合

始める前に、このパスが自分に合っているか確認しよう。

開発者向けワークフローを選ぶべき場合

  • ✅ バージョン管理が必要——変更を追跡したり、以前のバージョンに戻したりしたい。
  • ✅ 複数の教科書を生成する予定——スクリプトを再利用したい。
  • ✅ 完全なフォーマット制御が欲しい——カスタムCSS、EPUBメタデータ、カバー画像。
  • ✅ CLIツールを好み、基本的なPythonまたはShell Scriptに慣れている。
  • ✅ 自動デプロイが必要——例えば、Gitコミットのたびに自動でEPUBを再生成したい。

このパスを選ばないほうがいい場合

  • ❌ 1冊だけ素早く生成したい(一回限りのプロジェクト)。
  • ❌ ターミナルを触りたくない、スクリプトを書きたくない。
  • ❌ 時間が限られていて、今日中に完成品が欲しい。

⚠️ コストについての注意:開発者向けパスは初期投資が高くなります。教科書が時々しか必要でない場合、ノーコードソリューションのROIの方が通常高いです。この記事はGit、Markdown、CLI操作に慣れていることを前提としています。


システムアーキテクチャ:要件から電子書籍まで

パイプライン全体には3つのコアステップしかない:

学習要件
    ↓
Claude Code(コース構成の計画 + Markdownコンテンツの生成)
    ↓
Markdownファイル(Gitバージョン管理)
    ↓
Pandoc(変換)
    ├──→ EPUB(主要フォーマット、現代の電子書籍リーダー向け)
    ├──→ PDF(印刷 / タブレット読書)
    └──→ MOBI(オプション、2021年以前のKindleのみ)

ツール選択についての重要な注意点

  • Pandocは主力ツールで、高品質なEPUBを直接生成できる;ほとんどの場合に十分。
  • Calibreはオプションで、MOBIフォーマットが必要な場合(古いKindle)にのみ必要;新しいKindle(2022年以降)はEPUBに対応している(Amazonが独自フォーマットに自動変換)ため、Calibreはスキップできる。
  • AIツールの柔軟性:この記事ではClaude Codeを例として使用しているが、このワークフローはChatGPT API、Gemini API、その他のLLMにも同様に適用できる——使い慣れたものを使えばよい。

技術要件

ツール必要性インストール方法
Git✅ 必須システム組み込みまたは brew install git
Python 3.8+✅ 必須python.orgまたは brew install python
Pandoc✅ 必須brew install pandoc / apt install pandoc
Claude Code CLI✅ 推奨`curl -fsSL https://claude.ai/install.sh
Calibre❌ オプションbrew install calibre(MOBIが必要な場合のみ)

ステップ1:Claude Codeで構造化コンテンツを生成する

なぜWeb UIではなくClaude Codeを使うのか?

Claude.aiのWebインターフェースはインタラクティブなチャットには最適だが、教科書生成にはいくつかの制限がある:

  • 出力が不便:テキストエディタへの手動コピー&ペーストが必要。
  • ファイルアクセス不可:Web UIはローカルファイルシステムを制御できない。
  • コンテキストの制限:チャプター間の一貫性を保つのが難しい。

Claude Code(ローカルCLI)はこれらの問題を解決する:

  • プロジェクトディレクトリ内で直接実行され、生成されたMarkdownファイルが自動的にローカルに保存される。
  • outline.mdや参考資料を読み込み、一貫したスタイルを維持できる。
  • Gitワークフローと自然に統合できる。

プロジェクトディレクトリのセットアップ

# プロジェクトを作成
mkdir my-textbook && cd my-textbook
git init

# 基本的なディレクトリ構造を作成
mkdir -p chapters assets output scripts

# Python環境を初期化(推奨)
python3 -m venv venv
source venv/bin/activate
pip install ebooklib markdown2 weasyprint

コースアウトラインの作成(AIに構成を計画させる)

これが開発者向けパスのコアな違いだ:事前に素材を用意する必要はない。学習ニーズを説明するだけで、Claude Codeがコース全体の構成を計画してくれる。

REQUIREMENTS.mdを作成する:

# 学習要件

## 学びたいこと
データ分析入門(プロダクトマネージャー視点)

## 私のバックグラウンド
- 現在の役割:ソフトウェアエンジニア、6ヶ月前にPMに転職
- 知っていること:Pythonの基礎、基本的なSQLクエリ
- 弱点:統計の概念、A/Bテスト設計、データビジュアライゼーション

## 学習目標
完了後に以下ができるようになること:
1. 独立してA/Bテストを設計し、結果を解釈できる
2. GA4を使用してユーザー行動ファネルを分析できる
3. 非技術系の聴衆向けに明確なデータビジュアライゼーションを作成できる

## コース仕様
- チャプター数:8〜10
- 1チャプターあたりの長さ:約1,500〜2,000語
- 言語:英語
- 例のコンテキスト:SaaSプロダクト、Eコマースプラットフォーム

Claude Codeにコース構成を計画させる

プロジェクトディレクトリでClaude Codeを起動する:

claude

Claude Codeが起動したら、以下のコマンドを入力する:

REQUIREMENTS.mdを読んで、以下を実行してください:
1. 8〜10チャプターのコース構成を設計し、outline.mdに保存する
2. 各チャプターには:学習目標、コアコンセプト(3〜5個)、実例トピック、自己チェッククイズ(3問)を含める
3. 難易度が論理的に進行するよう、Python/SQLの基礎はあるが統計が弱い学習者に適したものにする

Claude Codeは自動的に要件を読み、構成を計画し、outline.mdをディレクトリに書き込む。

チャプターごとにコンテンツを生成する

構成を確認したら、Claude Codeに各チャプターを生成させる:

outline.mdの構成に基づいて、第1チャプターの完全なコンテンツを生成してください。
フォーマット要件:
- Markdownフォーマットを使用
- チャプターのメインタイトルにH2、セクションにH3
- 各コアコンセプトに実際のSaaSプロダクトの事例を添付
- 3つの自己チェック問題(答え付き)で終わる
結果をchapters/chapter-01.mdに保存する

この手順をすべてのチャプターに繰り返す。各チャプターが完了したらGitコミットする:

git add chapters/chapter-01.md
git commit -m "feat: add chapter 1 - data-driven decision framework"

💡 品質管理のヒント:各チャプターを生成した後、Claude Codeに「逆レビュー」をしてもらう——チャプターの潜在的なエラー、不明確な点、または過度な単純化を指摘するよう依頼する。これは手動の校正よりも効率的だ。Claude Codeをソフトウェア開発でさらに活用する方法については、Claude Code PRDワークフローを参照。


ステップ2:Pandoc変換——MarkdownからEPUBへ

Pandocはこのパイプラインのコア変換ツールだ。オープンソースで無料、数十のフォーマットをサポートし、CLIフレンドリーで自動化に最適だ。

最もシンプルな変換コマンド

Pandocが正しくインストールされているか確認する:

pandoc --version

基本的な変換:

pandoc chapters/chapter-01.md -o output/textbook.epub \
  --toc \
  --metadata title="データ分析101:PMガイド"

数秒で、あらゆる電子書籍リーダーで読めるEPUBができあがる。

本番環境向けの完全な変換コマンド

実際のプロジェクトでは、より多くのパラメーターが必要だ:

pandoc \
  chapters/chapter-*.md \
  -o output/my-textbook.epub \
  --toc \
  --toc-depth=2 \
  --epub-cover-image=assets/cover.jpg \
  --css=assets/styles.css \
  --metadata title="データ分析101:PMガイド" \
  --metadata author="あなたの名前" \
  --metadata lang=ja \
  --metadata date="2026-04-06"

パラメーターの説明

パラメーター用途
--toc目次を生成
--toc-depth=2目次の深さ(H1とH2)
--epub-cover-imageカバー画像(1600×2560 px推奨)
--cssカスタムレイアウトスタイル
--metadata lang=ja言語設定(フォントレンダリングに影響)

カスタムCSSレイアウト

assets/styles.cssを作成して、教科書をプロフェッショナルな見た目にする:

/* 基本レイアウト */
body {
  font-family: "Noto Sans CJK JP", "Noto Sans", sans-serif;
  line-height: 1.8;
  color: #333;
  max-width: 680px;
  margin: 0 auto;
}

/* チャプタータイトル */
h1 {
  color: #2c3e50;
  border-bottom: 3px solid #3498db;
  padding-bottom: 10px;
  margin-top: 2em;
}

h2 {
  color: #34495e;
  margin-top: 1.8em;
}

/* コードブロック */
pre {
  background: #f8f9fa;
  padding: 16px;
  border-radius: 6px;
  overflow-x: auto;
  font-size: 0.9em;
}

code {
  background: #f0f0f0;
  padding: 2px 6px;
  border-radius: 3px;
  font-size: 0.9em;
}

/* 引用ブロック */
blockquote {
  border-left: 4px solid #3498db;
  margin-left: 0;
  padding: 10px 20px;
  background: #ecf9ff;
  border-radius: 0 6px 6px 0;
}

/* テーブル */
table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5em 0;
}

th, td {
  border: 1px solid #ddd;
  padding: 10px 14px;
  text-align: left;
}

th {
  background: #f2f4f7;
  font-weight: 600;
}

バッチ自動化スクリプト

scripts/convert.shを作成して、ワンクリックですべてのフォーマットを生成できるようにする:

#!/bin/bash

# 設定
TITLE="データ分析101:PMガイド"
AUTHOR="あなたの名前"
OUTPUT_DIR="output"
COVER="assets/cover.jpg"
CSS="assets/styles.css"

# 出力ディレクトリの確認
mkdir -p "$OUTPUT_DIR"

echo "🔄 変換を開始しています..."

# EPUBに変換(主要フォーマット)
pandoc chapters/chapter-*.md \
  -o "${OUTPUT_DIR}/textbook.epub" \
  --toc --toc-depth=2 \
  --epub-cover-image="$COVER" \
  --css="$CSS" \
  --metadata title="$TITLE" \
  --metadata author="$AUTHOR" \
  --metadata lang=ja
  
echo "✅ EPUB生成完了: ${OUTPUT_DIR}/textbook.epub"

# PDFに変換(HTML経由)
pandoc chapters/chapter-*.md \
  -o "${OUTPUT_DIR}/textbook.html" \
  --standalone \
  --css="$CSS" \
  --metadata title="$TITLE"

python3 -m weasyprint "${OUTPUT_DIR}/textbook.html" "${OUTPUT_DIR}/textbook.pdf"
rm "${OUTPUT_DIR}/textbook.html"

echo "✅ PDF生成完了: ${OUTPUT_DIR}/textbook.pdf"
echo ""
echo "📂 出力ディレクトリ:"
ls -lh "${OUTPUT_DIR}/"

実行する:

chmod +x scripts/convert.sh
./scripts/convert.sh

出力構造:

output/
├── textbook.epub   ← 電子書籍リーダー(主要)
└── textbook.pdf    ← 印刷 / タブレット

ステップ3(オプション):Calibre——Kindle MOBI専用

⚠️ 注意:ほとんどのユーザーはこのステップは不要です。

Calibreが必要な場合

デバイス対応フォーマットCalibreが必要?
Kindle Paperwhite(2022年以降)✅ EPUBに対応(自動変換)❌ 不要
Kobo、Apple Books、Google Play✅ EPUBをサポート❌ 不要
ブラウザ読書(タブレット)✅ EPUB/PDFをサポート❌ 不要
旧型Kindle(2021年以前)❌ MOBIのみ✅ 必要

読者が旧型Kindleを使っている場合のみ、Calibreをインストールして以下を実行する:

# Calibreをインストール
brew install calibre         # macOS
sudo apt install calibre     # Linux

# EPUB → MOBI変換
ebook-convert output/textbook.epub output/textbook.mobi \
  --output-profile kindle

結論:特定のニーズがなければ、PandocでEPUBを生成するだけで十分だ。余分なツールの依存関係を導入する必要はない。


ケーススタディ:nihongo-claude——要件駆動の教材生成

nihongo-claudeはオープンソースプロジェクトであり、このワークフローの実際の実装だ。「開発者向けパス」のコアアドバンテージを最もよく示している。

重要な特徴:ゼロから、要件駆動で

一般的なAI教科書ツールとの最大の違い:このプロジェクトは素材ゼロからスタートした——PDF、ノート、シラバス、何もない。

プロセスはこのようなものだった:

  1. 要件を定義する:「N3日本語を学びたい、現在のレベルはN4、3ヶ月でN3に到達したい。」
  2. Claude Codeが構成を計画する:AIが4フェーズ30レッスンの完全なコース構成を自動設計。
  3. コンテンツを生成する:各レッスンには語彙、文法、実際の会話シナリオ、クイズが含まれる。
  4. 自動出力:Pythonスクリプト + Pandocでワンクリックのエポック/PDF生成。

これにより重要な仮説が検証された:日本語の先生でなくても、適切に構成された日本語教材を生成できる——学習ニーズと品質基準を明確に定義できれば。

プロジェクト構造

nihongo-claude/
├── REQUIREMENTS.md           # 要件定義
├── lessons/
│   ├── phase-1/              # フェーズ1:基礎文法(L1-8)
│   │   ├── lesson-01.md
│   │   ├── lesson-02.md
│   │   └── ...
│   ├── phase-2/              # フェーズ2:応用文法(L9-16)
│   ├── phase-3/              # フェーズ3:場面別応用(L17-24)
│   └── phase-4/              # フェーズ4:模擬試験(L25-30)
├── scripts/
│   ├── convert_to_epub.py    # Python EPUBスクリプト
│   ├── generate_pdf.py       # PDF生成スクリプト
│   └── quick-convert.sh      # ワンクリックスクリプト
├── assets/
│   ├── styles.css            # カスタムCSS
│   └── cover.jpg             # カバー画像
└── output/
    ├── nihongo-n3.epub
    └── nihongo-n3.pdf

コアスクリプトの解説

1. convert_to_epub.py — Python EPUB生成

import glob
from ebooklib import epub
import markdown2

def build_epub():
    book = epub.EpubBook()
    book.set_identifier('nihongo-n3-v1')
    book.set_title('Japanese N3 Complete Guide')
    book.set_language('ja')
    book.add_author('Your Name')

    chapters = []
    lesson_files = sorted(glob.glob('lessons/**/*.md', recursive=True))

    for i, lesson_path in enumerate(lesson_files, start=1):
        with open(lesson_path, 'r', encoding='utf-8') as f:
            md_content = f.read()

        # Markdown → HTML
        html_content = markdown2.markdown(md_content, extras=['tables', 'fenced-code-blocks'])

        # EPUBチャプターを作成
        chapter = epub.EpubHtml(
            title=f'Lesson {i:02d}',
            file_name=f'lesson_{i:02d}.xhtml',
            lang='ja'
        )
        chapter.content = f'<html><body>{html_content}</body></html>'
        book.add_item(chapter)
        chapters.append(chapter)

    # TOCとNavを設定
    book.toc = chapters
    book.spine = ['nav'] + chapters
    book.add_item(epub.EpubNcx())
    book.add_item(epub.EpubNav())

    epub.write_epub('output/nihongo-n3.epub', book)
    print('✅ EPUB生成完了: output/nihongo-n3.epub')

if __name__ == '__main__':
    build_epub()

2. quick-convert.sh — インタラクティブなワンクリックスクリプト

#!/bin/bash

echo "出力フォーマットを選択してください:"
echo "1) EPUB(推奨)"
echo "2) PDF"
echo "3) すべて"
read -p "オプションを入力(1-3): " choice

case $choice in
  1)
    python3 scripts/convert_to_epub.py
    ;;
  2)
    python3 scripts/generate_pdf.py
    ;;
  3)
    python3 scripts/convert_to_epub.py
    python3 scripts/generate_pdf.py
    echo "✅ すべてのフォーマットの生成が完了しました"
    ;;
  *)
    echo "❌ 無効なオプションです"
    exit 1
    ;;
esac

nihongo-claudeから学んだ3つの教訓

1. 要件定義がコンテンツ品質を決める

AIツールではなく、要件をどのように説明するかが重要だ。「日本語を学びたい」と「N4レベルで、3ヶ月でN3合格を目標とし、1日1時間の学習時間があり、リスニングとリーディングに重点を置く必要がある」では、生成される教材の品質が大きく異なる。

2. モジュラー設計でメンテナンスが楽になる

各レッスンを独立したMarkdownファイルとして保存することで:

  • エラーを見つけたら1つのファイルだけを修正すればよく、他には影響しない。
  • 異なる教授法をA/Bテストできる(Gitブランチを使用)。
  • 新しいコースを追加するだけでMarkdownファイルが追加され、スクリプトが自動的に含める。

3. このパイプラインはあらゆるトピックに適用できる

このリポジトリをForkして、REQUIREMENTS.mdを自分の学習ニーズに合わせて修正し、Claude Codeに新しいコース構成を計画させるだけでいい——機械学習でも、財務分析でも、プロダクトマネジメントでも、パイプラインは同じだ。


発展:GitHub Actionsによる完全自動化

教科書を継続的に更新する必要がある場合(例:技術の変化を追跡する)、CI/CDパイプラインを設定する:Markdownを更新するコミットのたびに、GitHubが自動的にEPUB/PDFを再生成する。

.github/workflows/build-ebook.ymlを作成する:

name: Build eBook

on:
  push:
    branches: [main]
    paths:
      - 'chapters/**'
      - 'assets/**'

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Setup Python
        uses: actions/setup-python@v4
        with:
          python-version: '3.11'

      - name: Install Pandoc
        run: |
          sudo apt-get update
          sudo apt-get install -y pandoc

      - name: Install Python dependencies
        run: pip install ebooklib markdown2 weasyprint

      - name: Generate EPUB
        run: python scripts/convert_to_epub.py

      - name: Generate PDF
        run: |
          pandoc chapters/chapter-*.md \
            -o output/textbook.html \
            --standalone --css=assets/styles.css \
            --metadata title="My Textbook"
          python3 -m weasyprint output/textbook.html output/textbook.pdf
          rm output/textbook.html

      - name: Upload artifacts
        uses: actions/upload-artifact@v4
        with:
          name: ebooks
          path: output/

      - name: Create Release (on tag)
        if: startsWith(github.ref, 'refs/tags/')
        uses: softprops/action-gh-release@v2
        with:
          files: output/*

使い方

  1. chapters/内のMarkdownコンテンツを修正する。
  2. git commit && git push
  3. GitHub Actionsが自動実行され、新しいEPUB/PDFバージョンが生成される。
  4. 正式なリリースにはタグを付ける:git tag v1.1.0 && git push --tags
  5. GitHubがダウンロードリンク付きのReleaseを自動作成する。

💡 プロのヒント:GitHub ActionsにMarkdownリンター(例:markdownlint)を追加すると、すべてのコミットがフォーマット基準を満たすことが確認でき、変換エラーを防げる。


リスクと制限事項

技術的な複雑さ

  • 学習曲線:CLI、Git、基本的なPythonへの慣れが必要。初心者には半日かかることもある。
  • デバッグ:EPUBフォーマットの問題(CSS互換性、画像パス)はトレースが難しいことがある。
  • Pandocのバージョン:バージョン間でパラメーターに若干の違いがある;アップグレード時はテストが必要。

ツールの依存関係

  • Pythonパッケージの競合ebooklibweasyprintが競合する可能性がある;venvを使用すること。
  • EPUBの互換性:CSSサポートはリーダーによって異なる;複数のデバイスでテストすること。
  • weayprintのフォント:日本語PDFでは文字化け(豆腐)を避けるためフォントのインストールが必要(例:Noto Sans CJK JP)。

コストに関する考慮事項

  • Claude Proサブスクリプション:大量の高品質コンテンツ生成には、Claude Pro(月20ドル)が無料プランより高い制限を提供する;ChatGPT PlusやGemini Advancedも代替手段。
  • 開発時間:初期セットアップはノーコードより2〜4時間多いが、一回限りの投資だ。
  • GitHub Actionsの制限:月2,000分の無料枠(1冊の生成は10分未満)。

このパスを使わないほうがよい場合

⚠️ 正直なところ:1冊の教科書だけを生成したい場合、ここでの初期労力はおそらく割に合わない。ノーコードソリューションなら、ゼロセットアップで今日中に最初の本が完成する。大量生成やバージョン管理の必要性を確認してからここに戻ってきてほしい。


結論:自分だけの教科書ファクトリーを構築しよう

ここまで読んだなら、あなたは今以下を持っている:

  1. Claude Code生成ワークフロー:要件 → 計画 → 生成、AIアシスト。
  2. Pandoc変換パイプライン:Markdown → EPUB/PDF、1コマンド。
  3. バージョン管理の統合:Git追跡、巻き戻し可能、コラボレーション対応。
  4. オプションのCI/CD:コミット時に自動生成。

本当の価値は「本を1冊生成する」ことではなく、再利用可能性にある:構築したスクリプトとワークフローは次の本でも機能し、要件とメタデータを変更するだけでいい。

推奨する始め方

  1. nihongo-claudeをForkして構造を研究する。
  2. 自分の学習ニーズに合わせてREQUIREMENTS.mdを修正する。
  3. Claude Codeを起動してコースを計画させる。
  4. ./scripts/quick-convert.shを実行して最初のEPUBを生成する。
  5. リーダーで開いて「自分で生成した」達成感を味わう。

💡 最後に:ツールは手段であり、コンテンツの品質が目的だ。どのAIツールを使うにしても、手動レビュー、事実確認、個人化は欠かせない。AIは強力なアシスタントだが、どの知識が価値あるかを判断するのはあなた自身だ。


AI教科書生成をまだ試したことがなければ、ノーコード版から始めよう——今日中に最初の本が完成する。慣れてからここに戻って、この自動化システムを構築すればいい。2つのパスは競合するものではなく、補完し合うものだ。

FAQ

このワークフローとノーコードアプローチの主な違いは何ですか?

ノーコードアプローチは、技術的な知識がなくても1冊の教科書を素早く生成したい場合に最適です。開発者向けワークフローは、バージョン管理(Gitですべての変更を追跡)、バッチ自動化(スクリプトを複数の書籍で再利用)、完全なフォーマット制御(カスタムCSS、EPUBメタデータ)に優れています。たまにしか教科書が必要でないなら、ノーコードアプローチの方がROIが高いです。複数の教科書を継続的に生成・管理する場合は、開発者向けワークフローが長期的に大幅な時間節約になります。

初期セットアップにはどのくらい時間がかかりますか?また、2冊目以降はどうですか?

初期セットアップ(ツールのインストール、ディレクトリ構造の作成、スクリプトの設定)は、コマンドラインツールへの慣れ度によって約2〜4時間かかります。それ以降は、新しい教科書ごとにREQUIREMENTS.mdを学習ニーズに合わせて修正し、Claude Codeに構成を計画・コンテンツを生成させ、変換スクリプトを実行するだけで、合計約1〜2時間です。

必ずClaude Codeを使う必要がありますか?他のAIツールでも使えますか?

もちろんです。このパイプラインの核心はMarkdownファイルとPandoc変換であり、AIツールは交換可能です。ChatGPT、Gemini、またはMarkdownを出力できるLLMならどれでもこのワークフローに組み込めます。この記事でClaude Codeを使用しているのは、nihongo-claudeの実例で使われており、Claude Code CLIがローカルディレクトリのファイルを直接読み書きでき、Gitワークフローと便利に統合できるためです。

EPUB生成にはPandocとPython eBooklibのどちらを使うべきですか?

初心者はPandocから始めるべきです。1つのコマンドで変換でき、CSSのカスタマイズは限られていますが、通常は十分です。より細かい制御が必要な場合(例:カスタムチャプター順序、メタデータ、ナビゲーション構造)は、Python eBooklibに切り替えてください。まずPandocでプロトタイプを素早く作り、高度な制御が必要と確認してからeBooklibに移行するのがおすすめです。

生成されたEPUBは異なる電子書籍リーダーで一貫して表示されますか?

EPUBは標準フォーマットですが、CSSのサポートはリーダーによって異なります。KindleはCSSサポートが限られているため、flexboxやgridレイアウトは避けてください。Apple BooksとKoboはより完全なCSSサポートを提供しています。保守的なCSSの設定(フォント、色、基本的な余白)を使用し、複数のデバイスでレンダリングを確認してください。

この記事は役に立ちましたか?