世界で僕しか使ってないであろう GEM_HOME を全ての Ruby バージョンから共有して使うときの C 拡張を作り直す gem の gem-repair というものがあり、これに別の gem だった gem-sweep という lib フォルダの下の .so を掃除する機能を統合させた。
https://github.com/hsbt/gem-repair/pull/1
ついでに rubygems の plugin としても動くようにして、Ruby 3.3 で gem install した後に 4.0 にも伝播させて rebuild というのを実行させるようにした。
これで、gem installl の時間は少し伸びるものの、自分が使っているバージョンで常に共通して gem を使うことができつつ、インターネットから持ってこなくてもいい、となった。便利。
Bundler にはすでに遅延インストールである cooldown 機能が提供されているのだが RubyGems の方は先に index を Compact Index に置き換えてから cooldown 機能を提供しなくてはいけない、という順序がありこの置き換えは 4.0.x 向けではないなあとして 4.1.0 に回すことにした。
で、これだけ時間差が起きると gemrc で設定しなくても上手いこと動いてくれよ、と思うので Bundler で設定している値をそのまま gemrc に引き継ぐようにしておいた。
https://github.com/ruby/rubygems/pull/9852
なお、初めて cooldown を使うという人向けに gemrc だけ設定しても Bundler に聴くようになってるし、両方設定した場合はより遅い方が優先される。こういう設定をあちこちに設定するの、本当に面倒なのでできるだけ統合していきたい。
claude のスキルを結構作り込んでいて、https://github.com/lestrrat-ai/claude-code-plugins をベースにしつつ、ブランチを切った後にレビュースキルを呼び出すと
という感じで動く。これを使って毎日10本前後回すってのが自分の仕事。内部にはもう少し agent や skill を切って個別に呼び出せるようにしていたり、model/effort を個別に指定して、より効果的に動くようにはしている。こういうのデプロイワークフローをいじる、みたいな感じで好きな部類なので細かすぎて伝わらず、再現性もないにも関わらずいじり続けていると気がついたら夜、みたいなことがあり異様に疲れてしまう。
実際これによって開発はバンバンやってるのでいいっちゃいいのだが、疲れの方が深刻なのでちょっと手抜きして行こうかな、と最近思う。