Reorganize core into subpackages, add local KB, ruff/pyright tooling

- 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.
This commit is contained in:
2026-06-21 11:44:11 +09:00
parent 234ebba103
commit 347230e3c8
29 changed files with 825 additions and 31 deletions
+4 -4
View File
@@ -3,10 +3,10 @@ import psutil
from pydantic import BaseModel
from sqlalchemy.orm import Session as DBSession
from app.core.scheduler import send_useless_tip, send_weather_laundry_notification
from app.core.tagging import backfill_tags
from app.core.weather_cache import get_latest as get_latest_weather
from app.core.word_memory import get_word_pool_with_counts
from app.core.discord.scheduler import send_useless_tip, send_weather_laundry_notification
from app.core.memory_kb.tagging import backfill_tags
from app.core.weather.weather_cache import get_latest as get_latest_weather
from app.core.memory_kb.word_memory import get_word_pool_with_counts
from app.db.database import get_db
router = APIRouter(prefix="/api/system", tags=["system"])