Menggunakan mode agen Gemini Code Assist

Dokumen ini menjelaskan cara mengonfigurasi dan menggunakan mode agen Gemini Code Assist sebagai rekan programmer di lingkungan pengembangan terintegrasi (IDE) Anda.

Dengan mode agen, Anda dapat melakukan salah satu hal berikut dan lainnya:

  • Mengajukan pertanyaan tentang kode Anda.
  • Gunakan konteks dan alat bawaan untuk meningkatkan kualitas konten yang dihasilkan.
  • Mengonfigurasi server MCP untuk memperluas kemampuan agen.
  • Mendapatkan solusi untuk tugas kompleks dengan beberapa langkah.
  • Buat kode dari dokumen desain, masalah, dan komentar TODO.
  • Kontrol perilaku agen dengan mengomentari, mengedit, dan menyetujui rencana dan penggunaan alat selama eksekusi.

Batasan

Beberapa fitur chat Gemini Code Assist standar mungkin tidak tersedia dalam mode agen atau mungkin berfungsi secara berbeda dari yang ada dalam chat standar.

Pembacaan tidak tersedia dalam mode agen. Saat dalam mode agen, Gemini tidak mencantumkan sumber dan Anda tidak dapat menonaktifkan saran kode yang cocok dengan sumber yang dikutip.

Sebelum memulai

  1. Siapkan Gemini Code Assist.

Gunakan mode agen

Dalam mode agen, Anda dapat meminta Gemini untuk menyelesaikan sasaran tingkat tinggi dan tugas yang kompleks.

Untuk mengoptimalkan mode agen, ikuti praktik terbaik dalam memberikan perintah dan berikan detail sebanyak mungkin.

Untuk beralih ke mode agen:

VS Code

  1. Untuk membuka chat Gemini Code Assist, di panel aktivitas IDE, klik spark Gemini Code Assist.
  2. Klik tombol Agent untuk masuk ke mode agen. Tombol akan ditandai saat dialihkan ke mode agen dan berwarna abu-abu saat dalam chat reguler.
  3. Di chat Gemini Code Assist, masukkan perintah Anda.

Gemini akan memberikan respons untuk perintah Anda, atau meminta izin untuk menggunakan alat.

Untuk menghentikan agen, klik Stop.

Untuk menggunakan chat Gemini Code Assist standar, klik New chat untuk membuat chat baru.

IntelliJ

  1. Klik spark Gemini di kolom jendela alat. Login jika diminta untuk melakukannya.
  2. Pilih tab Agent.
  3. Deskripsikan tugas yang Anda inginkan untuk dilakukan agen.
  4. Saat agen melakukan langkah-langkah untuk menyelesaikan tugas, Anda akan memiliki opsi untuk meninjau dan menyetujui perubahan apa pun.

  5. Opsional: Untuk menyetujui perubahan secara otomatis, pilih setelan Opsi agen dan klik kotak centang di samping Setujui perubahan secara otomatis.

Mengonfigurasi alat untuk mode agen

Alat adalah kategori layanan yang luas yang dapat digunakan agen untuk konteks dan tindakan dalam responsnya terhadap perintah Anda. Beberapa contoh alat adalah alat bawaan seperti grep dan pembacaan atau penulisan file, server Model Context Protocol (MCP) lokal atau jarak jauh dan fungsi yang dapat dieksekusi, atau implementasi layanan yang dipesan khusus.

Mengontrol penggunaan alat bawaan

Mode agen memiliki akses ke alat bawaan Anda seperti penelusuran file, pembacaan file, penulisan file, perintah terminal, dan lainnya.

VS Code

Anda dapat menggunakan setelan coreTools dan excludeTools untuk mengontrol alat yang dapat diakses Gemini dalam mode agen.

coreTools
Memungkinkan Anda menentukan daftar alat yang ingin Anda sediakan untuk model. Anda juga dapat menentukan batasan khusus perintah untuk alat yang mendukungnya. Misalnya—menambahkan kode berikut ke JSON setelan Gemini Anda hanya akan mengizinkan perintah shell ls -l untuk dieksekusi:"coreTools": ["ShellTool(ls -l)"].
excludeTools
Memungkinkan Anda menentukan daftar alat yang tidak ingin disediakan untuk model. Anda juga dapat menentukan batasan khusus perintah untuk alat yang mendukungnya. Misalnya—menambahkan kode berikut ke JSON setelan Gemini Anda akan memblokir penggunaan perintah rm -rf: "excludeTools": ["ShellTool(rm -rf)"].

Alat yang tercantum di excludeTools dan coreTools akan dikecualikan.

Untuk mengonfigurasi alat bawaan yang tersedia dalam mode agen, lakukan hal berikut:

  1. Buka JSON setelan Gemini Anda yang berada di ~/.gemini/settings.json dengan ~ sebagai direktori utama Anda.
  2. Untuk membatasi penggunaan alat agen ke daftar alat yang disetujui, tambahkan baris berikut ke JSON setelan Gemini Anda:

    "coreTools": ["TOOL_NAME_1,TOOL_NAME_2"]
    

    Ganti TOOL_NAME_1 dan TOOL_NAME_2 dengan nama alat bawaan yang ingin Anda berikan aksesnya kepada agen.

    Anda dapat mencantumkan alat bawaan sebanyak yang Anda inginkan. Secara default, semua alat bawaan tersedia untuk agen.

  3. Untuk membatasi penggunaan alat agen ke perintah alat tertentu, tambahkan baris berikut ke JSON setelan Gemini Anda:

    "coreTools": ["TOOL_NAME(COMMAND)"]
    

    Ganti kode berikut:

    • TOOL_NAME: nama alat bawaan
    • COMMAND: nama perintah alat bawaan yang ingin Anda gunakan oleh agen.
  4. Untuk mengecualikan alat dari penggunaan agen, tambahkan baris berikut ke JSON setelan Gemini Anda:

    "excludeTools": ["TOOL_NAME_1,TOOL_NAME_2"]
    

    Ganti TOOL_NAME_1 dan TOOL_NAME_2 dengan nama alat bawaan yang ingin Anda kecualikan dari penggunaan agen.

  5. Untuk mengecualikan perintah alat dari penggunaan agen, tambahkan baris berikut ke JSON setelan Gemini Anda:

    "excludeTools": ["TOOL_NAME(COMMAND)"]
    

    Ganti kode berikut:

    • TOOL_NAME: nama alat bawaan
    • COMMAND: nama perintah alat bawaan yang ingin Anda kecualikan dari penggunaan agen.

Untuk mengetahui informasi selengkapnya tentang setelan konfigurasi coreTools dan excludeTools, lihat dokumentasi konfigurasi Gemini CLI.

IntelliJ

Fitur ini tidak didukung di Gemini Code Assist untuk IntelliJ atau IDE JetBrains lainnya.

Mengonfigurasi server MCP

Petunjuk berikut menunjukkan cara menyediakan server MCP untuk digunakan dalam mode agen di IDE Anda. Setelah Anda menyediakan server MCP, Gemini Code Assist akan otomatis memutuskan kapan dan cara menggunakan alat server yang ada dalam server MCP tersebut.

VS Code

Agar server MCP tersedia untuk digunakan dalam mode agen, tambahkan konfigurasi untuk setiap server di file JSON setelan Gemini, sesuai dengan dokumentasi setiap server.

  1. Instal dependensi apa pun yang diperlukan oleh server MCP yang Anda tambahkan.
  2. Buka file JSON setelan Gemini Anda, yang terletak di ~/.gemini/settings.json dengan ~ adalah direktori utama Anda.
  3. Konfigurasikan setiap server MCP lokal atau jarak jauh dalam file JSON setelan Gemini, sesuai dengan petunjuk masing-masing server.

    Contoh file JSON setelan Gemini berikut mengonfigurasi dua server MCP Cloudflare jarak jauh, server MCP GitLab jarak jauh, dan server MCP GitHub lokal untuk digunakan dengan Gemini Code Assist di VS Code.

    {
      "mcpServers": {
        "github": {
          "command": "npx",
          "args": ["-y", "@modelcontextprotocol/server-github"],
          "env": {
            "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_example_personal_access_token12345"
          }
        },
        "gitlab": {
          "command": "npx",
          "args": ["mcp-remote", "https://your-gitlab-instance.com/api/v4/mcp"]
        },
        "cloudflare-observability": {
          "command": "npx",
          "args": ["mcp-remote", "https://observability.mcp.cloudflare.com/sse"]
        },
        "cloudflare-bindings": {
          "command": "npx",
          "args": ["mcp-remote", "https://bindings.mcp.cloudflare.com/sse"]
        }
      }
    }
    

  4. Buka palet perintah dan pilih Developer: Reload Window.

Server MCP yang Anda konfigurasi tersedia untuk digunakan agen dalam mode agen.

IntelliJ

Agar server MCP tersedia untuk digunakan dalam mode agen, tambahkan konfigurasi untuk setiap server dalam file mcp.json dan tempatkan file mcp.json di direktori konfigurasi untuk IDE Anda.

  1. Instal dependensi apa pun yang diperlukan oleh server MCP yang Anda tambahkan.
  2. Buat file bernama mcp.json di direktori konfigurasi IDE Anda.
  3. Konfigurasikan setiap server MCP lokal atau jarak jauh dalam file mcp.json, sesuai dengan petunjuk masing-masing server.

    Contoh file mcp.json berikut mengonfigurasi dua server MCP Cloudflare jarak jauh, satu server MCP GitLab jarak jauh, dan satu server MCP GitHub lokal untuk digunakan dengan Gemini Code Assist di IntelliJ.

    {
      "mcpServers": {
        "github": {
          "command": "npx",
          "args": ["-y", "@modelcontextprotocol/server-github"],
          "env": {
            "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_example_personal_access_token12345"
          }
        },
        "gitlab": {
          "command": "npx",
          "args": ["mcp-remote", "https://your-gitlab-instance.com/api/v4/mcp"]
        },
        "cloudflare-observability": {
          "command": "npx",
          "args": ["mcp-remote", "https://observability.mcp.cloudflare.com/sse"]
        },
        "cloudflare-bindings": {
          "command": "npx",
          "args": ["mcp-remote", "https://bindings.mcp.cloudflare.com/sse"]
        }
      }
    }
    

Server MCP yang Anda konfigurasi tersedia untuk digunakan agen dalam mode agen.

Autentikasi server MCP

Beberapa server MCP memerlukan autentikasi. Ikuti dokumentasi server untuk membuat token pengguna yang diperlukan, lalu tentukan dengan tepat. Biasanya, Anda menentukan token autentikasi untuk server lokal menggunakan variabel lingkungan khusus server yang sesuai, dan Anda menentukan token autentikasi untuk server jarak jauh menggunakan header Authorization HTTP.

VS Code

Untuk server MCP yang memerlukan autentikasi, Anda dapat menambahkannya ke JSON setelan Gemini Anda.

Contoh berikut menunjukkan cara menentukan token akses pribadi untuk server MCP lokal dan jarak jauh GitHub:

{
  "mcpServers": {
    "github-remote": {
      "httpUrl": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer ACCESS_TOKEN"
      }
    },
    "github-local": {
      "command": "/Users/username/code/github-mcp-server/cmd/github-mcp-server/github-mcp-server",
      "args": ["stdio"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ACCESS_TOKEN"
      }
    }
  }
}

Dengan ACCESS_TOKEN adalah token akses pengguna.

IntelliJ

Untuk server MCP yang memerlukan autentikasi, Anda dapat menambahkannya ke file mcp.json.

Contoh berikut menambahkan token akses pribadi untuk server lokal GitHub:

{
  "mcpServers": {
    "github-local": {
      "command": "/Users/username/code/github-mcp-server/cmd/github-mcp-server/github-mcp-server",
      "args": ["stdio"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ACCESS_TOKEN"
      }
    }
  }
}

Dengan ACCESS_TOKEN adalah token akses pengguna.

Membuat file konteks

Konteks memungkinkan agen menghasilkan respons yang lebih baik untuk perintah tertentu. Konteks dapat diambil dari file di IDE, file di folder sistem lokal, respons alat, dan detail perintah Anda. Untuk mengetahui informasi selengkapnya, lihat Konteks mode agen.

VS Code

  1. Buat file bernama GEMINI.md di lokasi yang cocok dengan cakupan yang Anda inginkan untuk menerapkan konteks. Tabel berikut menjelaskan lokasi file konteks untuk berbagai cakupan:

    Cakupan Lokasi
    Semua project Anda ~/.gemini/GEMINI.md
    Project tertentu Direktori kerja Anda atau direktori induk apa pun hingga root project (diidentifikasi oleh folder .git) atau direktori beranda Anda.
    Komponen, modul, atau sub-bagian tertentu dari sebuah project Subdirektori dari direktori kerja Anda.

    Sistem memori agen dibuat dengan memuat file konteks dari beberapa lokasi. Konteks dari file yang lebih spesifik, seperti file untuk komponen atau modul tertentu, akan mengganti atau melengkapi konten dari file konteks yang lebih umum, seperti file konteks global di ~/.gemini/GEMINI.md.

  2. Tulis aturan, informasi panduan gaya, atau konteks yang Anda inginkan untuk digunakan agen di Markdown, lalu simpan file. Untuk mengetahui informasi selengkapnya, lihat contoh file konteks di GitHub.

Agen menyertakan informasi dalam file konteks Anda beserta perintah apa pun yang Anda kirimkan kepadanya.

IntelliJ

  1. Buat file bernama GEMINI.md atau AGENT.md di root project Anda.

  2. Tulis aturan, informasi panduan gaya, atau konteks yang Anda inginkan untuk digunakan agen di Markdown, lalu simpan file.

Agen menyertakan informasi dalam file konteks Anda beserta perintah apa pun yang Anda kirimkan kepadanya. Anda juga dapat menambahkan konteks dengan menyertakan file secara manual menggunakan sintaksis @FILENAME, dengan FILENAME adalah nama file yang berisi informasi kontekstual yang ingin Anda sertakan.

Menggunakan perintah

Perintah garis miring / memungkinkan Anda menjalankan perintah dengan cepat, mirip dengan perintah di jendela terminal.

VS Code

Anda dapat menggunakan perintah Gemini CLI bawaan berikut dalam mode agen:

  • /tools: Menampilkan daftar alat yang tersedia dalam sesi mode agen Anda.
  • /mcp: Menampilkan server Model Context Protocol (MCP) yang dikonfigurasi, status koneksinya, detail server, dan alat yang tersedia.

  • /deploy: Men-deploy aplikasi web ke Cloud Run. Perintah kustom berbasis Gemini CLI ini menggunakan server Model Context Protocol (MCP) Cloud Run untuk membangun, membuat container, mengirim, mengonfigurasi, dan menampilkan URL publik untuk aplikasi Anda. Anda harus mengaktifkan Cloud Run di project Google Cloud Anda dan menginstal server MCP Cloud Run sebagai ekstensi Gemini untuk menggunakan perintah ini.

Untuk mengetahui informasi selengkapnya tentang perintah Gemini CLI, lihat Perintah Gemini CLI dan Perintah kustom Gemini. Perhatikan bahwa tidak semua perintah Gemini CLI tersedia dalam mode agen.

IntelliJ

Fitur ini tidak didukung di Gemini Code Assist untuk IntelliJ atau IDE JetBrains lainnya.

Selalu izinkan tindakan agen

Anda dapat otomatis mengizinkan semua tindakan agen.

Untuk otomatis mengizinkan semua tindakan agen:

VS Code

Gunakan mode yolo untuk otomatis mengizinkan semua tindakan agen. Mode Yolo hanya dapat digunakan di ruang kerja tepercaya.

Untuk mengonfigurasi mode yolo:

  1. Buka file JSON setelan pengguna VS Code Anda:

    1. Buka Command palette (ctrl/command + Shift + P).
    2. Pilih Preferences: Open User Settings (JSON).
  2. Tambahkan kode berikut ke file JSON setelan pengguna VS Code Anda:

    //other settings...
    
    "geminicodeassist.agentYoloMode": true,
    //other settings...
    
  3. Buka palet perintah dan pilih Developer: Reload Window.

Mode agen menggunakan mode yolo, dan tidak akan meminta izin sebelum mengambil tindakan saat Anda mengirimkan perintah. Saat menggunakan ruang kerja yang dibatasi, agen akan meminta konfirmasi sebelum mengambil tindakan, terlepas dari setelan ini.

IntelliJ

Untuk menyetujui perubahan secara otomatis, di tab agen chat Gemini, pilih settings Agent options, lalu klik kotak centang di samping Auto-approve changes.

Mode agen otomatis menyetujui semua permintaan, dan tidak akan meminta izin sebelum mengambil tindakan saat Anda mengirimkan perintah.

Perintah tambahan

Coba perintah berikut dengan informasi Anda sendiri:

  • "Apa fungsi repositori ini? Bantu saya memahami arsitekturnya."
  • "Apa fungsi [class/function] ini?"
  • "Tambahkan fitur ke codebase ini - "[link-or-path-to-codebase]"."
  • "Faktorkan ulang fungsi [A] dan [B] untuk menggunakan metode umum [C]."
  • "Perbaiki masalah GitHub [link-to-github-issue]."
  • "Bangun aplikasi untuk melakukan [sasaran] dengan UI yang memungkinkan pengguna melakukan [tugas] di [lingkungan]."
  • "Migrasikan versi library di repositori ini dari [X] ke [Y]."
  • "Optimalkan performa kode Go ini agar berjalan lebih cepat."
  • "Gunakan [nama-API] untuk membuat fitur ini."
  • "Terapkan algoritma untuk melakukan [x], [Y], dan [Z]."

Opsional: Menggunakan Kunci API

Gemini Code Assist menyertakan kuota harian yang berbeda untuk fitur agentic, bergantung pada paket yang Anda gunakan.

Jika Anda telah menghabiskan kuota harian untuk mode agen Gemini Code Assist, Anda dapat terus menggunakan layanan ini dengan memberikan kunci API. Anda dapat menggunakan kunci Gemini API atau kunci Vertex AI API.

Untuk menambahkan kunci API:

  1. Buka setelan IDE Anda.

  2. Buka file settings.json.

  3. Tambahkan baris berikut, dengan mengganti YOUR_KEY dengan kunci API Anda:

    "geminicodeassist.geminiApiKey": "YOUR_KEY"

Langkah berikutnya