コードを書くだけじゃない、コーディングエージェントを利用した年代物サイトのマイグレーション by acidlemon

YAPC::Fukuoka 2025
トーク(20分)

コードを書くだけじゃない、コーディングエージェントを利用した年代物サイトのマイグレーション

acidlemon acidlemon acidlemon
3

筆者は20年以上前の大学生の頃から「自分のサイト」というのを立ち上げて、雑記のような記事を書いていました。
当時はまだウェブログという言葉もない頃で、ざっくりいうとWeb日記といった感じでサイトを更新していました。

その時々の興味により、テクノロジーの話、旅行の話、ゲームの話、近況の話などいろいろなことを書いてきて、
(多分に黒歴史のようなものも含まれますが)今も20年以上前の記事が読めるようにデータを保持しています。

StrictなHTML4.01 / XHTML 1.0やCSS2をメモ帳でちまちま手打ちすることからはじめたサイト作りも、
月日の流れと自分の技術力の向上によりC++でCGIをかいてHTMLを生成するようにしたり、
Perlの会社に入社してPSGIアプリケーションとして書き直したり、その後Goの流れが来たので
Goで書き直したり…とサイトを生成するプログラムをその時の技術的興味に合わせて書き換えてきました。

記事のデータ自体も最初は生のHTMLのフラグメントを書く方式で18年くらい書いていて、さすがに
今時生のHTMLはないだろう、ということで2020年くらいにマークダウンで書けるように改修しました。
それでも、旧記事はデータに手を入れず生HTMLのままにしていました。

今般、そんな趣味全開で維持してきたサイトをまた久々に書き直そうと思い立ち、
GoのHugoというツールで静的生成する方向に舵を切りました。

今回の発表では、そんな20年以上続くサイトのマイグレーション作業として、旧記事を生HTMLから
マークダウンに変換したり、メタデータを生成したり、その他いろいろ雑多な移行作業をコーディングエージェントとともに
サクサク進めて1週間弱で終わらせたときに得られた、「コードをゴリゴリ書かせる以外のコーディングエージェントの使い方」を話します。