前回、Claude Codeを使って、Chrome拡張を作ってみましたが、使ってみると色々修正したいところが出てきます。
今回、どのように改善していったかを書いていきます。
CLAUDE.mdを書く
GitHubにおいているとおりですが、2つのルールを設定しました。ざっくり以下のようなものです。本来、アーキテクチャとかも書いたほうが良いのでしょうか、コードが少ないのでなくても問題がなさそうです。
改善の仕方
do improvement と言ったら下記を行う。
improvement以下にある.mdファイルに書かれている内容を一つずつやる- 毎回現在のブランチから新しいブランチを作る
- ファイルがなくなるまで続ける
- ドキュメント更新を行う
ドキュメントの更新の仕方
update docs と言ったら下記を行う。
docs/.current-docs-shaに書かれているコミットハッシュから差分を見る- 差分に従ってドキュメントを書く
- commit後に、最新のコミットハッシュを
docs/.current-docs-shaに書く - commitして終わり
改善の仕方
ルール通りですね。簡単な指示を、improvement/*.md に記載して、後は、claude コマンドから、do improvement っていうだけです。
動作確認して追加でやってほしい内容があったら、プロンプトから指示したりしますが、たまにあるくらいで、あんまりないです。
ただ、指示自体が実現不可能だったりしても、「実装してしまう」ことや、「実装方針が間違っている」ということはありました。
例えば、今回のものだと、popup.htmlからのボタンクリックで、gather.townのHTML内から直接クリックイベントを起こそうとしたのですが、できなかったので、別の方法で行うように指示をしたりしました。
ですが、そういう機会はあまりなく、大抵のケースは、Markdownを書いて、do improvement と言うだけで済みました。
また、ちょっとびっくりしたのですが、プロンプトで質問したところ、自分で、improvement/15.md を作ってくれました。
偉すぎでは...?
終わり
CLAUDE.mdに書いた英語がだいぶ怪しいんですが、こちらの意図通りに動いていますね。
しかし、マジで仕様を考える以外にやることないなぁ...(Makefileは手で書いたけど、それくらい)。