# Repository Guidelines ## 项目结构与模块组织 - `applications/`:可运行的 Web 应用(如 `drone-command/`、`mobile-web-view/`、`task-work-order/`)。 - `packages/`:共享库(API、组件、常量、hooks、工具等)。 - `uniapps/`:UniApp 相关应用(如 `work-app/`、`work-wx/`)。 - 应用职责说明: - `applications/drone-command/`:反制无人机 PC 系统。 - `applications/task-work-order/`:任务工单 PC 系统。 - `applications/mobile-web-view/`:`work-app`、`work-wx` 共用的内嵌页面(如地图等)。 - `uniapps/work-app/`:使用 UniApp 开发的工单 App。 - `uniapps/work-wx/`:使用 UniApp 开发的微信小程序。 - 资源文件通常放在各应用内,具体入口以各应用的 `README.md` 为准。 ## 构建、测试与开发命令 在仓库根目录使用 `pnpm`: - `pnpm install`:安装工作区依赖。 - `pnpm dev`:并行启动所有工作区的开发服务。 - `pnpm dev:drone-command`:启动单个应用。 - `pnpm dev:mobile-web-view`:启动单个应用。 - `pnpm dev:task-work-order`:启动单个应用。 - `pnpm dev:work-app`:启动 UniApp H5 开发服务。 - `pnpm dev:work-wx`:启动 UniApp H5 开发服务。 - `pnpm build:test:` / `pnpm build:prod:`:构建指定应用,例如 `pnpm build:prod:mobile-web-view`。 ## 编码风格与命名规范 - 使用 Prettier 统一格式化(`.prettierrc.json`)。 - 使用 Tab 缩进(`tabWidth: 2`, `useTabs: true`),`semi: false`,`singleQuote: true`。 - SCSS 使用 `tabWidth: 4` 且双引号。 - 文件与目录保持 kebabCase,遵循现有应用与包的命名风格。 ## 测试指南 - 无需任何测试 ## 提交与合并请求规范 - 提交历史使用简短的约定式主题(如 `feat: ...`)。 - 建议使用 `feat:`、`fix:`、`chore:`、`refactor:` 等前缀并保持简洁描述。 - PR 需要包含:目的、影响的应用/包、UI 改动截图。 - 可关联相关 issue 或工单。 ## 环境与配置 - Node.js >= 20,pnpm >= 9。 - 优先使用根目录工作区脚本,除非必要不要在子目录直接运行脚本。 # AI Rules / AI行为规范 - 对低风险修改,AI可自主执行,无需批准。 AI may proceed autonomously for low-risk changes. - 仅当修改可能影响架构、核心模块、公共接口、数据结构或安全性时,才需要请求批准。 Ask for approval only for high-impact changes. - 若问题不影响系统正确性,应自行做出合理决策,而不是提问。 DO NOT ask questions that do not affect correctness. - 优先最小化修改范围。 Prefer minimal changes. - 未被明确要求时,禁止大规模重构。 Avoid large refactors unless requested. - 修改完不需要走打包编译校验