Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gemini-cli

Простий CLI-клієнт для Google Gemini, написаний на Rust. Утиліта надсилає prompt у Gemini API, потоково виводить відповідь у термінал і вміє зберігати API-ключ локально для повторного використання.

Можливості

  • запуск запитів до Gemini з термінала;
  • інтерактивний ввід prompt, якщо не передано --prompt;
  • вибір моделі через --model;
  • локальне збереження API-ключа;
  • опціональне виконання bash/sh команд, якщо модель повернула їх у fenced code block.

Вимоги

  • Rust і Cargo;
  • ключ доступу до Google Gemini API.

Встановлення

Запуск без глобального встановлення

cargo build --release

Після збірки бінарник буде доступний за шляхом:

./target/release/gemini-cli

Глобальне встановлення через Cargo

cargo install --path .

Після цього команда gemini-cli буде доступна з термінала.

Налаштування API-ключа

Збережи ключ один раз:

gemini-cli --set-key "YOUR_GEMINI_API_KEY"

Якщо запускаєш без глобального встановлення:

./target/release/gemini-cli --set-key "YOUR_GEMINI_API_KEY"

На Linux ключ зберігається у конфігураційній директорії застосунку, зазвичай:

~/.config/gemini-cli/api_key.txt

Запуск

Швидкий запит

gemini-cli --prompt "Поясни, що таке async/await у Rust"

Вибір моделі

gemini-cli --prompt "Напиши короткий SQL-запит" --model "gemini-2.5-flash-lite"

Інтерактивний режим

gemini-cli

CLI попросить ввести запит у терміналі й після цього надішле його до Gemini.

Довідка по параметрах

gemini-cli --help

Основні опції:

  • -p, --prompt <PROMPT> — текст запиту;
  • -m, --model <MODEL> — модель Gemini, за замовчуванням gemini-2.5-flash-lite;
  • --set-key <SET_KEY> — зберегти або оновити API-ключ.

Тести

Запуск усіх тестів:

cargo test

Швидка перевірка релізної збірки:

cargo build --release

Тести в проєкті оформлені як модулі #[cfg(test)], тому вони компілюються лише для cargo test і не потрапляють у фінальний релізний бінарник під час cargo build --release або cargo install --path ..

Особливість виконання bash-команд

Якщо відповідь моделі містить блоки виду:

```bash
echo "hello"
```

CLI запропонує виконати знайдені команди. Можна:

  • ввести один номер команди;
  • ввести кілька номерів через кому, наприклад 3,6;
  • ввести all, щоб виконати всі команди зі списку;
  • натиснути Enter, щоб скасувати.

Після виконання вибрані команди зникають зі списку, а CLI повторно запропонує виконати решту. Це дозволяє запускати команди поетапно, одну за одною, без перезапуску програми. Використовуй це обережно й перевіряй команди перед запуском.

About

Simple cli to work with Gemini

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages