根因:项目未依赖 dotenv,启动脚本也未使用 --env-file, process.env 中没有 LLM_API_KEY,isAvailable() 始终返回 false, /health 端点返回 llmAvailable: false。 修复: - index.ts 启动时手动读取 .env 并注入 process.env (零依赖,兼容 tsx watch dev 和 node dist 两种启动方式) - start 脚本保留 node --env-file=.env 双保险 - .gitignore 加入 .idea/
- Fastify + TypeScript,OpenAI 兼容接口对接 SiliconFlow - POST /ai/aggregate-report:残片聚合为学习报告(支持预期对比) - POST /ai/generate-mind-map:生成思维导图缩进大纲(与后端解析格式一致) - Key 从环境变量读取且日志脱敏,未配置时返回 503 由调用方降级 - prompt 模板集中管理,vitest 单元测试