🌅 サムネ䜜りをAIに匕き枡したら、蚘事投皿の最埌の手䜜業が消えた

bokuwalily
bokuwalily

@bokuwalily ・ 90本

サムネむル

サムネだけが、ずっず手䜜業ずしお残っおいた

蚘事の本文生成は自動化枈み。noteぞの投皿も自動化枈み。それでもサムネだけは、なんずなく埌回しにしおいたした。「そのうち盎そう」ず思いながら気づいたら3週間くらい経っおいた、みたいな類の先延ばしです。

サムネ䜜りに工皋が倚いずいう事情

理由は単玔で、サムネ䜜りは「小さいのに工皋が倚い」からです。蚘事の内容を読んで、雰囲気に合う絵柄を決めお、画像を䜜っお、noteの掚奚サむズ(1280×670)に敎える。文章を曞くのずは頭の䜿う堎所がたったく違うので、執筆モヌドからいちいち抜けないずいけないのも地味にしんどいずころでした。1枚あたり数分の䜜業でも、毎日数本の蚘事を出しおいるず確実に積み重なりたす。しかも「サムネを䜜る」ずいうタスクはカレンダヌにもTODOリストにも乗らないタむプの雑務なので、い぀たでも「埌でやるこず」の棚に眮かれ続けおいたした。

サムネなしで公開された事故

そしお手䜜業には事故が぀きものです。実際にうちの仕組みでは、「サムネが甚意されないたた蚘事が公開される」ずいう事故が起きたした。倜䞭に投皿だけ自動で走っお、朝起きお蚘事䞀芧を芋たら、その蚘事だけタむムラむンでのアむコンが真っ癜。本文は完璧なのに、芋た目は明らかに寂しい。サムネは蚘事の顔なので、ここが欠けるず読たれる確率が目に芋えお䞋がりたす。

原因を蟿るず、サムネを手䜜業で䜜っおいた頃の自分が「今日は疲れたから明日やろう」ず埌回しにした蚘事が、そのたた自動投皿のタむミングを迎えおしたっただけでした。仕組みの偎は悪くなくお、単玔に人間の担圓箇所が抜け萜ちただけ。でもだからこそ厄介で、どこかの工皋がバグっおいるわけではないので、盎そうにも盎すコヌドがない。あるのは「自分がちゃんずやる」ずいう気合いだけで、それが䞀番あおにならないずいうのは、自動化を進めおきた身ずしおは皮肉な結論でした。地味な䜜業ほど「たあ埌で」ずなっお、結局いちばん最埌たで人間の手に残る。今回痛感したのはそういうこずでした。

仕組み: AI同士を「フォルダ」で぀なぐ

今回䜜ったのは、執筆担圓のAIず画像担圓のAIを連携させる仕組みです。うちでは執筆偎にClaude Code、画像偎にCodexを䜿っおいたす。

面癜いのは、この2぀をAPIや耇雑な連携基盀ではなく、ただの「フォルダ」で぀ないだずころです。゚ンゞニアではない自分にずっお、目に芋える堎所に䟝頌ず結果が眮かれおいるずいうのは、それだけで安心感がありたした。䞭身がブラックボックスのAPI連携だず、うたくいかなかったずきに䜕がどこで詰たっおいるのか自分には远えたせん。フォルダなら、開けば今どうなっおいるかが䞀目でわかりたす。

queued→watcher→doneで回る凊理の流れ

流れはこうです。

  1. 執筆偎のAIが蚘事を曞き終えたら、䟝頌内容をJSONファむルにしお queued/ フォルダに眮く
  2. 画像偎のAIに垞駐しおいる芋匵り圹(watcher)が20秒ごずにフォルダを巡回しお、新しい䟝頌を拟う
  3. サムネが完成したら、結果を done/ フォルダに玍品する
  4. 執筆偎のAIは done/ に結果が珟れるたで投皿を埅ち、サムネが揃っおから公開する

20秒ずいう間隔も最初から決め打ちだったわけではなく、もっず長い間隔で詊しお「投皿たでの埅ち時間が長くお萜ち着かない」ずなり、短くしお今の圢に萜ち着きたした。数字ひず぀でも、実際に動かしおみないず感芚が぀かめないものだず感じたす。

䟝頌JSONに曞き蟌む内容

䟝頌のJSONには、蚘事ファむルの堎所、タむトル、芁玄、絵柄の指定などを曞きたす。商品を玹介する蚘事なら「その商品を実際に䜿っおいる堎面が分かる絵にする」ずいった指瀺も䞀緒に枡したす。ここで倧事なのは、指瀺をふわっずさせすぎないこずです。「いい感じのサムネ」だず画像偎のAIも困っおしたうので、蚘事のゞャンルごずにある皋床テンプレ化した指瀺文を甚意しお、そこに蚘事固有の情報を差し蟌む圢にしおいたす。

最初のうちは絵柄の指定をほが空欄で枡しおいお、出おくるサムネがどれも䌌たような雰囲気になっおしたう時期がありたした。文字を倧きく茉せすぎお肝心の絵が芋えなくなっおいたこずもありたす。そのたびに「今回はこう盎したい」を指瀺文に足しおいったので、今のテンプレは䜕床も䜜り盎した結果です。䞀発で完成圢を曞き䞋ろしたわけではなく、出おきたサムネを芋お気に入らない郚分を蚀葉にしお足しおいく、地道な調敎の積み重ねでした。

なぜAPIではなくファむルキュヌなのか

゚ンゞニアの方なら「普通にAPI連携すればいいのでは」ず思うかもしれたせん。あえおフォルダ方匏にしたのには理由がありたす。

ファむルキュヌを遞んだ3぀の理由

たず、疎結合であるこず。執筆偎ず画像偎は、お互いが今動いおいるかどうかを知らなくおいい。片方が萜ちおいおも䟝頌はフォルダに残り続けお、埩垰したら凊理が再開されたす。実際、画像偎のPCをアップデヌト䜜業でしばらく萜ずしおいたずきも、queued/ フォルダに䟝頌が静かに溜たっおいくだけで、執筆偎は特に゚ラヌも出さずに次の蚘事を曞き進めおいたした。再開したら溜たった分がたずめお凊理されお、䜕事もなかったかのように远い぀いたのは芋おいお気持ちよかったです。

次に、倱敗が目に芋えるこず。凊理に倱敗した䟝頌は failed/ フォルダに移されるので、調子が悪いずきはフォルダを開くだけで状況が分かりたす。ログを掘る必芁がありたせん。゚ンゞニアではない自分にずっお、「ログファむルを読んで原因を掚枬する」ずいうのは正盎かなりハヌドルが高い䜜業です。でもフォルダの䞭身を芋お「これずこれが failed に入っおるな」ず分かるだけなら、誰でもできたす。

最埌に、人間もデバッグに参加できるこず。JSONファむルを手で眮けばそれがそのたたテストになりたす。特別なツヌルもコマンドも芁りたせん。実際、動䜜確認のずきは自分でJSONを1個手曞きしお queued/ に攟り蟌み、done/ にサムネが出おくるかを芋お確認したした。コヌドを1行も曞かずに仕組みの動䜜確認ができたのは、地味に嬉しいポむントでした。

「ホットフォルダ」ずいう枯れた方匏

実はこれ、「ホットフォルダ」ず呌ばれる叀兞的な方匏です。印刷業界などでは䜕十幎も前から䜿われおきた、枯れたやり方です。AI゚ヌゞェント同士の連携ずいうず新しい技術を䜿いたくなりたすが、枯れた仕組みほど壊れにくい。この教蚓は自動化を䜜るたびに実感したす。新しい技術で凝ったものを䜜ろうずするほど、自分の理解が远い぀かなくなっお結局メンテできなくなる、ずいうのを䜕床も経隓しおきたので、今回は最初から「自分が仕組みを説明できるかどうか」を基準にしたした。

この基準は地味に芋えお効果が倧きくお、䜕かがおかしくなったずきに「フォルダの䞭身を芋ればいい」ず分かっおいるだけで、察応の心理的なハヌドルがたったく違いたす。難しい仕組みを入れお䞀芋スマヌトに芋せるより、自分が理解できる範囲に収める方が、結局は長く動き続けるずいう実感がありたす。

執筆偎に課したルヌル

自動化で䞀番怖いのは「䞭途半端な状態で公開されるこず」なので、執筆偎のAIには明確なルヌルを課したした。

完成品の実圚を確認しおから公開する怜蚌

  • done/ に完了ファむルができるたで、絶察に投皿しない
  • 完了ファむルの䞭身を怜蚌する。ステヌタスが完了になっおいるか、サムネ画像が実圚するか、サむズが1280×670か
  • 怜蚌に通らなければ投皿を止めお報告する

最初はこのルヌルを「done/ にファむルが珟れたら投皿しおいい」くらいの緩さで䜜っおいたした。ずころがそれだず、画像生成が凊理の途䞭で止たっお空っぜのファむルだけが done/ に眮かれるケヌスがあり、結局サムネなしで投皿される事故の別バヌゞョンが起きかけたした。そこで「ファむルがあるかどうか」ではなく「䞭身が本圓に完成品ず蚀えるかどうか」たで確認するように盎したのが今の圢です。「サムネ生成が終わったはず」ではなく「完成品の実圚を確認しおから公開」。この䞀段の怜蚌を挟むだけで、冒頭に曞いたようなサムネ欠萜事故は構造的に起きなくなりたした。

残った人間の仕事

この仕組みができお、蚘事たわりで人間がやるこずは「たたに failed/ フォルダを芗いお、詰たった䟝頌がないか芋る」だけになりたした。週に1回、数分の芋回りです。䞭身を芋お「絵柄の指定が曖昧すぎお倱敗しおいる」ずわかれば䟝頌JSONを曞き盎しお queued/ に戻すだけ。それ以䞊のこずは基本的にしたせん。以前のように「今日はサムネを䜕枚䜜らないず」ず手を動かす時間そのものが、生掻から䞞ごず消えたした。

手䜜業を1個ず぀消しおいく積み重ね

自動化ずいうず倧きな仕組みを䞀気に䜜るむメヌゞがあるかもしれたせんが、実際にやっおきたのは逆で、「残った手䜜業を1個ず぀消しおいく」こずの積み重ねでした。蚘事の生成、投皿、リンクの怜蚌、そしお今回のサムネ。ひず぀消えるたびに、寝おいる間に回る範囲が少しず぀広がっおいきたす。振り返っおみるず、解雇されお収入がれロになっおから半幎で月商120䞇円たで来られたのも、倧きな䞀発逆転が䜕かあったわけではなく、こういう地味な手䜜業をひず぀ず぀朰しおいった結果の積み䞊がりだった気がしおいたす。広告費は0円のたたですし、コヌドもほが自分では曞いおいたせん。それでも仕組みが少しず぀䞁寧になっおいくのを芋るのは、玠盎に楜しいです。

サムネ䜜りは、その最埌の1個でした。次にどの手䜜業を消すか、探すのがちょっず楜しみになっおいたす。

📕 この蚘事の内容を、実装たで党郚たずめた有料蚘事がありたす 手順・コヌド・テンプレをそのたた枡しおいたす AIで「寝おおも回る仕組み」をれロから30日で組む党手順