このブログの更新をblogsyncというCLIツールで行うようにした。
ブログ管理用のGitHubのリポジトリを作って、過去記事をAPI経由で blogsync pull してGitにコミットし、新規記事を書いたらTerminalからpushできるようにした。
画像の埋め込みが迷いどころだったが、エーアイ様にはてなフォトライフにアップロードしてもらうスクリプトを書いてもらった。ついでにiPhoneの写真を上げるときのHEICからJPEG/PNGへの変換がだるかったので、形式変換とリサイズもスクリプトでやらせるようにした。
と偉そうに書いているが、実際にはGitHubのリポジトリ作るところから記事のpullまで全部エーアイ様にやらせた。エーアイ様は瞬時に要件を読み撮り実装を行ったが、私が管理画面からAPIKeyをコピペするのをサボったので実現が1ヶ月遅れた。
ブログ公開のワークフロー
ブログ公開までに必要なコマンドはmiseのタスクとして実装されている。
mise run new "記事タイトル"
を実行すると、記事執筆用のmarkdownファイルが生成され、Gitのbranchが作成され、Worktreeディレクトリがローカルに作られ、下書きが公開される。
続けて、記事をVSCodeなどのエディタで執筆したら、以下のコマンドで下書きを更新する。
mise run draft entries/entry/2026/08/15/123456.md
画像を追加したくなったら、markdownの記法で書いたあと以下のコマンドを実行すると、リサイズとはてなフォトライフへのアップロードを実行してくれる。
mise run images entries/entry/2026/08/15/123456.md
以上を繰り返し、公開できるようになったら以下のコマンドで公開する。
mise run publish entries/entry/2026/08/15/123456.md
公開したらGit worktreeとbranchを片づけて終了となる。
なぜblogsyncにするのか
以前は「ブログは管理画面で書いたほうが、どこでも書けるし入力支援も受けられるし楽では?」と思っていた。しかし最近は文章を書くときにGit管理とAI校正による恩恵を受けない方が少なくなってきた。
たとえば前回記事で告知したSRE Magazineの記事もGit管理だし、ゆるSRE勉強会 #15 ~ SRE Kaigi 2026 延長戦 ~で発表した以下のスライドも、k1LoW/deckというツールを使ってmarkdownで原稿を書き、Googleスライドに反映させる形で発表した。
この、 VSCodeで書く→Git管理→AI校正→公開 というワークフローにあまりに慣れすぎたため、はてなブログの記事も同様の恩恵を受けたかった。
文章をイチから生成AIに書かせると、いかにもAI臭いブログが生まれてしまうので、このブログではやることはない。一方で、私が書く文章は文体がちゃらんぽらんで、校正させるといつも相当数の指摘を受けるため、読みやすさの向上には役立っているはずだ。意図してちゃらんぽらんな文体でやっている部分はありつつも、今まで読みづらくてごめんねの気持ち。
最近の日記
というわけで、この記事はうまく公開されるかのテスト記事である。テスト代わりになんか最近の画像を適当に貼る。

ついに日傘を買った。コールマンの折り畳み式のもので、ローソンで売ってる。昨夏は品薄だったが今年は潤沢に在庫があるようだった。
しかし今年の関東は天気の悪い日が多く、今のところ日傘としての出番はコミケの入場前に1回使ったぐらいだった。

BUTA⭐︎FESTIVALという店で食べた「小林アイススペシャル」。冷やし中華らしい。麺はいわゆる二郎系のワシワシ麺だけど少し柔らかめに茹でられており、冷やし中華風のタレに合っていた。生姜やコロコロチャーシュー、ミニトマトが入ってるのもポイント高い。ただし冷やしだとニンニクはあまりにも生すぎてヤバい。

ナフサ不足で色を失ったポテトチップスのパッケージはよく報道されているが、堅あげポテトを撮っている人はあまりいなかったので買ってきた。数年後に見たら懐かしい気持ちになっているであろう。
感想
ここまで日記を書いてみた感想としては、画像をアップロードするのにいちいち mise run images を実行する必要があり、取り扱いがちょっとめんどい。しかもエーアイ様が「画像をcommitしてないとリサイズスクリプト実行不可」というガードレールを勝手に実装していたため、執筆途中でも強制的に中断してcommitする必要があり、文章を書くリズムが崩れる。
この辺の「文章を書いてて気持ちいい」を生成AIが理解できるようになるのはいつの日になるんだろう?

