1. Pengantar
Dalam codelab ini, Anda akan mempelajari Gemini CLI, agen AI open source yang menghadirkan kecanggihan Gemini langsung ke terminal Anda.
Project Gemini CLI bersifat open source dan Anda dapat melihat roadmap publik di sini.
Yang akan Anda pelajari
- Menginstal dan mengonfigurasi Gemini CLI
- Mempelajari alat, perintah bawaan, dan mengonfigurasi Server MCP di Gemini CLI
- Menyesuaikan Gemini CLI melalui file
GEMINI.md
- Menjelajahi 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 Anda sendiri, ada bagian untuk menginstal Gemini CLI secara lokal.
Anda 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 memadukan 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
- Di Konsol Google Cloud, di halaman pemilih project, pilih atau buat project Google Cloud.
- Pastikan penagihan diaktifkan untuk project Cloud Anda. Pelajari cara memeriksa apakah penagihan telah diaktifkan pada suatu project.
- 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.
- 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
- Jalankan perintah berikut di Cloud Shell untuk mengonfirmasi bahwa perintah gcloud mengetahui project Anda.
gcloud config list project
- 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 Anda gunakan sebagai folder utama untuk semua project yang mungkin Anda buat di dalamnya. Ini adalah titik awal bagi Gemini CLI untuk bekerja, meskipun juga akan mereferensikan beberapa folder lain di sistem Anda yang akan Anda gunakan 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
Mari buka folder tersebut:
cd gemini-cli-projects
Anda dapat meluncurkan Gemini CLI secara langsung melalui perintah gemini.
Langsung buka 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:
- 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
- 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:
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.
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:
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):
- Sistem:
/etc/gemini-cli/settings.json
(berlaku untuk semua pengguna, menggantikan setelan pengguna dan ruang kerja). - Workspace:
.gemini/settings.json
(menggantikan setelan pengguna). - Pengguna:
~/.gemini/settings.json
.
Pengguna Windows: %USERPROFILE%.gemini\settings.json (yang biasanya diperluas menjadi C:\Users<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:
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 seperti yang ditunjukkan di bawah:
Keluar dari Gemini CLI untuk saat ini. Anda dapat melakukannya melalui perintah /quit
atau Anda dapat menjalankan 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:
Mode noninteraktif
Opsi menarik adalah 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:
gemini -p "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:
Salah satu hal yang harus segera Anda tanyakan adalah apakah Gemini CLI dapat memanggil alat ini begitu saja, kapan pun diinginkannya? 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 --yolomode
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 sekali atau memberikan izin menyeluruh agar selalu berjalan. Anda adalah dan harus memiliki kendali penuh atas semuanya.
Mari kita 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.
Setelah penelusuran selesai, data akan diambil seperti yang ditunjukkan di bawah:
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.
Kemudian, informasi akan ditulis ke file dan pesan berhasil akan ditampilkan di bawah:
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:
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:
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.
Anda dapat mencetak konten file melalui perintah cat
hari ini.
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. Mengonfigurasi Server Model Context Protocol (MCP)
Server MCP adalah aplikasi yang mengekspos alat dan resource ke Gemini CLI melalui Model Context Protocol, sehingga memungkinkan Gemini CLI berinteraksi dengan sistem dan sumber data eksternal. Server MCP berfungsi sebagai jembatan antara model Gemini dan lingkungan lokal Anda atau layanan lain seperti API.
Server MCP memungkinkan Gemini CLI menemukan dan mengeksekusi alat sehingga memperluas kemampuan Gemini CLI untuk melakukan tindakan di luar fitur bawaannya, seperti berinteraksi dengan database, API, skrip kustom, atau alur kerja khusus.
Gemini CLI mendukung konfigurasi Server MCP untuk menemukan dan menggunakan alat kustom. Jika Gemini CLI sudah diluncurkan, Anda dapat memeriksa server MCP yang dikonfigurasi melalui perintah /mcp
seperti yang ditunjukkan di bawah:
Jika Anda belum mengonfigurasi server MCP, perintah ini akan meluncurkan dokumentasi Server MCP Gemini CLI.
Anda dapat mengonfigurasi server MCP di tingkat global dalam file ~/.gemini/settings.json
atau di direktori root project Anda. Buat atau buka file .gemini/settings.json
. Dalam file, Anda harus menambahkan blok konfigurasi mcpServers
, seperti yang ditunjukkan di bawah:
"mcpServers": {
"server_name_1": {},
"server_name_2": {},
"server_name_n": {}
}
Setiap konfigurasi server mendukung properti berikut ( Dokumentasi referensi):
Wajib (salah satu dari berikut ini)
- command (string): Jalur ke file yang dapat dieksekusi untuk transportasi Stdio
- url (string): URL endpoint SSE (misalnya, "http://localhost:8080/sse")
- httpUrl (string): URL endpoint streaming HTTP
Opsional
- args (string[]): Argumen command line untuk transportasi Stdio
- header (objek): Header HTTP kustom saat menggunakan url atau httpUrl
- env (objek): Variabel lingkungan untuk proses server. Nilai dapat mereferensikan variabel lingkungan menggunakan sintaksis $VAR_NAME atau ${VAR_NAME}
- cwd (string): Direktori kerja untuk transportasi Stdio
- timeout (number): Waktu tunggu permintaan dalam milidetik (default: 600.000 md = 10 menit)
- trust (boolean): Jika benar (true), melewati semua konfirmasi panggilan alat untuk server ini (default: salah (false))
- includeTools (string[]): Daftar nama alat yang akan disertakan dari server MCP ini. Jika ditentukan, hanya alat yang tercantum di sini yang akan tersedia dari server ini (perilaku daftar yang diizinkan). Jika tidak ditentukan, semua alat dari server akan diaktifkan secara default.
- excludeTools (string[]): Daftar nama alat yang akan dikecualikan dari server MCP ini. Alat yang tercantum di sini tidak akan tersedia untuk model, meskipun alat tersebut diekspos oleh server. Catatan: excludeTools lebih diprioritaskan daripada includeTools - jika alat ada di kedua daftar, alat tersebut akan dikecualikan.
Mari kita lanjutkan dan mengonfigurasi salah satu server MCP utama yang mungkin Anda perlukan jika Anda bekerja dengan GitHub. Anda mungkin memiliki pertanyaan: jika Anda sudah menyiapkan Git dan alat terkait lainnya di sistem Anda, apakah Anda masih memerlukan Server MCP GitHub?
Gemini CLI akan memanggil alat git yang ada di sistem Anda dan Anda juga dapat menginstruksikan Gemini CLI untuk menggunakannya. Jadi, perlu diingat bahwa Gemini CLI akan membantu menerjemahkan kueri bahasa alami Anda ke alat yang setara yang mungkin ada di sistem Anda dan Anda mungkin perlu menyatakan hal tersebut secara eksplisit dalam perintah Anda.
Anda mungkin tidak memerlukan bagian berikutnya untuk menyiapkan Server MCP Github jika Anda telah menyiapkan hal berikut di sistem Anda:
- Alat Git (artinya Anda dapat menjalankan perintah seperti
git init
,git add
, dll. di sistem Anda) gh
: Ini adalah GitHub di command line. Fitur ini menghadirkan pull request, masalah, dan konsep GitHub lainnya ke terminal di samping tempat Anda sudah bekerja dengan git dan kode Anda. Instal dari sini dan validasi penyiapannya melalui beberapa perintah, terutama terkait autentikasi ke GitHub dari komputer Anda.
Jika Anda masih ingin mencoba Server MCP Github, lihat bagian berikutnya atau Anda dapat melewatinya.
Server MCP GitHub
Server MCP resmi Github menyediakan dokumentasi yang memadai tentang alat yang dieksposnya beserta cara mengonfigurasinya. Anda dapat memilih untuk menjalankan Gemini CLI secara lokal atau jarak jauh, karena Gemini CLI juga mendukung Server MCP jarak jauh.
Tutorial ini menunjukkan opsi Server MCP Jarak Jauh di GitHub. Untuk melakukannya, Anda harus memiliki Token Akses Pribadi (PAT) dari GitHub terlebih dahulu.
Setelah itu, Anda harus menambahkan objek MCP Server di file settings.json
. File settings.json lengkap di sistem saya ditampilkan di bawah. Anda mungkin memiliki setelan tambahan, tetapi objek mcpServers
harus seperti yang diberikan di bawah:
{
"theme": "Default",
"selectedAuthType": "oauth-personal",
"mcpServers": {
"github": {
"httpUrl": "https://api.githubcopilot.com/mcp/",
"headers": {
"Authorization": "GITHUB_PAT"
},
"timeout": 5000
}
}
}
Anda dapat memulai Gemini CLI lagi atau menjalankan perintah /mcp refresh
, setelah Anda memperbarui settings.json
dengan konfigurasi Server MCP GitHub. Screenshot di bawah ini menandai Server MCP Github yang dikonfigurasi di komputer saya dan berbagai alat yang kini tersedia untuk Gemini CLI agar dapat bekerja dengan MCP.
Mari kita mulai dengan perintah yang akan memanggil salah satu alat dari Server MCP Github. Berikan perintah berikut:
Perhatikan bahwa alat ini akan memilih alat yang benar dari Server MCP Github, tetapi seperti Alat bawaan lainnya, Anda juga harus memberikan izin eksplisit untuk memanggil alat ini. Lanjutkan dan lihat output yang Anda dapatkan.
Sekarang Anda harus bekerja dengan 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.
- Jelaskan @<file-name> atau @<directory-name>/
- Apa saja komponen yang ada di repositori ini?
- Saya telah melakukan perubahan yang diperlukan. Dapatkah Anda mengirim perubahan ke GitHub dan menggunakan alat Server MCP GitHub untuk melakukannya?
Anda akan menemukan latihan untuk menggunakan Server MCP Github secara mendetail di lab ini.
Server MCP Context7
Context7 menyediakan dokumentasi terbaru untuk LLM dan editor kode AI . Jika Anda ingin memberikan konteks ke LLM dengan dokumentasi terbaru untuk framework pilihan Anda, server MCP Context7 adalah pilihan yang tepat untuk dikonfigurasi.
Pastikan Anda mencantumkan perpustakaan di halaman beranda Context7.
Berikut adalah Server MCP yang perlu Anda tambahkan di file settings.json
.
"context7": {
"httpUrl": "https://mcp.context7.com/mcp"
}
Setelah Server MCP dikonfigurasi dan Gemini CLI berhasil dimuat, Anda akan dapat melihat alat Context7 seperti yang ditunjukkan di bawah:
Sekarang Anda dapat lebih spesifik dalam perintah dan meminta Gemini CLI menggunakan Context7
untuk dokumentasi terbaru, saat membuat aplikasi atau cuplikan kode, menggunakan framework XYZ tertentu.
Berikut contoh perintah, di mana saya ingin menulis Agen menggunakan Agent Development Kit (ADK) dari Google. Saya menentukan dalam perintah saya untuk mencari dokumentasi yang sama melalui Server MCP Context7.
I am working on coding an Agent using the Agent Development Kit (ADK) from Google. I would like to know how to create the LLMAgent in Python. Use Context7 for the latest documentation on ADK and specifically use /google/adk-python, /google/adk-docs and adk.wiki
Berikut output yang diterima:
Server MCP Google Slide
Project GitHub di https://github.com/matteoantoci/google-slides-mcp menyediakan server MCP untuk berinteraksi dengan Google Slides API. API ini memungkinkan Anda membuat, membaca, dan mengubah presentasi Google Slide secara terprogram.
Langkah-langkah untuk mengonfigurasi server MCP diberikan dalam project. Anda harus memiliki lingkungan Node.js tempat Anda membangun server, mengonfigurasi Project Google Cloud dan token OAuth 2.0, lalu mengonfigurasi Server MCP dalam file settings.json.
Setelah penyiapan, Anda dapat menjalankan perintah seperti:
- Ekstrak informasi terbaru dari "web_url", ringkas menjadi poin-poin penting, dan buat presentasi bernama "my_presentation".
Cobalah!
Server MCP Lainnya
Berikut daftar tambahan server MCP yang mungkin menarik bagi Anda:
- Server MCP Firebase
- Layanan Media AI Generatif Google (Imagen, Veo, Lyria)
- MCP Toolbox for Databases (bekerja dengan Firestore, BigQuery, database Google Cloud)
- Server MCP Google Workspace (bekerja dengan Dokumen, Spreadsheet, Kalender, Gmail)
Petunjuk untuk menyiapkan server MCP di atas dipublikasikan dalam postingan blog ini.
10. Menyesuaikan Gemini CLI dengan GEMINI.md
Jika Anda memperhatikan penggunaan Gemini CLI sejauh ini, Anda akan melihat bahwa kami hanya memberikan perintah dan mengharapkan Gemini CLI untuk mengeksekusinya, terkadang dengan hasil yang tidak sesuai dengan harapan kami. Dalam beberapa perintah, Anda sedikit spesifik dalam hal apa yang harus dilakukan dan telah menyertakan petunjuk tersebut dalam perintah.
Hal ini mungkin berfungsi dengan baik sesuai dengan perintah yang Anda berikan ke Gemini CLI dan hasil yang Anda dapatkan. Namun, dalam banyak kasus, Anda ingin memastikan bahwa teks tersebut mengikuti aturan. Aturan ini dapat berupa bahasa atau framework pemrograman tertentu yang akan digunakan. Ini juga bisa berupa alat tertentu. Ini bisa berupa gaya coding. Tidak hanya tentang pembuatan, Anda mungkin juga ingin Gemini CLI berada dalam mode yang disebut "perencanaan" dan hanya ingin menampilkan rencana, bukan membuat kode atau mengubah file di sistem.
Masukkan GEMINI.md
. Ini adalah file konteks (secara default GEMINI.md
, tetapi dapat dikonfigurasi melalui properti contextFileName
dalam file settings.json
) yang sangat penting untuk mengonfigurasi konteks instruksional (juga disebut sebagai "memori") yang diberikan ke model Gemini. File ini memungkinkan Anda memberikan petunjuk khusus project, panduan gaya coding, atau informasi latar belakang yang relevan kepada AI, sehingga responsnya lebih disesuaikan dan akurat dengan kebutuhan Anda.
File GEMINI.md
dalam format markdown dan dimuat secara Hierarkis, yang digabungkan dari beberapa lokasi.
Urutan pemuatan adalah:
- Konteks Global: **
~/.gemini/GEMINI.md
** (untuk petunjuk yang berlaku untuk semua project Anda). - Konteks Project/Ancestor: CLI menelusuri dari direktori saat ini hingga root project untuk menemukan file
GEMINI.md
. - Konteks Subdirektori: CLI juga memindai subdirektori untuk menemukan file
GEMINI.md
, sehingga memungkinkan adanya petunjuk khusus komponen.
Anda dapat menggunakan /memory show
untuk melihat konteks gabungan akhir yang dikirim ke model.
Seperti apa tampilan GEMINI.md
? Kami membuatnya dari dokumentasi resmi:
# Project: My Awesome TypeScript Library
## General Instructions:
- When generating new TypeScript code, please follow the existing coding style.
- Ensure all new functions and classes have JSDoc comments.
- Prefer functional programming paradigms where appropriate.
- All code should be compatible with TypeScript 5.0 and Node.js 20+.
## Coding Style:
- Use 2 spaces for indentation.
- Interface names should be prefixed with `I` (e.g., `IUserService`).
- Private class members should be prefixed with an underscore (`_`).
- Always use strict equality (`===` and `!==`).
## Specific Component: `src/api/client.ts`
- This file handles all outbound API requests.
- When adding new API call functions, ensure they include robust error handling and logging.
- Use the existing `fetchWithRetry` utility for all GET requests.
## Regarding Dependencies:
- Avoid introducing new external dependencies unless absolutely necessary.
- If a new dependency is required, please state the reason.
Anda akan melihat bahwa alat ini memberikan beberapa petunjuk umum serta petunjuk yang sangat spesifik untuk gaya coding, pengelolaan dependensi, dan lainnya. Meskipun ini adalah file GEMINI.md
contoh untuk project TypeScript, Anda dapat menulis file Anda sendiri berdasarkan bahasa pemrograman, framework, gaya coding, dan preferensi lainnya.
Anda dapat mencoba file GEMINI.md
kustom. Contoh ini berasal dari gist yang dipublikasikan dan menunjukkan cara menggunakan Gemini CLI dalam mode Plan saja. File tersebut direproduksi di sini:
# Gemini CLI Plan Mode
You are Gemini CLI, an expert AI assistant operating in a special 'Plan Mode'. Your sole purpose is to research, analyze, and create detailed implementation plans. You must operate in a strict read-only capacity.
Gemini CLI's primary goal is to act like a senior engineer: understand the request, investigate the codebase and relevant resources, formulate a robust strategy, and then present a clear, step-by-step plan for approval. You are forbidden from making any modifications. You are also forbidden from implementing the plan.
## Core Principles of Plan Mode
* **Strictly Read-Only:** You can inspect files, navigate code repositories, evaluate project structure, search the web, and examine documentation.
* **Absolutely No Modifications:** You are prohibited from performing any action that alters the state of the system. This includes:
* Editing, creating, or deleting files.
* Running shell commands that make changes (e.g., `git commit`, `npm install`, `mkdir`).
* Altering system configurations or installing packages.
## Steps
1. **Acknowledge and Analyze:** Confirm you are in Plan Mode. Begin by thoroughly analyzing the user's request and the existing codebase to build context.
2. **Reasoning First:** Before presenting the plan, you must first output your analysis and reasoning. Explain what you've learned from your investigation (e.g., "I've inspected the following files...", "The current architecture uses...", "Based on the documentation for [library], the best approach is..."). This reasoning section must come **before** the final plan.
3. **Create the Plan:** Formulate a detailed, step-by-step implementation plan. Each step should be a clear, actionable instruction.
4. **Present for Approval:** The final step of every plan must be to present it to the user for review and approval. Do not proceed with the plan until you have received approval.
## Output Format
Your output must be a well-formatted markdown response containing two distinct sections in the following order:
1. **Analysis:** A paragraph or bulleted list detailing your findings and the reasoning behind your proposed strategy.
2. **Plan:** A numbered list of the precise steps to be taken for implementation. The final step must always be presenting the plan for approval.
NOTE: If in plan mode, do not implement the plan. You are only allowed to plan. Confirmation comes from a user message.
Simpan konten di atas ke dalam file bernama GEMINI.md dan simpan di ~/.gemini/GEMINI.md
. Ini adalah folder yang sama tempat Anda membuat file settings.json. Anda juga dapat menyimpan file GEMINI.md
di folder <current project folder>/.gemini
atau bahkan memiliki beberapa file GEMINI.md
di subdirektori jika Anda memiliki petunjuk yang berbeda.
Berikan perintah untuk membuat aplikasi dan lihat responsnya.
Berikut adalah file GEMINI.md
lain ( mode Penjelasan Gemini) yang dapat Anda pelajari, lalu gunakan kembali untuk memenuhi kebutuhan Anda. Bagian ini berfokus pada GEMINI CLI sebagai panduan interaktif, yang membantu pengguna memahami codebase yang kompleks melalui proses penemuan berbasis percakapan.
File GEMINI.md
adalah kunci untuk membuat Gemini CLI mengikuti preferensi Anda. Sebaiknya baca seri praktis " Practical Gemini CLI" yang membahas area ini, cara membuat file tersebut secara otomatis untuk project Anda, menyesuaikan bahkan Perintah Sistem, dan banyak lagi.
Perhatikan bahwa Anda juga dapat membuat file GEMINI.md
saat berinteraksi dengan Gemini CLI. Kapan saja, Anda dapat menggunakan perintah /memory add <some instruction/rule> dan Gemini CLI akan menambahkan perintah tersebut ke file GEMINI.md
. Anda bahkan dapat menggunakan bahasa alami untuk meminta Gemini CLI menambahkan sesuatu ke memorinya, yaitu GEMINI.md
melalui perintah seperti "Remember <some instruction/rule>" atau "Add to memory <some instruction/rule>".
11. Gemini CLI - Perintah garis miring kustom
Anda baru saja melihat cara menyesuaikan GEMINI.md
untuk membuat mode rencana. Bagian sebelumnya juga memberi Anda link ke mode Penjelasan.
Bagaimana jika Anda ingin mengonfigurasi kedua mode ini dan menginstruksikan Gemini CLI untuk beralih ke salah satu mode ini melalui perintah garis miring /plan
atau /explain
. Inilah yang dimaksud dengan perintah garis miring kustom Gemini CLI.
Seperti yang dinyatakan dalam dokumentasi, "Perintah kustom memungkinkan Anda menyimpan dan menggunakan kembali perintah favorit atau yang paling sering digunakan sebagai pintasan pribadi dalam Gemini CLI. Anda dapat membuat perintah yang khusus untuk satu project atau perintah yang tersedia secara global di semua project Anda, sehingga menyederhanakan alur kerja dan memastikan konsistensi."
Mari kita buat beberapa Perintah slash kustom: /plan
dan /explain
.
Langkah selanjutnya adalah memahami dari mana Gemini CLI mengambil Perintah kustom. Sesuai dokumentasi, perintah ditemukan dari dua lokasi, yang dimuat dalam urutan tertentu:
- Perintah Pengguna (Global): Ada di
~/.gemini/commands/
. Perintah ini tersedia di project apa pun yang sedang Anda kerjakan. - Perintah Project (Lokal): Berada di
<your-project-root>/.gemini/commands/
. Perintah ini khusus untuk project saat ini dan dapat diperiksa ke dalam kontrol versi untuk dibagikan kepada tim Anda.
Mari kita pilih folder project saat ini dari tempat Anda meluncurkan Gemini CLI. Jadi, ini akan menjadi folder <your-project-root>/.gemini/commands/
. Lanjutkan dan buat struktur folder.
Apa yang perlu kita buat di dalam folder ini? Kita memerlukan dua file TOML (plan.toml
dan explain.toml
). Anda dapat membaca lebih lanjut tentang namespace dan konvensi penamaan jika mau di sini.
Setiap file TOML harus memiliki dua kolom : description
dan prompt
. Pastikan deskripsinya singkat dan jelas karena akan ditampilkan di samping perintah di Gemini CLI. Contoh file TOML di bawah diambil dari postingan blog perintah garis miring kustom resmi.
Contoh file plan.toml ditampilkan di bawah. Perhatikan bahwa perintah berisi placeholder khusus {{args}}
, CLI akan mengganti placeholder tersebut dengan semua teks yang diketik pengguna setelah nama perintah.
description="Investigates and creates a strategic plan to accomplish a task."
prompt = """
Your primary role is that of a strategist, not an implementer.
Your task is to stop, think deeply, and devise a comprehensive strategic plan to accomplish the following goal: {{args}}
You MUST NOT write, modify, or execute any code. Your sole function is to investigate the current state and formulate a plan.
Use your available "read" and "search" tools to research and analyze the codebase. Gather all necessary context before presenting your strategy.
Present your strategic plan in markdown. It should be the direct result of your investigation and thinking process. Structure your response with the following sections:
1. **Understanding the Goal:** Re-state the objective to confirm your understanding.
2. **Investigation & Analysis:** Describe the investigative steps you would take. What files would you need to read? What would you search for? What critical questions need to be answered before any work begins?
3. **Proposed Strategic Approach:** Outline the high-level strategy. Break the approach down into logical phases and describe the work that should happen in each.
4. **Verification Strategy:** Explain how the success of this plan would be measured. What should be tested to ensure the goal is met without introducing regressions?
5. **Anticipated Challenges & Considerations:** Based on your analysis, what potential risks, dependencies, or trade-offs do you foresee?
Your final output should be ONLY this strategic plan.
"""
Coba buat file explain.toml juga. Anda dapat melihat mode Penjelasan Gemini untuk memilih beberapa konten.
Mulai ulang Gemini CLI. Sekarang Anda akan melihat bahwa bot tersebut memiliki perintah garis miring (/plan
) seperti yang ditunjukkan di bawah:
12. 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 mencobanya dalam mode interaktif atau non-interaktif Gemini CLI melalui parameter -p
pada saat meluncurkan Gemini CLI.
Vibe coding dengan Gemini CLI
Mari kita gunakan Gemini CLI untuk melakukan vibe coding pada aplikasi. Dalam tugas ini, Anda akan meminta Gemini CLI untuk membuat aplikasi, lalu mengirim versi awal ke repositori GitHub.
Prasyarat
Untuk melakukan tugas di bagian ini, ada beberapa prasyarat:
- Git
- Gemini CLI dengan Server MCP Github (yang sudah kita lakukan sebelumnya) atau jika Anda telah menyiapkan
gh
( alat GitHub CLI), keduanya juga bisa digunakan. - Memahami dasar-dasar Git dan sedikit pengetahuan pemrograman
Kami akan mengasumsikan bahwa Anda telah meluncurkan Gemini CLI di folder tertentu pilihan Anda. Pastikan Server MCP telah berhasil dimulai, terutama Server MCP Github.
Mulai dengan perintah awal. Jangan ragu untuk mengubahnya sesuai keinginan Anda. Perlu diingat bahwa selama sesi dengan Gemini CLI, Anda akan diminta memberikan izin 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 menginginkan kontrol yang lebih besar. Namun, Anda sepenuhnya bebas menentukan cara melakukannya.
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. Anda mungkin mendapatkan respons yang sama sekali berbeda, jadi tinjau rencana dan berinteraksi dengan Gemini CLI sesuai kebutuhan.
Kami telah mengamati bahwa terkadang, Gemini CLI mencoba melakukan lebih banyak hal dan bahkan mungkin memberi Anda perintah yang ingin dieksekusinya. Untuk latihan ini, sebaiknya jangan, agar Anda memiliki lebih banyak kontrol tentang cara kerjanya dan apa yang ingin Anda validasi sendiri terlebih dahulu.
Misalnya, jika perintah tersebut menawarkan untuk menjalankan perintah, Anda cukup keluar dan memberikan pesan seperti yang ditunjukkan di bawah:
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):
Anda bebas melakukan lebih banyak perubahan 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 menggunakan 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:
- Buat repositori.
- Skrip ini akan menggunakan beberapa perintah Git : init, add, commit untuk mengelola repositori Git lokal.
- Kemudian, perintah ini akan menyiapkan Git remote dan melakukan push
Catatan: Ada kasus ketika Gemini CLI mungkin 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:
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 meliputi:
- 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 Server MCP Github (yang sudah kita lakukan sebelumnya) atau jika Anda telah menyiapkan
gh
( alat GitHub CLI), keduanya juga bisa digunakan. - 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 kita 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 Anda, 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. Ambil contoh alur dan tunjukkan cara kerja permintaan dan respons.
- Menjelaskan @server.js
Membuat file README
- Buat file
README
untuk project ini.
Dalam hal ini, Gemini CLI tidak hanya membuat file README
, tetapi juga ingin menjalankan perintah untuk menambahkan ke repositori Git dan mengirimkan perubahan ke remote. Jika Anda melihatnya melakukan hal tersebut, Anda dapat mengizinkannya.
Dalam beberapa kasus, alat ini bahkan dapat menawarkan untuk membuat file LICENSE
untuk Anda. Anda dapat memutuskan apakah Anda ingin melakukannya atau tidak. Bergantung pada hasilnya, Anda akan menemukan file README
dan/atau LICENSE
yang dibuat dan perubahan telah di-push ke GitHub.
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.
Kami akan memberikan 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 contoh screenshot dari proses yang kami jalankan:
Menangani Masalah GitHub dan menerapkan perubahan yang diusulkan
Anda kini dapat mengambil salah satu masalah yang dihasilkan sebelumnya dan meminta Gemini CLI untuk mengerjakan dan menerapkannya.
Contoh masalah yang dihasilkan ditampilkan di bawah:
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 sering Anda lakukan. 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 ditampilkan di bawah (Anda mungkin memiliki file lain):
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.
CLI Gemini 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 subfolder baru yang dibuat dan file yang dipindahkan ke subfolder masing-masing, bergantung pada jenisnya.
Beberapa skenario pengorganisasian lainnya (petunjuk diberikan di samping setiap skenario):
- Ringkasan: Untuk setiap dokumen dalam folder 'Documents', buat file txt dalam folder yang sama dengan nama 'summary_ORIGINAL_FILENAME.txt' yang berisi ringkasan 3 kalimat tentang poin-poin utama dokumen.
- 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'.
- 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 "CLI Gemini" 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 beritanya yang sesuai. Sajikan 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 keduanya 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 faktur 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:
Berikut adalah skenario lain, di mana Anda dapat meminta kolom turunan tambahan. Misalnya, Anda ingin menampilkan emoji tanda 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.
Tindakan ini menghasilkan output berikut:
Terapkan hal ini ke file Anda sendiri yang memiliki format selain teks.
Menggunakan Gemini CLI untuk bekerja dengan database
Anda dapat menggunakan Gemini CLI untuk bekerja dengan berbagai database secara lebih efisien. Anda dapat menggunakannya untuk berbagai skenario: membuat kueri dengan natural language, 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:
- macOS: SQLite3 sudah diinstal sebelumnya. Verifikasi dengan
sqlite3 --version
. Jika perlu, instal dengan Homebrew:brew install sqlite3
. - 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. - Linux: Debian/Ubuntu:
sudo apt update && sudo apt install sqlite3
Download database Chinook contoh (berikut link langsung untuk mendownloadnya).
Untuk menjalankan perintah ini, sebaiknya buat 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:
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:
Berikan izin untuk menjalankannya sekali guna mendapatkan output yang diharapkan:
Cobalah 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).
13. Selamat
Selamat, Anda telah berhasil menjelajahi Gemini CLI, kemampuannya, dan menerapkannya ke beberapa kasus penggunaan.