AIによるソフトウェア開発
最近の開発
最近はブログを書いていませんでしたが、コツコツとAI使ったソフトウェア開発を続けています。
最初は、Cursorを使って、ペアプログラミングのようなことを試していましたが、 現在は、ClaudeCodeを使って可能な限りAIに任せるようなスタイルになりました。
あまり自動化目的でツールやスキルを使うことはせず、ClaudeCodeに自律的に動けるように計画してもらって 可能な限りまかせています。これは、人間の指示がボトルネックにならないように、AIの知識を最大限生かせるように そういうスタイルにしました。
開発の流れとしては、
-
やりたいことを提示して、どのように実装できるか開発計画書を書いてもらう。
-
開発計画書をもとに、開発のステップを書いてもらう。
-
githubを用意して、その中で開発できるようにする
-
開発項目ごとに、ブランチを作って、完了したらPRを作ってもらう
-
PRを作る際には、他のAIにクロスレビューしてもらう
-
開発途中に課題が出てきたら、Issuesに書いてもらう
といった感じで進めています。
複数のAIを使ったクロスレビュー
現状は、ClaudeCodeをメインに使っていますが、ChatGPT、GLM、Geminiといった他のAIも試しています。 その一環として、コーディングやレビューを別のAIモデルを使って動かせるようにしました。 特に複雑なことはしておらず、他のAIの呼び出し方だけClaudeCodeに教えて、PRを作る際はクロスレビューするように 指示を出しているだけです。
ChatGPTとClaudeは性能は十分ですが、コストが高めです。GeminiというかAntigravityはちょっと頼りない。 それ以外では、ollamaを契約しており、その中で、GLM-5.3-Flash というモデルに注目して、試しに使っています。 GLM-5.3 はそんなに安くないのですが、GLM-5.3-Flashはかなり安いです。それでも十分にコーディングできると思っています。 GLM-5.3-FlashはClaudeCode上で使うことができます。相性も問題ないレベルです。
ただ、最近は、本家のClaudeがコストを下げており、sonnetもopusもだいぶ使いやすくなったと思います。 なので、今後の料金体制によって、GLMをもっと使うことになるのか、Claudeだけで大丈夫になるのか、変わってくると思います。
Webアプリの開発
私自身は、ゲーム会社出身なので、C++でアプリを書くのは得意ですが、Webアプリやスマホアプリなど、 サーバサイドを必要とするアプリの開発は得意ではありません。そこで、最近は、AIに指示するだけでスマホアプリを開発ができて、 ストアにリリースできるレベルに持っていきたいと思っています。指示して、PRを承認するということを繰り返していますが、 AIだけでも開発できるようになってきました。ただし、思ったように進まないこともありますし、明らかに手を抜いたコーディングを することもあります。しかし、知っている知識は幅広いので、それを利用しないのはもったいないです。 人間のような綺麗なコーディングを求めるのではなく、テストが通れば十分と妥協しつつ、開発していくしかないと思っています。