Cursorという「相棒」を飼い慣らす:AIエージェントの自律度を制御し、開発体験を極限まで引き上げる
こんにちは。日々のコードベースと格闘する皆さんの作業効率を、一段階上のステージへと引き上げるための「武器」を整えるお手伝いをします。
今、世界中のエンジニアが注目しているCursor。これは単なるVS Codeのフォーク(派生版)ではありません。AIがコードの文脈を理解し、プロジェクト全体を俯瞰して提案を行う「AIネイティブな開発環境」です。
しかし、初心者が陥りやすい最大の罠があります。それは「AIにすべてを任せきりにして、ブラックボックス化したコードを量産してしまうこと」です。これを防ぎ、AIを真の「相棒」にするための、自律度制御と人間中心のUI設計について解説しましょう。
—
1. なぜ「AIの自律度」を制御する必要があるのか
AI(Composer機能)は強力ですが、彼らは「プロジェクト全体の設計思想」を完全には把握していません。AIに丸投げすると、以下のような事故が起こります。
- 依存関係の破壊: 想定外のモジュールを勝手にインポートし、ビルドが通らなくなる。
- 文脈の剥離: プロジェクト固有の命名規則や、チームで決めたアーキテクチャの制約を無視する。
私たちが目指すべきは「AIが提案し、人間が意思決定する」というHuman-in-the-loop(人間が介在するループ)の構築です。これを実現するための設定を紐解いていきます。
—
2. 現場で生きる「鉄壁のセットアップ」
まずはCursorをインストールした後に、必ず確認すべき設定項目です。設定画面(`Cmd/Ctrl + ,`)から、「Cursor」→「General」セクションを確認してください。
AI提案の「粒度」を制御する設定
`Cursor Settings` > `Features` にある「Composer」関連の設定を調整します。
- `Composer: Auto-apply` (OFF推奨):
初心者のうちは、これをONにしてはいけません。AIの提案を自動でファイルに書き込ませず、必ず「差分を確認してから適用」する癖をつけてください。
- `.cursorrules` ファイルの活用:
これが最も重要です。プロジェクトのルートディレクトリに `.cursorrules` を配置し、AIに対する「憲法」を定義します。
.cursorrules の例
- 常にモジュール構成を意識すること。
- 新規ライブラリを追加する際は、既存のパッケージマネージャー(pnpm)に従うこと。
- 複雑なロジックを実装する場合、まずコードを書く前に設計方針を提示し、人間の承認を得ること。
- 命名規則:変数はキャメルケース、ファイル名はスネークケースを遵守せよ。
このファイルがあるだけで、AIの「暴走」を劇的に抑えられます。
—
3. HelloWorld的な動作確認:AIとの「契約」を試す
単に「コードを書いて」と命じるのではなく、「設計図を提示させ、合意してから実装させる」というプロセスを体験しましょう。
ステップ1:コンポーザーを呼び出す
`Cmd + I` (または `Cmd + Shift + I`) でComposerを開き、こう入力してみてください。
> 「新しいユーザー登録フォームのコンポーネントを作りたい。まずはディレクトリ構成と、必要なPropsの型定義を考えて提示して。実装はまだしないで。」
ステップ2:提案を検証する
AIが提示した構成案を眺め、自分の脳内の設計と照らし合わせます。違和感があれば、その場で修正を指示します。
ステップ3:段階的適用
納得がいったら、以下のように指示を続けます。
> 「OK、その構成で進めて。まずは型定義のファイルだけ作成して。」
ここで初めて「Apply」ボタンを押します。AIの提案を一度にすべて受け入れるのではなく、ファイル単位、関数単位で区切って適用する。 この習慣が、あなたのコードベースを清潔に保つ秘訣です。
—
4. 事故を防ぐための「差分確認(Diff View)」の極意
AIが生成したコードを適用する際、Cursorは必ず「Diff(差分)」を表示します。これを無視して「Accept」を押すのは厳禁です。
1. 左側(赤)と右側(緑)を必ず比較する: 意図しない行が消えていないかを確認。
2. AIの思考ログを確認: ComposerのパネルにはAIがなぜその修正を行ったかの説明が表示されています。その論理が「現場のルール」に合致しているか確認してください。
—
最後に:AIは「優秀だが無知なインターン」
これを覚えておいてください。CursorのAIは、世界中の知識を持っていますが、あなたのチームの「今」を知りません。
- 丸投げしない: 責任は常に人間が取る。
- ルールを明文化する: `.cursorrules` で制約を与える。
- 小さく適用する: 変更の単位を極限まで小さくする。
このステップをマスターすれば、Cursorはあなたのコーディング速度を数倍に加速させる最強のパートナーになるはずです。さあ、まずは今日のタスクを、AIと「会話」しながら進めてみてください。きっと、今までにない開発の楽しさを感じられるはずです。