6年前に作って放置してたChrome拡張機能をアップデートする
DE-TEIUです。
昔、自作のChrome拡張機能をいくつか公開していたんですが、「おい、バージョンアップしろよ」的な警告をずっとスルーしていました。 (利用者はいないしクソアプリなので別に良いっちゃ良いんですが)
気が向いたので、試しにどれか最新のChrome拡張機能の仕様に合わせてバージョンアップしてみようかと思います。
対象
いくつかあるんですが、今回の標的はこいつにします。
サイトの表示を見たところ、しっかり警告出てますね。
ところでこれ、今入れても動くんですかね?やってみよう。
あ、まだ動きはするのね。
こういう、画面にワイパーを表示するだけのChrome拡張機能です。
バージョンアップしよう
公式ドキュメントはこれか。
拡張機能のソースコードはこれ。
…これぐらいなら、Claude Codeに丸投げしたらガッとやってくれたりしないかな?と思って雑にプロンプトを投げてみた。
これはGoogleChrome拡張機能のソースコードです。
6年前に作ったものなので、おそらく最新のChromeの仕様にあわせていくつか改修が必要になるはずです。
改修方針を決めて、対応してください。
で、諸々の調査やら対応やらをやってもらい、最終的にこういう改修になった。
- Manifest V3対応
- バージョンを 1.1 → 2.0 に更新
- page_action → action に変更(V3では統合)
- background.scripts → background.service_worker に変更
- web_accessible_resources を配列からオブジェクト形式に変更
- 廃止API対応
- chrome.tabs.getSelected → chrome.tabs.query
- chrome.extension.getURL → chrome.runtime.getURL
- contextMenusのonclickプロパティ → chrome.contextMenus.onClickedリスナー
- Service Worker対応
- コールバック形式 → async/await形式
- Service Worker再起動時のメニュー再生成対応
動作も問題なし。これでストアに出すだけ出してみよう。
結論としては、「Chromeの拡張機能のバージョンアップはClaude Codeでもできるぞ」です。おわり