# MineNASAI 开发步骤文档 **生成日期**: 2025-02-04 **更新日期**: 2025-02-04 **项目**: MineNASAI - 基于NAS的智能个人AI助理 **技术方案**: Web TUI集成(方案C) --- ## Phase 0: 项目初始化 (2-3天) ### 0.1 项目结构创建 - [ ] 创建根目录和基础结构 - [ ] 初始化Python项目(pyproject.toml) - [ ] 配置依赖管理(poetry/pip) - [ ] 设置Git仓库 ### 0.2 开发环境配置 - [ ] Python虚拟环境 - [ ] 代码格式化工具(black/ruff) - [ ] 类型检查(mypy) - [ ] 测试框架(pytest) ### 0.3 基础配置 - [ ] 配置文件模板(config.json5) - [ ] 日志系统初始化 - [ ] 环境变量管理(.env) --- ## Phase 1: Gateway + 通讯接入 (14-21天) ### 1.1 FastAPI基础服务 - [ ] FastAPI项目搭建 - [ ] WebSocket服务器 - [ ] 基础路由和健康检查 ### 1.2 企业微信/飞书接入 - [ ] Webhook接收器 - [ ] 消息解析和验证 - [ ] 消息发送封装 ### 1.3 智能路由 - [ ] 启发式规则实现(基于PoC) - [ ] 任务复杂度评估 - [ ] 路由决策逻辑 ### 1.4 Redis + Celery - [ ] Redis连接配置 - [ ] Celery任务队列 - [ ] 异步任务处理 --- ## Phase 2: Agent运行时 (10-14天) ### 2.1 Anthropic API集成 - [ ] anthropic SDK集成 - [ ] 对话管理 - [ ] 流式响应处理 ### 2.2 基础工具实现 - [ ] 文件读写工具 - [ ] 命令执行工具(安全封装) - [ ] Python沙箱工具 ### 2.3 会话管理 - [ ] SQLite数据库设计 - [ ] 会话CRUD - [ ] 消息历史存储(JSONL) --- ## Phase 3: Web TUI集成 (7-10天) ### 3.1 Web终端前端 - [ ] xterm.js集成 - [ ] Web界面设计(HTML/CSS) - [ ] 前端JavaScript逻辑 ### 3.2 WebSocket终端通信 - [ ] WebSocket服务器(终端I/O) - [ ] 双向数据传输 - [ ] 终端尺寸自适应 ### 3.3 SSH连接管理 - [ ] paramiko集成 - [ ] SSH连接池 - [ ] localhost SSH配置 ### 3.4 用户认证 - [ ] Token/Session认证 - [ ] 权限验证 - [ ] 会话管理 ### 3.5 消息通知链接 - [ ] 生成Web TUI访问链接 - [ ] 通讯工具发送提示 - [ ] 任务上下文传递 --- ## Phase 4: 高级特性 (10-14天) ### 4.1 定时任务 - [ ] Cron任务调度 - [ ] 定时任务配置 - [ ] 任务执行监控 ### 4.2 权限控制 - [ ] 工具危险级别定义 - [ ] 确认机制 - [ ] 审计日志 ### 4.3 (可选) MCP扩展 - [ ] MCP Server加载框架 - [ ] 基础MCP集成测试 ### 4.4 (可选) RAG知识库 - [ ] Qdrant集成 - [ ] 向量化和检索 - [ ] 知识库管理 --- ## Phase 5: 生产就绪 (7-10天) ### 5.1 错误处理与监控 - [ ] 完善错误处理 - [ ] 日志优化 - [ ] 监控告警 ### 5.2 性能优化 - [ ] 并发优化 - [ ] 缓存策略 - [ ] 资源限制 ### 5.3 Docker部署 - [ ] Dockerfile编写 - [ ] docker-compose配置 - [ ] 部署文档 ### 5.4 测试与文档 - [ ] 集成测试 - [ ] 用户文档 - [ ] 运维文档 --- ## 总时间估算 **总计**: 52-81天 ## 技术栈总结 | 组件 | 技术选择 | |------|----------| | 后端 | FastAPI + Anthropic SDK | | 通讯 | 企业微信API + 飞书API | | 消息队列 | Redis + Celery | | Web终端 | xterm.js + WebSocket | | SSH | paramiko (Python) | | 存储 | SQLite + JSONL | | 部署 | Docker | --- *当真正开始开发时,每个Phase会展开详细的子任务和验收标准*