mirror of
https://github.com/Direct-Dev-Ru/go-lcg.git
synced 2025-11-15 17:20:00 +00:00
Пакет serve
Этот пакет содержит HTTP сервер для веб-интерфейса LCG (Linux Command GPT).
Структура файлов
serve.go
Основной файл пакета. Содержит:
StartResultServer()- функция запуска HTTP сервераregisterRoutes()- регистрация всех маршрутов
results.go
Обработчики для результатов и файлов:
handleResultsPage()- главная страница со списком файлов результатовhandleFileView()- просмотр конкретного файлаhandleDeleteFile()- удаление файла результатаgetResultFiles()- получение списка файловformatFileSize()- форматирование размера файла
history.go
Обработчики для работы с историей запросов:
handleHistoryPage()- страница истории запросовhandleDeleteHistoryEntry()- удаление записи из историиhandleClearHistory()- очистка всей историиreadHistoryEntries()- чтение записей истории
history_utils.go
Утилиты для работы с историей:
HistoryEntry- структура записи историиread()- чтение истории из файлаwrite()- запись истории в файлDeleteHistoryEntry()- удаление записи по индексу
prompts.go
Обработчики для управления промптами:
handlePromptsPage()- страница управления промптамиhandleAddPrompt()- добавление нового промптаhandleEditPrompt()- редактирование промптаhandleDeletePrompt()- удаление промптаhandleRestorePrompt()- восстановление системного промпта к значению по умолчаниюhandleRestoreVerbosePrompt()- восстановление verbose промптаhandleSaveLang()- сохранение промптов при переключении языка
prompts_helpers.go
Вспомогательные функции для работы с промптами:
getVerbosePromptsFromFile()- получение verbose промптов из файлаtranslateVerbosePrompt()- перевод verbose промптаgetVerbosePrompts()- получение встроенных verbose промптов (fallback)getSystemPromptsWithLang()- получение системных промптов с учетом языкаtranslateSystemPrompt()- перевод системного промпта
Использование
import "github.com/direct-dev-ru/linux-command-gpt/serve"
// Запуск сервера на localhost:8080
err := serve.StartResultServer("localhost", "8080")
Маршруты
Результаты
GET /- главная страница со списком файловGET /file/{filename}- просмотр файла результатаDELETE /delete/{filename}- удаление файла
История
GET /history- страница истории запросовGET /history/view/{id}- просмотр записи истории в развернутом видеDELETE /history/delete/{id}- удаление записиDELETE /history/clear- очистка всей истории
Промпты
GET /prompts- страница управления промптамиPOST /prompts/add- добавление промптаPUT /prompts/edit/{id}- редактирование промптаDELETE /prompts/delete/{id}- удаление промптаPOST /prompts/restore/{id}- восстановление системного промптаPOST /prompts/restore-verbose/{mode}- восстановление verbose промпта (v/vv/vvv)POST /prompts/save-lang- сохранение языка промптов
Выполнение запросов
GET /run- веб-страница для выполнения запросовPOST /run- обработка выполнения запросаPOST /execute- API для программного доступа (только curl)
Особенности
- Многоязычность: Поддержка английского и русского языков для промптов
- Responsive дизайн: Адаптивный интерфейс для различных устройств
- Markdown: Автоматическая конвертация Markdown файлов в HTML
- История: Поиск дубликатов с учетом регистра
- Промпты: Управление встроенными и пользовательскими промптами