GigaChat CLI utility
Project description
GigaChat CLI
Текстовый интерфейс для работы с GigaChat AI через командную строку с поддержкой терминальных команд и работы с файлами.
Особенности
- Интуитивный текстовый интерфейс - современный TUI на базе Textual
- Интерактивный чат - общайтесь с GigaChat в реальном времени
- Автодополнение команд - умное автодополнение по Tab с описаниями
- Автодополнение файлов - интеллектуальное дополнение путей для терминальных команд
- Выбор моделей - переключайтесь между GigaChat 2 Lite/Pro/M
- Встроенный терминал - выполняйте системные команды прямо из чата (префикс
!) - Анализ проекта - нейросеть автоматически анализирует структуру и содержимое вашего проекта
- Работа с кодом - объяснение, рефакторинг и анализ кода с учетом контекста проекта
- История диалога - автоматическое сохранение контекста беседы
- Подсветка синтаксиса - красивый вывод кода и терминальных команд
Установка
Установка из PyPI
pip install gigachat-cli
Установка из исходного кода
git clone https://github.com/thechrismoth/GigaChat-Cli.git
cd gigachat_cli
pip install .
Настройка аутентификации
Получение API ключа
- Перейдите на SberAI Developer Studio
- Зарегистрируйтесь или войдите в аккаунт
- Создайте новый API ключ
Настройка переменной окружения
export GIGACHAT_API_KEY="ваш_api_ключ_здесь"
Для постоянного хранения добавьте в ваш ~/.bashrc, ~/.zshrc или ~/.profile:
echo 'export GIGACHAT_API_KEY="ваш_api_ключ_здесь"' >> ~/.bashrc
Начало работы
Запуск приложения
gigachat
Основное использование
- Запустите приложение - введите команду gigachat
- Выберите "Начать чат" - из главного меню
- Введите сообщение - пишите вопросы и нажимайте Enter для отправки
- Используйте терминальные команды - начинайте команды с
!(например:!ls -la) - Используйте автодополнение - начните вводить / и используйте Tab для навигации
- Переключайте модели* - команда
/modelдля выбора между Lite/Pro/Max - Анализируйте проект - просто упомяните файлы в запросе, нейросеть автоматически их найдет
- Выход - введите
/exitчтобы закончить работу приложения
Доступные команды
- /model - выбор модели GigaChat (Lite/Pro/Max)
- /help - показать справку по командам
- /exit - выход из приложения
- /menu - возврат в меню приложения
Управление интерфейсом
- Tab / Shift+Tab - навигация по автодополнению команд
- ↑ / ↓ - навигация в выпадающих списках (селекторах)
- Enter - подтвердить выбор / отправить сообщение
- Escape - отмена / возврат / закрытие справки
Примеры использования
Базовый чат
Просто введите ваш вопрос и нажмите Shift+Enter
Терминальные команды
!pwd- показать текущую директорию!python --version- проверить версию Python!git status- проверить статус git репозитория
Работа с проектом
Объясни что делает main.py- автоматически найдет и проанализирует файлКак улучшить код в utils.py?- анализ и предложения по улучшениюПокажи структуру проекта- анализ всей файловой структурыРефакторинг функции calculate()- поиск и улучшение конкретной функции
Переключение моделей
/model- открывает интерактивный выбор моделей
Требования
- Python >= 3.13
- GigaChat API ключ
Зависимости
- textual >= 6.2.0 - фреймворк для TUI приложений
- langchain-gigachat >= 0.3.12 - интеграция с GigaChat
- asyncio >= 4.0.0 - асинхронное программирование
Лицензия
MIT License - смотрите файл LICENSE.md для деталей.
Поддержка
Если вы столкнулись с проблемами или у вас есть предложения:
- Создайте issue в репозитории
- Убедитесь что GIGACHAT_API_KEY корректно установлен
- Проверьте что Python версии 3.13 или выше
GigaChat CLI - мощный инструмент для разработчиков, сочетающий возможности AI-ассистента с удобством командной строки.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gigachat_cli-2.2.0.tar.gz.
File metadata
- Download URL: gigachat_cli-2.2.0.tar.gz
- Upload date:
- Size: 28.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68c1c82fcc39a5da59abc0b73ade50fbeb92dfda1c66d8fb651ffad5d54b2b86
|
|
| MD5 |
42521f3ae3653a5bb3410f9d09a073df
|
|
| BLAKE2b-256 |
2b6c66cda6a8e2523e636cea3908e7e48196997465427b4509d477c3a087b403
|
Provenance
The following attestation bundles were made for gigachat_cli-2.2.0.tar.gz:
Publisher:
python-publish.yml on thechrismoth/GigaChat-Cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gigachat_cli-2.2.0.tar.gz -
Subject digest:
68c1c82fcc39a5da59abc0b73ade50fbeb92dfda1c66d8fb651ffad5d54b2b86 - Sigstore transparency entry: 696263471
- Sigstore integration time:
-
Permalink:
thechrismoth/GigaChat-Cli@0a824d5f1c715d95287c1ddc70e1ff6a98f3b879 -
Branch / Tag:
refs/tags/2.2.0 - Owner: https://github.com/thechrismoth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@0a824d5f1c715d95287c1ddc70e1ff6a98f3b879 -
Trigger Event:
release
-
Statement type:
File details
Details for the file gigachat_cli-2.2.0-py3-none-any.whl.
File metadata
- Download URL: gigachat_cli-2.2.0-py3-none-any.whl
- Upload date:
- Size: 35.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb3bcf3c1cbc9fad7d1fc8b28c0f3f9bc0613295b49ba9d890348d447dd15a56
|
|
| MD5 |
c6f99cb48f2dd37c8bfdbe47b8d0bac4
|
|
| BLAKE2b-256 |
c78992ac450f4493575ab99c37fc5551f326d05891cfb96f62f5051ce8b7ba71
|
Provenance
The following attestation bundles were made for gigachat_cli-2.2.0-py3-none-any.whl:
Publisher:
python-publish.yml on thechrismoth/GigaChat-Cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gigachat_cli-2.2.0-py3-none-any.whl -
Subject digest:
eb3bcf3c1cbc9fad7d1fc8b28c0f3f9bc0613295b49ba9d890348d447dd15a56 - Sigstore transparency entry: 696263474
- Sigstore integration time:
-
Permalink:
thechrismoth/GigaChat-Cli@0a824d5f1c715d95287c1ddc70e1ff6a98f3b879 -
Branch / Tag:
refs/tags/2.2.0 - Owner: https://github.com/thechrismoth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@0a824d5f1c715d95287c1ddc70e1ff6a98f3b879 -
Trigger Event:
release
-
Statement type: