Skip to content

imjonos/gigachat-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 GigaChat CLI

Консольный инструмент для взаимодействия с моделью GigaChat через командную строку. Позволяет отправлять текст, код, логи или коммиты на анализ, объяснение, перевод или суммирование. Поддерживает чтение ввода из stdin и аргументов командной строки, а также использование пользовательских и стандартных флагов.


🛠 Функционал

  • Отправка сообщений в GigaChat.
  • Чтение ввода из stdin (например: echo "текст" | python main.py) или из аргументов командной строки.
  • Поддержка флагов:
    • --help – вывести доступные флаги
    • --check-code – проверяет следующий код
    • --review-commit – проверяет коммит и делает ревью
    • --explain – объясняет следующее
    • --check-log – проверяет логи и объясняет ошибки
    • --summarize – суммирует текст
    • --translate – переводит на русский язык
  • Возможность указания пользовательского префикса через флаг --prompt "..."

📦 Установка

  1. Установите зависимости:
pip install gigachat python-dotenv
  1. Создайте файл .env рядом с main.py со следующими переменными:
GIGACHAT_CREDENTIALS=ваш_токен
GIGACHAT_MODEL=GigaChat-Pro
VERIFY_SSL_CERTS=false

🚀 Примеры использования

python main.py "Объясни на русском Что такое ООП?"

С флагом:

echo "def hello():\n    print('Hello')" | python main.py --check-code
cat index.php | python main.py --check-code
git show HEAD | python main.py --review-commit

С пользовательским префиксом:

tail laravel.log | python main.py --prompt "Объясни на русском"

Без флага:

echo "Как работает Python?" | python main.py

🐍 Как добавить алиас для удобного запуска

Вы можете создать алиас, чтобы не писать каждый раз python main.py, а использовать короткое имя — например, giga.

Для Bash (Linux/macOS):

Добавьте в файл ~/.bashrc или ~/.zshrc:

alias giga='python /путь/к/проекту/main.py'

Примените изменения:

source ~/.bashrc  # или source ~/.zshrc

Теперь вы можете использовать:

echo "Как работает рекурсия?" | giga --explain

Для Windows (PowerShell):

Откройте PowerShell и выполните:

Set-Alias -Name giga -Value "C:\путь\к\проекту\main.py"

Или добавьте это в ваш profile.ps1:

if (!(Get-Alias -Name giga -ErrorAction SilentlyContinue)) {
    Set-Alias -Name giga -Value "C:\путь\к\проекту\main.py"
}

🧩 Возможные улучшения (если потребуется)

  • Добавление поддержки нескольких флагов.
  • Автоматическое форматирование кода.
  • Логирование запросов и ответов.

✅ Требования


📄 License

MIT License — см. LICENSE

About

Консольный инструмент для взаимодействия с моделью GigaChat через командную строку.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages