2026年3月6日から二週間ほど有給をとって休んでいる。有給がそれなりに余り散らかしていたからというのもあるが、なんかどうも最近「生活の荒れ」を感じていたからである。
常にちょっと調子が悪いのは置いとくとして (それはたぶん加齢によるものだから……) 、それ以外にもここ2ヶ月くらいで色々と身体に変調をきたしていた。具体的には以下のような症状である。
このへんだろうか。風邪を引いて熱が出たとかそういうのではなく、どちらかというとメンタルが不調でそれが生活の荒れとして現れてきたっていう構図かもしれない。
ツイッターでは「AI に疲れて頭がおかしくなった友人」みたいな記事も見かけた。自分もそうなのか?AI 疲れが原因なのかそれ以外が原因なのかはよく分からないが、少なくともこれらはここ2ヶ月くらいで起こった変化である (自分は熱心に AI の動向を追いかけているほうだとは思う) 。
2ヶ月より前は毎日シャワーを浴びていたし、布団で寝ていたし、まあご飯は前から食べるのが速かったけどもう少しゆっくり食べていたし、子に怒鳴るなんてことはいままで一度もなかったはずなのである。ゲームも買うだけ買って積んでいる。これは前からかもしれない。いやしかし、何週間も1秒もゲームを起動しないなんてことはなかったんだよな。大好きだったナイトレインも全然やっていない。葬儀屋のジャーナルは止まったままだし、学者は触れてすらいない。いまさらながら買ったブレワイも、自分は大して進めることができていない。妻はもうクリアした。それはそれで早くね?
ということで、「なんか俺おかしいんじゃね?セルフネグレクトっぽくね?」とさすがに気付き、ちょっと休もう!ということにしたわけである。
上司やチームメンバーは休みを快諾してくれた。助かる。3月のめちゃくちゃ忙しいときにすまんな……。
で、休みに入ったはいいものの、最初の数日は職場の様子が気になって仕方がなく、ちょいちょい Slack を覗いてみちゃったりメールを確認してみちゃったりしていた。もちろん暇さえあればツイッターで Claude Code や Codex の最新情報を確認している。おやおや、休むの下手か?その手のひらに握りしめている板っ切れを手放せと言っているんだ。
常日頃からスマホを肌見離さず携帯していて、Slack やらツイッターやらメンションがくればただちに開いて確認し、という生活スタイルをずっとしていたわけで、このような所作が身体に染み付いてしまっていてもはや癖になっていることが分かる。やめらんねぇ。よくよく考えてみれば、このような振る舞いをしているから「オンとオフ」の切り替えが曖昧になってしまって、だから休みの日も休まることがなく、疲れちゃってんだよっていう話なのかもしれない。「AI 疲れ」なんて単語を出したが、それは「最後に乗っかった追加の圧」にすぎなくて、元々ちゃんと休めてない生活スタイルだったのかもしれない。気付き。
ということで、それに気付いてからはできるだけスマホを見ないし、Slack も開けないし、ツイッターも開けないし、ご飯はゆっくり食べるし、子がご飯食べるのミスってもまあ2歳だしなって思うようにするし、シャワー毎日浴びるし布団で毎日寝るっていうのを心がけている。超普通。超普通だが自分にとっては普通ではない。摩擦がすごい。なんかもっと急がないといけないような気分になる。やらないといけないことをやってないような気持ちになり、四六時中そわそわしている。けど、このペースに気持ちを落ち着かせないと身体も心も休まらないっていう話なんだと思う。なので頑張って休む。慣れろ。
自分の生活が荒れてしまった根本原因というのはよく分からない。仕事が心配なのかもしれないし、実際に AI 疲れなのかもしれないし、両方かもしれないし、毎日ツイッターのどこかで起きている炎上をぼんやり眺めているせいかもしれない。他にもあるかもしれない。4月から子を保育園に預けるような予定もあり、ナーバスになっているのかもしれない。原因はおそらく一個ではない。原因を片っ端から取り除く……というのは難しいだろう。好むと好まざるとに関わらず、多かれ少なかれ、自分はそれらの中で暮らしていかねばならない。しかし、なにはともあれ、とりあえず多少無理やりにでも「超普通」をやっていくことで、心身ともに落ち着いていくんじゃないかなーなんて思っている。実際一週間ほど休んで落ち着いてきた。この調子だ。
あと、仕事を再開してからすぐにまたへばってしまってもしょうがないので、仕事を再開してからも体調を維持可能な生活スタイルにすることを目指さないといけない。ここに並べた超普通の生活スタイルを、超普通に普段からやっていればいいような気がしている。そんな難しいことでもあるまい。超普通なんだから。逆に超普通ができなくなってきたらヤバいかもよ、っていう、ある種のバロメーターとも言える。
休んで一週間ほどのいまであるが、まだゲームや読書の習慣が戻ってきていない。やる気が出てこない。別に無理してやる必要はないのかもしれないが、なんだろうな、「やりたいゲームはあるのにやる気が湧いてこない」みたいな不思議な気持ちなのである。やりたいんだ。しかしなかなか PC の前に座れないというかなんというか。でもこれも超普通の生活をしていたら、いずれまたやる気が出てくるような気がする。いったん自然に成り行きに任せてほっとこう。
Claude Code の Opus 4.6 というのが最近使えるようになった。2026-02-05 のことだったようだ。
https://www.anthropic.com/news/claude-opus-4-6
ほどなくして、それの「fast モード」というのが使えるようになったらしい。
https://code.claude.com/docs/en/fast-mode
自分はちょっと勘違いしていた。fast っていうから「短慮になる代わりに回答が速いよ」みたいなやつかと思ったらそうじゃない。「2.5倍速いですが、そのかわり6倍くらいお値段高いです」っていうモードのようだ。専属の寿司職人が6人くらいべったり張り付いてサービスしてくれるみたいなノリだろうか。そう考えたら高いし速いしっていうのも頷ける気がする。
この fast モードは Claude Code の Subscription (Pro とか Max とか) では試すことができなくて、従量課金オプションを有効にした状態でないと使えない。自分はずっと Subscription の Max (100 のほう) で Claude Code を使っていたので、このままでは fast は味わえないかと思っていた。
じゃあ fast 使えないか、いったん諦めるかーと思っていた矢先、Anthropic さんは俺達に $50 をプレゼントしてくれた。たぶん 「この $50 で fast 試してごらんよ。飛ぶぞ」 っていうことなんだと思う。まあそういうことであればね、こちらも抜かねば無作法というもの。ちょっと試してみようという気になりました。
最近は agent teams なんて機能も入っていて、トークンをモリモリ消費するだけなら実に簡単になっている (実際に期待するアウトプットをもらうためにはそれなりに工夫が必要かもしれないが) 。今回もせっかくなので agent teams をみだりに持ち出してみようと思う。何か素振りをしてみたいではないか。何かお題はないか。
ところで自分はエルデンリングというゲームが好きだ。なので (?) 、とりあえず 「エルデンリングみたいなゲームを作って。3Dは大変だと思うから、2Dで良いよ」 というお題で Claude Code にゲームを作らせてみる。ちなみにこれは今回に限らず、モデルがちょいと変わったときや新しいツールなんかが出てきたときには同じプロンプトで何が出てくるかを試している。いわゆるベンチマーク的なやつのつもりである。
fast を試すためには、以下が必要。
/fast を実行し、fast モードを有効にするCLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 という環境変数を設定した状態で Claude Code を起動する)たぶんこれだけでいい。その上で、以下のプロンプトを打ち込んで Claude Code に作業をさせてみた。
エルデンリングの2D版っぽいゲームを作って。まずはよくプランを練って、作業工程をできるだけ細かく分解してね。
agent teams 機能を使って作業を進めて。
このプロンプトを放つと、Claude Code は作業を開始した。あきらかにいつもよりもログが流れるスピードが速い。これは速い……!これが fast……!具体的にどれだけ速いかっていうのを示すのは難しいが、しかし確実に速い。2.5x 速いというのは伊達じゃないことが分かる。スピードは正義だ。エルデンリングできちゃうかもしれない。
1分が経過したあたりで claude.ai のダッシュボードを確認してみたところ、なんとすでに$3が消費されていた。「$3/分」なんですかあなた?あまりにも高くない?Anthropic さんがくれた$50なんて、このままではものの10分そこそこで使い切ってしまう。仮に一時間稼働させたら…… 概ね$180くらいになるってこと?時給30,000円か?それはもうもはやちょっといいとこの正社員の給与水準な気がするな?
もうしばらく流れていくログを見守った。いつものように「完璧です!」とか言いながら Claude Code は作業を進めていく。15分経った。予想通りくらいのタイミングで$50が枯渇した。Claude Code からは非情にも「もうお金がないよ! /fast 終わりにするね!」という報告がなされた。ああ知ってる。もうお金はない。知ってる。
さて、この15分で何ができあがったかと言うと、見下ろし型のアクションゲーム風の何かが出来つつあった。
画面には自キャラがいるし、骸骨らしき敵がいるのも分かる。なんと祝福で休めるらしい。操作方法が分からなかったので Claude Code さんに聞いてみたところ、攻撃はスペースボタンらしかった。
色々動かしてみたところ、
まあだいたい想像通りくらいのクオリティであった。ちょっとゲームとは呼べない感じである。まあせっかくここまで生成してもらったし、もう少し、ギリギリ遊べるくらいまでは作り込んであげようかな。
ゲームのデキはさておき。感想としては「とても速い Opus だが、しかしやたら高い」である。速いのはたいへん嬉しいが、このお値段を承知の上で使うべきタイミングがあるのか?と問われるとちょっと微妙である。普段使いって感じじゃないな。じゃあ何かこう、とっておきのタイミングで使うのかい?って言われると、それはいったいどういうときなのか。「サービスに障害が起きているから、いますぐ速攻で Claude Code くんに原因を調べてもらわなきゃ!」みたいなときには便利なのかもしれない。
そもそも Claude Code はすでに十分に速い。人間が間に挟まる場合、fast じゃないやつでもすでに人間がボトルネックになる現状があるだろう。なので fast にするときには人間を間に挟むんじゃなくて、ある程度 Claude Code に投げっぱなしでそれなりにデッカイ仕事を延々とやらせる、みたいな作業方式のほうが合うんだろうなーという気がする。大富豪なら普段使いしてもいい。
従量課金オプションはオフにしておいた。$50もらったときに、従量課金オプションが有効になっちゃってるらしい。意図せずお支払いが発生しないようにしような。
AI にコードを書かせる日々を送っているが、あんまりいっぱいごりごり書かせても実はあんまりうまくいかないよねという所感。
AI 開発によりコード生成速度が上がったが、それに人間の心やレビューが追いついていない状況があるように感じる。
生成されたコードにどれくらい責任を持つべきか?という観点でもいくらかのポリシーがあるように思う。
自分は3つ目の派閥であるが、しかし今後もっとモデルの性能が上がったりガワアプリのプロンプトが改善されたり、生成速度が何倍にもなったりした先には違う意見になるかもしれない。
コード生成の戦略も、バイブコーディングと呼ばれるような、テストや lint で一定のガードレールを引いた上であとは AI に生成を任せて大量にコードを作り出すやり方もあるし、Claude Code Action のようなものを引き合いに出せば、ややバイブコーディングよりは生成圧はマイルドなやり方もある。
バイブコーディングのようなやり方は、新規に何かを PoC 的に作り出すときにはとてもフィットする。数千行のコードがサクッと生成され、とりあえず動く。ちょっと気に食わないところがあればそれをまた AI に指示すれば直してもらえる。AI でのコーディング技術が登場する以前ではこういう体験は得られなかった。実際やってみるとおおーって感じになる。すごい。
なんだけど、これを継続してメンテナンスしていこうと思うと、すぐに AI だけの力では立ち行かなくなる。バイブコーディングしたときのコンテキストは失われ、なんとなく取り残されたドキュメントとコードをもとにして AI は続きを書こうと試みてくれる。しかし実際にやってみると既存の機能はぶっ壊れるし、ぶっ壊さないにしてもまあまあうまいコードが出てくるまでに大変な時間がかかったりする。ひどいときには既存のコードを消して「テスト通った!」みたいに言ってくることすらある。お前は俺か。インチキするな。
AI によるコード大量生産系のやり方は、既存の大きなコードベースがあるようなプロダクトには現状は適用が難しい。AI にコードを書かせるアプローチがまったく駄目かというとそうではなく、こういう土台の上ではプロンプトが重要になる。プロンプトを凝って、小さくコードを書かせる分には十分ワークする。しかしこれをやろうと思ったら、プロンプトを書く人間自身がしっかりとコードベースを理解している必要がある。設計原則や、アルゴリズムに詳しい必要がある。何を DRY にして何を DRY にしないかを選定できる必要がある。何が AI にフレンドリーで、何が AI にフレンドリーでないかを知っている必要がある。
バイブコーディングで大量にコードを生成した場合、コードを書かせた人間はどれくらいコードを理解しているだろうか。デッドコードがなくて、全部の行が必要であると言い切れるだけの理解をしているだろうか。書き捨てるコードならそんな理解をする必要もないのかもしれないが、しかし業務で「これはプロトタイプだから!真面目にやるときには書き直そうね!」って言って、それがしっかり書き直せたことがある人がどれだけいるというのか。意に反して、捨てたいコードが捨てられないなんてことはよくある話である。バイブコーディングして中身がてんでわからない状態のものを、このままメンテするしかない!みたいになったときに俺達は立ち向かうことができるだろうか。もっかい AI に書き直させればいい?そんなわけなくて、結局どこかで中身を理解した人間になる必要がある。
個人プロジェクトでとりあえずちょっと作ってみよう、くらいのものであればバイブコーディングはとても良いと思う。しかしちょっとでも長くメンテする可能性があるものについては、そういう作り方をしないのが賢明だろうと思う。作り出したものを読んで理解すればいいじゃん?っていう論説もあるが、動く確信を持ちながら書き進めたコードと、ただ読んで理解したコードとでは、その理解には大きな差がある。ちょっとの量なら読んで完全理解できるかもしれないが、たとえば数千行のコードをほいっと渡されて、読んで理解するのにどんだけ掛かるだろうか。まあまあ時間をかけて読んだとして、そのコードへの理解が正しいという自信を持てるだろうか。責任持てる状態になるのかっていう話。
これは近道をする力を得ているように見せかけて、実は泥沼であるようにすら思える。AI に大きな裁量を任せて作業を任せたとして、任せた部分は自分の理解がすっぽ抜けるのである。理解をしなくてよいか、あるいはすでに完全に分かっている領域以外は AI に任せるべきでない。仮に任せたとして、うまく動いたとして、それはたまたまであるし、さらに機能を追加しようと思ったときにぐだった土台 (コードというか自分の理解がぐだっている) の上で戦わないといけないから早晩うまくいかなくなる。
最近、Claude Code が output-style として Learning モードというのを出してきた。これは Claude Code にコードを書かせているときに、Claude Code が「(TODO:Human)」みたいなコメントと共に、人間が書くための穴埋めクイズみたいのを残してくれる機能である。
この機能は、バイブコーディングのような AI にまかせてもりもりコードを量産するような機能とは明らかに趣が異なる。ちょっと立ち止まって、人間に学びの時間を与えてくれようという AI の粋なはからいである。知らんけど。でもまあ自分も言いたいのはこういうことである。もりもりコードを書かせることにだけ熱を上げるんではなくて、人間の理解も両輪で進めないと駄目だよ、と。
人間に大量のインプットをしたところで、即座に理解することはできない。マトリックスの世界のようにはいかない。つまりちゃんとみんなで遠くへ行くためには、ゆっくり理解しながら進むしかない。
最近は Claude Code (CLI のやつ) をだいぶ使っている。
Vim のターミナルで Claude Code を動かすとして、いくらか便利に使うための TIPS 載せておく。
Claude Code に「ファイルの何行目を見てくれ」みたいに指示したいとき、便利なやり方が分からなくて困っていた。
いつも別のターミナルを開いて find だの grep だの cat だのして、そんでだいたい場所を特定したら Claude Code に戻って「@hogehoge.go の Ln-Lm を見てくれ」と打ち込む感じ。おお、なんとみっともない非効率なやり方かパン粉よ
別のターミナルがスッと開ける環境ならまだ良くて、ssh しているときなんかは他のターミナルをスッと起動することもできないときがあり、いったん Claude Code を落としてから find だの grep だの… とやって、あたりをつけたらもう一回 Claude Code を起動してさっきあたりをつけた場所を打ち込む、という手順を踏むこともあった。おお、なんとみっともない非効率なやり方かパン粉よ
tmux を使えばだいぶマシになるという話もあるが、自分はいままで tmux を使ってこなかったこともあり、つい tmux の起動を忘れがちだったりするのもある。
で、自分は普段は Vim を使っている。プロジェクトのルートディレクトリで Vim を開き、あとは NerdTree を使ったり silversearcher-ag と fzf の連携でファイルを探したりしている。ファイルを探すのも grep するのも Vim なのである。
ということで、Vim と Claude Code をうまく連携できると良いのだけど、いくらかやり方を模索してみたところ割と自分に合いそうなやり方を見つけたので TIPS として記録しておく。やりたいことは以下であった。
Claude Code は Vim のターミナルで動かす想定。
自分のところの Vim のターミナルで Claude Code を動かすと、こんなふうになっていた。動きもなんか変
これは ambiwidth=double という設定が悪さをしていたことが分かった。ambiwidth=single にしてあげるとキレイな見た目になるしちゃんと動く。しかし ambiwidth=double を捨てて俺達日本人が生きていけるのかは分からない。
これは Claude Code に貼り付けるというよりは「yank したものをターミナルに貼り付けるにはどうすれば」という話である。
これは yank したあと、ターミナル側のペインで入力モードに入ったのち、「Ctrl-w “"」と入力すれば yank したものが貼り付けされることが分かった。なんか Vim の基本中の基本の操作っぽい雰囲気がするのだが自分は知らなかった……。10年以上 Vim 触っているのに……。
ターミナル上で Claude Code を起動した状態で同様の操作をすれば、Claude Code の入力欄に yank したものがペーストされていくという寸法。具体的なコード片を Claude Code に貼り付けたいときに便利。
具体的なコードを貼り付けるんじゃなくて、ファイルパスとその中のどのへんっていうのを指示したいときの話。
これは少しだけ工夫が必要だったが、しかしワンライナーで済ますことができた。
ビジュアルブロックで行を選択した状態で、以下のコマンドを入力する。
:let @" = '@' . expand('%') . ':L' . line("'<") . '-L' . line("'>")<CR>
" に突っ込んでいるあたりはもっと便利にできるかもしれない。しかしこれをやると「@{ファイル名}:Ln-Lm」というフォーマットの文字列が yank された状態になる。ちなみにファイル名は相対パスで取得される。
そのまま Claude Code 側にいって「Ctrl-w “"」とすれば、件の文字列が Claude Code に貼り付けられるという寸法である。
自分は vimrc に以下のように書いておいた。leader を , に設定しているので、,y とやると先述のコマンドが動いてビジュアルブロックで指定した部分のファイル情報が yank された状態になる。
vnoremap <leader>y :<C-u>let @" = '@' . expand('%') . ':L' . line("'<") . '-L' . line("'>")<CR>
これで vim で高速にファイルを探索しながら、所望の場所を特定したら Claude Code にペッと貼り付けるというのを快適に行うことができそうである。
世の中の Claude Code を便利に使うための Vim Plugin (概ねは nvim 用のもののようだが……) はもっともっと便利機能がありそうだが、自分の需要という点ではいったんここまで。もっと便利にしたくなったら Vim Plugin を書く (Claude Code に書いてもらう) のもいいかもしれないな!
AIにコードを書いてもらう時代らしいので試した
AIエージェントにコードを書いてもらう!というのが、2024年の暮れくらいからツイッターのタイムライン上で賑わっていたように感じる。cursor composer、GitHub Copilot Edits、あと cline あたりがよく見る名前だっただろうか。
Roo Cline というのがなんとなく評判がいい?ような気がしたので、ちょいとお試しで触ってみた。
Cline にはいくらか亜種が存在する。元祖を Cline として、Roo Cline とか Recline とかっていう似たような名前のツールがいくらかある。Cline をカスタマイズするにはフォークするしかなかった、というのが背景にあるらしい。
で、この Cline はなんらかの言語モデルの API を叩いて動作する。OpenAI や Gemini みたいなものの API を叩いてもらう構図なのだが、なので基本的には従量課金という話になる。なんだけども、GitHub Copilot の機能を使って動かすこともできるらしく、つまり GitHub Copilot の契約があれば定額で動かすことができるっていう話らしい。定額?ならば試してみよう!ということで手を出してみたのであった。
ちなみに、2025年1月前半の時点では Roo Cline っていうのと Recline っていうのが GitHub Copilot の機能で動かすことができる Cline であるらしい (たぶん。pankona 調査)。
Roo Cline の導入は VSCode のプラグインを入れるだけなので一瞬で済む。簡単。GitHub Copilot の機能で Roo Cline を動かそうという場合には、おそらく GitHub Copilot のプラグインあたりも必要なんだと思われる。
モデルとしては gpt-4o であるとか claude sonnet 3.5 であるとかいくらか選択が可能。sonnet 3.5 を選び、さっそくメンテが滞っていた hashira を持ち出して「このリポジトリでは Go のバージョンが古いみたいなのでできるだけ最新にしてくれたまえ。さて君にできるかな?AI の力を見せてごらんよ」みたいなことをお願いしてみた。
すると go.mod の中身を確認し始めた。go1.20 ですねーみたいなことを認識してくれて、その後は go.1.21 に書き換えてくれた。Task Complete! じゃないんだよ。さっきは煽ってごめんね、真面目にやってください。最新は go1.23.5 です。頼みます。
せっかくなので「最新は go1.23.5 です。更新したらテストが通るかどうかも確認してください。大丈夫そうだったらブランチを切ってコミットしてプッシュまでしてください。gh コマンドを使ってプルリクも作ってください」と一息にお願いしてみた。
すると
go mod tidy コマンドとかを使わずにいきなり書き換えていた。まあいいんだけど)、こんなふうに作業をしてくれた。なんかすげえじゃん。差分はたった一行のプルリクだけども、結構いろいろやってもらえた感じがした。ありがとう、Roo Cline (その後 CI が通らないことが分かったので追加で色々直してもらえた。ちゃんとすごかった)。
自分は Roo Cline が作業をしている様をずっと眺めているだけだった。洗濯機が回っているのを延々と眺めていた小学校の頃の自分をちょっと思い出した。
で、遊び続けていると次第にレートリミットだってことで動かなくなってしまった。おもちゃを取り上げられたような気分だ。ということで sonnet 3.5 以外のモデルに切り替えて引き続き遊んでみたのだが、これがなかなか微妙である。同じファイルの中身の確認をし続けたり、まるであさっての方向の作業をして Task Complete! になってしまったり、まともに動かないという印象をもった。定額使いたい放題ではこのへんが限界か。
ってことで OpenAI に課金して OpenAI の API も試してみた。しかしこれもまあまあ微妙で、先述の sonnet 3.5 のほうがまともに動いてるのではないかっていう気がした。gpt-4o は1時間くらい作業して1,000円以上のコストになってしまったし、gpt-4o-mini あたりは安いんだけど何も進捗を出せずに一処をうろうろしているだけみたいなこともあった。わざと遠回りするタクシー運転手みたいなやつだなと思った。
gemini もちょっと試したんだけど、OpenAI の gpt-4o あたりとあんまり差がないようにも感じた。ある筋の話によると、gemini は食わせられるコンテキストが大きくて「鍛える」ことができるらしい。もしかしたら使いようによってはもっと強いやつなのかもしれないが、ちろっと触った範囲ではよくわからなかった。
やっぱり sonnet 3.5 なのか、ということで Anthropic にも課金して sonnet 3.5 を引き続き試してみた。今度は従量課金だ。レートリミットになることもあるまい。ということでしばらく遊んでみたところ、やっぱりこれがもっともまともに動くという気がした。ちゃんと「わかってる」コードを書いてくる。多少複雑でも延々と動かしていると次第にゴールに辿り着く。しかも gpt-4o よりちょっと安いか?
ということで定額使いたい放題を試すために Roo Cline をいじってみたのだが、気づいたらクレカ片手にあっちこっち課金して回っていた。いいんだ、楽しかったからいいんだ。そんでコードを書くならば claude sonnet 3.5 を使うのがいったん強そうだよ、っていうのが定性的ではあるが今回の知見。
この手の AI エージェントと呼ばれるツールはこの度始めて触ったのであるが、今後のコーディングのありようを考えさせられるツールであるな。ソフトウェアエンジニアがまったく要らなくなるとまではまだ思わないが、仕事のあり方は GitHub Copilot 登場のときのそれよりもだいぶ変わるんじゃないかという気がした。「人が書いて人がレビューして」みたいな感じではなく、「AIに書かせて人がレビューして」っていうのがもしかしたら主流になるのかもしれんなーと。SIer じみた感じになっていくのかもしれない。
突然の料理ログ
完成したところ
https://coderabbit.ai という、AI のちからでコードレビューを勝手にやってくれるというサービスが登場していたので試してみる。このブログでだ。
自分が書いているこのブログサイトは以下の流れで記事が作られている。
スマホでも記事が書きたいし PC でも記事が書きたいし、せっかく GitHub pages でブログやってるんだからそれになんかいい感じ乗っかって楽ができないかなーと思って構築したのがこの仕組みである。スマホだけでも GitHub で issue を書きさえすればブログ記事が書けるってのはなかなか便利である (便利ではあるが別に記事が量産されるかというとそれは別の話ではある)。
で、つまり記事が出ていく過程で pull request が一度生成されるようになっているわけで、先述の CodeRabbit さんに「ブログ記事を公開する前にいっちょレビューしてもらえる」って話ならば、なかなかもしかして便利で面白いのではないかと思ったわけである。
CodeRabbit の導入はとても簡単で、5分もあれば所望のリポジトリに CodeRabbit を導入することができた。お値段は、Open Source (Public Repository) ならば無料で使いたい放題らしい。ほんまか?大丈夫か?
公式ドキュメントはこちら https://coderabbit.ai/docs/introduction/
導入方法なども紹介されていてたいへん親切であった。これでとても便利だったらとても嬉しい。
さて、本記事に対応する pull request は https://github.com/pankona/pankona.github.io/pull/205 である。
ここを見ると CodeRabbit がどんなようなことを言ってくれるものであるかなんとなく察することができるかと思う。
変更の概要をコメントしてくれたり、あと謎のポエム?もつけてくれるようだ。文章のどこがおかしいとかもっとこうしたほうが読みやすいとか言ってくれたら嬉しかったが、そこまではしてくれない?ようだ (日本語だしソースコードじゃないってこともあろうか)。あんまり便利でもないがひとまず邪魔ではないので、いったん入れたままで様子を見てみようと思う。
ちなみに設定項目は Web の UI からぽちぽちいじってもいいし、リポジトリのてっぺんに .coderabbit.yaml を置いといても見てくれるようだ。たくさんのリポジトリに導入しようと思ったら設定ファイルを使うほうが便利そうね。
記事を何度か書き直している途中で Rate Limit に達してしまって CodeRabbit さんが動かなくなってしまった。一時間単位で Rate Limit が設定されているようなのでほっとけばまた動いてくれるのだと思う。とはいえそんなにヘビーにレビューをお願いしているわけでもないのにあっさり Rate Limit に達してしまうところを見るにつけては、一通り書き終わったところで一発レビューをお願いする (自動でレビューさせない) という使い方のほうがいいのかもしれない。
スラッシュコマンド (dependabot を操作するのと同じようなやり口) でレビューの依頼ができるみたいなので、WIP が外れるところで一発 @coderabbit review みたいに書いてみるのが丸いやり方かしらね。