Penggunaan Gemini CLI secara langsung

1. Pengantar

Dalam codelab ini, Anda akan mempelajari Gemini CLI, agen AI open source yang menghadirkan kecanggihan Gemini langsung ke terminal Anda.

Yang akan Anda pelajari

  1. Menginstal dan mengonfigurasi Gemini CLI
  2. Mempelajari alat, perintah bawaan, dan mengonfigurasi Server MCP di Gemini CLI
  3. Menyesuaikan Gemini CLI melalui file GEMINI.md
  4. Mempelajari beberapa kasus penggunaan dengan Gemini CLI

Yang Anda butuhkan

Codelab ini dapat dijalankan sepenuhnya dalam Google Cloud Shell, yang sudah menginstal Gemini CLI.

Atau, jika Anda lebih suka bekerja di komputer sendiri, ada bagian untuk menginstal Gemini CLI secara lokal.

Anda akan memerlukan hal berikut:

  • Browser web Chrome
  • Akun Gmail

Codelab ini dirancang untuk pengguna dan developer dari semua level (termasuk pemula). Kasus penggunaan dalam codelab telah dikategorikan ke dalam tugas developer dan non-developer. Kasus penggunaan developer menunjukkan cara mengintegrasikan kode dengan Gemini CLI dan bekerja dengan repositori GitHub untuk melakukan tugas pengembangan umum seperti penjelasan/pemahaman kode, pembuatan dokumentasi, perbaikan masalah, dan lainnya. Sebaiknya Anda menyelesaikan kasus penggunaan ini di codelab. Ada bagian opsional di akhir yang mencakup beberapa tugas sehari-hari yang tidak berfokus pada developer.

2. Sebelum memulai

Membuat project

  1. Di Konsol Google Cloud, di halaman pemilih project, pilih atau buat project Google Cloud.
  2. Pastikan penagihan diaktifkan untuk project Cloud Anda. Pelajari cara memeriksa apakah penagihan telah diaktifkan pada suatu project.
  3. Anda akan menggunakan Cloud Shell, lingkungan command line yang berjalan di Google Cloud yang telah dilengkapi dengan bq. Klik Activate Cloud Shell di bagian atas konsol Google Cloud.

Gambar tombol Aktifkan Cloud Shell

  1. Setelah terhubung ke Cloud Shell, Anda dapat memeriksa bahwa Anda sudah diautentikasi dan project sudah ditetapkan ke project ID Anda menggunakan perintah berikut:
gcloud auth list
  1. Jalankan perintah berikut di Cloud Shell untuk mengonfirmasi bahwa perintah gcloud mengetahui project Anda.
gcloud config list project
  1. Jika project Anda belum ditetapkan, gunakan perintah berikut untuk menetapkannya:
gcloud config set project <YOUR_PROJECT_ID>

3. Penginstalan

Sebelum Anda melakukan penyiapan dan menjalankan Gemini CLI, mari kita buat folder yang akan kita gunakan sebagai folder beranda untuk semua project yang kita buat di dalamnya. Ini adalah titik awal bagi Gemini CLI untuk berinteraksi, meskipun juga akan mereferensikan beberapa folder lain di sistem Anda yang akan Anda pelajari nanti, sesuai kebutuhan.

Lanjutkan dan buat folder contoh (gemini-cli-projects) lalu buka folder tersebut melalui perintah yang ditunjukkan di bawah. Jika Anda lebih suka menggunakan nama folder lain, silakan lakukan.

mkdir gemini-cli-projects

Buka folder tersebut:

cd gemini-cli-projects

Anda dapat meluncurkan Gemini CLI secara langsung melalui perintah gemini.

Buka langsung bagian berikutnya (konfigurasi Gemini CLI melalui settings.json).

Jika Anda ingin menginstal Gemini CLI secara lokal, ikuti petunjuk di bawah.

Langkah pertama adalah menginstal Node 20+ di komputer Anda. Setelah selesai, Anda dapat menginstal dan menjalankan Gemini CLI melalui salah satu metode berikut:

  1. Anda dapat menginstal Gemini CLI secara global di sistem Anda terlebih dahulu. Anda mungkin memerlukan akses Administrator untuk melakukan langkah ini.
# option 1: install Gemini CLI

npm install -g @google/gemini-cli

# .. and then run
gemini
  1. Jalankan dengan perintah berikut:
# option 2: run without installing Gemini CLI

npx https://github.com/google-gemini/gemini-cli

Anda dapat mengonfirmasi bahwa CLI telah diinstal dengan menjalankan:

gemini --version

Dengan asumsi Anda telah meluncurkan Gemini CLI melalui salah satu metode di atas, Anda akan melihat layar berikut yang menanyakan tentang pemilihan tema. Lanjutkan dan pilih salah satu yang Anda suka:

35a98edaf7f22e8e.png

Setelah Anda memilihnya, Anda akan diminta untuk memilih Metode autentikasi. Sebaiknya Anda menggunakan Akun Google pribadi dan bukan akun non-Google atau akun terkait Google Workspace dalam lab ini. Lisensi gratis tersebut memberi Anda akses ke Gemini 2.5 Pro dan jendela konteks 1 juta tokennya. Paket gratis memungkinkan 60 permintaan model per menit dan 1.000 permintaan per hari tanpa biaya.

Jika Anda mencapai batas kuota gratis saat ini yang diberikan ke Akun Google, Anda dapat memilih untuk menggunakan Kunci API Gemini atau bahkan Google Cloud Vertex AI, yang mengharuskan Anda memiliki Project ID dan nama lokasi untuk project tersebut. Lihat bagian Autentikasi dalam dokumentasi, jika Anda berencana menggunakan metode autentikasi lainnya.

57bad75cedaaaa38.png

Lanjutkan dan klik Enter. Tindakan ini akan membuka halaman Autentikasi Google di browser. Lanjutkan autentikasi dengan Akun Google Anda, setujui persyaratan, dan setelah Anda berhasil diautentikasi, Anda akan melihat bahwa Gemini CLI sudah siap dan menunggu perintah Anda. Contoh screenshot diberikan di bawah ini:

4dbc0138b78dc354.png

4. Konfigurasi Gemini CLI melalui settings.json

Jika Anda memilih Cloud Shell untuk menjalankan Gemini, tema default untuk Gemini CLI dan metode autentikasi sudah dipilih dan dikonfigurasi untuk Anda.

Jika Anda menginstal Gemini CLI di komputer dan meluncurkannya untuk pertama kalinya, Anda memilih tema, lalu metode autentikasi.

Sekarang, pada eksekusi Gemini CLI berikutnya, Anda tidak akan diminta untuk memilih tema dan metode autentikasi lagi. Artinya, file tersebut disimpan di suatu tempat dan file yang digunakannya disebut settings.json dan merupakan cara untuk menyesuaikan Gemini CLI.

Setelan diterapkan dengan prioritas berikut (Cloud Shell hanya menyediakan setelan Pengguna):

  1. Sistem: /etc/gemini-cli/settings.json (berlaku untuk semua pengguna, menggantikan setelan pengguna dan ruang kerja).
  2. Workspace: .gemini/settings.json (menggantikan setelan pengguna).
  3. Pengguna: ~/.gemini/settings.json.

Pengguna Windows: %USERPROFILE%.gemini\settings.json (yang biasanya diperluas menjadi C:\Users&lt;YourUsername>.gemini\settings.json)

Sistem: %ProgramData%\gemini-cli\settings.json (yang biasanya diperluas menjadi C:\ProgramData\gemini-cli\settings.json)

Pengguna Mac: ~/.gemini/settings.json (yang diperluas menjadi /Users/<YourUsername>/.gemini/settings.json)

Sistem: /etc/gemini-cli/settings.json

Jika Anda ingat, saat memilih tema, Anda memilih agar setelan disimpan di Setelan Pengguna. Jadi, buka ~/.gemini folder dan Anda akan melihat file settings.json.

File settings.json saya ditampilkan di bawah. Jika Anda telah memilih tema lain, Anda akan melihat namanya di sana.

{
  "theme": "Default",
  "selectedAuthType": "oauth-personal" or "cloud-shell"
}

5. Interaksi pertama kita dengan Gemini CLI

Mari kita mulai menggunakan Gemini CLI dan ketik kueri pertama Anda seperti yang ditunjukkan di bawah:

Give me a famous quote on Artificial Intelligence and who said that?

Respons yang diharapkan ditampilkan di bawah:

GoogleSearch Searching the web for: "famous quote on Artificial Intelligence and who said it"                                                                                                                 ...
Search results for "famous quote on Artificial Intelligence and who said it" returned.                                                                                                                             

✦ "The development of full artificial intelligence could spell the end of the human race." - Stephen Hawking.

Anda akan melihat bahwa kueri kami menghasilkan alat GoogleSearch (alat bawaan di Gemini CLI) yang dipanggil. Dengan kata lain, Anda telah menggunakan salah satu alat bawaan Gemini CLI yang canggih, yaitu GoogleSearch, yang mendasarkan responsnya pada informasi yang didapat dari web. Anda akan mempelajari lebih lanjut Alat di bagian berikutnya.

Cara cepat untuk memahami Gemini CLI dan berbagai perintah yang didukungnya adalah dengan mengetik /help (garis miring) dan Anda akan melihat berbagai perintah dan pintasan keyboard.

Kita keluar dari Gemini CLI untuk saat ini. Anda dapat melakukannya melalui perintah /quit atau Anda dapat melakukan Ctrl-C dua kali dalam sesi terminal Gemini CLI interaktif.

6. Gemini CLI - Parameter Perintah

Ada beberapa parameter command line yang dapat diberikan saat Anda memulai Gemini CLI. Untuk mendapatkan daftar lengkap opsi, Anda dapat menggunakan --help seperti yang ditunjukkan di bawah.

gemini --help

Tindakan ini akan menampilkan berbagai opsi yang tersedia. Sebaiknya Anda membaca dokumentasi di sini.

Mari kita lihat beberapa di antaranya. Yang pertama adalah mengonfigurasi Gemini CLI untuk menggunakan model Pro atau Flash. Saat ini, pada saat lab ini ditulis, hanya dua model ini yang didukung. Secara default, model Gemini 2.5 Pro digunakan, tetapi jika ingin menggunakan Model Flash, Anda dapat melakukannya saat memulai Gemini CLI melalui parameter -m seperti yang ditunjukkan di bawah:

gemini -m "gemini-2.5-flash"

Anda akan melihat bahwa jika Anda memulai dengan cara di atas, Anda dapat memeriksa model di kanan bawah terminal Gemini CLI seperti yang ditunjukkan di bawah:

60c4c0e6d277ade7.png

Setelah berada di aplikasi Gemini CLI, Anda dapat menggunakan perintah /model untuk membuka dialog yang memungkinkan Anda memilih model. Contoh eksekusi ditampilkan di bawah dan bergantung pada persyaratan dan panduan yang diberikan, Anda dapat terus mengganti model untuk memilih yang tepat untuk tugas tersebut, bergantung pada kompleksitas dan kebutuhan untuk mengontrol biaya.

4bd48822b92ba012.png

Mode noninteraktif

Yang menarik, kita bisa menjalankan Gemini CLI dalam mode non-interaktif. Artinya, Anda langsung memberikan perintah dan Gemini akan langsung meresponsnya, tanpa membuka terminal interaktif Gemini CLI. Hal ini sangat berguna jika Anda berencana menggunakan Gemini CLI secara otomatis sebagai bagian dari skrip atau proses otomatisasi lainnya. Anda menggunakan parameter -p untuk memberikan perintah ke Gemini CLI seperti yang ditunjukkan di bawah atau cukup menggunakan argumen posisi untuk memberikan perintah.

gemini "What is the gcloud command to deploy to Cloud Run"

Perlu diingat bahwa tidak ada ruang lingkup untuk melanjutkan percakapan dengan pertanyaan lanjutan. Mode ini juga tidak mengizinkan Anda mengizinkan alat (termasuk WriteFile) atau menjalankan perintah shell.

7. Gemini CLI - Alat bawaan

Gemini CLI dilengkapi dengan serangkaian alat bawaan dan dokumentasi alat menyatakan bahwa "Model Gemini menggunakan alat ini untuk berinteraksi dengan lingkungan lokal Anda, mengakses informasi, dan melakukan tindakan. Alat ini meningkatkan kemampuan CLI, sehingga dapat melakukan lebih dari sekadar pembuatan teks dan membantu berbagai tugas."

Untuk mendapatkan daftar Alat Bawaan saat ini, panggil perintah /tools seperti yang ditunjukkan di bawah:

Available Gemini CLI tools:

  - Codebase Investigator Agent (codebase_investigator)
  - Edit (replace)
  - FindFiles (glob)
  - GoogleSearch (google_web_search)
  - ReadFile (read_file)
  - ReadFolder (list_directory)
  - SaveMemory (save_memory)
  - SearchText (search_file_content)
  - Shell (run_shell_command)
  - WebFetch (web_fetch)
  - WriteFile (write_file)
  - WriteTodos (write_todos)

Salah satu hal yang harus segera Anda tanyakan adalah apakah Gemini CLI dapat memanggil alat ini begitu saja, kapan pun diinginkan? Jawaban defaultnya adalah tidak, jika menyangkut operasi sensitif yang mungkin melibatkan penulisan ke sistem lokal, pembacaan dari sistem eksternal, membuka jaringan eksternal, dan sebagainya.

Meskipun ada --yolo yang tersedia saat Anda memulai CLI (biasanya tidak direkomendasikan), Anda akan mendapati bahwa Gemini CLI akan meminta izin Anda untuk menjalankan alat yang telah dipilihnya. Anda dapat menolak izin, atau membiarkannya berjalan satu kali atau memberikan izin menyeluruh agar selalu berjalan. Anda harus memiliki kendali penuh atas segala hal.

Mari gunakan perintah yang akan membuat Gemini CLI memilih salah satu alat bawaan untuk dieksekusi dan yang akan memberi Anda pemahaman yang baik tentang cara kerjanya.

Bayangkan skenario saat Anda ingin mendapatkan informasi tentang berita keuangan terbaru di seluruh dunia dan menyimpannya ke dalam file di direktori kerja lokal tempat Anda meluncurkan Gemini CLI. Gunakan perintah berikut:

Search for the latest headlines today in the world of finance and save them in a file named finance-news-today.txt

Bayangkan sejenak apa yang harus dilakukan. Idealnya, ia harus keluar untuk melakukan GoogleSearch guna mendapatkan berita dari beberapa sumber informasi yang relevan yang dapat memberinya berita keuangan. Kemudian, aplikasi perlu membuat file bernama finance-news-today.txt (operasi penulisan di sistem lokal Anda yang akan memerlukan izin Anda) dengan kontennya.

Mari kita lihat apa yang terjadi (Anda harus melakukan hal yang sama di komputer Anda).

Hal pertama yang dilakukan adalah memanggil alat GoogleSearch untuk menelusuri web dan mengambil hasilnya, seperti yang ditunjukkan di bawah:

GoogleSearch Searching the web for: "latest finance headlines today"                                                                                                                                            

Search results for "latest finance headlines today" returned.  

Setelah selesai, aplikasi siap menulisnya ke file dan akan menggunakan alat WriteFile, tetapi karena ini adalah operasi sensitif (tulis), aplikasi akan meminta izin Anda. Anda dapat memutuskan jenis izin, yaitu izinkan sekali, izinkan selalu, dll. Lanjutkan dan pilih izinkan sekali untuk saat ini.

c84c5b58e202f98f.png

Kemudian, informasi akan ditulis ke file dan pesan berhasil akan ditampilkan di bawah:

✦ I have successfully saved the latest finance headlines into the file finance-news-today.txt.

Bagaimana cara memeriksa apakah file ditulis atau tidak? Anda dapat menggunakan @file untuk memintanya membacakan konten. Saat Anda mengetik @, daftar file di folder saat ini akan ditampilkan dan file yang baru saja dibuat akan ditampilkan. Pilih opsi tersebut dan kirimkan perintahnya. Perintah saya ditampilkan di bawah:

read the contents of @finance-news-today.txt

Hal ini akan menyebabkan alat yang diperlukan (ReadManyFiles, ReadFile) dipanggil dan konten ditampilkan seperti yang ditunjukkan di bawah:

7a5fc5d834cbb93b.png

8. Gemini CLI - Mode shell

Sekarang adalah waktu yang tepat untuk mempelajari cara bekerja langsung dengan Shell dari dalam Gemini CLI. Anda dapat masuk ke mode shell dengan menekan ! di kotak pesan. Tindakan ini akan beralih ke mode Shell. Anda dapat kembali dengan menekan ! lagi atau dengan menekan tombol ESC.

Saat dalam mode shell, Anda akan melihat ! di awal perintah seperti yang ditunjukkan di bawah:

a87f54bb3066b82d.png

Anda dapat memeriksa secara langsung menggunakan perintah standar seperti pwd dan ls seperti yang ditunjukkan di bawah. Perhatikan bahwa perintah mengasumsikan OS jenis Linux. Jika Anda menggunakan sistem operasi lain (Windows), gunakan perintah yang setara seperti (cd, dir, dan type). Perhatikan bahwa output panggilan ini disertakan dalam jendela konteks model.

33a18abe5581ff74.png

Anda dapat mencetak konten file melalui perintah cat hari ini.

6dbe0049ed002553.png

Latihan: Berikut latihan singkat yang dapat dicoba. Pilih feed RSS yang Anda inginkan. Berikan perintah ke Gemini CLI untuk mengambil konten feed RSS dan memformat hasilnya untuk Anda dengan cara tertentu. Ini adalah cara yang baik untuk mengotomatiskan sesuatu di awal hari. Anda bahkan dapat meminta Gemini CLI untuk mencari tahu apakah ada Feed RSS untuk area tertentu, misalnya, Catatan Rilis Google Cloud Platform.

Contoh perintah ditampilkan di bawah:

Get the latest release notes for Google Cloud from its RSS Feed and display the key points in a well-formatted list.

Perintah ini idealnya pertama-tama memanggil alat GoogleSearch untuk menemukan feed RSS Google Cloud Platform, lalu menggunakan alat WebFetch untuk mendapatkan konten Feed RSS dan menampilkannya.

9. Ekstensi Gemini CLI

Seperti yang dinyatakan dalam dokumentasi, ekstensi Gemini CLI mengemas perintah, server MCP, dan perintah kustom ke dalam format yang mudah digunakan dan sudah dikenal. Dengan ekstensi, Anda dapat memperluas kemampuan Gemini CLI dan membagikan kemampuan tersebut kepada orang lain. Ini adalah mekanisme utama untuk memperluas fungsi Gemini CLI di luar alat bawaannya.

Ekstensi adalah paket mandiri, dapat di-versi, dan mudah didistribusikan. Anggap saja sebagai "kontainer pengiriman" untuk penyesuaian Gemini CLI Anda, yang menggabungkan semua yang diperlukan untuk alur kerja tertentu ke dalam satu paket yang rapi.

f5ae3e229462c130.png

Ekstensi dapat menggabungkan kombinasi berikut:

  • Perintah garis miring kustom (file .toml Anda).
  • Konfigurasi server MCP (yang sebelumnya ada di settings.json).
  • File konteks (GEMINI.md) untuk memberikan petunjuk dan panduan khusus kepada model.
  • Pembatasan alat (excludeTools) untuk menciptakan lingkungan yang lebih aman dan fokus.

Galeri Ekstensi adalah marketplace terpusat untuk menemukan semua ekstensi resmi buatan Google dan pihak ketiga:

  1. Buka URL berikut di browser Anda: https://geminicli.com/extensions/browse/.
  2. Galeri ini adalah mesin visibilitas untuk ekosistem. Anda dapat melihat Ekstensi dari perusahaan seperti GitHub, Redis, dan DynaTrace, yang menunjukkan berbagai alat yang tersedia.
  3. Scroll ke bawah dan temukan kartu ekstensi untuk Cloud Run.
  4. Perhatikan bahwa kartu ini memberikan deskripsi, penulis (Google), dan tombol perintah Copy sekali klik. Ini adalah cara paling sederhana untuk mendapatkan perintah penginstalan ekstensi.

Ekstensi Gemini CLI - Perintah Pengelolaan

Perintah gemini extensions adalah titik entri Anda untuk mengelola Ekstensi lokal.

Jalankan di terminal Anda untuk melihat daftar perintah yang tersedia.

gemini extensions <command>

Manage Gemini CLI extensions.

Commands:
  gemini extensions install <source> [--auto-update] [--pre-release]   
      Installs an extension from a git repository URL or a local path.
  gemini extensions uninstall <names..>                                  
      Uninstalls one or more extensions.
  gemini extensions list
      Lists installed extensions.
  gemini extensions update [<name>] [--all]                           
      Updates all extensions or a named extension to the latest version.
  gemini extensions disable [--scope] <name>                          
      Disables an extension.
  gemini extensions enable [--scope] <name>                           
      Enables an extension.
  gemini extensions link <path>                                       
     Links an extension from a local path. Updates made to the local path 
     will always be reflected.
  gemini extensions new <path> [template]                             
     Create a new extension from a boilerplate example.
  gemini extensions validate <path>                                   
     Validates an extension from a local path.

Perintahnya mudah (menginstal/menghapus, mencantumkan, memperbarui, mengaktifkan/menonaktifkan, dll.) dan kita akan menggunakan beberapa perintah ini dalam codelab ini.

Memeriksa daftar ekstensi Anda saat ini

Sebelum menginstal apa pun, mari kita periksa "keadaan bersih" kita.

  1. Jalankan perintah gemini extensions list:
  2. Anda akan melihat output berikut, yang mengonfirmasi bahwa belum ada Ekstensi yang diinstal.
No extensions installed.

Mengonfigurasi Server MCP GitHub

Salah satu jenis Ekstensi Gemini CLI adalah Server MCP. Server MCP adalah aplikasi yang mengekspos alat dan resource ke Gemini CLI melalui Model Context Protocol, sehingga memungkinkannya berinteraksi dengan sistem dan sumber data eksternal. Server MCP bertindak sebagai jembatan antara model Gemini dan lingkungan lokal Anda atau layanan lain seperti API.

Kami memiliki Server MCP GitHub yang tersedia di Galeri Ekstensi Gemini. Klik tombol tersebut dan kartu Ekstensi akan terbuka, tempat Anda juga akan melihat perintah untuk menginstal ekstensi:

4eee33951dabd2db.png

Cukup salin atau gunakan perintah di bawah:

gemini extensions install https://github.com/github/github-mcp-server

Lanjutkan dengan izin yang diperlukan. Setelah diinstal, Anda akan dapat melihat ekstensi ini tersedia dalam daftar ekstensi, saat Anda memberikan perintah gemini extensions list.

✓ github (1.0.0)
 ID: faa318861b48de8d83c95eb8cd5e82c02393493978d198a0e7bf67fcb1bd22cb
 name: c0b0109d9439de57fe3cf03abeccbc52f4c98170c732d3b69af5e6395ace574e
 Path: /home/romin/.gemini/extensions/github
 Source: https://github.com/github/github-mcp-server (Type: git)
 Enabled (User): true
 Enabled (Workspace): true
 MCP servers:
  github

Anda dapat melihat jalur ekstensi dan di folder tersebut, Anda akan memiliki file bernama gemini-extension.json, yang isinya ditampilkan di bawah:

{
  "name": "github",
  "version": "1.0.0",
  "mcpServers": {
    "github": {
      "description": "--description–",
      "httpUrl": "https://api.githubcopilot.com/mcp/",
      "headers": {
            "Authorization": "Bearer $GITHUB_MCP_PAT"
      }
     }
  }
}

Anda akan melihat bahwa Personal Access Token (PAT) dibaca melalui variabel lingkungan. Anda harus memiliki Personal Access Token (PAT) dari GitHub terlebih dahulu. Setelah Anda memilikinya, pastikan Anda telah membuat seluruh file .env dan menempatkan nilai ini di sana atau membuat variabel lingkungan sebagai berikut (ganti PAT_VALUE dengan nilai sebenarnya):

export GITHUB_MCP_PAT=PAT_VALUE

Anda harus memulai ulang Gemini CLI. Setelah diluncurkan, Anda dapat menggunakan perintah /mcp list untuk melihat daftar Server MCP dan alat masing-masing yang tersedia. Anda akan dapat melihat Server MCP GitHub ditampilkan dalam warna hijau beserta alatnya (lebih dari 30 alat). Sebagian listingan ditampilkan di bawah:

🟢 github (dari github) - Siap (40 alat)

Alat:

  • add_comment_to_pending_review
  • add_issue_comment
  • assign_copilot_to_issue
  • create_branch
  • create_or_update_file
  • create_pull_request
  • create_repository
  • delete_file
  • fork_repository
  • get_commit
  • get_file_contents
  • get_label
  • get_latest_release
  • get_me
  • get_release_by_tag
  • get_tag
  • get_team_members
  • get_teams
  • issue_read

Mari kita mulai dengan perintah yang akan memanggil salah satu alat dari Server MCP Github. Berikan perintah berikut (siapa saya di GitHub?). Tindakan ini akan membuat Gemini CLI memilih alat yang tepat dan meminta izin Anda.

c9873c3f51b26866.png

Setelah Anda memberikan izin, hasilnya akan diambil seperti yang ditunjukkan di bawah:

✦ You are rominirani, a Developer Advocate at Google Cloud, located in Mumbai. You have 125 public repositories and 256 followers.

Sekarang Anda harus menggunakan salah satu project Github Anda. Berikan kueri Anda dalam bahasa alami seperti:

  • Jelaskan <repo-name> kepada saya?
  • Buat clone <repo-name> di komputer lokal saya.
  • Deskripsikan @<file-name> atau @<directory-name>/
  • Apa saja komponen yang ada di repositori ini?
  • Saya telah melakukan perubahan yang diperlukan. Bisakah Anda mengirimkan perubahannya ke GitHub dan menggunakan alat Server MCP GitHub untuk melakukannya.

Anda akan menemukan latihan untuk menggunakan Server MCP GitHub secara mendetail di bagian selanjutnya dalam lab ini.

Mengonfigurasi Server MCP Cloud Run

Ekstensi Cloud Run yang tersedia di galeri Ekstensi Gemini CLI adalah Server MCP yang memungkinkan kita men-deploy aplikasi ke Cloud Run.

Kartu Ekstensi Cloud Run dari galeri Ekstensi ditampilkan di bawah:

ed9b19eac1fbde78.png

Pertama, instal Ekstensi Cloud Run dengan mengklik Copy install command seperti yang ditunjukkan di atas. Kemudian, tempel perintah tersebut di terminal Cloud Shell (seharusnya mirip dengan berikut):

gemini extensions install https://github.com/GoogleCloudPlatform/cloud-run-mcp

Saat menjalankan perintah di atas, Anda akan melihat konfirmasi yang diperlukan dari Anda. Lanjutkan dan berikan persetujuan Anda. Kemudian, Ekstensi Cloud Run akan berhasil diinstal.

Jika sekarang Anda menjalankan perintah gemini extensions list, Anda akan melihat ekstensi Cloud Run terinstal seperti yang ditunjukkan di bawah:

✓ cloud-run (1.0.0)
 ID: 3c1a38909b6d7d90b6acc8ca1e80d97b4a867253a3cd12d841b2aab4e556a58f
 name: 0b1820c1f0c043bbb3b54f496d862c02172424c930eb965d61f468be52e6f127
 Path: /home/romin/.gemini/extensions/cloud-run
 Source: https://github.com/GoogleCloudPlatform/cloud-run-mcp (Type: git)
 Enabled (User): true
 Enabled (Workspace): true
 Context files:
  /home/romin/.gemini/extensions/cloud-run/gemini-extension/GEMINI.md
 MCP servers:
  cloud-run

Jika Anda meluncurkan Gemini CLI sekarang dan menjalankan perintah /mcp list, Anda akan melihat hal berikut:

🟢 cloud-run (from cloud-run) - Ready (8 tools, 2 prompts)
  Tools:
  - create_project
  - deploy_container_image
  - deploy_file_contents
  - deploy_local_folder
  - get_service
  - get_service_log
  - list_projects
  - list_services
  Prompts:
  - deploy
  - logs

Di atas hanyalah beberapa Ekstensi Gemini CLI yang telah kami tunjukkan cara konfigurasinya. Anda dapat melihat Galeri Ekstensi untuk menemukan lebih banyak ekstensi atau bahkan melakukan codelab " Memulai Ekstensi Gemini CLI".

10. Kasus penggunaan yang dapat dicoba

Gemini CLI dapat diterapkan ke berbagai kasus penggunaan yang berlaku untuk developer dan non-developer. Berikut beberapa skenario dan bergantung pada area minat Anda, Anda dapat mencoba salah satu atau semua skenario tersebut.

Dalam setiap kasus ini, perintah disediakan. Anda dapat mencoba fitur ini dalam mode interaktif atau non-interaktif Gemini CLI melalui parameter -p saat meluncurkan Gemini CLI.

Vibe coding dengan Gemini CLI

Mari kita gunakan Gemini CLI untuk mem-vibe code aplikasi. Dalam tugas ini, Anda akan meminta Gemini CLI untuk membuat aplikasi, lalu mengirimkan versi awal ke repositori GitHub.

Prasyarat

Untuk melakukan tugas di bagian ini, ada beberapa prasyarat:

  • Git
  • Gemini CLI dengan Ekstensi Gemini CLI GitHub (yang sudah kita lakukan sebelumnya) atau jika Anda telah menyiapkan gh ( alat GitHub CLI), keduanya juga dapat digunakan.
  • Pemahaman tentang dasar-dasar Git dan sedikit pengetahuan pemrograman

Kami akan mengasumsikan bahwa Anda telah meluncurkan Gemini CLI di folder tertentu pilihan Anda.

Mulai dengan perintah awal. Jangan ragu untuk memodifikasinya sesuai keinginan Anda. Perlu diingat bahwa selama sesi dengan Gemini CLI, Gemini CLI akan meminta izin Anda untuk membuat file, dll. Berikan izin yang diperlukan.

Dalam tugas ini, kita tidak mencari Gemini CLI untuk menjalankan aplikasi atau mengujinya untuk kita karena kita ingin memiliki kontrol yang lebih besar. Namun, Anda sepenuhnya bebas menentukan apakah ingin melakukannya atau tidak.

Generate a website for a 1-day event filled with technical talks. There are going to be 6 talks in a single track of 1 hour each. Each talk has the following information: title, 1 or maximum of 2 speakers, category (1 or maximum of 3 keywords), duration and a description. The website has a single page where users can see the schedule for the entire day with the timings. There will be one lunch break of an hour and the event starts at 10:00 AM. Keep a 10 minute transition between talks. I would like to use Node.js on the server side and standard HTML, JavaScript and CSS on the front-end. The users should be able to search the talks based on category.

I would like you to proceed in the following way: 
1. Plan out how you would design and code this application.
2. Ask me for any clarifications along the way.
3. Once I am fine with it, do generate the code and provide me instructions to run and test locally. 

Beberapa perintah dan respons berikutnya adalah contoh alur yang diamati. Gemini CLI akan membuat rencana dan meminta konfirmasi / klarifikasi atau melanjutkan. Ikuti petunjuknya. Sebagai contoh, berikut adalah rangkaian percakapan contoh saya:

   1. Backend (Node.js/Express):
       * Set up an Express server to serve the static frontend files.
       * Create an /api/schedule endpoint that will:
           * Generate the event schedule dynamically, including talk timings and the lunch break, based on your requirements.
           * Store mock talk data (title, speakers, category, description).
           * Filter the schedule based on a category query parameter.

   2. Frontend (HTML, CSS, JavaScript):
       * Create an index.html file for the main structure.
       * Develop style.css for a clean and responsive design.
       * Write script.js to:
           * Fetch the schedule data from the backend.
           * Dynamically render the talks and lunch break on the page.
           * Implement a search input that filters talks by category, updating the displayed schedule without a full page reload.

   3. Schedule Logic:
       * The backend will handle calculating the precise start and end times for each 1-hour talk, factoring in the 10:00 AM start, 10-minute transitions, and the 1-hour lunch break.

  Before I proceed with the code, could you please clarify the following:

   * Example Talk Data: Could you provide some example talk titles, speakers, categories (keywords), and descriptions? This will help me create realistic dummy data for the schedule.
   * Lunch Break Placement: Where should the 1-hour lunch break be placed in the schedule? (e.g., after the 3rd talk, at 1 PM, etc.)
   * Styling Preferences: Do you have any specific styling preferences (e.g., color scheme, modern/minimalist, etc.)? If not, I will go with a clean, simple design.

 I will create a single-page website for your event. Here's my plan:

  WriteTodos Set 7 todo(s)                                                                                                                                                                                        

 I am waiting for your clarifications regarding the example talk data, lunch break placement, and styling preferences before I proceed with generating the code.

Terakhir, Gemini memberikan ringkasan berikut:

 Instructions to Run and Test Locally:

   1. Start the server:
      Open your terminal in the project directory (/home/romin/gemini-cli-projects/event-website/) and run:
   1     node server.js
      You should see a message in the terminal indicating: Server running on http://localhost:3000.

   2. Open in your browser:
      Open your web browser and navigate to:
      http://localhost:3000

   3. Test functionality:
       * You should see the event schedule displayed on the page, with talks and a lunch break.
       * Search by category: In the "Search by category..." input box, type a category keyword (e.g., "AI", "Web Development", "Python", "Security").
       * Click the "Search" button. The schedule displayed should filter to only show talks matching that category.
       * Click the "Reset" button to clear the search filter and view the full schedule again.

  Let me know if you encounter any issues or if you'd like to make any modifications or additions to the website!

Setelah mengikuti petunjuk untuk memulai server dan membuka halaman beranda, kami mendapatkan contoh situs seperti yang ditunjukkan di bawah (Anda akan melihat varian situs serupa jika menggunakan perintah yang sama):

78c224b7ce29bb4d.png

Anda dapat terus melakukan perubahan lainnya dengan bantuan Gemini CLI. Setelah puas dengan perubahan tersebut, Anda dapat mengirimkannya ke repositori GitHub.

Pertama, buat file .gitignore dan Anda dapat meminta bantuan Gemini CLI.

Create a .gitignore file for this project.

Langkah berikutnya adalah memberikan petunjuk ke Gemini CLI untuk mengirim repositori ini ke akun GitHub kami dan hal ini akan menjalankan alat Server MCP GitHub di latar belakang.

Berikan perintah yang mirip dengan perintah di bawah:

Great! I would now like to push all of this to a new repository in my Github account. I would like to name this repository <Your-Name>-event-talks-app

Di sini, Anda akan mempelajari sejumlah perintah:

  1. Buat repositori.
  2. Skrip ini akan menggunakan beberapa perintah Git : init, add, commit untuk mengelola repositori Git lokal.
  3. Kemudian, perintah ini akan menyiapkan Git remote dan melakukan push

Catatan: Terkadang Gemini CLI dapat mengalami waktu tunggu habis atau menggunakan nama pengguna yang salah, dll. Berinteraksilah dengannya dan sarankan perbaikannya.

Jika semuanya berjalan lancar, Anda akan memiliki repositori GitHub. Contoh screenshot ditampilkan di bawah:

d046ee11d28e4d33.png

Perhatikan bahwa Anda belum membuat README.md untuk project ini dan hal tersebut merupakan latihan yang baik untuk bagian berikutnya, di mana kita akan bekerja dengan repositori yang baru saja Anda buat.

Menggunakan Gemini CLI untuk mengerjakan Repositori GitHub

Dalam kasus penggunaan ini, Anda akan menggunakan Gemini CLI untuk bekerja dengan repositori GitHub. Anda akan melakukan beberapa tugas yang mencakup:

  • Memahami basis kode
  • Membuat dokumentasi
  • Menerapkan fitur baru
  • Lakukan commit dan kirim kembali perubahan ke repositori
  • Menangani Masalah GitHub dan menerapkan perubahan yang diusulkan

Hal ini akan memberi Anda dasar yang baik untuk kemudian bekerja dengan repositori dan menggunakan Gemini CLI sebagai asisten terkait tugas khusus developer ini.

Prasyarat

Untuk melakukan tugas di bagian ini, Anda memerlukan hal berikut:

  • Git
  • Gemini CLI dengan Ekstensi GitHub MCP Gemini CLI (yang sudah kita lakukan sebelumnya) atau jika Anda telah menyiapkan gh ( alat GitHub CLI), keduanya juga akan berfungsi.
  • Pemahaman tentang dasar-dasar Git dan sedikit pengetahuan pemrograman (kita akan menggunakan Node.js dalam contoh ini karena Anda mungkin sudah menyiapkan lingkungan di mesin Anda karena telah menginstal Gemini CLI). Namun, Anda dapat memilih repositori pilihan Anda dengan bahasa pemrograman dan framework yang berbeda nanti.
  • Anda seharusnya telah menyelesaikan bagian sebelumnya dan memiliki repositori yang siap digunakan, tempat kita membuat situs Event Talks.

Mari terus menggunakan Gemini CLI dari folder/direktori yang Anda gunakan untuk membuat aplikasi Event Talks atau jika perlu, Anda dapat meng-clone repositori ke mesin lokal, lalu memulai Gemini CLI dari direktori tersebut. Coba skenario berikut seperti yang tercantum di bawah:

Memahami basis kode

  • Saya ingin memahami proyek ini secara mendetail. Bantu saya memahami fitur utama, lalu uraikan menjadi sisi Server dan Klien. Buat contoh alur dan tunjukkan cara kerja permintaan dan respons.
  • Explain @server.js

Membuat file README

  • Buat file README untuk project ini.

Menerapkan fitur baru

  • Saya ingin menerapkan fitur baru yang memungkinkan pengguna menelusuri berdasarkan Pembicara tertentu juga. Pertama, tunjukkan rencana cara Anda menerapkan perubahan ini, lalu kita dapat membuat kodenya.

Fitur ini akan memberi Anda rencana, yang dapat Anda setujui. Setelah disetujui, Gemini CLI akan melanjutkan dan membuat perubahan tersebut. Uji perubahan Anda dan jika ada bug (kemungkinan), minta Gemini CLI untuk memperbaikinya.

Setelah perubahan terlihat baik, Anda dapat mengikuti langkah-langkah yang sama untuk melakukan commit dan mengirimkannya ke repositori jarak jauh.

Membuat Masalah berdasarkan fitur yang disarankan

Mari kita coba sesuatu yang menarik di sini. Anda akan bertanya kepada Gemini CLI tentang cara meningkatkan pengalaman pengguna aplikasi ini dan berdasarkan penilaiannya, Gemini CLI dapat membuat saran tersebut sebagai masalah di repositori GitHub yang sama. Model ini akan menggunakan alat "create_issue" dari Server MCP Github.

Coba perintah berikut:

  • Kami ingin Anda menilai aplikasi dari sudut pandang pengalaman pengguna. Kemudahan penggunaan, responsivitas, pesan yang bermanfaat, dan lainnya. Buat daftar perbaikan, lalu buat perbaikan tersebut sebagai Masalah di repositori Github.

Idealnya, Gemini akan membagikan peningkatan ini terlebih dahulu kepada Anda, lalu melanjutkan dengan izin Anda untuk membuat masalah di repositori GitHub. Berikut adalah contoh screenshot dari proses yang kami jalankan:

86c33b7815c7872a.png

Menangani Masalah GitHub dan menerapkan perubahan yang diusulkan

Sekarang Anda dapat mengambil salah satu masalah yang dihasilkan sebelumnya dan meminta Gemini CLI untuk mengerjakan dan menerapkannya.

Contoh masalah yang dihasilkan ditampilkan di bawah:

2778bde35f41efe9.png

Ambil seluruh URL Masalah dan berikan perintah seperti ini:

  • Buka Masalah: <YOUR_ISSUE_URL> dan pahami perubahan yang perlu dilakukan. Pertama, diskusikan rencana, lalu tunjukkan perubahan yang diusulkan dalam kode.

Anda dapat menyetujui perubahan dan mengirimkannya ke repositori. Anda bahkan dapat memintanya untuk menutup masalah tersebut.

(Opsional) Tugas Sehari-Hari

Kasus penggunaan di bawah ini adalah tugas yang mungkin akan Anda lakukan secara rutin. Tindakan ini mencakup mengatur file ke dalam folder, mengambil dan meringkas konten dari web, memproses file gambar dan mengekstrak konten dari file tersebut, bekerja dengan database, dan banyak lagi.

Anda dapat mempelajari kasus penggunaan yang Anda sukai.

Mengatur File/Folder

Anda dapat menggunakan Gemini CLI untuk mengatur file berdasarkan jenisnya di berbagai folder sesuai kebutuhan. Buka folder di komputer Anda yang memiliki beberapa file .txt, .png, .jpg, .pdf, .mp4, dan lainnya. Folder ini kemungkinan adalah Desktop atau folder Download Anda.

Berikut adalah contoh folder dan isi folder yang ditampilkan di bawah (Anda mungkin memiliki file lain):

7011e3dfaf628e9b.png

Buka folder tersebut dan mulai Gemini CLI. Anda akan meminta Gemini CLI untuk membuat beberapa folder terlebih dahulu: Images, Documents, Videos, lalu Anda akan meminta Gemini CLI untuk mengatur file di folder tersebut.

Gemini CLI akan sering meminta izin Anda sebelum menjalankan perintah, terutama perintah yang mengubah sistem file Anda (seperti menulis, memindahkan, atau menghapus file). Selalu tinjau perintah ini dengan cermat sebelum memberikan izin. Ini adalah jaring pengaman Anda.

Create the following folders "Images","Documents","Videos"

Kemudian, berikan perintah berikut:

Go through all the files in this folder and then organize them by moving all the files ending with .jpg, .jpeg, .gif into the "Images" folder. Move all ".txt" files into the "Documents" folder. Move all the ".mp4" files in the "Videos" folder.

Contoh tampilan akhir folder ditampilkan di bawah. Anda akan melihat sub-folder baru yang dibuat dan file yang dipindahkan ke sub-folder masing-masing, bergantung pada jenisnya.

4c1ee9ddea4b3f5f.png

Beberapa skenario pengorganisasian lainnya (petunjuk diberikan di samping setiap skenario):

  1. Ringkasan: Untuk setiap dokumen di folder 'Documents', buat file txt di folder yang sama dengan nama 'summary_ORIGINAL_FILENAME.txt' yang berisi ringkasan 3 kalimat tentang poin-poin utama dokumen.
  2. Mengategorikan menurut Jenis: Memindai semua file PDF dan DOCX dalam direktori ini. Pindahkan semua file yang memiliki "invoice" di nama atau kontennya ke folder 'Financial/Invoices'. Pindahkan file dengan "receipt" ke 'Financial/Receipts'. File .docx lainnya akan masuk ke 'Laporan'.
  3. Mengekstrak Informasi Penting (dan "memberi tag"): Untuk setiap file PDF di folder 'Financial/Invoices', baca kontennya. Jika Anda menemukan tanggal, ganti nama file untuk menyertakan tanggal tersebut dalam format YYYY-MM-DD, misalnya, ‘invoice_2025-07-26_original_name.pdf'.

Mengatur Gambar

Mari kita lihat cara Anda mengatur konten gambar di komputer Anda.

Untuk mencobanya:

  • Anda harus memiliki direktori/folder dengan berbagai file gambar (.jpg, .png, dll.). Sertakan beberapa foto dengan data EXIF (sebagian besar foto dari kamera/ponsel memiliki data ini).
  • Buka direktori ini.
  • Luncurkan Gemini CLI.

Coba salah satu skenario berikut (perintah diberikan di samping setiap skenario):

  • Ganti Nama menurut Tanggal (Data EXIF): Mengganti nama semua file .jpg dan .png di direktori ini untuk menyertakan tanggal pembuatannya dari data EXIF dalam format 'YYYYMMDD_HHMMSS_nama_asli.jpg'. Jika tidak ada tanggal EXIF yang ditemukan, gunakan tanggal terakhir diubah file.
  • Buat Deskripsi Gambar: Untuk setiap gambar dalam folder ini, deskripsikan isi gambar dan simpan deskripsi tersebut dalam file teks bernama 'description_ORIGINAL_FILENAME.txt' di direktori yang sama.
  • Identifikasi Duplikat (Konseptual, memerlukan logika yang lebih canggih): Temukan gambar duplikat di folder ini berdasarkan konten visualnya, dan cantumkan nama filenya. Jangan hapus dulu.

Meringkas Artikel (File Lokal atau Web)

Untuk setiap skenario di bawah, Anda dapat mengubah URL, topik yang diminati, dan nama file lokal sesuai kebutuhan. Nama file yang diberikan adalah nama file contoh, Anda dapat menggantinya dengan nama file yang ada di sistem Anda.

Coba salah satu skenario berikut (perintah diberikan di samping setiap skenario):

  • Ringkas artikel web (URL tunggal): Buka https://medium.com/google-cloud/getting-started-with-gemini-cli-8cc4674a1371 dan ringkas 3 poin penting teratas dari artikel berita ini.
  • Meringkas beberapa artikel web (misalnya, dari penelusuran): Temukan artikel berita terbaru tentang "Gemini CLI" menggunakan Google Penelusuran. Untuk 5 artikel relevan teratas, ringkas setiap artikel dalam 2-3 kalimat dan cantumkan URL-nya.
  • Meringkas file teks lokal: Ringkas poin-poin utama artikel dalam ‘my_research_paper.txt'. Fokus pada metodologi dan kesimpulan.
  • Meringkas PDF lokal: Baca 'financial_report_Q2_2025.pdf'. Berikan ringkasan performa keuangan dan tantangan utama yang disebutkan.

Mengekstrak Informasi Spesifik (File Lokal atau Web)

Untuk setiap skenario di bawah, Anda dapat mengubah URL, topik yang diminati, dan nama file lokal sesuai kebutuhan. Nama file yang diberikan adalah nama file contoh, Anda dapat menggantinya dengan nama file yang ada di sistem Anda.

Coba salah satu skenario berikut (perintah diberikan di samping setiap skenario):

  • Mengekstrak entity dari artikel lokal: Dari ‘biografi.txt', buat daftar semua individu bernama dan tanggal penting yang terkait dengan mereka.
  • Ekstrak data dari tabel dalam PDF: Dalam ‘quarterly_sales.pdf', ekstrak data dari tabel di halaman 3 yang menampilkan "Penjualan Produk menurut Wilayah" dan sajikan dalam format tabel Markdown.
  • Mengekstrak judul dan sumber berita dari situs berita: Buka ‘https://news.google.com/' (atau situs berita serupa). Ekstrak judul utama dari halaman depan dan sumber berita yang sesuai. Tampilkan sebagai daftar berbutir.
  • Menemukan spesifikasi produk dari halaman e-commerce: Buka ‘https://www.amazon.in/Google-Cloud-Certified-Associate-Engineer/dp/1119871441' (contoh untuk buku). Ekstrak judul buku, penulis, dan detail lainnya. Tampilkan dalam format JSON terstruktur.
  • Mengekstrak durasi dari video, dalam format tertentu (misalnya, "2j37m42d").

Menjawab Pertanyaan berdasarkan Konten (perilaku seperti RAG)

Untuk setiap skenario di bawah, Anda dapat mengubah URL, topik yang diminati, dan nama file lokal sesuai kebutuhan. Nama file yang diberikan adalah nama file contoh, Anda dapat menggantinya dengan nama file yang ada di sistem Anda.

Coba salah satu skenario berikut (perintah diberikan di samping setiap skenario):

  • Tanya Jawab pada dokumen lokal: Saya melampirkan 'user_manual.pdf'. Apa langkah-langkah untuk memecahkan masalah konektivitas jaringan?
  • Tanya Jawab di halaman web: Dengan menggunakan konten dari 'https://www.who.int/news-room/fact-sheets/detail/climate-change-and-health', apa saja risiko kesehatan utama yang terkait dengan perubahan iklim menurut WHO?
  • Bandingkan informasi dari beberapa sumber: Saya memiliki dua artikel berita: 'article1.txt' dan 'article2.txt', yang membahas perubahan kebijakan ekonomi baru-baru ini. Bandingkan dan bedakan pandangan mereka tentang potensi dampak terhadap bisnis kecil.

Pembuatan Konten berdasarkan Informasi yang Diekstrak

Untuk setiap skenario di bawah, Anda dapat mengubah URL, topik yang diminati, dan nama file lokal sesuai kebutuhan.

Coba salah satu skenario berikut (perintah diberikan di samping setiap skenario):

  • Buat ringkasan berita dari artikel: Baca @tech_innovation_article.txt. Tulis ringkasan berita singkat yang menarik (sekitar 150 kata) yang cocok untuk newsletter perusahaan, yang menyoroti teknologi baru dan potensinya.
  • Buat draf email yang merangkum transkrip rapat: Berikut file transkrip rapat: @meeting_transcript.txt. Buat draf email untuk tim yang merangkum keputusan penting yang dibuat dan item tindakan yang ditetapkan, termasuk siapa yang bertanggung jawab atas setiap item.

Dukungan multi-modal Gemini CLI

Gemini CLI memiliki dukungan multi-model melalui Gemini dan Anda dapat memintanya untuk memproses file dengan format konten yang berbeda sesuai kebutuhan Anda.

Anda akan memproses banyak gambar invoice dengan Gemini CLI dan mengekstrak informasi penting dari gambar tersebut. Ikuti langkah-langkah berikut:

  • Buat folder di komputer Anda dan download beberapa invoice dari repositori GitHub berikut.
  • Luncurkan Gemini CLI dari folder tersebut

Berikan perintah berikut untuk mengekstrak informasi dari invoice dalam bentuk tabel.

The current folder contains a list of invoice files in Image format. Go through all the files in this folder and extract the following invoice information in the form of a table: Invoice No, Invoice Date, Invoice Sent By, Due Date, Due Amount.

Idealnya, Anda akan mendapatkan output yang terlihat seperti ini:

7203d699d875a91f.png

Berikut adalah skenario lain, di mana Anda dapat meminta kolom turunan tambahan. Misalnya, Anda ingin menampilkan emoji silang merah untuk semua tanggal jatuh tempo invoice yang telah berlalu. Anda dapat memberikan perintah sebagai berikut:

list all files with .png extension in this folder. Extract the invoice information from it by reading them locally and display it in a table format containing the following column headers: : Invoice No, Invoice Date, Invoice Sent By, Due Date, Due Amount. Add a column at the end of the table that shows a red cross emoji in case the due date is in the past.

Hal ini akan menghasilkan output berikut:

e11fcde0400f5a0b.png

Terapkan hal ini ke file Anda sendiri yang memiliki format selain teks.

Menggunakan Gemini CLI untuk menangani database

Anda dapat menggunakan Gemini CLI untuk bekerja dengan berbagai database secara lebih efisien. Anda dapat menggunakannya untuk berbagai skenario: membuat kueri dengan bahasa alami, mengekspor data, mendesain skema database, membuat data pengujian yang realistis, dan lainnya.

Anda akan menggunakan SQLite3 untuk menyelesaikan tugas ini. Anda harus menginstal SQLite3 dan memiliki database Chinook contoh.

Berikut petunjuk singkat untuk menyiapkan SQLite3:

  1. macOS: SQLite3 sudah diinstal sebelumnya. Verifikasi dengan sqlite3 --version. Jika perlu, instal dengan Homebrew: brew install sqlite3.
  2. Windows: Download biner yang telah dikompilasi sebelumnya dari situs SQLite. Ekstrak file ke direktori (misalnya, C:\sqlite). Tambahkan direktori tersebut ke variabel lingkungan PATH sistem Anda.
  3. Linux: Debian/Ubuntu: sudo apt update && sudo apt install sqlite3

Download database Chinook contoh (berikut link langsung untuk mendownloadnya).

Untuk menjalankan perintah ini, sebaiknya Anda membuat folder (database-tasks) di direktori gemini-cli-projects. Salin file database Chinook ke folder tersebut. Pastikan alat sqlite3 disiapkan di sistem Anda dan tersedia di jalur, sehingga Gemini CLI dapat menggunakannya. Luncurkan Gemini CLI.

Diagram skema database ditampilkan di bawah:

4178b54e03a07d60.png

Asumsikan bahwa Anda berada di folder bernama database-tasks dan file database Chinook bernama chinook.db.

Beberapa perintah diberikan di bawah yang dapat membantu Anda menggunakan database. Mari kita bahas secara singkat yang pertama untuk mendemonstrasikan izin yang akan diminta.

Mulailah dengan perintah untuk mencantumkan tabel yang ada dalam database, berikan perintah berikut:

What tables are present in the file: chinook.db 

Hal ini menggunakan alat untuk membaca file, lalu ingin menggunakan utilitas sqlite3 yang ada di sistem Anda untuk melakukan hal yang diperlukan:

a8d782201eba1eb8.png

Berikan izin untuk menjalankannya sekali guna mendapatkan output yang diharapkan:

69e96f22610e7892.png

Coba perintah berikut atau perintah lain pilihan Anda:

  • Berapa jumlah karyawan yang ada?
  • Apa skema tabel invoice?
  • Mana 3 invoice teratas berdasarkan total dan pelanggan mana yang telah membuat invoice tersebut?

Anda akan melihat bahwa Gemini CLI menangani dua hal: Membuat pernyataan SQL yang benar untuk memenuhi persyaratan Anda dan memberikan perintah sqlite3 yang benar.

Menggunakan Gemini CLI untuk membuat data

Anda dapat meminta Gemini CLI untuk menghasilkan data dalam berbagai format data. Hal ini dapat berupa potongan konten hingga data JSON, yang mungkin perlu Anda tiru. Di sini, kita akan berfokus pada skenario yang berlaku untuk developer/penguji.

Berikut beberapa perintah yang dapat Anda coba:

Buat data JSON contoh ulasan pelanggan

Generate a JSON array of 3 synthetic customer reviews for a new smartphone. Each review should have 'reviewId' (string, UUID-like), 'productId' (string, e.g., 'SMARTPHONE_X'), 'rating' (integer, 1-5), 'reviewText' (string, 20-50 words), and 'reviewDate' (string, YYYY-MM-DD format).

Membuat Respons API Tiruan (JSON)

Generate a JSON array representing 7 daily sales records for a mock API endpoint. Each record should include 'date' (YYYY-MM-DD, chronologically increasing), 'revenue' (float, between 5000.00 and 20000.00), 'unitsSold' (integer, between 100 and 500), and 'region' (string, either 'North', 'South', 'East', 'West').

Membuat Pernyataan Penyisipan Database Contoh (SQL)

Generate 5 SQL INSERT statements for a table named 'users' with columns: 'id' (INTEGER, primary key), 'username' (VARCHAR(50), unique), 'email' (VARCHAR(100)), 'password_hash' (VARCHAR(255)), 'created_at' (DATETIME, current timestamp). Ensure the password_hash is a placeholder string like 'hashed_password_X'.

Membuat Data CSV untuk Pemuatan/Analisis Data

Generate 10 lines of CSV data, including a header row, for customer transactions. Columns should be: 'TransactionID' (unique string), 'CustomerID' (integer), 'ItemPurchased' (string, e.g., 'Laptop', 'Monitor', 'Keyboard'), 'Quantity' (integer, 1-3), 'UnitPrice' (float, between 100.00 and 1500.00), 'TransactionDate' (YYYY-MM-DD).

Buat file Konfigurasi (YAML)

Generate a sample YAML configuration for a 'user_service'. Include sections for 'database' with 'host', 'port', 'username', 'password', 'database_name'. Also include a 'api_keys' section with 'payment_gateway' and 'email_service' placeholders. Use realistic default values.

Membuat Data Pengujian untuk Kasus/Validasi Edge

Generate a JSON array of 8 email addresses for testing purposes. Include a mix of: 2 valid standard emails, 2 with missing '@', 2 with invalid domains (e.g., '.com1'), and 2 with special characters in the local part that are usually invalid (e.g., spaces or multiple dots).

11. Selamat

Selamat, Anda telah berhasil menjelajahi Gemini CLI, kemampuannya, dan menerapkannya ke beberapa kasus penggunaan.

Dokumen referensi