883 字
4 分钟
Qmai 项目识别:先判断项目角色,再选择规则

项目识别回答一个基础问题:当前工作区到底是不是 Qmai 国际前端项目?如果是,它属于哪类系统?

只有先回答这个问题,后面的规则和 playbook 才有意义。

三步判断法#

找到项目根目录
-> 判断是否命中 Qmai 信号
-> 判断系统角色和仓库职责

1. 找到当前项目根目录#

AI 进入项目后,先从当前目录向上找最近的 package.json

如果一个工作区里有多个项目,就根据用户提供的文件、路由、需求关键词,定位最相关的项目。

如果无法确定项目根目录,需要说明缺少上下文,而不是继续猜。

2. 判断是否是 Qmai 项目#

命中以下任意强信号,可以按 Qmai 项目处理:

信号说明
scripts 中出现 qmai buildqmai formatqmai deploy 等命令构建链路属于 Qmai 体系
依赖中出现 @qmai/*使用 Qmai 组件或工程能力
出现 eslint-plugin-qmai使用 Qmai 代码规范
依赖别名中出现 npm:@qmai/*通过别名引入 Qmai 包

目录名或包名里出现 qmaiqimai 只能作为辅助信号,不能作为唯一依据。

如果完全没有命中 Qmai 信号,就按当前项目自己的 README、配置和代码风格处理,不强行套用 Qmai 规则。

3. 判断系统角色#

Qmai 国际前端里,不同系统角色有不同处理方式。

系统角色常见信号典型职责
qiankun 基座依赖 qiankun,涉及登录、菜单、头部、容器、微应用注册console-vue-international
普通业务子应用Vue2、业务路由、业务页面、子应用生命周期多数 *-vue-international
公共业务页/commonCenter/、公共配置、打印模板common-vue-international
共享组件库包名或源码指向 vue-kylinvue-kylin-international
打印项目打印插件、桥接、国际打印代码、打印通用入口operation
装修平台Vue3 装修主工程或装修组件库design-vue-3-internationaldesign-v0-international

*-vue-international 必须查职责清单#

当目标可能是某个 *-vue-international 仓库时,不能只靠仓库名猜。

必须先查“国际 Vue 仓库职责清单”,它会说明:

  • 每个仓库的一句话职责。
  • 哪些需求优先改这个仓库。
  • 关键模块和路由线索。
  • 容易混淆的边界。

例如:

需求关键词优先判断
菜单、登录、容器、微应用挂载console-vue-international
公共配置、公共打印模板、硬件、KDS 公共配置common-vue-international
商品、SKU、分类、配方、商品库存goods-vue-international
餐饮订单、外卖、堂食、排队、桌台、KDScatering-vue-international
会员、积分、等级、会员画像member-vue-international
传统 BI 报表bi-vue-international
自助 BI、数据集、数据源、工作空间qmbi-vue-international

完整职责不要在项目识别页重复维护,应回到仓库职责清单。

Vite 不是优先判断依据#

如果仓库里还存在 vite.config.*,通常按历史遗留或兼容配置读取。

国际前端当前开发和验证优先看仓库自己的 package.json scripts,通常是 rsbuild 或 qmai 构建链路。

输出结果应该包含什么#

AI 完成项目识别后,应能说清楚:

  • 当前项目是否命中 Qmai 信号。
  • 当前项目更像哪类系统角色。
  • 目标仓库判断的证据是什么。
  • 是否需要联查基座、组件库、公共页或打印项目。
  • 当前工作区缺少哪些跨仓上下文。

项目识别不是为了“多读文件”,而是为了让后续修改落在正确边界内。

Qmai 项目识别:先判断项目角色,再选择规则
https://blog.961121.xyz/posts/project-detection/
作者
LOOK
发布于
2026-05-28
许可协议
CC BY-NC-SA 4.0