見出し画像

僕はCursor Agentを使わない

Cursor Composer の Agent 機能に可能性を感じて、1ヶ月ほど試行錯誤していたのですが、自分の中での結論としては以下に至りました。

せっかくなので、なぜこの結論に至ったかを言語化してみたいと思います。


AIエージェント vs Cursor Chat & cmd+K

Cursor AI Agentを最初使ってみて、実装がかなり早いし、かつ複数ファイルにおける改修の整合性が高い(つまりエラー率が低い)感覚があって、かなり可能性を感じていました。

Cursor Chatとcmd + Kによるコード開発がこれまで主軸だったのですが、AI Agentの機能をフルに活かすため、少し開発フローを変えて、以下のような形で進めてみました。

  • まず要件定義をAI Agentとすり合わせてmdファイルを作成する

  • テスト実装してもらう(テスト駆動開発)

  • タスクリストを作成し、進捗がわかるようにする

  • 実装してもらう

最初このやり方で実装スピードが上がっていたのですが、なんとも言えない疲労感と、途中からスピードが格段に遅くなってくる感覚があり、もやもやしてました。普通に体調不良かなとか思ってたんですが、最終的にAI Agent主体の開発が原因だとあたりをつけたことで、疲労感とスピードの失速がなくなったので、今回の結論に至りました。


AIエージェントの課題

僕が抱えていた本質的な課題が何かというと、以下二つだなと思ってます。

  1. 思考のスイッチングコストがある

  2. 生成された進捗の認知負荷が高い

1. 思考のスイッチングコストがある

1については、AI Agentの一回あたりの処理が大体数十秒くらいかかることが原因です。生成された結果をずっと追い続ければいいわけですが、ファイルを生成されると中身を追うのが億劫になってしまうし、かつAI Agentは一旦完結まで持ってきてくれるので、自分の場合は他のことに意識を(無意識的に)向けてしまいがちです。例えばXとか開いちゃうわけです。

そんなこんなとしてると、他のことからCursorの画面に戻ってくるのに、かなり意識のスイッチングコストがかかってしまい、これが疲労感に繋がってました。またゾーンのような思考のチューニングがされたモードに格段に入りにくい状態になっている感覚もあり、これまでの開発よりも精神的な疲れが多く出やすくなってました。

2. 生成された進捗の認知負荷が高い

2については、AI Agentは一回の指示で、複数ファイルにわたってコードを生成・手直しをしてくれるので、コードレベルでのキャッチアップがCursor Chatやcmd + Kよりも格段に大変です。

なのでドキュメントで合意形成をとり、テスト駆動な形でEnd-to-Endの機能の担保をする、というアプローチをしたわけですが、結局意図しない感じになったり、テストコードは膨大になったりで、結局認知負荷が高かったです。

またここで気づいたのですが、これまではコード理解を積み上げていくことで、自分の中でのメンタルモデルというか、ここのディレクトリやファイルはこうなっていて、といった認知をしやすくするための土壌が形成されてきていたのだと感じました。

これをAI Agentではすっ飛ばしている以上、理解の土壌ができていない状態で途中で発生する意図しないバグ・エラーと向き合う必要が出てくるので、かなり体力が必要です。

またこの理解の土壌により、作りながらの自己フィードバックというか、「もっとこういう風にした方がいいんじゃないか」といった磨き上げに繋がっているのですが、これも得られにくいなと思いました。共創においてはデメリットになっている感覚があります。

Cursor Chatとcmd+Kの優位性

一方で、Cursor Chatやcmd+Kを使うと、基本的にはどのコードに対して、どのように改修したいかを逐一指示していくので「ある程度理解しているコード」をベースに「こうしたい」という要望を積み上げているので、理解の土壌がある程度固まりやすいです。

技術的に難しいコード部分は、生成AIがよしなに書いてくれるので、理解が置いてけぼりになる傾向が無きにしも非ずですが「どんな処理をしている」といったレベルの理解はある程度ついてきます。これが結果的に自分の頭の中にある完成形の解像度を高め、それが実行レベルの意思決定速度の向上につながっている感覚があります。


個人開発とAIエージェントの相性

個人開発では、作りながら新しいアイデアが湧いて、それをすぐに試して形にしていく、行き当たりばったりな開発が多いと思います(僕はそうです)。それが「こだわり」につながり、企画と開発の迅速な往復があるからこそ、磨き上げられる体験があると思っています。

今回の僕のやり方におけるAI Agentの開発フローへの活用は、この企画と開発の迅速な往復をむしろ阻害している感覚があり、あまり相性としては良くないなと思いました。


今後の可能性

今回、自分の中でAI Agentによる開発をする中での本質的な課題が言語化できたので、それを解決する形にできれば再度AI Agentを取り入れる可能性が十分にあるなと思いました。

具体的には、

  • 指示を出したら、1~3秒程度で結果を反映してくれる反映速度がある

  • GUIレベルでのテストが可能で、フロントの挙動をもとにフィードバックが可能である

    • そのためにはMTGで画面共有をしながら伝えるように、GUIと音声対話形式で指示を出し反映することができるインプット体験

    • バックエンド部分の処理をうまく可視化(mermaidのシーケンシャル図レベルでも良い)しつつ、基本的に自分で考えるより良い選択肢を常に実装してくれるレベル

このレベルのAI Agentがきたら、再度戻ってくるかもしれません。そこまで遠くない未来な気はしますね。

ということで、AI Agentの開発体験について言語化が無事できたので、引き続き後腐れなくCursor Chat & cmd + Kの生活に戻れそうです!

ここから先は

0字
週に一回のペースを目標に更新していきます。個人開発アイデア、得てきた学び、無限もじおこしのリアルな進捗などお届けしようかなと思っています。

「無限もじおこし」「ねらーAI」「シャベマル」など、生成AIを駆使したアプリを作っている個人開発者が日々考えていることを発信していきます。

この記事が気に入ったらチップで応援してみませんか?