@cloudbase/cli 2.8.0-beta.3 → 2.8.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/bin/tcb.js +2 -0
  2. package/lib/commands/cloudrun/base.js +2 -2
  3. package/lib/commands/index.js +0 -1
  4. package/lib/commands/utils.js +4 -10
  5. package/package.json +2 -8
  6. package/types/commands/index.d.ts +0 -1
  7. package/types/commands/utils.d.ts +0 -6
  8. package/types/utils/config.d.ts +0 -1
  9. package/.augment-guidelines +0 -119
  10. package/.claude/settings.local.json +0 -6
  11. package/.clinerules/cloudbase-rules.mdc +0 -119
  12. package/.cursor/rules/cloudbase-rules.mdc +0 -119
  13. package/.mcp.json +0 -11
  14. package/CLAUDE.md +0 -119
  15. package/lib/commands/ai/index.js +0 -172
  16. package/lib/utils/ai/banner.js +0 -88
  17. package/lib/utils/ai/config.js +0 -228
  18. package/lib/utils/ai/const.js +0 -107
  19. package/lib/utils/ai/ensureFiles.js +0 -26
  20. package/lib/utils/ai/envLocalManager.js +0 -144
  21. package/lib/utils/ai/router.js +0 -812
  22. package/lib/utils/ai/setup.js +0 -419
  23. package/rules/cloudbase-platform.mdc +0 -44
  24. package/rules/database.mdc +0 -25
  25. package/rules/miniprogram-development.mdc +0 -61
  26. package/rules/ui-design.mdc +0 -24
  27. package/rules/web-development.mdc +0 -44
  28. package/rules/workflows.mdc +0 -30
  29. package/specs/ai-cli-bootstrap/QWEN.md +0 -196
  30. package/specs/ai-cli-bootstrap/design.md +0 -185
  31. package/specs/ai-cli-bootstrap/requirements.md +0 -51
  32. package/specs/ai-cli-bootstrap/tasks.md +0 -70
  33. package/specs/ai-cli-bootstrap/technical-docs.md +0 -421
  34. package/types/commands/ai/index.d.ts +0 -23
  35. package/types/utils/ai/banner.d.ts +0 -2
  36. package/types/utils/ai/config.d.ts +0 -68
  37. package/types/utils/ai/const.d.ts +0 -238
  38. package/types/utils/ai/ensureFiles.d.ts +0 -1
  39. package/types/utils/ai/envLocalManager.d.ts +0 -23
  40. package/types/utils/ai/router.d.ts +0 -38
  41. package/types/utils/ai/setup.d.ts +0 -21
package/bin/tcb.js CHANGED
@@ -53,6 +53,8 @@ async function main() {
53
53
 
54
54
  // 输出版本信息
55
55
  console.log(chalk.gray(`CloudBase CLI ${pkg.version}`))
56
+ console.log(chalk.gray(`CloudBase Framework ${frameworkPkg.version}`))
57
+ console.log(chalk.gray(`Weda ${wedaPkg.version}`))
56
58
 
57
59
  const yargsParsedResult = yargsParser(process.argv.slice(2))
58
60
  const config = await getCloudBaseConfig(yargsParsedResult.configFile)
@@ -872,8 +872,8 @@ let CloudRunRunCommand = class CloudRunRunCommand extends common_1.Command {
872
872
  })
873
873
  .on('start', () => __awaiter(this, void 0, void 0, function* () {
874
874
  logger.info('Initializing server in watch mode. Changes in source files will trigger a restart.');
875
- if (!process.env.NODEMON_FIRST_START) {
876
- process.env.NODEMON_FIRST_START = 'true';
875
+ if (!nodemonInstance._firstStartDone) {
876
+ nodemonInstance._firstStartDone = true;
877
877
  this.checkAndRunTsc();
878
878
  this.openDebugApp(type, port, envId, agentId, openDebugPanel !== 'false');
879
879
  }
@@ -32,4 +32,3 @@ __exportStar(require("./fun"), exports);
32
32
  __exportStar(require("./runf"), exports);
33
33
  __exportStar(require("./cloudfunction"), exports);
34
34
  __exportStar(require("./cloudrun"), exports);
35
- __exportStar(require("./ai"), exports);
@@ -23,7 +23,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
23
23
  return (mod && mod.__esModule) ? mod : { "default": mod };
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getCloudbaserc = exports.upsertCloudbaserc = exports.rawFetchAccessToken = exports.fetchAccessToken = exports.getCredential = exports.trackCallback = exports.isDirectoryEmptyOrNotExists = exports.getPackageJsonName = exports.selectEnv = void 0;
26
+ exports.getCloudbaserc = exports.upsertCloudbaserc = exports.fetchAccessToken = exports.getCredential = exports.trackCallback = exports.isDirectoryEmptyOrNotExists = exports.getPackageJsonName = exports.selectEnv = void 0;
27
27
  const fs_1 = require("@cloudbase/iac-core/lib/src/fs");
28
28
  const signature_nodejs_1 = require("@cloudbase/signature-nodejs");
29
29
  const fs_extra_1 = require("fs-extra");
@@ -115,13 +115,6 @@ function getCredential(ctx, options) {
115
115
  }
116
116
  exports.getCredential = getCredential;
117
117
  function fetchAccessToken(params) {
118
- return __awaiter(this, void 0, void 0, function* () {
119
- const result = yield rawFetchAccessToken(params);
120
- return result === null || result === void 0 ? void 0 : result.access_token;
121
- });
122
- }
123
- exports.fetchAccessToken = fetchAccessToken;
124
- function rawFetchAccessToken(params) {
125
118
  return __awaiter(this, void 0, void 0, function* () {
126
119
  const { envId, secretId, secretKey, token } = params;
127
120
  const domain = `${envId}.api.tcloudbasegateway.com`;
@@ -151,10 +144,11 @@ function rawFetchAccessToken(params) {
151
144
  headers: Object.assign(Object.assign({}, requiredHeaders), { Authorization: `${authorization}, Timestamp=${timestamp}, Token=${token}` }),
152
145
  body: JSON.stringify(body)
153
146
  });
154
- return tokenResponse.json();
147
+ const res = yield tokenResponse.json();
148
+ return res === null || res === void 0 ? void 0 : res.access_token;
155
149
  });
156
150
  }
157
- exports.rawFetchAccessToken = rawFetchAccessToken;
151
+ exports.fetchAccessToken = fetchAccessToken;
158
152
  function upsertCloudbaserc(projectPath, inputData) {
159
153
  return __awaiter(this, void 0, void 0, function* () {
160
154
  const { envId } = inputData, rest = __rest(inputData, ["envId"]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/cli",
3
- "version": "2.8.0-beta.3",
3
+ "version": "2.8.0-beta.4",
4
4
  "description": "cli tool for cloudbase",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -32,14 +32,12 @@
32
32
  "license": "ISC",
33
33
  "dependencies": {
34
34
  "@cloudbase/cloud-api": "^0.5.5",
35
- "@cloudbase/cloudbase-mcp": "^1.8.17",
36
35
  "@cloudbase/framework-core": "^1.9.7",
37
36
  "@cloudbase/functions-framework": "1.16.0",
38
37
  "@cloudbase/iac-core": "0.0.3-alpha.11",
39
38
  "@cloudbase/lowcode-cli": "^0.22.2",
40
39
  "@cloudbase/manager-node": "4.3.3",
41
40
  "@cloudbase/toolbox": "^0.7.5",
42
- "@dotenvx/dotenvx": "^1.48.3",
43
41
  "address": "^1.1.2",
44
42
  "camelcase-keys": "^7.0.2",
45
43
  "chalk": "^2.4.2",
@@ -49,9 +47,7 @@
49
47
  "didyoumean": "^1.2.2",
50
48
  "enquirer": "^2.3.6",
51
49
  "execa": "^4.0.3",
52
- "figlet": "^1.7.0",
53
50
  "fs-extra": "^8.1.0",
54
- "gradient-string": "^2.0.2",
55
51
  "https-proxy-agent": "^5.0.1",
56
52
  "inquirer": "^6.5.0",
57
53
  "json-schema-to-typescript": "^14.0.5",
@@ -74,8 +70,7 @@
74
70
  "update-notifier": "^4.0.0",
75
71
  "xdg-basedir": "^4.0.0",
76
72
  "yargs": "^16.2.0",
77
- "yargs-parser": "^21.0.1",
78
- "zod": "^4.0.13"
73
+ "yargs-parser": "^21.0.1"
79
74
  },
80
75
  "devDependencies": {
81
76
  "@types/fs-extra": "^11.0.4",
@@ -86,7 +81,6 @@
86
81
  "@types/node-fetch": "^2.5.4",
87
82
  "@types/react": "^17.0.37",
88
83
  "@types/semver": "^7.3.9",
89
- "@types/unzipper": "^0.10.11",
90
84
  "@types/webpack-dev-server": "^3.11.1",
91
85
  "@typescript-eslint/eslint-plugin": "^4.8.1",
92
86
  "@typescript-eslint/parser": "^4.8.1",
@@ -16,4 +16,3 @@ export * from './fun';
16
16
  export * from './runf';
17
17
  export * from './cloudfunction';
18
18
  export * from './cloudrun';
19
- export * from './ai';
@@ -15,12 +15,6 @@ export declare function fetchAccessToken(params: {
15
15
  secretKey: string;
16
16
  token?: string;
17
17
  }): Promise<any>;
18
- export declare function rawFetchAccessToken(params: {
19
- envId: string;
20
- secretId: string;
21
- secretKey: string;
22
- token?: string;
23
- }): Promise<any>;
24
18
  export declare function upsertCloudbaserc(projectPath: string, inputData: {
25
19
  envId?: string;
26
20
  [key: string]: any;
@@ -21,7 +21,6 @@ export interface IPrivateSettings {
21
21
  }
22
22
  export interface ICloudBaseRcSettings extends ICloudBaseConfig {
23
23
  privateSettings?: IPrivateSettings;
24
- ai?: any;
25
24
  }
26
25
  export declare const getCloudBaseConfig: (configPath?: string) => Promise<ICloudBaseRcSettings>;
27
26
  export {};
@@ -1,119 +0,0 @@
1
- ---
2
- cloudbaseAIVersion:1.8.20
3
- description: CloudBase AI 开发规则索引 - 防止不同开发场景的规则互相干扰
4
- globs:
5
- alwaysApply: true
6
- ---
7
-
8
- # AI 开发人机协同规则索引
9
-
10
- ## 核心行为规则
11
- 0. 你擅长调用合适的工具来完成完成各项任务
12
- 1. 你会在对话输出完毕后选择适当的时机向用户提出询问,例如是否需要添加后端能力,是否打开预览,是否需要部署等
13
- 2. 你首先会阅读当前项目的 README.md,遵照当前项目的说明进行开发,如果不存在则会在生成项目后生成一个 README.md 文件
14
- 3. 开发的时候,默认就在当前目录下产出所有项目代码,先检查当前目录的文件
15
- 4. 开发预览的时候,如果本身项目有依赖后端数据库集合和云函数,可以优先部署后端然后再预览前端
16
- 5. 交互式反馈规则:在需求不明确时主动与用户对话澄清,优先使用自动化工具 interactiveDialog 完成配置。执行高风险操作前必须使用 interactiveDialog 获得用户确认。保持消息简洁并用emoji标记状态。
17
- 6. 如果涉及到实时通信相关的例如实时对战等,可以使用云开发的实时数据库 watch 能力
18
-
19
- ## 工作流
20
-
21
- <workflow>
22
- 0. 请注意!必须遵守以下的规则,每个环节完成后都需要由我进行确认后才可进行下一个环节;
23
- 1. 如果你判断我的输入提出的是一个新需求,可以按照下面的标准软件工程的方式独立开展工作,需要时才向我询问,可以采用 interactiveDialog 工具来收集
24
- 2. 每当我输入新的需求的时候,为了规范需求质量和验收标准,你首先会搞清楚问题和需求,然后再进入下一阶段
25
- 3. 需求文档和验收标准设计:首先完成需求的设计,按照 EARS 简易需求语法方法来描述,保存在 `specs/spec_name/requirements.md` 中,跟我进行确认,最终确认清楚后,需求定稿,然后再进入下一阶段,参考格式如下
26
-
27
- ```markdown
28
- # 需求文档
29
-
30
- ## 介绍
31
-
32
- 需求描述
33
-
34
- ## 需求
35
-
36
- ### 需求 1 - 需求名称
37
-
38
- **用户故事:** 用户故事内容
39
-
40
- #### 验收标准
41
-
42
- 1. 采用 ERAS 描述的子句 While <可选前置条件>, when <可选触发器>, the <系统名称> shall <系统响应>,例如 When 选择"静音"时,笔记本电脑应当抑制所有音频输出。
43
- 2. ...
44
- ...
45
- ```
46
- 4. 技术方案设计: 在完成需求的设计之后,你会根据当前的技术架构和前面确认好的需求,进行需求的技术方案设计,保存在 `specs/spec_name/design.md` 中,精简但是能够准确的描述技术的架构(例如架构、技术栈、技术选型、数据库/接口设计、测试策略、安全性),必要时可以用 mermaid 来绘图,跟我确认清楚后,然后再进入下一阶段
47
- 5. 任务拆分:在完成技术方案设计后,你会根据需求文档和技术方案,细化具体要做的事情,保存在`specs/spec_name/tasks.md` 中, 跟我确认清楚后,然后再进入下一阶段,开始正式执行任务,同时需要及时更新任务的状态,执行的时候尽可能独立自主运行,保证效率和质量
48
-
49
- 任务参考格式如下
50
-
51
- ``` markdown
52
- # 实施计划
53
-
54
- - [ ] 1. 任务信息
55
- - 具体要做的事情
56
- - ...
57
- - _需求: 相关的需求点的编号
58
-
59
- ```
60
- </workflow>
61
-
62
- ## 专业领域规则文件
63
-
64
- **重要:根据具体的开发场景,AI 必须参考对应的规则文件,避免不同场景的规则互相干扰**
65
-
66
- ### rules/web-development.mdc
67
- 描述前端+云开发 CloudBase 项目开发的专业规则,包含:
68
- - Web 项目结构和工程化配置
69
- - 静态托管部署流程
70
- - Web SDK 使用和认证方式
71
- - 适用于纯 Web 项目开发时参考
72
-
73
- ### rules/miniprogram-development.mdc
74
- 描述微信小程序开发的专业规则,包含:
75
- - 小程序项目结构和配置
76
- - 微信云开发能力集成
77
- - 小程序特有的 API 和权限处理
78
- - 适用于微信小程序开发时参考
79
-
80
- ### rules/cloudbase-platform.mdc
81
- 描述 CloudBase 平台的核心知识,包含:
82
- - 云开发环境和认证
83
- - 云函数、数据库、存储等服务
84
- - 数据模型和权限管理
85
- - 控制台管理页面链接
86
- - 适用于所有使用 CloudBase 平台的项目
87
-
88
- ### rules/workflows.mdc
89
- 描述开发工作流程,包含:
90
- - 部署流程(云函数、静态托管)
91
- - 素材下载和知识库查询
92
- - 文档和配置文件生成规则
93
- - MCP 接口调用规范
94
- - 适用于项目开发的各个阶段
95
-
96
- ### rules/database.mdc
97
- 描述云开发 CloudBase 数据库操作的专业规则,包含:
98
- - CloudBase 数据库操作注意事项
99
- - 数据库权限管理
100
- - 数据更新和错误处理
101
- - 适用于涉及数据库操作的项目
102
-
103
- ### rules/ui-design.mdc
104
- 描述web/小程序等页面设计和 UI 规范,包含:
105
- - 高保真原型设计流程
106
- - UI 设计规范和工具选择
107
- - 前端样式处理
108
- - 适用于需要设计界面的项目
109
-
110
- ## 使用指导
111
- - **Web 项目开发**:主要参考 `rules/web-development.mdc` + `rules/cloudbase-platform.mdc` + `rules/workflows.mdc`
112
- - **微信小程序开发**:主要参考 `rules/miniprogram-development.mdc` + `rules/cloudbase-platform.mdc` + `rules/workflows.mdc`
113
- - **数据库相关**:额外参考 `rules/database.mdc`
114
- - **UI 设计需求**:额外参考 `rules/ui-design.mdc`
115
-
116
- **重要提醒:开发微信小程序时,严禁参考 Web SDK 的认证方式,必须使用小程序专用的 API 和云开发方式!**
117
-
118
-
119
-
@@ -1,6 +0,0 @@
1
- {
2
- "enabledMcpjsonServers": [
3
- "cloudbase"
4
- ],
5
- "enableAllProjectMcpServers": true
6
- }
@@ -1,119 +0,0 @@
1
- ---
2
- cloudbaseAIVersion:1.8.20
3
- description: CloudBase AI 开发规则索引 - 防止不同开发场景的规则互相干扰
4
- globs:
5
- alwaysApply: true
6
- ---
7
-
8
- # AI 开发人机协同规则索引
9
-
10
- ## 核心行为规则
11
- 0. 你擅长调用合适的工具来完成完成各项任务
12
- 1. 你会在对话输出完毕后选择适当的时机向用户提出询问,例如是否需要添加后端能力,是否打开预览,是否需要部署等
13
- 2. 你首先会阅读当前项目的 README.md,遵照当前项目的说明进行开发,如果不存在则会在生成项目后生成一个 README.md 文件
14
- 3. 开发的时候,默认就在当前目录下产出所有项目代码,先检查当前目录的文件
15
- 4. 开发预览的时候,如果本身项目有依赖后端数据库集合和云函数,可以优先部署后端然后再预览前端
16
- 5. 交互式反馈规则:在需求不明确时主动与用户对话澄清,优先使用自动化工具 interactiveDialog 完成配置。执行高风险操作前必须使用 interactiveDialog 获得用户确认。保持消息简洁并用emoji标记状态。
17
- 6. 如果涉及到实时通信相关的例如实时对战等,可以使用云开发的实时数据库 watch 能力
18
-
19
- ## 工作流
20
-
21
- <workflow>
22
- 0. 请注意!必须遵守以下的规则,每个环节完成后都需要由我进行确认后才可进行下一个环节;
23
- 1. 如果你判断我的输入提出的是一个新需求,可以按照下面的标准软件工程的方式独立开展工作,需要时才向我询问,可以采用 interactiveDialog 工具来收集
24
- 2. 每当我输入新的需求的时候,为了规范需求质量和验收标准,你首先会搞清楚问题和需求,然后再进入下一阶段
25
- 3. 需求文档和验收标准设计:首先完成需求的设计,按照 EARS 简易需求语法方法来描述,保存在 `specs/spec_name/requirements.md` 中,跟我进行确认,最终确认清楚后,需求定稿,然后再进入下一阶段,参考格式如下
26
-
27
- ```markdown
28
- # 需求文档
29
-
30
- ## 介绍
31
-
32
- 需求描述
33
-
34
- ## 需求
35
-
36
- ### 需求 1 - 需求名称
37
-
38
- **用户故事:** 用户故事内容
39
-
40
- #### 验收标准
41
-
42
- 1. 采用 ERAS 描述的子句 While <可选前置条件>, when <可选触发器>, the <系统名称> shall <系统响应>,例如 When 选择"静音"时,笔记本电脑应当抑制所有音频输出。
43
- 2. ...
44
- ...
45
- ```
46
- 4. 技术方案设计: 在完成需求的设计之后,你会根据当前的技术架构和前面确认好的需求,进行需求的技术方案设计,保存在 `specs/spec_name/design.md` 中,精简但是能够准确的描述技术的架构(例如架构、技术栈、技术选型、数据库/接口设计、测试策略、安全性),必要时可以用 mermaid 来绘图,跟我确认清楚后,然后再进入下一阶段
47
- 5. 任务拆分:在完成技术方案设计后,你会根据需求文档和技术方案,细化具体要做的事情,保存在`specs/spec_name/tasks.md` 中, 跟我确认清楚后,然后再进入下一阶段,开始正式执行任务,同时需要及时更新任务的状态,执行的时候尽可能独立自主运行,保证效率和质量
48
-
49
- 任务参考格式如下
50
-
51
- ``` markdown
52
- # 实施计划
53
-
54
- - [ ] 1. 任务信息
55
- - 具体要做的事情
56
- - ...
57
- - _需求: 相关的需求点的编号
58
-
59
- ```
60
- </workflow>
61
-
62
- ## 专业领域规则文件
63
-
64
- **重要:根据具体的开发场景,AI 必须参考对应的规则文件,避免不同场景的规则互相干扰**
65
-
66
- ### rules/web-development.mdc
67
- 描述前端+云开发 CloudBase 项目开发的专业规则,包含:
68
- - Web 项目结构和工程化配置
69
- - 静态托管部署流程
70
- - Web SDK 使用和认证方式
71
- - 适用于纯 Web 项目开发时参考
72
-
73
- ### rules/miniprogram-development.mdc
74
- 描述微信小程序开发的专业规则,包含:
75
- - 小程序项目结构和配置
76
- - 微信云开发能力集成
77
- - 小程序特有的 API 和权限处理
78
- - 适用于微信小程序开发时参考
79
-
80
- ### rules/cloudbase-platform.mdc
81
- 描述 CloudBase 平台的核心知识,包含:
82
- - 云开发环境和认证
83
- - 云函数、数据库、存储等服务
84
- - 数据模型和权限管理
85
- - 控制台管理页面链接
86
- - 适用于所有使用 CloudBase 平台的项目
87
-
88
- ### rules/workflows.mdc
89
- 描述开发工作流程,包含:
90
- - 部署流程(云函数、静态托管)
91
- - 素材下载和知识库查询
92
- - 文档和配置文件生成规则
93
- - MCP 接口调用规范
94
- - 适用于项目开发的各个阶段
95
-
96
- ### rules/database.mdc
97
- 描述云开发 CloudBase 数据库操作的专业规则,包含:
98
- - CloudBase 数据库操作注意事项
99
- - 数据库权限管理
100
- - 数据更新和错误处理
101
- - 适用于涉及数据库操作的项目
102
-
103
- ### rules/ui-design.mdc
104
- 描述web/小程序等页面设计和 UI 规范,包含:
105
- - 高保真原型设计流程
106
- - UI 设计规范和工具选择
107
- - 前端样式处理
108
- - 适用于需要设计界面的项目
109
-
110
- ## 使用指导
111
- - **Web 项目开发**:主要参考 `rules/web-development.mdc` + `rules/cloudbase-platform.mdc` + `rules/workflows.mdc`
112
- - **微信小程序开发**:主要参考 `rules/miniprogram-development.mdc` + `rules/cloudbase-platform.mdc` + `rules/workflows.mdc`
113
- - **数据库相关**:额外参考 `rules/database.mdc`
114
- - **UI 设计需求**:额外参考 `rules/ui-design.mdc`
115
-
116
- **重要提醒:开发微信小程序时,严禁参考 Web SDK 的认证方式,必须使用小程序专用的 API 和云开发方式!**
117
-
118
-
119
-
@@ -1,119 +0,0 @@
1
- ---
2
- cloudbaseAIVersion:1.8.20
3
- description: CloudBase AI 开发规则索引 - 防止不同开发场景的规则互相干扰
4
- globs:
5
- alwaysApply: true
6
- ---
7
-
8
- # AI 开发人机协同规则索引
9
-
10
- ## 核心行为规则
11
- 0. 你擅长调用合适的工具来完成完成各项任务
12
- 1. 你会在对话输出完毕后选择适当的时机向用户提出询问,例如是否需要添加后端能力,是否打开预览,是否需要部署等
13
- 2. 你首先会阅读当前项目的 README.md,遵照当前项目的说明进行开发,如果不存在则会在生成项目后生成一个 README.md 文件
14
- 3. 开发的时候,默认就在当前目录下产出所有项目代码,先检查当前目录的文件
15
- 4. 开发预览的时候,如果本身项目有依赖后端数据库集合和云函数,可以优先部署后端然后再预览前端
16
- 5. 交互式反馈规则:在需求不明确时主动与用户对话澄清,优先使用自动化工具 interactiveDialog 完成配置。执行高风险操作前必须使用 interactiveDialog 获得用户确认。保持消息简洁并用emoji标记状态。
17
- 6. 如果涉及到实时通信相关的例如实时对战等,可以使用云开发的实时数据库 watch 能力
18
-
19
- ## 工作流
20
-
21
- <workflow>
22
- 0. 请注意!必须遵守以下的规则,每个环节完成后都需要由我进行确认后才可进行下一个环节;
23
- 1. 如果你判断我的输入提出的是一个新需求,可以按照下面的标准软件工程的方式独立开展工作,需要时才向我询问,可以采用 interactiveDialog 工具来收集
24
- 2. 每当我输入新的需求的时候,为了规范需求质量和验收标准,你首先会搞清楚问题和需求,然后再进入下一阶段
25
- 3. 需求文档和验收标准设计:首先完成需求的设计,按照 EARS 简易需求语法方法来描述,跟我进行确认,最终确认清楚后,需求定稿,然后再进入下一阶段,保存在 `specs/spec_name/requirements.md` 中,参考格式如下
26
-
27
- ```markdown
28
- # 需求文档
29
-
30
- ## 介绍
31
-
32
- 需求描述
33
-
34
- ## 需求
35
-
36
- ### 需求 1 - 需求名称
37
-
38
- **用户故事:** 用户故事内容
39
-
40
- #### 验收标准
41
-
42
- 1. 采用 ERAS 描述的子句 While <可选前置条件>, when <可选触发器>, the <系统名称> shall <系统响应>,例如 When 选择"静音"时,笔记本电脑应当抑制所有音频输出。
43
- 2. ...
44
- ...
45
- ```
46
- 4. 技术方案设计: 在完成需求的设计之后,你会根据当前的技术架构和前面确认好的需求,进行需求的技术方案设计,精简但是能够准确的描述技术的架构(例如架构、技术栈、技术选型、数据库/接口设计、测试策略、安全性),必要时可以用 mermaid 来绘图,跟我确认清楚后,保存在 `specs/spec_name/design.md` 中,然后再进入下一阶段
47
- 5. 任务拆分:在完成技术方案设计后,你会根据需求文档和技术方案,细化具体要做的事情,跟我确认清楚后,,保存在`specs/spec_name/tasks.md` 中, 然后再进入下一阶段,开始正式执行任务,同时需要及时更新任务的状态,执行的时候尽可能独立自主运行,保证效率和质量
48
-
49
- 任务参考格式如下
50
-
51
- ``` markdown
52
- # 实施计划
53
-
54
- - [ ] 1. 任务信息
55
- - 具体要做的事情
56
- - ...
57
- - _需求: 相关的需求点的编号
58
-
59
- ```
60
- </workflow>
61
-
62
- ## 专业领域规则文件
63
-
64
- **重要:根据具体的开发场景,AI 必须参考对应的规则文件,避免不同场景的规则互相干扰**
65
-
66
- ### rules/web-development.mdc
67
- 描述前端+云开发 CloudBase 项目开发的专业规则,包含:
68
- - Web 项目结构和工程化配置
69
- - 静态托管部署流程
70
- - Web SDK 使用和认证方式
71
- - 适用于纯 Web 项目开发时参考
72
-
73
- ### rules/miniprogram-development.mdc
74
- 描述微信小程序开发的专业规则,包含:
75
- - 小程序项目结构和配置
76
- - 微信云开发能力集成
77
- - 小程序特有的 API 和权限处理
78
- - 适用于微信小程序开发时参考
79
-
80
- ### rules/cloudbase-platform.mdc
81
- 描述 CloudBase 平台的核心知识,包含:
82
- - 云开发环境和认证
83
- - 云函数、数据库、存储等服务
84
- - 数据模型和权限管理
85
- - 控制台管理页面链接
86
- - 适用于所有使用 CloudBase 平台的项目
87
-
88
- ### rules/workflows.mdc
89
- 描述开发工作流程,包含:
90
- - 部署流程(云函数、静态托管)
91
- - 素材下载和知识库查询
92
- - 文档和配置文件生成规则
93
- - MCP 接口调用规范
94
- - 适用于项目开发的各个阶段
95
-
96
- ### rules/database.mdc
97
- 描述云开发 CloudBase 数据库操作的专业规则,包含:
98
- - CloudBase 数据库操作注意事项
99
- - 数据库权限管理
100
- - 数据更新和错误处理
101
- - 适用于涉及数据库操作的项目
102
-
103
- ### rules/ui-design.mdc
104
- 描述web/小程序等页面设计和 UI 规范,包含:
105
- - 高保真原型设计流程
106
- - UI 设计规范和工具选择
107
- - 前端样式处理
108
- - 适用于需要设计界面的项目
109
-
110
- ## 使用指导
111
- - **Web 项目开发**:主要参考 `rules/web-development.mdc` + `rules/cloudbase-platform.mdc` + `rules/workflows.mdc`
112
- - **微信小程序开发**:主要参考 `rules/miniprogram-development.mdc` + `rules/cloudbase-platform.mdc` + `rules/workflows.mdc`
113
- - **数据库相关**:额外参考 `rules/database.mdc`
114
- - **UI 设计需求**:额外参考 `rules/ui-design.mdc`
115
-
116
- **重要提醒:开发微信小程序时,严禁参考 Web SDK 的认证方式,必须使用小程序专用的 API 和云开发方式!**
117
-
118
-
119
-
package/.mcp.json DELETED
@@ -1,11 +0,0 @@
1
- {
2
- "mcpServers": {
3
- "cloudbase": {
4
- "command": "npx",
5
- "args": [
6
- "-y",
7
- "@cloudbase/cloudbase-mcp@latest"
8
- ]
9
- }
10
- }
11
- }
package/CLAUDE.md DELETED
@@ -1,119 +0,0 @@
1
- ---
2
- cloudbaseAIVersion:1.8.20
3
- description: CloudBase AI 开发规则索引 - 防止不同开发场景的规则互相干扰
4
- globs:
5
- alwaysApply: true
6
- ---
7
-
8
- # AI 开发人机协同规则索引
9
-
10
- ## 核心行为规则
11
- 0. 你擅长调用合适的工具来完成完成各项任务
12
- 1. 你会在对话输出完毕后选择适当的时机向用户提出询问,例如是否需要添加后端能力,是否打开预览,是否需要部署等
13
- 2. 你首先会阅读当前项目的 README.md,遵照当前项目的说明进行开发,如果不存在则会在生成项目后生成一个 README.md 文件
14
- 3. 开发的时候,默认就在当前目录下产出所有项目代码,先检查当前目录的文件
15
- 4. 开发预览的时候,如果本身项目有依赖后端数据库集合和云函数,可以优先部署后端然后再预览前端
16
- 5. 交互式反馈规则:在需求不明确时主动与用户对话澄清,优先使用自动化工具 interactiveDialog 完成配置。执行高风险操作前必须使用 interactiveDialog 获得用户确认。保持消息简洁并用emoji标记状态。
17
- 6. 如果涉及到实时通信相关的例如实时对战等,可以使用云开发的实时数据库 watch 能力
18
-
19
- ## 工作流
20
-
21
- <workflow>
22
- 0. 请注意!必须遵守以下的规则,每个环节完成后都需要由我进行确认后才可进行下一个环节;
23
- 1. 如果你判断我的输入提出的是一个新需求,可以按照下面的标准软件工程的方式独立开展工作,需要时才向我询问,可以采用 interactiveDialog 工具来收集
24
- 2. 每当我输入新的需求的时候,为了规范需求质量和验收标准,你首先会搞清楚问题和需求,然后再进入下一阶段
25
- 3. 需求文档和验收标准设计:首先完成需求的设计,按照 EARS 简易需求语法方法来描述,跟我进行确认,最终确认清楚后,需求定稿,然后再进入下一阶段,保存在 `specs/spec_name/requirements.md` 中,参考格式如下
26
-
27
- ```markdown
28
- # 需求文档
29
-
30
- ## 介绍
31
-
32
- 需求描述
33
-
34
- ## 需求
35
-
36
- ### 需求 1 - 需求名称
37
-
38
- **用户故事:** 用户故事内容
39
-
40
- #### 验收标准
41
-
42
- 1. 采用 ERAS 描述的子句 While <可选前置条件>, when <可选触发器>, the <系统名称> shall <系统响应>,例如 When 选择"静音"时,笔记本电脑应当抑制所有音频输出。
43
- 2. ...
44
- ...
45
- ```
46
- 4. 技术方案设计: 在完成需求的设计之后,你会根据当前的技术架构和前面确认好的需求,进行需求的技术方案设计,精简但是能够准确的描述技术的架构(例如架构、技术栈、技术选型、数据库/接口设计、测试策略、安全性),必要时可以用 mermaid 来绘图,跟我确认清楚后,保存在 `specs/spec_name/design.md` 中,然后再进入下一阶段
47
- 5. 任务拆分:在完成技术方案设计后,你会根据需求文档和技术方案,细化具体要做的事情,跟我确认清楚后,,保存在`specs/spec_name/tasks.md` 中, 然后再进入下一阶段,开始正式执行任务,同时需要及时更新任务的状态,执行的时候尽可能独立自主运行,保证效率和质量
48
-
49
- 任务参考格式如下
50
-
51
- ``` markdown
52
- # 实施计划
53
-
54
- - [ ] 1. 任务信息
55
- - 具体要做的事情
56
- - ...
57
- - _需求: 相关的需求点的编号
58
-
59
- ```
60
- </workflow>
61
-
62
- ## 专业领域规则文件
63
-
64
- **重要:根据具体的开发场景,AI 必须参考对应的规则文件,避免不同场景的规则互相干扰**
65
-
66
- ### rules/web-development.mdc
67
- 描述前端+云开发 CloudBase 项目开发的专业规则,包含:
68
- - Web 项目结构和工程化配置
69
- - 静态托管部署流程
70
- - Web SDK 使用和认证方式
71
- - 适用于纯 Web 项目开发时参考
72
-
73
- ### rules/miniprogram-development.mdc
74
- 描述微信小程序开发的专业规则,包含:
75
- - 小程序项目结构和配置
76
- - 微信云开发能力集成
77
- - 小程序特有的 API 和权限处理
78
- - 适用于微信小程序开发时参考
79
-
80
- ### rules/cloudbase-platform.mdc
81
- 描述 CloudBase 平台的核心知识,包含:
82
- - 云开发环境和认证
83
- - 云函数、数据库、存储等服务
84
- - 数据模型和权限管理
85
- - 控制台管理页面链接
86
- - 适用于所有使用 CloudBase 平台的项目
87
-
88
- ### rules/workflows.mdc
89
- 描述开发工作流程,包含:
90
- - 部署流程(云函数、静态托管)
91
- - 素材下载和知识库查询
92
- - 文档和配置文件生成规则
93
- - MCP 接口调用规范
94
- - 适用于项目开发的各个阶段
95
-
96
- ### rules/database.mdc
97
- 描述云开发 CloudBase 数据库操作的专业规则,包含:
98
- - CloudBase 数据库操作注意事项
99
- - 数据库权限管理
100
- - 数据更新和错误处理
101
- - 适用于涉及数据库操作的项目
102
-
103
- ### rules/ui-design.mdc
104
- 描述web/小程序等页面设计和 UI 规范,包含:
105
- - 高保真原型设计流程
106
- - UI 设计规范和工具选择
107
- - 前端样式处理
108
- - 适用于需要设计界面的项目
109
-
110
- ## 使用指导
111
- - **Web 项目开发**:主要参考 `rules/web-development.mdc` + `rules/cloudbase-platform.mdc` + `rules/workflows.mdc`
112
- - **微信小程序开发**:主要参考 `rules/miniprogram-development.mdc` + `rules/cloudbase-platform.mdc` + `rules/workflows.mdc`
113
- - **数据库相关**:额外参考 `rules/database.mdc`
114
- - **UI 设计需求**:额外参考 `rules/ui-design.mdc`
115
-
116
- **重要提醒:开发微信小程序时,严禁参考 Web SDK 的认证方式,必须使用小程序专用的 API 和云开发方式!**
117
-
118
-
119
-