最近(Codexではない方の、クラウドで使う)普通のChatGPTをよく使っています。
その中でも現在お気に入りなのは「今日の晩ごはんプロジェクト」をチャットで実行するという方法。
めっっっっちゃ普通のことに見えそうなんだけど、実はここに普遍的な価値と、新しい発見があふれているのではないかという感じのことをうまいことまとめたいと思っているのです。
ChatGPT x GitHub
まずいきなりなんですが、今自分がChatGPT(普通のやつ)を気に入っている大きな理由のひとつが、普通のチャットのChatGPTもGitHubに普通に連携ができる、ということ。
この「連携」というのが普通にすごい機能で、自分がつないでいるGitHubでは、上がってるファイルを「読む」だけじゃなくて「書く」もごく普通にできるんですよね。
つまり、GitHubに上がっているデータは、大ざっぱなことをいうと「ChatでもCodexみたいなことができる」というわけです。
さらに重要なのが、少なくとも今の自分の環境では、普通のチャットで使うぶんには、CodexやWorkの使用量を減らさないということ。
しかも、自分の環境ではベースとなるモデルが最上位のSolです。
あえて雑な言い方をしちゃうと「ChatならばSolは使い放題」ということ。これが、まず普通にけっこうすごい。
GitHubに「レシピ」を置いとく
とは言え、チャットはあくまでもチャットなので、厳密にローカルのCodexとは違います。
おそらくハーネスが違うので、受け答えの挙動がけっこう違うし、明示的なサブエージェントが使えない、みたいな仕組み的な制限もある。
なので結果的に、プログラムのコードを書くこととはあまり相性がよくありません。
(Chatにも仮想環境は用意されていて、ある程度コマンドを利用することはできるが、どちらにしても様々な制約があるし、向いてる向いてないで言えば、あまり向いてないことには変わりはない)
という感じで最近思いついて便利に使っているのが「今日の晩ごはん相談Chat」という、ある意味できわめて普通のChatGPTの使い方を、ほんの少しだけギークな気分が味わえる「GitHubにレシピを置く」という方法を採用した、というわけです。
「記憶」と「記録」の組み合わせ
そもそも最近の生成AIチャットには「メモリ」というものがあり、何回もやりとりを繰り返していれば自然にメモリが蓄積して、だんだんと自分の好みなんかを覚えてくれます。
イメージとしては人間の「記憶」に近いことは、かなりできるようになってきている。
ただ同時に、生成AIの記憶(メモリ)も人間と同じように圧縮されてしまうので、細かなレベルまですべてをきちんと覚えておくことはできない。
たとえばレシピの「数字」なんかは覚えられないし、何月何日にどんなやりとりをしたかなんてことは覚えていてくれない。
レシピに分量なんて必要ない、っていうタイプの人にはこの便利さはあんま伝わらないと思うんですが、自分は10年以上料理しても、未だにレシピ見ないと作れない料理が多いというか、そういう「感覚」が全然身に付いてこない。(一部、勘で作れる料理はあるが、それは身体的に非常に「近い」ものに限られる)
なんで、ChatGPTの「記憶」だけでは不便で、ちゃんと「記録」しておくことが重要になる。
で、その記録用の場所、としてGitHubが超便利になる、というわけなのです。
スケジュールも組み合わせられる
で、ここからはちょっと料理レシピではない、GitHub活用の応用的な話。
個人的にもう一個気に入っているのが、GitHubに「ChatGPTのスケジュール機能」を組み合わせる、というテクニックです。
たとえば自分が参加しているGitHubレポジトリについて、1日1回、だいたいどんな感じの変更があったのかを知らせてもらう、という技。
また、今自分が気に入っているのは「毎日のメンテ」をスケジュールタスクで実行してもらう、というもの。
自分の場合、今はほとんどの資料(今やってること、次にやりたいこと)なども生成AIまかせで整備してもらってるんですが、まだまだいろんな環境整備が足りてなくて、よく「間違える」んですよね。
そういうのを、超曖昧な「整備しといて」みたいな指示をスケジュールしておくだけで(ある程度)いい感じに整備もしてくれます。
当然チャットはそのまま続けて指示なんかもだせるので、そのままちょろっとなにか整備をしたりだとか「明日なにやろう」とか決めて記録しておくとか、いろいろ便利に活用できます。
そしてなによりも、これは「容量消費なしで使えるSol」なのです。
$20のPlusプランでも、自分の環境ではチャットのモデルはSolになるはずです。
なので、まずはチャットで計画を立てて、プランを作って、GitHubに書き込ませる。実装はローカルでやる。
そんなふうに役割を分けるだけで、かなり上手にChatGPTを使いこなした気分を味わうことが可能です。

