Этап 1: трей, окно чата и текстовый диалог с LLM

- PySide6: значок в трее с индикацией состояния, окно чата со стримингом и markdown
- Единый OpenAI-совместимый клиент (Ollama, LM Studio, OpenRouter)
- config.yaml с автосозданием, слиянием с умолчаниями и подстановкой ${ENV}
- Тесты конфига и сборки сообщений

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
mrleo1nid
2026-09-17 03:04:21 +03:00
co-authored by Claude Opus 5
parent 26a01aa210
commit 7933613234
19 changed files with 1574 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
[project]
name = "agr-assistent"
version = "0.1.0"
description = "Минимальный голосовой AI-ассистент в системном трее"
readme = "README.md"
requires-python = ">=3.11"
dependencies = [
"openai>=3.14.1",
"pyside6>=6.11.2",
"pyyaml>=6.0.3",
]
[project.scripts]
agr-assistent = "agr_assistent.app:main"
[dependency-groups]
dev = [
"pytest>=9.1.1",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/agr_assistent"]
[tool.pytest.ini_options]
testpaths = ["tests"]