ForcePilot/AGENTS.md
2025-10-10 14:59:12 +08:00

43 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 项目目录结构 (Project Overview)
Yuxi-Know 是一个基于知识图谱和向量数据库的智能知识库系统。它通过 FastAPI 提供后端 API使用 Vue.js 构建前端界面,并利用 Docker Compose 进行整体服务的编排和管理。
文档中心在 `docs` 文件夹下面。
# 核心服务与容器 (Core Services & Containers)
项目使用 Docker Compose 管理多个服务,主要容器名称如下:
- `api-dev` - FastAPI 后端服务
- `web-dev` - Vue.js 前端开发服务器
- `graph` - Neo4j 图数据库
- `milvus` - 向量数据库,包含 etcd 和 MinIO 依赖
- `mineru` - 可选的 MinerU OCR 服务(需要 GPU
- `paddlex` - 可选的 PaddleX OCR 服务(需要 GPU
## 开发与调试工作流 (Development & Debugging Workflow)
本项目完全通过 Docker Compose 进行管理。所有开发和调试都应在运行的容器环境中进行。使用 `docker compose up -d` 命令进行构建和启动。
核心原则: 由于 api-dev 和 web-dev 服务均配置了热重载 (hot-reloading),本地修改代码后无需重启容器,服务会自动更新。应该先检查项目是否已经在后台启动(`docker ps`),具体的可以阅读 [docker-compose.yml](docker-compose.yml).
前端开发规范:
- API 接口规范:所有的 API 接口都应该定义在 web/src/apis 下面,并继承自 apiGet/apiPost/apiRequest
- Icon 应该从 @ant-design/icons-vue 或者 lucide-vue-next
- Vue 中的样式使用 less并尽量使用[base.css](web/src/assets/css/base.css) 中的颜色。
- UI风格要简洁同时要保持一致性颜色要尽量参考 不要悬停位移,不要过度使用阴影以及渐变色。
后端开发规范:
- 项目使用 uv 来管理依赖
- Python 代码要符合 Python 的规范,尽量使用较新的语法,避免使用旧版本的语法(版本兼容到 3.12+),使用 make lint 检查 lint。使用 make format 来格式化代码。
其他:
- 如果需要新建说明文档(仅开发者可见,非必要不创建),则保存在 `docs/vibe` 文件夹下面
- 测试脚本可以放在 test 文件夹下面,可以从 docker 中启动测试
- 代码更新后要检查文档部分是否有需要更新的地方,文档的目录定义在 `docs/.vitepress/config.mts`