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
+7
View File
@@ -21,6 +21,13 @@ TAVILY_API_KEY=
# 蓄積知識をシステムプロンプトに注入する際の最大件数
KNOWLEDGE_CONTEXT_LIMIT=15
# ローカルMarkdownナレッジベース(backend/knowledge_base/ 配下のファイルを話題に応じて注入)
LOCAL_KB_DIR=knowledge_base
# Ollamaを使う場合は ollama/nomic-embed-text のように指定(OLLAMA_API_BASEも参照される)
LOCAL_KB_EMBEDDING_MODEL=text-embedding-3-small
LOCAL_KB_TOP_K=3
LOCAL_KB_MIN_SCORE=0.75
# 天気予報 → Discord 通知
DISCORD_WEBHOOK_URL=
WEATHER_AREA_CODE=120000