e26605adf863d2dbb8d11a7f39b7968cbf00621c
随身助手 Companion Assistant
一个跨端随身助手系统:对话、智能体、多类型项目开发(编程 / 研究 / 办公 / 写作 / 视频分析)。
- 前端:Vue 3 + Vant 4 + PWA(浏览器直接用,安卓可安装到桌面,Capacitor 可打包原生 App)
- 后端:Python FastAPI(REST + WebSocket,OpenAPI 标准文档)
- 解耦:前后端分离,纯 API 通信,模块化分层
快速开始
后端
cd backend
pip install -r requirements.txt
./start.sh # 或 python3 -m uvicorn app.main:app --host 0.0.0.0 --port 16080
- API 文档: http://:16080/docs
- 健康检查: http://:16080/api/health
前端
cd frontend
npm install
npm run dev # 开发模式
npm run build # 构建 PWA 产物 → dist/
转安卓/iOS App(Capacitor)
cd frontend
npm run build
npx cap sync android
npx cap open android # Android Studio 打包 APK
目录结构
companion-assistant/
├── backend/ # FastAPI 后端
│ ├── app/
│ │ ├── api/ # 路由层(auth/chat/agents/projects/files/tasks/ws)
│ │ ├── core/ # 配置、安全、LLM 客户端
│ │ ├── models/ # SQLAlchemy 模型
│ │ ├── schemas/ # Pydantic 校验模型
│ │ ├── services/ # 业务逻辑层
│ │ ├── database.py
│ │ └── main.py
│ └── data/ # SQLite + 上传文件 + 项目工作目录
├── frontend/ # Vue 3 + Vant + PWA 前端
├── docs/ # 架构文档、API 文档
└── README.md
核心模块
| 模块 | 说明 |
|---|---|
| 对话 | 多会话、流式输出(WebSocket)、Markdown 渲染 |
| 智能体 | 预置 + 自定义角色(系统提示词 + 模型 + 工具),类似 GPTs |
| 项目 | 编程 / 研究 / 办公 / 写作 / 视频分析,独立工作目录 + 任务流 |
| 文件 | 上传/下载/管理,项目文件隔离 |
| 任务 | 后台异步任务(视频分析等耗时操作) |
技术栈
- 后端: FastAPI / SQLAlchemy 2.0 / SQLite(可换 PostgreSQL) / OpenAI 兼容 SDK
- 前端: Vue 3 / Vite / Vant 4 / Pinia / Vue Router / vite-plugin-pwa / Capacitor
- LLM: OpenAI 兼容适配(火山方舟 doubao、DeepSeek、Qwen、AutoDL 可切换)
Languages
Python
55.9%
Vue
38.4%
TypeScript
3.6%
CSS
1%
Shell
0.8%
Other
0.3%