mirror of
https://github.com/Direct-Dev-Ru/go-lcg.git
synced 2025-11-16 01:29:55 +00:00
add https server functionality - befor auth functionality implementation
This commit is contained in:
232
CONFIG_COMMAND.md
Normal file
232
CONFIG_COMMAND.md
Normal file
@@ -0,0 +1,232 @@
|
||||
# 🔧 Команда config - Управление конфигурацией
|
||||
|
||||
## 📋 Описание
|
||||
|
||||
Команда `config` позволяет просматривать текущую конфигурацию приложения, включая все настройки, переменные окружения и значения по умолчанию.
|
||||
|
||||
## 🚀 Использование
|
||||
|
||||
### Краткий вывод конфигурации (по умолчанию)
|
||||
|
||||
```bash
|
||||
lcg config
|
||||
# или
|
||||
lcg co
|
||||
```
|
||||
|
||||
**Вывод:**
|
||||
|
||||
``` text
|
||||
Provider: ollama
|
||||
Host: http://192.168.87.108:11434/
|
||||
Model: hf.co/yandex/YandexGPT-5-Lite-8B-instruct-GGUF:Q4_K_M
|
||||
Prompt: Reply with linux command and nothing else. Output with plain response - no need formatting. No need explanation. No need code blocks. No need ` symbols.
|
||||
Timeout: 300 seconds
|
||||
```
|
||||
|
||||
### Полный вывод конфигурации
|
||||
|
||||
```bash
|
||||
lcg config --full
|
||||
# или
|
||||
lcg config -f
|
||||
# или
|
||||
lcg co --full
|
||||
# или
|
||||
lcg co -f
|
||||
```
|
||||
|
||||
**Вывод (JSON формат):**
|
||||
|
||||
```json
|
||||
{
|
||||
"cwd": "/home/user/projects/golang/linux-command-gpt",
|
||||
"host": "http://192.168.87.108:11434/",
|
||||
"proxy_url": "/api/v1/protected/sberchat/chat",
|
||||
"completions": "api/chat",
|
||||
"model": "hf.co/yandex/YandexGPT-5-Lite-8B-instruct-GGUF:Q4_K_M",
|
||||
"prompt": "Reply with linux command and nothing else. Output with plain response - no need formatting. No need explanation. No need code blocks. No need ` symbols.",
|
||||
"api_key_file": ".openai_api_key",
|
||||
"result_folder": "/home/user/.config/lcg/gpt_results",
|
||||
"prompt_folder": "/home/user/.config/lcg/gpt_sys_prompts",
|
||||
"provider_type": "ollama",
|
||||
"jwt_token": "***not set***",
|
||||
"prompt_id": "1",
|
||||
"timeout": "300",
|
||||
"result_history": "/home/user/.config/lcg/gpt_results/lcg_history.json",
|
||||
"no_history_env": "",
|
||||
"allow_execution": false,
|
||||
"main_flags": {
|
||||
"file": "",
|
||||
"no_history": false,
|
||||
"sys": "",
|
||||
"prompt_id": 0,
|
||||
"timeout": 0,
|
||||
"debug": false
|
||||
},
|
||||
"server": {
|
||||
"port": "8080",
|
||||
"host": "localhost"
|
||||
},
|
||||
"validation": {
|
||||
"max_system_prompt_length": 1000,
|
||||
"max_user_message_length": 2000,
|
||||
"max_prompt_name_length": 2000,
|
||||
"max_prompt_desc_length": 5000,
|
||||
"max_command_length": 8000,
|
||||
"max_explanation_length": 20000
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## 📊 Структура полной конфигурации
|
||||
|
||||
### Основные настройки
|
||||
|
||||
- **cwd** - текущая рабочая директория
|
||||
- **host** - адрес API сервера
|
||||
- **proxy_url** - путь к API эндпоинту
|
||||
- **completions** - путь к эндпоинту completions
|
||||
- **model** - используемая модель ИИ
|
||||
- **prompt** - системный промпт по умолчанию
|
||||
- **api_key_file** - файл с API ключом
|
||||
- **result_folder** - папка для сохранения результатов
|
||||
- **prompt_folder** - папка с системными промптами
|
||||
- **provider_type** - тип провайдера (ollama/proxy)
|
||||
- **jwt_token** - статус JWT токена (***set***/***from file***/***not set***)
|
||||
- **prompt_id** - ID промпта по умолчанию
|
||||
- **timeout** - таймаут запросов в секундах
|
||||
- **result_history** - файл истории запросов
|
||||
- **no_history_env** - переменная окружения для отключения истории
|
||||
- **allow_execution** - разрешение выполнения команд
|
||||
|
||||
### Флаги командной строки (main_flags)
|
||||
|
||||
- **file** - файл для чтения
|
||||
- **no_history** - отключение истории
|
||||
- **sys** - системный промпт
|
||||
- **prompt_id** - ID промпта
|
||||
- **timeout** - таймаут
|
||||
- **debug** - отладочный режим
|
||||
|
||||
### Настройки сервера (server)
|
||||
|
||||
- **port** - порт веб-сервера
|
||||
- **host** - хост веб-сервера
|
||||
|
||||
### Настройки валидации (validation)
|
||||
|
||||
- **max_system_prompt_length** - максимальная длина системного промпта
|
||||
- **max_user_message_length** - максимальная длина пользовательского сообщения
|
||||
- **max_prompt_name_length** - максимальная длина названия промпта
|
||||
- **max_prompt_desc_length** - максимальная длина описания промпта
|
||||
- **max_command_length** - максимальная длина команды/ответа
|
||||
- **max_explanation_length** - максимальная длина объяснения
|
||||
|
||||
## 🔒 Безопасность
|
||||
|
||||
При выводе полной конфигурации чувствительные данные маскируются:
|
||||
|
||||
- **JWT токены** - показывается статус (***set***/***from file***/***not set***)
|
||||
- **API ключи** - не выводятся в открытом виде
|
||||
- **Пароли** - не сохраняются в конфигурации
|
||||
|
||||
## 📝 Примеры использования
|
||||
|
||||
### Просмотр текущих настроек
|
||||
|
||||
```bash
|
||||
# Краткий вывод
|
||||
lcg config
|
||||
|
||||
# Полный вывод
|
||||
lcg config --full
|
||||
```
|
||||
|
||||
### Проверка настроек валидации
|
||||
|
||||
```bash
|
||||
# Показать только настройки валидации
|
||||
lcg config --full | jq '.validation'
|
||||
```
|
||||
|
||||
### Проверка настроек сервера
|
||||
|
||||
```bash
|
||||
# Показать только настройки сервера
|
||||
lcg config --full | jq '.server'
|
||||
```
|
||||
|
||||
### Проверка переменных окружения
|
||||
|
||||
```bash
|
||||
# Показать все переменные окружения LCG
|
||||
env | grep LCG
|
||||
```
|
||||
|
||||
## 🔧 Интеграция с другими инструментами
|
||||
|
||||
### Использование с jq
|
||||
|
||||
```bash
|
||||
# Получить только модель
|
||||
lcg config --full | jq -r '.model'
|
||||
|
||||
# Получить настройки валидации
|
||||
lcg config --full | jq '.validation'
|
||||
|
||||
# Получить все пути
|
||||
lcg config --full | jq '{result_folder, prompt_folder, result_history}'
|
||||
```
|
||||
|
||||
### Использование с grep
|
||||
|
||||
```bash
|
||||
# Найти все настройки с "timeout"
|
||||
lcg config --full | grep -i timeout
|
||||
|
||||
# Найти все пути
|
||||
lcg config --full | grep -E "(folder|history)"
|
||||
```
|
||||
|
||||
### Сохранение конфигурации в файл
|
||||
|
||||
```bash
|
||||
# Сохранить полную конфигурацию
|
||||
lcg config --full > config.json
|
||||
|
||||
# Сохранить только настройки валидации
|
||||
lcg config --full | jq '.validation' > validation.json
|
||||
```
|
||||
|
||||
## 🐛 Отладка
|
||||
|
||||
### Проверка загрузки конфигурации
|
||||
|
||||
```bash
|
||||
# Показать все настройки
|
||||
lcg config --full
|
||||
|
||||
# Проверить переменные окружения
|
||||
env | grep LCG
|
||||
|
||||
# Проверить файлы конфигурации
|
||||
ls -la ~/.config/lcg/
|
||||
```
|
||||
|
||||
### Типичные проблемы
|
||||
|
||||
1. **Неправильные пути** - проверьте `result_folder` и `prompt_folder`
|
||||
2. **Отсутствующие токены** - проверьте `jwt_token` статус
|
||||
3. **Неправильные лимиты** - проверьте секцию `validation`
|
||||
|
||||
## 📚 Связанные команды
|
||||
|
||||
- `lcg --help` - общая справка
|
||||
- `lcg config --help` - справка по команде config
|
||||
- `lcg serve` - запуск веб-сервера
|
||||
- `lcg prompts list` - список промптов
|
||||
|
||||
---
|
||||
|
||||
**Примечание**: Команда `config` показывает актуальное состояние конфигурации после применения всех переменных окружения и значений по умолчанию.
|
||||
Reference in New Issue
Block a user