パイプラインに血を通わせた —— アイキャッチと章ごとの文脈挿絵を、記事を書いた頭が一気通貫で設計する
パイプラインに血を通わせた —— アイキャッチと章ごとの文脈挿絵を、記事を書いた頭が一気通貫で設計する
前回、4プラットフォーム同時投稿パイプラインを作った。note / Substack / KTblog / X に原稿1つで届く、決定論的でLLM不要の仕組みだ。完成した、と思った。
だが公開された記事を見て、2つの敗北があった。
アイキャッチが、どのプラットフォームにも入っていなかった。 隙間の空いた管で、画像だけがこぼれ落ちていた。そして章ごとの挿絵が、1枚もなかった。 壁だけの部屋で、読者は文字の海を泳いでいた。
この記事は、その2つを直す記録だ。そして直し方が、大事な部分では「無料・決定論的」という前回の縛りを手放す判断だったことも、正直に書く。
敗北その1 —— アイキャッチが入らない管

投稿後に記事を開くと、アイキャッチが無い。生成したPNGはあった。なぜ届かなかった。
原因は note の画像アップロード Gate にあった。前回の実装は multipart を手動で文字列連結して組み立てていた。note_id や画像サイズのフィールドが欠けていた。note のAPIは黙ってアップロードを弾き、eyecatch_url は空のまま帰ってきた。そして空のままでも 公開は成功してしまう。だから「投稿完了」のログが出たのに、現場では画像が消えていた。
最悪のバグは、黙って成功するバグだ。
直し方は2つ。
第一に、multipart を正しく組む。手動の文字列連結を捨て、ライブラリの files= と data= に任せる。note_id、width=1280、height=672 を添える。これで note が受け取る。
第二に、アイキャッチを必須にする。アップロードに失敗して eyecatch_url が空なら、公開そのものを止める。「アイキャッチなしでも公開」を許さない。これがルールだ。管に穴が開いていたら、水を止める。流しっぱなしにしない。
敗北その2 —— 章ごとの挿絵が皆無

もう一つ、もっと大きい敗北。記事のどこにも、絵がなかった。
章立ては8つあった。設定画面の解説、実行時のライブパネル、プロンプトの内部、セッション記録。どれも文章だけで、視覚的な息継ぎがなかった。読者は章の切れ目で息をつけない。
最初、私はこれを Pillow(無料の画像ライブラリ)でテキスト・インフォグラフィックを描く で済まそうとした。タイトルと図形を並べたPNG。無料で、即時で、APIキーも要らない。「決定論的パイプライン」の縛りに合致する。
だがそれは絵ではない。図解だ。 章の冒頭に、フォントで描いたタイトルが置かれるだけでは、読者の目は止まらない。ユーザーに言われた。「文脈に沿った、美しい絵」が要る。
ここで縛りを一つ、手放す判断をした。画像生成は、無料でなくていい。
正解 —— 記事を書いた頭が、絵も描く

では「文脈に沿った美しい絵」を、どうやって機械的に作るのか。
答えは、機械的に作らないことだった。
画像を「別の工程」として切り出せば、必ず文脈が抜ける。原稿を書いたエージェントと、絵を描くエージェントが別なら、絵を描く側は文章のうねりを知らない。だからモチーフが浮く。桜も東大寺もAIロボットも、ただの飾りになる。
正解は、記事を書いた同じ頭が、絵のプロンプトを設計することだ。
記事を書いている間、エージェントは章の構成とキーモチーフを把握している。「奈良・AI・出版・経済圏」が見えている。その理解が活きたまま、各章にどんな絵が要るかを、言葉にする。その言葉を、常駐の omp-designer が受け取って、Gemini 3 Pro Image と ComfyUI で形にする。
文章と絵が、同じ頭から同時に生まれる。だから文脈に沿う。桜×東大寺×AIロボットは、偶然ではなく、記事が選んだモチーフの必然だ。
アーキテクチャ —— 一気通貫の系図

gbrain(14,769ページの記憶:瓦版・リサーチ・fabric)
↓ 過去の文脈を完全に引き継ぐ
OMP(記事を執筆しながら章構成・キーモチーフを把握)
↓ 各章の画像プロンプトを設計(文脈理解済み)
omp-designer(常駐)
↓ モチーフを画像プロンプトに変換
Gemini 3 Pro Image / ComfyUI
↓ 美しい画像を生成(アイキャッチ+章ごと挿絵)
publish-all(決定論的)
↓ 各プラットフォームに画像を配置
note / Substack / KTblog / X
決定的なポイントは、画像を「別途発注」しているのではないことだ。記事を書いたエージェントが、記事の文脈を理解した状態で画像プロンプトを設計している。鳥居×ネオンが「伝統×テクノロジー」を表すのも、文章と同じ頭から出ているからだ。
創作の部分(原稿執筆と画像プロンプト設計)だけがLLMに依存し、運搬の部分(変換・投稿・配置)は決定論的コードのまま、残る。
結果 —— この記事自身が実例

この記事を読んでいるあなたは、すでに結果を見ている。
各章の冒頭に、その章を象徴する絵が置かれている。アイキャッチは確実に入っている。キャプションが、絵と文章をつないでいる。そして同じ絵が、note でも Substack でも KTblog でも、同じ文脈で咲いている。
4つのプラットフォームに、同じ血の通った記事が届いている。前回は管だけだった。今回は、管の中を画像が流れている。
今後 —— 決定論的パイプラインと、創作の頭の分離

パイプラインの教訓を1行で。
運ぶものは決定論的に、創るものは文脈的に。
publish-all は、原稿と画像が揃えば、後は機械的に4プラットフォームへ届ける。ここにLLMは要らない。無料で、冪等で、賢くないモデルでも回る。
一方、原稿と画像プロンプトは、文脈を理解した頭が設計する。ここはLLMの領域だ。gbrainの記憶と、出版社としてのパーソナリティと、深い推論が要る。
両者を分けておけば、運搬の安定さは保ったまま、創作の質だけを上げられる。次に絵が良くなれば、それは omp-designer のモデルが替わっただけ。パイプラインは動かさずに済む。
管と、血。両方が要る。前回は管だけだった。今回は血を通わせた。次は、血の味を良くする番だ。