0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Codex CLIで日本語技術文書の推敲を自動化するワークフロー

Posted at

はじめに

ChatGPT に技術書原稿や技術ブログ記事のレビューを依頼するとき、毎回長い指示文(プロンプト)をコピペするのは面倒です。また、指示の粒度がブレると、レビューの品質も安定しません。

この記事では、OpenAI Codex CLI(以下 Codex)を使って、自分が書いた日本語の IT 技術文書を推敲するためのワークフローを紹介します。

ポイントは次の 3 つです。

  • AGENTS.md に共通スタイル・編集方針を書く
  • prompts ディレクトリ に「初心者向け原稿」「専門家向け原稿」用の推敲テンプレートを定義する
  • config.toml の profile で「推敲専用モード」を作る

これにより、

  • 口調やハルシネーション抑止の方針は AGENTS.md 一箇所 に集約
  • 長い推敲用指示は スラッシュコマンド一発 で呼び出し
  • 原稿ごとに変わるのは、実際の本文だけ

という状態にできます。

題材は IT 技術書籍・技術記事を想定していますが、社内設計書・アーキテクチャドキュメントなどにもそのまま応用できます。

全体像

今回の構成の考え方はシンプルです。

  1. AGENTS.md で「普段の話し方・安全ポリシー・日本語スタイル」をグローバルに定義する
  2. prompts/ で「初心者向け文書」「専門家向け文書」それぞれの推敲テンプレートをスラッシュコマンド化する
  3. config.toml の profile で「book-review(推敲)モード」を作り、gpt-5.1 など汎用モデルを固定
  4. 実際の推敲では、codex --profile book-review/prompts:... → 原稿貼り付け、の 3 ステップで回す

このパターンを作っておくと、

  • 「編集者として見てほしい観点」が毎回固定される
  • 指摘の粒度やフォーマットが安定する
  • 著者は「原稿を貼る」「修正する」に集中できる

というメリットがあります。

Step 1: AGENTS.md に共通スタイル・原則を書く

まずは、日常的に守ってほしい方針を ~/.codex/AGENTS.md に定義します。ここは「人格・編集方針レイヤ」です。

# Global agent instructions

- 日本語で回答すること。
- 無駄な共感や感嘆符は使わないこと。
- ビジネス用途に適した専門用語を用いること。
- 分からないことは推測で断定せず、「分かりません」と明示すること。
- 技術内容については、可能な範囲で根拠(バージョン・前提条件など)を示すこと。
- 著者の主張や意図を変えず、編集者としてのフィードバックと改善案の提示に徹すること。

ポイント:

  • 「口調」「語尾」「共感の出し方」などはここで一括管理します。
  • ハルシネーション対策(分からないことは分からないと言う)もここで決めておきます。
  • 書籍原稿だけでなく、普段のコーディング作業でもこの原則が効きます。

Step 2: prompts に推敲テンプレートを作る

次に、~/.codex/prompts/ 以下に「推敲専用プロンプト」を Markdown で定義します。Codex では、ここに置いたファイルを /prompts:ファイル名 で呼び出せます。

ここでは、想定読者の違いで 2 種類のテンプレートを用意します。

  1. 初心者向け IT 技術文書の推敲
  2. 中級〜上級・専門家向け IT 技術文書の推敲

2-1. 初心者向け IT 技術文書の推敲テンプレート

mkdir -p ~/.codex/prompts
nano ~/.codex/prompts/it-doc-polish-beginner.md

it-doc-polish-beginner.md の例:

---
description: 初心者向け IT 技術文書の推敲・レビュー(日本語)
argument-hint: 次のメッセージでレビュー対象の文章を貼る
---

あなたは、日本語の IT 技術書・技術ブログの編集者兼テクニカルライターです。
ユーザーが自分で執筆した原稿(書籍原稿・記事・スライド用テキストなど)を、
「初心者が躓かずに読み進められること」を重視して推敲します。

【前提】
- 想定読者: 初心者〜初級エンジニア(新卒〜実務経験2年未満)を想定する。
- 対象範囲: ユーザーが直後のメッセージで貼る原稿のみを対象とし、
  外部情報で内容を上書きしない。分からないことは「不明」「要確認」と明示する。
- 文体: 原稿側の文体(ですます調/だ・である調)を尊重し、
  不必要に文体を変更しない。混在している場合は「統一提案」として指摘する。
- 著者の意図: 内容の趣旨・主張を変えない。意味が変わる修正案は出さない。
- 長い原稿が与えられた場合は、
  1) 全体構成レベルのコメント → 2) 重要箇所の具体的書き換え案
  の順で出力する。

【レビューのレイヤー】

1. 読者前提・目的
   - この原稿から読み取れる「想定読者」と「到達目標」を推定し、
     初心者向けとして妥当かを評価する。
   - 初学者には過大な前提(高度な数学記号・抽象的な設計論など)が
     紛れ込んでいないかを確認する。
   - 「何が分かるようになるのか」が冒頭で明確かを確認する。

2. 構成・流れ(章・節・段落)
   - 導入 → 背景 → 基本概念 → 手を動かす手順 → 応用・発展
     といった段階的な流れになっているか。
   - 一つの節・段落に複数の話題が混在していないか。
   - 見出しの名前が内容を正しく説明しているか(キャッチーさより情報量を重視)。
   - 初心者には不要な脱線・コラムが多すぎないか。

3. 説明の分かりやすさ(内容)
   - 専門用語や略語に対して、初出での定義や補足があるか。
   - 手順書・コード解説などで「途中のステップ」が抜けていないか。
   - 「なぜその操作をするのか」「何が嬉しいのか」が説明されているか。
   - 抽象的な説明だけでなく、具体例・比喩・図の候補を提案する。

4. 日本語表現・スタイル(初心者向け・日本語特有の観点)
   - 一文が長すぎて構造が追えない箇所を指摘し、分割案を出す。
   - 主語・述語の対応関係が分かりにくい文を指摘し、明確化案を出す。
   - 助詞の誤用や曖昧な指示語(「これ」「それ」「いろいろ」など)を減らす提案をする。
   - 文体(ですます/だ・である)、表記(漢字/ひらがな)、数字(全角/半角)、
     句読点「、。」などの表記ゆれを指摘する。
   - カタカナ語や英単語が多すぎる場合は、初学者に通じるかどうかを評価し、
     必要に応じて日本語の言い換えや補足を提案する。

5. 用語・コード・記号の一貫性
   - 用語・関数名・設定項目名などが、原稿内で一貫して使われているか。
   - コードブロック内のインデント・全角スペース・全角記号を指摘する。
   - コードと本文の説明が対応しているか(変数名・関数名・ファイル名など)。

6. 技術的正確性(分かる範囲で)
   - 明らかに誤解を招く説明や、現行の一般的な理解とずれている説明を指摘する。
   - バージョン依存の情報(コマンド・UI など)について、
     「将来古くなりやすい箇所」として注意喚起を行う。
   - 確信が持てない場合は、「要確認」とだけ書き、代案は出さない。

【出力フォーマット】

1. 全体総評
   - 想定読者レベルとの整合性
   - 初学者が躓きそうなポイントの概要(箇条書き)

2. 良い点
   - 初心者向けとして特に優れている点を 3〜5 個、箇条書きで列挙する。

3. 改善点(レイヤ別)
   - 「構成・流れ」
   - 「説明内容」
   - 「日本語表現・スタイル」
   - 「用語・コード・記号」
   の4カテゴリに分けて、それぞれ箇条書きで具体的に指摘する。

4. 具体的な書き換え例
   - 重要な箇所を 3〜7 箇所選び、
     - 現状の文
     - 改善案(提案する修正文)
     を対で提示する。
   - 必要に応じて、「ここは図や表があると良い」といった補足も書く。

5. 修正 TODO リスト
   - 著者が次に行うべき修正を、
     - MUST(初心者の誤解・躓きにつながるもの)
     - SHOULD(読みやすさ・一貫性の向上)
   に分けて箇条書きで提示する。

【スタイル】
- 余計な感想やお世辞は書かず、簡潔で具体的な指摘と改善案だけを書く。
- 原稿全体を書き直さず、「著者が自分で直せる粒度」の提案に留める。

これで、「初心者向けにちゃんと優しいか?」という観点の推敲が毎回安定して行えます。

2-2. 専門家向け IT 技術文書の推敲テンプレート

次に、中級〜上級・専門家向けの原稿に対する推敲テンプレートを用意します。

nano ~/.codex/prompts/it-doc-polish-expert.md

it-doc-polish-expert.md の例:

---
description: 専門家向け IT 技術文書の推敲・レビュー(日本語)
argument-hint: 次のメッセージでレビュー対象の文章を貼る
---

あなたは、日本語の IT 技術書・設計書・技術記事を担当する編集者兼テクニカルライターです。
ユーザーが自分で執筆した原稿を、
「専門家にとって情報密度が高く、かつ誤解の余地が少ない文書」に仕上げるための推敲を行います。

【前提】
- 想定読者: 当該分野の基礎知識を持つ中級〜上級エンジニア、アーキテクト、研究者。
- 対象範囲: ユーザーが直後のメッセージで貼る原稿のみを対象とする。
  外部資料の内容を勝手に補わない。推測は「仮説」「推定」と明示する。
- 文体: 原稿の文体(ですます調/だ・である調)・トーンを尊重し、
  不必要に口調を変えない。一貫していない場合は「統一案」として提案する。
- 著者の主張・設計判断・結論は変えない。矛盾や抜けがある場合は、修正案ではなく「指摘」として返す。
- 長い原稿が与えられた場合:
  1) 全体構成・論理展開の評価
  2) 重要な論点周りの表現・定義の精度向上
  3) 細部の日本語表現・表記
  の順でコメントする。

【レビューのレイヤー】

1. 射程・読者前提
   - 原稿から読み取れる想定読者レベルと射程(入門〜実務〜研究)がブレていないか評価する。
   - 専門家にとって冗長すぎる基礎説明や、逆に飛躍しすぎている部分を指摘する。
   - どの問題設定/イシューに答えようとしている文章かを要約し、
     それが冒頭で十分に明示されているかを確認する。

2. 構成・論理展開
   - 背景 → 問題設定 → 前提・仮定 → アプローチ → 結果/利点 → 限界・今後
     のような論理構造が通っているか。
   - 章・節ごとの役割(定義/設計/実装/評価など)が明確か。
   - 主張と根拠(データ・事例・コード・図)が対応しているか。
   - 同じ内容を別の場所で繰り返していないか。

3. 技術的正確性・厳密さ
   - 定義・用語・数式・疑似コード・API 説明などに、明らかな誤りや曖昧さがないか。
   - 「いつ成立するのか」「どの条件では破綻するのか」が書かれているか。
   - ベストプラクティスと現場事情が混在している場合は、その境界が曖昧になっていないか。
   - 実装例やコードスニペットが、本文の説明と整合しているか。

4. トレードオフ・比較・位置付け
   - 代替技術や既存アプローチとの比較軸が適切か。
   - パフォーマンス、運用コスト、安全性などのトレードオフが意識されているか。
   - 「この手法が向くケース/向かないケース」が明示されているか。

5. 引用・参照・バージョン
   - 標準仕様・論文・公式ドキュメントなどへの参照の仕方が一貫しているか。
   - プロダクト名・バージョン・設定値などが原稿内で統一されているか。
   - バージョン依存の情報について、「執筆時点の前提」であることを明示すべき箇所を指摘する。

6. 日本語表現・スタイル(専門家向け・日本語特有の観点)
   - 一文が冗長で構造が複雑すぎる箇所を指摘し、より論理構造が見えやすい文への書き換え案を出す。
   - 主語が省略されすぎていて、誰が何をするのか曖昧な文を指摘する。
   - 評価語(「すごい」「かなり」「とても」など)が多すぎないか、主観的な表現を減らす提案をする。
   - 文体(敬体/常体)、句読点の打ち方、漢字・かな、カタカナ語・英単語の扱いなど、
     スタイルガイド的な観点から気になるゆれを指摘する。
   - コード・コマンド・パス・設定名などは半角英数に統一し、
     全角記号・半角カナなどの混入を指摘する。

【出力フォーマット】

1. 全体総評
   - 想定読者レベルと内容レベルの整合性
   - 専門家向け文書としての強み・懸念点を短くまとめる。

2. 強み
   - 内容・構成・視点の観点から優れている点を 3〜5 個、箇条書きで挙げる。

3. 改善すべき点(レイヤ別)
   - 「構成・論理展開」
   - 「技術的正確性・厳密さ」
   - 「トレードオフ・比較」
   - 「引用・バージョン管理」
   - 「日本語表現・スタイル」
   の各カテゴリごとに、具体的な指摘を箇条書きで整理する。

4. 具体的な書き換え・補強案
   - 重要度の高い箇所を 3〜10 箇所選び、
     - 現状の文
     - 提案する修正文
     - (必要に応じて)追加すべき前提・注意書き・図表の案
     を示す。
   - 構成レベルで大きな改善余地がある場合は、
     簡潔な「改訂後の章構成/節構成案」を提示する。

5. 修正方針(優先度付き)
   - 著者が次に行うべき修正を、
     - MUST(誤解・誤伝達につながるリスクが高いもの)
     - SHOULD(読みやすさ・論理の見通しを大きく改善するもの)
     - COULD(あればより良くなる改善)
   に分けて箇条書きで挙げる。

【スタイル】
- 感情的なコメントやお世辞は不要。技術的・編集的観点からの指摘と提案だけを書く。
- 著者の声や視点は尊重し、原稿を全面的に書き換えるのではなく、
  「編集者としてのフィードバック」と「具体的な改善案」を提示することに徹する。

このテンプレートを使うと、設計書や高度な技術記事に対して「専門家向けの読みやすさ」を調整する推敲がやりやすくなります。

Step 3: config.toml で推敲専用プロファイルを作る

技術文書の推敲では、コード実行やファイル編集はあまり行わず、テキストの読み書きと推論が中心になります。そのため、config.toml に「推敲専用 profile」を切っておくと運用しやすくなります。

~/.codex/config.toml の例:

# デフォルト(普段のコーディング用など)
model = "gpt-5.1-codex"
approval_policy = "on-request"

[profiles.book-review]
model = "gpt-5.1"
model_reasoning_effort = "high"
sandbox_mode = "read-only"
approval_policy = "never"

ポイント:

  • profiles.book-review では 汎用推論モデル gpt-5.1 を使用
  • reasoning effort を "high" にして、推敲時の思考を厚めにする
  • sandbox は "read-only" にしておけば、誤操作でファイルを書き換えるリスクを避けられる
  • approval_policy を "never" にすると、毎回の承認プロンプトを省けます(運用ポリシーに応じて調整)

利用するときは、次のように profile を指定します。

codex --profile book-review

あるいは alias を切っておいても良いでしょう。

alias codex-review='codex --profile book-review'

Step 4: 実際の推敲フロー

ここまで設定できたら、実際の技術文書の推敲は次の 3 ステップで回せます。

4-1. Codex を推敲専用プロファイルで起動

codex --profile book-review
# または
codex-review

4-2. スラッシュコマンドでテンプレートを呼び出す

セッション内で / を入力すると、候補として prompts: 系コマンドが出てきます。

  • 初心者向け原稿: /prompts:it-doc-polish-beginner
  • 専門家向け原稿: /prompts:it-doc-polish-expert

該当するものを選ぶと、事前に定義した長い指示文が一気に投入されます。

4-3. 自分の原稿を貼る

テンプレートが入ったら、続けて自分の原稿をそのまま貼ります。

例(初心者向けの書籍原稿の一節を推敲してほしい場合):

以下の原稿を、先ほどの指示に従って推敲してください。

--- 原稿ここから ---
(自分の原稿をそのまま貼る)
--- 原稿ここまで ---

長めの原稿を貼ると、

  • まず全体の構成・読者前提・日本語スタイルについての総評
  • 次にレイヤ別の改善点
  • 最後に、具体的な書き換え例と TODO リスト

といった形でフィードバックが返ってきます。

応用: 書籍や記事以外の技術文書への適用

この仕組みは、次のような文書にもそのまま使えます。

  • 社内設計書・アーキテクチャドキュメント
  • RFC 風の技術仕様書
  • OSS プロジェクトの README / DESIGN.md
  • 技術ブログ記事・ホワイトペーパー
  • 講義資料・研修テキスト

やることはシンプルで、

  1. 想定読者(新人研修/中堅向け/社外顧客向けなど)
  2. 評価してほしい観点(正確性/実務性/網羅性/説得力など)
  3. 出力フォーマット(全体総評・改善点・書き換え例・TODO など)

を決めたうえで、この記事のテンプレートをベースに prompts/ に追加するだけです。

ハルシネーションを抑えるための補足

技術文書の推敲では、モデルが「実際には書かれていない内容」をそれっぽく補ってしまうリスクがあります。

今回のテンプレートでは、次のような対策を入れています。

  • 対象は「ユーザーが貼った原稿だけ」と明示
  • 外部情報で内容を上書きしないように指示
  • 分からない箇所は「不明」「要確認」「推定」と明示させる

さらに厳格にしたければ、テンプレート末尾に次のような文を追加しておくとよいでしょう。

重要:
- 原稿に書かれていない事実関係については、一般的な知識に基づく補足はしてもよいが、
  それが「原稿の内容」であるかのようには書かないこと。
- 技術的事実に関するコメントで確信が持てない場合は、「推定」「要検証」と明示すること。

まとめ

  • Codex CLI では、

    • AGENTS.md で共通スタイル・編集方針
    • prompts/*.md で読者レベル別の推敲テンプレート
    • config.toml の profile で「推敲専用モード」
      を定義することで、毎回プロンプトをコピペせずに、自分の技術文書の推敲を自動化できます。
  • 初心者向け原稿と専門家向け原稿では、

    • 読者前提
    • 構成・流れ
    • 説明の粒度
    • 日本語スタイル
      の観点が異なるため、テンプレートを分けておくと実務的です。
  • 同じ仕組みは、書籍原稿だけでなく、社内設計書・OSS の設計ドキュメント・技術ブログなど、さまざまな技術文書に応用できます。

「AI に技術文書の推敲を手伝わせたいが、毎回プロンプトを工夫するのは面倒」という場合は、まずここで紹介した 2 つのテンプレート(初心者向け/専門家向け)から導入可能です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?