Google’s open-source Gemini CLI—agen AI berasaskan terminal yang membawa Gemini ke dalam shell anda—telah matang dengan pantas sejak pelancaran dan kini menyokong konfigurasi yang kaya, fail konteks projek (GEMINI.md / .gemini), arahan slash tersuai, dan kawalan direktori ruang kerja. Projek ini berkembang aktif di GitHub (repo rasmi), telah memasuki pratinjau awam dengan kuota yang murah hati, dan sedang diintegrasikan ke alat pembangun lain (integrasi editor dan CI/Actions). Namun apabila pasukan berskala, atau apabila anda bekerja merentas pemacu atau persekitaran yang ketat (container, komputer riba yang diurus syarikat, Cloud Shell, sistem Windows), anda akan cepat berdepan soalan praktikal: di manakah Gemini menyimpan failnya, dan bagaimana anda boleh menukar direktori yang dibaca dan ditulis oleh Gemini?
Apakah Gemini CLI?
Gemini CLI ialah agen AI baris perintah sumber terbuka Google yang membawa keupayaan model Gemini terus ke terminal anda. Ia menyediakan keupayaan agen interaktif untuk bantuan kod, pemeriksaan fail dan projek, melaksanakan arahan shell (dengan perlindungan), serta mengintegrasikan alat seperti Google Search, sambungan Model Context Protocol (MCP), dan alat penjanaan media yang dihantar bersama Gemini. CLI ini bertujuan untuk menjadi ringan, boleh ditulis skrip, dan boleh diperluas; ia tersedia daripada repositori rasmi dan dibungkus untuk pemasangan yang mudah.
Mengapa direktori penting
Gemini CLI menyimpan konfigurasi (contohnya, settings.json), gesaan sistem atau konteks (GEMINI.md), kelayakan yang dicache, pengecam telemetri, dan keadaan berterusan lain di dalam direktori .gemini. Lokasi direktori tersebut menentukan:
- tetapan mana yang dimuatkan oleh CLI (global vs khusus projek),
- fail “memori” mana yang akan dibaca oleh agen,
- lokasi cache kelayakan (menjejaskan kelakuan log masuk),
- kebolehulangan merentas mesin atau CI apabila anda ingin menyediakan repo konfigurasi tersuai.
Memahami dan (jika perlu) menukar direktori membantu dalam aliran kerja berbilang projek, CI, penyebaran terkontena, dan pasukan dengan stor konfigurasi berpusat.
Di manakah Gemini CLI menyimpan konfigurasi secara lalai?
Secara lalai CLI menggunakan direktori .gemini. Untuk kebanyakan pemasangan pengguna, ini dirujuk sebagai ~/.gemini (folder .gemini dalam direktori home anda). CLI juga menyokong fail .gemini peringkat projek (cth., .gemini/settings.json dalam akar projek) yang mengatasi tetapan pengguna semasa anda beroperasi dari folder projek tersebut. Tetapan peringkat sistem dibaca daripada lokasi khusus OS (contohnya /etc/ pada Linux atau %PROGRAMDATA% pada Windows) apabila berkenaan. Laluan tipikal:
- Linux / macOS:
~/.gemini/(contohnya/home/alice/.geminiatau/Users/alice/.gemini). - Windows:
%USERPROFILE%\.gemini(cth.,C:\Users\Alice\.gemini).
Di dalam.geminianda biasanya akan menemuisettings.json,GEMINI.md,commands/, dan cache setempat. CLI juga membaca folder.gemini/per projek (akar projek) untuk tetapan peringkat projek.
Lalai ini penting: secara sejarah direktori konfigurasi telah ditetapkan secara keras kepada .gemini dalam direktori home.
Bagaimanakah saya boleh menukar atau mengarah semula direktori konfigurasi Gemini CLI?
Terdapat beberapa cara praktikal — daripada yang paling mudah (bekerja dalam folder yang dikehendaki) hingga yang lebih teguh (pembolehubah persekitaran atau pengalihan sistem fail). Pilih pendekatan bergantung pada sama ada anda mengawal persekitaran masa jalan (mesin dev tempatan vs CI), OS yang anda gunakan, dan sama ada anda menginginkan perubahan sementara atau kekal.
1) Guna .gemini peringkat projek (disyorkan untuk tetapan per projek)
Jika anda mahukan tetapan per projek, cipta subdirektori .gemini dalam akar projek anda dan letakkan settings.json, GEMINI.md, dan fail projek lain di sana. Gemini CLI mengutamakan tetapan projek apabila anda menjalankannya dari direktori projek tersebut:
your-project/├─ .gemini/│ ├─ settings.json│ └─ GEMINI.md└─ src/
Mulakan gemini ketika shell anda berada di your-project/ dan CLI akan mengambil fail .gemini daripada pohon tersebut (ia mencari ke atas untuk menemukan konteks projek). Ini ialah kaedah yang paling selamat dan jelas untuk konfigurasi setiap projek.
2) Guna pembolehubah persekitaran yang didokumenkan (apabila disokong)
Kod asas dan dokumentasi Gemini CLI merujuk beberapa pembolehubah persekitaran yang digunakan untuk mengubah tingkah laku. Sebahagiannya bertujuan untuk tetapan sistem atau penggantian fail khas:
GEMINI_API_KEY,GEMINI_MODEL, dll. lazim digunakan untuk pengesahan dan pilihan model.- Terdapat rujukan dalam kod asas dan dokumen kepada pembolehubah seperti
GEMINI_CLI_SYSTEM_SETTINGS_PATH(digunakan untuk mengatasi laluan tetapan sistem) dan pemalar sepertiGEMINI_CONFIG_DIR(nama lalai.geminiyang digunakan dalam kod). Beberapa permintaan komuniti dan PR mencadangkan menambah atau menghormati pembolehubah persekitaranGEMINI_CONFIG_DIRuntuk membolehkan pengguna memindahkan keseluruhan direktori konfigurasi.
Contoh (bash / macOS / Linux):
# Temporary for this shell sessionexport GEMINI_CONFIG_DIR="$HOME/custom_gemini_dir"# Or override system settings path if your install supports it:export GEMINI_CLI_SYSTEM_SETTINGS_PATH="/etc/my-gemini/system.settings.json"# Then rungemini
PowerShell (Windows):
$env:GEMINI_CONFIG_DIR = 'C:\Users\you\CustomGemini'gemini
Peringatan penting: setakat perbincangan komuniti dan isu terkini,
GEMINI_CONFIG_DIRtelah diminta dan dirujuk dalam kod di beberapa tempat — tetapi pepijat khusus platform dan kelakuan tidak konsisten (terutamanya pada Windows) telah dilaporkan. Ini bermakna pengalihan berasaskan pembolehubah persekitaran mungkin tidak seragam boleh dipercayai pada setiap platform atau keluaran. Semak nota keluaran Gemini CLI dan isu repo untuk versi yang anda pasang jika anda bergantung padanya.
3) Tambah direktori ke ruang kerja Gemini dalam sesi
Jika anda mahu Gemini menyedari direktori tambahan (supaya ia boleh membaca fail sebagai konteks), terdapat set arahan interaktif /directory. Sebagai contoh:
/directory add path/to/another/project/directory list
Ini tidak mengalihkan direktori konfigurasi, tetapi membolehkan agen memasukkan fail daripada direktori lain dalam konteks ruang kerjanya. Ini berguna apabila anda mahu agen merujuk repositori lain tanpa menukar konfigurasi global anda.
4) Cipta symlink atau ikatan sistem fail (penyelesaian praktikal)
Jika CLI enggan menerima pelapisan persekitaran atau anda memerlukan penyelesaian merentas proses yang boleh dipercayai, gunakan pengalihan sistem fail:
Pada Unix/macOS:
# move the original config foldermv ~/.gemini ~/gemini_backup# create a symlink to your desired locationln -s /path/to/central/gemini-config ~/.gemini
Pada Windows (PowerShell dengan keistimewaan pentadbir):
# Move the original directoryMove-Item -Path $env:USERPROFILE\.gemini -Destination C:\GeminiConfigBackup# Create a junction (administrator)New-Item -ItemType Junction -Path $env:USERPROFILE\.gemini -Target C:\CentralGeminiConfig
Pendekatan ini memaksa CLI membaca dari lokasi yang anda kehendaki tanpa memerlukan sokongan asli dalam CLI. Nota: symlink/junction memerlukan keistimewaan sistem fail yang sesuai dan mungkin berkelakuan berbeza dalam persekitaran container atau Windows. Guna dengan berhati-hati. (Lihat “nota khusus Windows” di bawah.)
5) Tukar direktori home berkesan untuk proses (helah container/CI)
Apabila berjalan dalam CI, container, atau persekitaran sementara, anda boleh menukar $HOME (Unix) atau %USERPROFILE% (Windows) untuk proses gemini supaya ~/.gemini lalainya dihala ke laluan yang anda kawal:
# Run gemini with a custom HOME (bash)HOME=/ci/workspace/you gemini --some-command# Or in a container DockerfileENV HOME=/app/userRUN mkdir -p /app/user/.geminiCOPY config /app/user/.gemini
Ini berguna untuk kebolehulangan CI tetapi ambil perhatian: menukar HOME boleh menjejaskan alat lain dan aliran pengesahan (cth., cache Google OAuth), jadi hadkan teknik ini kepada container terpencil atau pembungkus peringkat proses.
Bagaimanakah saya boleh memasang dan menggunakan Gemini CLI melalui CometAPI?
Jawapan ringkas: anda mempunyai dua laluan praktikal — (A) panggil model Gemini secara langsung melalui CometAPI (disyorkan dan paling mudah), atau (B) buat Gemini CLI rasmi berkomunikasi dengan CometAPI sama ada dengan menggunakan keluaran Gemini-CLI yang menyokong URL asas tersuai (sesetengah keluaran/PR menambah ini), atau dengan menjalankan proksi kecil setempat yang menterjemahkan permintaan Gemini-CLI kepada panggilan gaya CometAPI/OpenAI.
Apakah CometAPI?
CometAPI ialah pengagregasi/gateway API yang mendedahkan ratusan model pihak ketiga (termasuk keluarga Gemini Google) di sebalik API HTTP gaya OpenAI. Anda mendaftar, mendapatkan kunci API bearer, kemudian memanggil titik akhir seperti https://api.cometapi.com/v1/chat/completions. CometAPI menggunakan token bearer piawai dalam header Authorization.
Mengapa guna CometAPI? Ia menawarkan harga API yang lebih rendah daripada API rasmi untuk memudahkan integrasi. Panduan Pemasangan dan Penggunaan Gemini CLI:
Bagaimanakah saya boleh memanggil model Gemini secara langsung melalui CometAPI? (Disyorkan)
Jika matlamat anda hanyalah menggunakan model Gemini dan anda tidak benar‑benar memerlukan fitur Gemini CLI, memanggil CometAPI secara langsung adalah mudah dan boleh dipercayai.
export COMET_KEY="sk-xxxx"curl -s -X POST "https://api.cometapi.com/v1/chat/completions" \ -H "Authorization: Bearer $COMET_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "gemini-2.5-pro", "messages": [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Summarize the 3 key benefits of unit tests."} ], "max_tokens": 300 }' | jq .
Panggilan langsung ini membolehkan anda mengintegrasikan CometAPI ke dalam skrip, aplikasi, atau CI tanpa bergantung pada Gemini CLI.
Bolehkah saya membuat Gemini CLI menggunakan CometAPI?
Sesetengah versi/PR Gemini CLI menambah pembolehubah persekitaran untuk mengatasi URL asas API Gemini. Jika gemini yang anda pasang menyokong konfigurasi URL asas Gemini tersuai + menggunakan kunci CometAPI, anda boleh menghala ke CometAPI dan menetapkan kunci CometAPI sebagai GEMINI_API_KEY (CLI menjangkakan pembolehubah kunci bernama GEMINI_API_KEY untuk pengesahan kunci API Gemini).
Contoh:
# example env — *check your gemini-cli docs for exact var names*export GEMINI_API_KEY="sk-xxxxx" # CometAPI keyexport GOOGLE_GEMINI_BASE_URL="https://api.cometapi.com/v1" # if supportedgemini # run the CLI; it will use the configured base URL
Penyelesaian masalah: isu lazim dan pembaikan
Masalah: Gemini tidak dapat melihat fail dalam repo lain
- Cuba
gemini --include-directories /path/to/reposemasa memulakan. Atau dalam sesi:/directory add /path/to/repo. - Jika repo berada pada mount rangkaian, semak kebenaran dan pastikan pengguna proses CLI boleh membaca fail.
- Jika anda menggunakan symlink untuk memindahkan
.gemini, sahkan CLI mengikuti symlink untukGEMINI.mddansettings.json(sesetengah versi tidak mengikuti symlink tertentu atas sebab keselamatan).
Masalah: gemini gagal mencipta ~/.gemini pada Windows (EPERM)
Ini biasanya bermaksud proses anda tidak mempunyai kebenaran untuk menulis ke %USERPROFILE%. Pembaikan:
- Jalankan terminal sebagai Pentadbir atau laraskan kebenaran folder.
- Tetapkan lokasi konfigurasi tersuai melalui symlink atau, apabila disokong, melalui pembolehubah persekitaran (pantau sokongan
GEMINI_CONFIG_DIRpada masa hadapan).
Masalah: cd tidak menukar direktori kerja dalam mod shell
Ini ialah isu yang diakui pada beberapa platform. Disyorkan: beralih kepada menjalankan arahan shell dari luar proses Gemini CLI atau tambah direktori melalui /directory add.
Masalah: nama model CometAPI tidak sepadan dengan jangkaan saya
Panggil titik akhir /v1/models dan periksa JSON. ID model sering mengandungi rentetan varian tepat (cth., gemini-2.5-flash-preview-04-17). Guna rentetan tepat dalam permintaan anda.
Kesimpulan
Reka bentuk lalai Gemini CLI memihak kepada kelakuan yang waras dan mudah ditemui: ~/.gemini global untuk lalai peringkat pengguna dan .gemini per projek untuk penggantian per repositori. Komuniti telah mendorong ke arah kebolehkonsfigurasian asli yang lebih baik (pembolehubah persekitaran atau flag yang jelas) untuk menjadikan alat ini lebih mesra bagi persekitaran berbilang pengguna, terkontena, dan perusahaan.
Cara menukar direktori Gemini CLI:
Gambaran keseluruhan: Gemini CLI menyimpan konfigurasi dan fail konteks per pengguna dalam direktori .gemini (kebiasaannya ~/.gemini). Anda boleh mempengaruhi direktori yang digunakan oleh CLI dengan (1) bergantung pada .gemini per projek dalam direktori kerja semasa, (2) menggunakan pembolehubah persekitaran atau opsi CLI apabila disokong, (3) menambah direktori ruang kerja dalam sesi interaktif, atau (4) menggunakan teknik sistem fail (symlink, bind mount, atau menukar pembolehubah home/profile) apabila opsi asli tiada.
Untuk bermula, terokai keupayaan model Gemini (seperti Gemini 3 Pro) dalam Playground dan rujuk panduan API untuk arahan terperinci. Sebelum mengakses, pastikan anda telah log masuk ke CometAPI dan memperoleh kunci API. CometAPI menawarkan harga jauh lebih rendah daripada harga rasmi untuk membantu anda berintegrasi.
Ready to Go?→ Percubaan percuma model Gemini !


