Claude Codeで技術書執筆が劇的に変わった—設定地獄から解放された話ーAmazon KDP執筆にClaude Code のVSCodeプラグインを試す

技術書を執筆してきた私が、執筆環境を根本から見直した。結論から言うと、1日2時間かけていた設定作業が数分になった。

なぜWordをやめたのか

Amazon KDP向けに書籍を執筆する際、これまでWordを使っていた。しかし問題があった:

  • 全体の一括修正が困難
  • フォーマット設定の調整に時間を取られる
  • 修正箇所を自分で探し、一つ一つ手作業で直す必要がある

技術書は仕様変更やコード例の更新が頻繁に発生する。「変数名をすべて統一する」「コードブロックの表示形式を変える」といった作業が、Wordでは苦痛だった。 そこで移行したのがQuartoだ。

Quartoへの移行—しかし新たな壁

Quartoについては以前の記事で詳しく書いた:

Markdown形式で執筆でき、PDF、EPUB、HTMLを一括生成できる。VSCode環境で執筆できるようになり、Wordより楽になった。

**しかし、Quarto特有の設定地獄が待っていた。

  • フォント設定の記法
  • 図表番号の制御
  • LaTeX出力時の細かな調整

これらを理解するために公式ドキュメントを読み漁り、試行錯誤する時間が膨大だった。

Claude Codeという解決策

ここで導入したのがClaude Codeだ。簡単に言えば、有能な秘書が本一冊まるごと面倒を見てくれるようになった。

導入は驚くほど簡単

Macへのインストールは公式サイトを参考に進めた。

echo "brew を最新化しておきます"
brew update
brew upgrade
echo "あとはclaude-codeをインストールするだけ"
brew install --cask claude-code
Zsh

Claude Codeの使用開始

claude
Zsh

 テキストスタイルを選択します。1が一番見やすそうだったのでそのままEnterを押下

次に
Claude Code can be used with your Claude subscription or billed based on API
usage through your Console account.

Select login method:

❯ 1. Claude account with subscription · Pro, Max, Team, or Enterprise
2. Anthropic Console account · API usage billing

と聞かれます。今回はサブスクリプション付きProアカウントですのでそのまま1を押します。APIを使う方は2を選択

ブラウザが開きますのでログイン操作を行う。

ログイン後、「承認する」をクリックします。

すると、ターミナル側で Login successful. Press Enter to continue… と表示されますので、エンターキーを押して続行する。

注意書きが表示される。エンターキーを押して続行する。

Security notes:

Claude can make mistakes
You should always review Claude’s responses, especially when
running code.

Due to prompt injection risks, only use it with code you trust
For more details see:
https://code.claude.com/docs/en/security

Press Enter to continue…

今度は、ターミナルの設定を行うかどうか聞いてくる。最適なコーディング環境にするためには、1.YESを選べということなので、ここでは1を選んだままエンターキーを押す。

Use Claude Code’s terminal setup?

For the optimal coding experience, enable the recommended settings
for your terminal: Option+Enter for newlines and visual bell

❯ 1. Yes, use recommended settings

  1. No, maybe later with /terminal-setup Enter to confirm · Esc to skip

次は、ワークスペースへのアクセス許可を与える。そのままエンターキーを押して続行。

 Ready to code here?

 /path/to/workspace/you/selected

 I'll need permission to work with your files.

 This means I can:
 - Read any file in this folder
 - Create, edit, or delete files
 - Run commands (like npm, git, tests, ls, rm)
 - Use tools defined in .mcp.json

 Learn more (​https://code.claude.com/docs/en/security​)

 ❯ 1. Yes, continue
   2. No, exit

 Enter to confirm · Esc to exit

設定が終わるとClaude Codeの画面になる。

/initで初期化

まずはintで初期化。Claudeがプロジェクトの内容を読み込んで、CLAUDE.mdを作ってくれる。

CLAUDE.md

起動時にCLAUDE.mdというファイルが自動的に読み込まれます。/initコマンではプロジェクトを解析してこのファイルを自動的に作ってくれているようです。内容を確認し、必要があれば修正します。

作業を依頼する

それでは、早速作業を依頼してみましょう。Markdownファイルの変更を依頼します。

chapters/chapter_03/chapter03.md
というMarkdownファイルの内容を修正してください。
例を示します。

下記のコードでは、#code-define-variable という図表番号をつけており、ラベルは「変数の値を確認する」です。

::: {#code-define-variable}

```kotlin
count
c
str
```

```markdown
5
A
こんにちは
`

変数の値を確認する
:::

しかし、LaTeXでは、図表番号をつけたブロックは、ページのサイズによっては次のページに押し出されてしまい、記事が読みにくくなってしまいます。そのため、図表番号をやめます。次のように修正してください。
対象は#code-*のみです。:::と:::で囲まれたブロックを削除して、テキストはコメントとして残してください。



```kotlin
// 変数の値を確認する
count
c
str
```

```markdown
5
A
こんにちは
```
Markdown

すると、次のように作業をしてくれました。

修正箇所が表示されますので、Yesで受け入れます。

受け入れると、次の修正箇所を探して、修正して、修正結果が表示されます。

このように、プログラムの修正だけでなく、ドキュメントの修正も柔軟に行ってくれるのは素晴らしいです。

次に、Quarto向けに作成たドキュメントをrenderで表示したいと思います。

Quartoは quarto render --to pdf というコマンドでPDFを出力するのですが、 PDF出力 と入力するだけで、コマンドを実行してPDFを作成してくれます。

VSCodeの機能拡張追加

Claude Codeの機能拡張をインストールしておきましょう。

AnthropicからリリースされているClaude Code for VS Codeという機能拡張を探してインストールします。

発行元の”Anthropic”を信頼しますか?のダイアログで「発行元を信頼してインストールする」を選択してインストールを続行

機能拡張の説明には以下のような機能説明があります。

Claude Code for VS Code

  1. 強力な知能:Pro、Max、Team、Enterpriseサブスクリプション、または従量課金制で最新のClaudeモデルを利用可能
  2. あなたと共に働く:Claudeはコードベースを自律的に探索し、コードを読み書きし、許可を得てターミナルコマンドを実行します
  3. より使いやすくなった新インターフェースで、これまで以上に簡単に始められます
  4. エディターとの統合:Claudeは現在のファイルとテキスト選択を認識し、エディターウィンドウ内で直接変更を提案します
  5. サブエージェント、カスタムスラッシュコマンド、MCPなどの強力なエージェント機能をサポート(これらの機能はVS Code拡張機能で動作しますが、一部はコマンドラインインターフェースでのみ設定可能です)

ターミナルベースの拡張機能
以前の拡張機能のターミナルスタイルの操作感の機能はそのまま残っています。「Claude Code: Use Terminal」設定を切り替えて利用できます。

インストールが完了すると、右上にClaude Codeのアイコンが表示されます。

クリックすると、Claude Codeの画面になります。

LaTeXでPDF出力すると、図表番号をつけたブロックがページをまたいで読みにくくなる問題があった。

従来なら:

  • 1. 全ファイルを開く
  • 2. 該当箇所を目視で探す
  • 3. 一つずつ手作業で修正
  • 4. PDF生成して確認
  • 5. 修正漏れがあればまた探す

Claude Codeでは:

chapters/chapter_03/chapter03.md の内容を修正してください。
#code-* という図表番号をつけたブロックをすべて削除し、
ラベルはコードのコメントとして残してください。
変更前:
::: {#code-define-variable}
kotlincount
変数の値を確認する
:::
変更後:
kotlin// 変数の値を確認する
count
```
```

これを入力するだけで、Claude Codeは:

  • 該当ファイル内のすべての修正箇所を自動検出
  • 修正内容を左右に並べて表示
  • 承認すると次々と修正を適用
  • 最後まで自動で処理

書籍全体でも同じ。複数章にまたがる修正も、指示一つで完了する。

例2:フォント設定のトラブルシューティング

Quartoで見出しフォントを変更したが、PDF出力で反映されなかった。

従来なら:

  1. エラーログを確認
  2. ChatGPTに相談
  3. 回答を見て設定ファイルを手作業で修正
  4. PDF生成して確認
  5. うまくいかなければ1に戻る

Claude Codeでは:

見出しのフォントを「ヒラギノ角ゴ StdN」にして

Claude Codeが設定ファイルを修正し、PDF生成まで自動実行。

VSCode拡張機能でさらに便利に

Anthropic公式の「Claude Code for VS Code」拡張機能をインストールすると、エディタ内で修正内容が視覚的にわかりやすくなる。

差分表示が左右に並び、変更箇所が一目瞭然。承認もワンクリックだ。

GitHubへの自動コミット・プッシュ

執筆作業の最後に待っているのがバージョン管理だ。これもClaude Codeに任せられる。

設定方法

  1. GitHubでPersonal Access Token (PAT) を取得
    https://github.com/settings/tokens
  2. ~/.claude.json に以下を追記:
{
  "lastReleaseNotesSeen": "2.0.55",
  "mcpServers": {
    "github": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "あなたのトークン"
      }
    }
  }
}
JSON

これだけで準備完了。

使い方

コミットしてプッシュして

この一言で、Claude Codeが:

  • 変更内容を確認
  • 適切なコミットメッセージを自動生成
  • コミットとプッシュを実行

コミットメッセージの質も高い。変更内容を理解した上で、わかりやすいメッセージを作ってくれる。

実際の効果—数字で見る変化

設定作業時間:

  • 導入前:1日2時間
  • 導入後:数分

一括修正の速度:

  • 導入前:全章を手作業で修正(数時間)
  • 導入後:指示一つで全章を自動修正(数分)

1日の依頼回数:

  • 平均して数回、Claude Codeに作業を依頼している

最大の効果:
本全体への一括修正が可能になったこと。Wordでは不可能だった「書籍全体の構造変更」が、指示一つで完了する。

まとめ—執筆に集中できる環境

Claude Codeの導入で、技術的な設定作業から完全に解放された。

今やるべきことは:

  1. 内容を書く
  2. Claude Codeに修正を依頼する
  3. 出来上がったPDFやEPUBを確認する

設定ファイルと格闘する時間が消え、本当に執筆だけに集中できる環境が手に入った。

技術書を書く人間にとって、これは革命的な変化だ。Quarto × Claude Codeの組み合わせは、もう手放せないのである。

コメント

タイトルとURLをコピーしました