- Split backend/app/core into weather/, discord/, memory_kb/, search/ subpackages by responsibility, keeping config.py and llm.py as the shared foundation; updated all import sites accordingly. - Add local Markdown knowledge base support (local_knowledge.py, knowledge_base/fgo.md, LOCAL_KB_* settings) that embeds and injects relevant docs into the system prompt by topic similarity. - Add ruff and pyright as backend dev dependencies with basic config in pyproject.toml for linting and type checking. - Document local machine quirks in CLAUDE.md (Postgres on port 8080, SSLKEYLOGFILE breaking litellm/pyright via OPENSSL_Uplink crashes). - Add backend/run_dev.ps1 dev launcher and docs/discord-bot.md.
56 lines
1016 B
TOML
56 lines
1016 B
TOML
[project]
|
|
name = "playchat-backend"
|
|
version = "0.1.0"
|
|
requires-python = ">=3.12"
|
|
dependencies = [
|
|
"fastapi>=0.111.0",
|
|
"uvicorn>=0.30.0",
|
|
"litellm>=1.40.0",
|
|
"sqlalchemy>=2.0.0",
|
|
"alembic>=1.13.0",
|
|
"python-dotenv>=1.0.0",
|
|
"sse-starlette>=2.1.0",
|
|
"huggingface-hub>=1.17.0",
|
|
"psutil>=7.2.2",
|
|
"nvidia-ml-py>=13.610.43",
|
|
"boto3>=1.43.32",
|
|
"apscheduler>=3.11.2",
|
|
"httpx>=0.28.1",
|
|
"discord-py>=2.7.1",
|
|
"janome>=0.5.0",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"pytest>=8.0.0",
|
|
"pytest-asyncio>=0.23.0",
|
|
"httpx>=0.27.0",
|
|
]
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["app"]
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"pyright>=1.1.410",
|
|
"ruff>=0.15.18",
|
|
]
|
|
|
|
[tool.ruff]
|
|
line-length = 119
|
|
target-version = "py312"
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "I", "UP", "B"]
|
|
|
|
[tool.pyright]
|
|
include = ["app"]
|
|
venvPath = "."
|
|
venv = ".venv"
|
|
typeCheckingMode = "basic"
|
|
pythonVersion = "3.12"
|