@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
@@ -1,421 +0,0 @@
1
- # AI 开发套件
2
-
3
- AI 开发套件是云开发为用户提供的 AI 辅助开发能力,用户可以通过云开发提供的 CLI 工具快速启动和配置主流 AI 编程工具,如 Claude Code、OpenAI Codex、Gemini CLI 等。AI 开发套件内置云开发全栈能力,支持生成、部署和托管全栈 Web 应用与小程序、数据库和后端服务。
4
-
5
- ## 命令总览
6
-
7
- ```bash
8
- tcb ai [options] -- [agent-args]
9
- ```
10
-
11
- ## 路径说明
12
-
13
- * `options` 为 AI 开发套件的配置选项,如 `-a claude`、`-e my-env` 等。
14
- * `agent-args` 为目标 AI CLI 工具的原生参数,通过 `--` 分隔符透传。
15
-
16
- ⚠️ 注意事项
17
-
18
- * `--` 分隔符后的所有参数将原样传递给目标 AI CLI 工具,请确保参数格式正确。
19
- * 首次使用需要运行 `tcb ai --setup` 进行配置。
20
- * 确保已安装目标 AI CLI 工具,如 Claude Code、OpenAI CLI 等。
21
-
22
- ## 快速开始
23
-
24
- ### 1. 配置 AI 开发套件
25
-
26
- 首次使用需要配置 AI 开发套件:
27
-
28
- ```bash
29
- # 启动配置向导
30
- tcb ai --setup
31
- ```
32
-
33
- 配置向导将引导您:
34
- - 选择默认的 AI 工具(Claude Code、OpenAI Codex、Gemini CLI)
35
- - 配置 API 密钥和基础 URL
36
- - 设置云开发环境 ID
37
- - 选择模型和协议类型
38
-
39
- ### 2. 启动 AI 工具
40
-
41
- 配置完成后,可以直接启动 AI 工具:
42
-
43
- ```bash
44
- # 使用默认配置启动 Claude Code
45
- tcb ai -a claude -- --continue
46
-
47
- # 指定环境 ID 启动
48
- tcb ai -a claude -e my-env -- --model=claude-3.5-sonnet
49
-
50
- # 查看帮助信息
51
- tcb ai -a claude -- --help
52
- ```
53
-
54
- ## 核心功能
55
-
56
- ### 启动 AI 工具
57
-
58
- 您可以使用下面的命令启动配置好的 AI 工具:
59
-
60
- ```bash
61
- tcb ai -a <agent> [options] -- [agent-args]
62
- ```
63
-
64
- **参数说明:**
65
- - `-a, --agent <name>`: 指定 AI 工具名称(claude/codex/gemini)
66
- - `-e, --envId <id>`: 指定云开发环境 ID
67
- - `--`: 参数分隔符,后面的参数将透传给 AI 工具
68
-
69
- **使用示例:**
70
- ```bash
71
- # 启动 Claude Code 并继续上次会话
72
- tcb ai -a claude -- --continue
73
-
74
- # 启动 OpenAI Codex 并指定模型
75
- tcb ai -a codex -- --model=gpt-4
76
-
77
- # 启动 Gemini CLI 并设置最大 token
78
- tcb ai -a gemini -- --max-tokens=4096
79
- ```
80
-
81
- ### 配置管理
82
-
83
- #### 查看当前配置
84
-
85
- ```bash
86
- tcb ai --config
87
- ```
88
-
89
- 显示当前配置信息,包括:
90
- - 默认 AI 工具
91
- - API 密钥状态
92
- - 环境 ID 配置
93
- - 模型和协议设置
94
-
95
- #### 重置配置
96
-
97
- ```bash
98
- tcb ai --reset
99
- ```
100
-
101
- 清除所有配置信息,恢复到初始状态。
102
-
103
- #### 交互式配置
104
-
105
- ```bash
106
- tcb ai --setup
107
- ```
108
-
109
- 启动交互式配置向导,引导您完成:
110
- - AI 工具选择和配置
111
- - API 密钥设置
112
- - 云开发环境绑定
113
- - 协议和模型选择
114
-
115
- ## 支持的 AI 工具
116
-
117
- ### Claude Code
118
-
119
- Claude Code 是 Anthropic 推出的 AI 编程助手,支持自然语言编程和代码生成。
120
-
121
- **安装命令:**
122
- ```bash
123
- npm install -g @anthropic-ai/claude-code
124
- ```
125
-
126
- **配置要求:**
127
- - API 密钥:`ANTHROPIC_API_KEY`
128
- - 基础 URL:`https://api.anthropic.com`
129
- - 支持模型:claude-3.5-sonnet, claude-3-opus 等
130
-
131
- **使用示例:**
132
- ```bash
133
- # 启动 Claude Code
134
- tcb ai -a claude -- --continue
135
-
136
- # 指定模型和参数
137
- tcb ai -a claude -- --model=claude-3.5-sonnet --max-tokens=4096
138
- ```
139
-
140
- ### OpenAI Codex
141
-
142
- OpenAI Codex 是 OpenAI 的代码生成 AI,基于 GPT 模型优化。
143
-
144
- **安装命令:**
145
- ```bash
146
- npm install -g openai
147
- ```
148
-
149
- **配置要求:**
150
- - API 密钥:`OPENAI_API_KEY`
151
- - 基础 URL:`https://api.openai.com`
152
- - 支持模型:gpt-4, gpt-3.5-turbo 等
153
-
154
- **使用示例:**
155
- ```bash
156
- # 启动 OpenAI Codex
157
- tcb ai -a codex -- --model=gpt-4
158
-
159
- # 设置温度和最大 token
160
- tcb ai -a codex -- --temperature=0.7 --max-tokens=2048
161
- ```
162
-
163
- ### Gemini CLI
164
-
165
- Gemini CLI 是 Google 的 AI 编程工具,基于 Gemini 模型。
166
-
167
- **安装命令:**
168
- ```bash
169
- npm install -g @google/generative-ai
170
- ```
171
-
172
- **配置要求:**
173
- - API 密钥:`GOOGLE_API_KEY`
174
- - 基础 URL:`https://generativelanguage.googleapis.com`
175
- - 支持模型:gemini-2.0-flash, gemini-2.0-pro 等
176
-
177
- **使用示例:**
178
- ```bash
179
- # 启动 Gemini CLI
180
- tcb ai -a gemini -- --model=gemini-2.0-pro
181
-
182
- # 设置安全过滤
183
- tcb ai -a gemini -- --safety-level=BLOCK_MEDIUM_AND_ABOVE
184
- ```
185
-
186
- ## 协议适配
187
-
188
- ### Anthropic 协议
189
-
190
- 支持 Anthropic 协议的 AI 工具可以直接透传:
191
-
192
- ```bash
193
- # Claude Code(原生支持)
194
- tcb ai -a claude -- --continue
195
-
196
- # Kimi(支持 Anthropic 协议)
197
- tcb ai -a kimi -- --model=claude-3.5-sonnet
198
-
199
- # K2(支持 Anthropic 协议)
200
- tcb ai -a k2 -- --max-tokens=4096
201
- ```
202
-
203
- ### OpenAI 协议
204
-
205
- 支持 OpenAI 协议的 AI 工具通过 claude-code-router 转发:
206
-
207
- ```bash
208
- # 自动检测并安装 claude-code-router
209
- tcb ai -a openai -- --model=gpt-4
210
-
211
- # 自定义 OpenAI 兼容服务
212
- tcb ai -a custom -- --base-url=https://api.example.com
213
- ```
214
-
215
- ## 云开发集成
216
-
217
- ### 环境变量注入
218
-
219
- AI 开发套件会自动注入云开发相关环境变量:
220
-
221
- ```bash
222
- # 自动注入环境 ID
223
- tcb ai -a claude -e my-env -- --continue
224
-
225
- # 环境变量示例
226
- CLOUDBASE_ENV_ID=my-env
227
- CLOUDBASE_REGION=ap-shanghai
228
- ```
229
-
230
- ### 模板下载
231
-
232
- 支持下载云开发项目模板:
233
-
234
- ```bash
235
- # 下载 React + CloudBase 模板
236
- tcb ai --template react
237
-
238
- # 下载小程序模板
239
- tcb ai --template miniprogram
240
-
241
- # 下载 Vue + CloudBase 模板
242
- tcb ai --template vue
243
- ```
244
-
245
- **支持的模板类型:**
246
- - `rules`: AI 编辑器配置模板
247
- - `react`: React + CloudBase 全栈应用
248
- - `vue`: Vue + CloudBase 全栈应用
249
- - `miniprogram`: 微信小程序 + 云开发
250
- - `uniapp`: UniApp + CloudBase 跨端应用
251
-
252
- ### 自动部署
253
-
254
- AI 工具生成的代码可以直接部署到云开发:
255
-
256
- ```bash
257
- # 生成并部署 React 应用
258
- tcb ai -a claude -e my-env -- --prompt="创建一个 React 购物车应用"
259
-
260
- # 部署到云函数
261
- tcb ai -a claude -e my-env -- --prompt="创建一个用户注册云函数"
262
- ```
263
-
264
- ## 高级配置
265
-
266
- ### 自定义 Provider
267
-
268
- 支持配置自定义 AI 服务提供商:
269
-
270
- ```json
271
- {
272
- "defaultAgent": "custom",
273
- "agents": {
274
- "custom": {
275
- "command": "claude",
276
- "apiKey": "sk-xxx",
277
- "baseUrl": "https://api.custom-ai.com",
278
- "model": "custom-model"
279
- }
280
- }
281
- }
282
- ```
283
-
284
- ### 多环境支持
285
-
286
- 支持配置多个云开发环境:
287
-
288
- ```bash
289
- # 开发环境
290
- tcb ai -a claude -e dev-env -- --continue
291
-
292
- # 生产环境
293
- tcb ai -a claude -e prod-env -- --continue
294
- ```
295
-
296
- ### 代理配置
297
-
298
- 支持通过代理访问 AI 服务:
299
-
300
- ```bash
301
- # 设置代理
302
- export HTTP_PROXY=http://127.0.0.1:7890
303
- export HTTPS_PROXY=http://127.0.0.1:7890
304
-
305
- # 启动 AI 工具
306
- tcb ai -a claude -- --continue
307
- ```
308
-
309
- ## 故障排除
310
-
311
- ### 常见问题
312
-
313
- #### 1. AI 工具未安装
314
-
315
- **错误信息:** `⚠️ claude 工具未安装`
316
-
317
- **解决方案:**
318
- ```bash
319
- # 安装 Claude Code
320
- npm install -g @anthropic-ai/claude-code
321
-
322
- # 检查安装
323
- claude doctor
324
- ```
325
-
326
- #### 2. API 密钥无效
327
-
328
- **错误信息:** `❌ API 密钥无效`
329
-
330
- **解决方案:**
331
- ```bash
332
- # 重新配置
333
- tcb ai --setup
334
-
335
- # 检查 API 密钥格式
336
- # Claude: sk-ant-api03-xxx
337
- # OpenAI: sk-xxx
338
- # Google: AIzaSyCxxx
339
- ```
340
-
341
- #### 3. 网络连接问题
342
-
343
- **错误信息:** `❌ 网络连接失败`
344
-
345
- **解决方案:**
346
- ```bash
347
- # 检查网络连接
348
- ping api.anthropic.com
349
-
350
- # 配置代理
351
- export HTTP_PROXY=http://127.0.0.1:7890
352
-
353
- # 使用国内镜像(如果支持)
354
- tcb ai -a claude -- --base-url=https://api.anthropic.cn
355
- ```
356
-
357
- #### 4. 模板下载失败
358
-
359
- **错误信息:** `❌ 模板下载失败`
360
-
361
- **解决方案:**
362
- ```bash
363
- # 检查网络连接
364
- curl -I https://static.cloudbase.net
365
-
366
- # 重新下载
367
- tcb ai --template react --force
368
-
369
- # 手动下载模板
370
- wget https://static.cloudbase.net/cloudbase-examples/web-cloudbase-react-template.zip
371
- ```
372
-
373
- ### 调试模式
374
-
375
- 启用调试模式获取详细信息:
376
-
377
- ```bash
378
- # 启用调试
379
- DEBUG=* tcb ai -a claude -- --continue
380
-
381
- # 查看详细日志
382
- tcb ai -a claude -- --verbose --continue
383
- ```
384
-
385
- ## 最佳实践
386
-
387
- ### 1. 配置管理
388
-
389
- - 使用 `tcb ai --setup` 进行初始配置
390
- - 定期更新 API 密钥
391
- - 为不同项目使用不同的环境 ID
392
-
393
- ### 2. 安全考虑
394
-
395
- - 不要在代码中硬编码 API 密钥
396
- - 使用环境变量存储敏感信息
397
- - 定期轮换 API 密钥
398
-
399
- ### 3. 性能优化
400
-
401
- - 选择合适的模型和参数
402
- - 使用 `--continue` 保持会话连续性
403
- - 合理设置 `max-tokens` 参数
404
-
405
- ### 4. 云开发集成
406
-
407
- - 充分利用云开发的全栈能力
408
- - 使用模板快速搭建项目
409
- - 结合云函数和数据库构建完整应用
410
-
411
- ## 相关资源
412
-
413
- - [CloudBase CLI 官方文档](https://docs.cloudbase.net/cli-v1/)
414
- - [Claude Code 官方文档](https://docs.anthropic.com/en/docs/claude-code)
415
- - [OpenAI API 文档](https://platform.openai.com/docs)
416
- - [Google AI Studio](https://aistudio.google.com/)
417
- - [云开发社区](https://cloudbase.net/community)
418
-
419
- ---
420
-
421
- 上一页[云存储](./storage) 下一页[静态网站托管](./hosting)
@@ -1,23 +0,0 @@
1
- import { Command } from '../common';
2
- import { ICommandContext } from '../../types';
3
- import { Logger } from '../../utils/log';
4
- export declare class AICommand extends Command {
5
- get options(): {
6
- cmd: string;
7
- options: {
8
- flags: string;
9
- desc: string;
10
- }[];
11
- desc: string;
12
- requiredEnvId: boolean;
13
- withoutAuth: boolean;
14
- allowUnknownOption: boolean;
15
- };
16
- execute(options: any, ctx: ICommandContext, log: Logger): Promise<void | {
17
- defaultAgent: string;
18
- }>;
19
- private resetConfig;
20
- private showConfig;
21
- private parseArgs;
22
- private getSubCommand;
23
- }
@@ -1,2 +0,0 @@
1
- import { Logger } from '../log';
2
- export declare function showBanner(log: Logger): Promise<void>;
@@ -1,68 +0,0 @@
1
- import { ConfigParser } from '@cloudbase/toolbox';
2
- import { CLAUDE, QWEN, CODEX } from './const';
3
- import z from 'zod/v3';
4
- export declare const CONFIG_NOT_FOUND = "CONFIG_NOT_FOUND";
5
- export declare function isValidAgent(agent: unknown): agent is keyof AIConfig['agents'];
6
- export interface AIConfig {
7
- defaultAgent: string;
8
- agents: {
9
- claude?: z.infer<(typeof CLAUDE)['configSchema']>;
10
- qwen?: z.infer<(typeof QWEN)['configSchema']>;
11
- codex?: z.infer<(typeof CODEX)['configSchema']>;
12
- };
13
- }
14
- export interface AgentConfig {
15
- enabled: boolean;
16
- command: string;
17
- apiKey?: string;
18
- baseUrl?: string;
19
- model?: string;
20
- maxTokens?: number;
21
- }
22
- export declare const TOOLKIT_CONFIGS: {
23
- [x: string]: {
24
- mcp: string;
25
- rules: string;
26
- config?: undefined;
27
- } | {
28
- config: string;
29
- rules: string;
30
- mcp?: undefined;
31
- };
32
- };
33
- export declare function createConfigParser(): ConfigParser;
34
- export declare class AIConfigManager {
35
- private envLocalManager;
36
- loadConfig(): Promise<AIConfig>;
37
- isConfigured(): Promise<boolean>;
38
- getAgentConfig(agent: string): Promise<AgentConfig | null>;
39
- resetConfig(): Promise<void>;
40
- checkToolkitConfig(agent: string): Promise<{
41
- hasConfig: boolean;
42
- hasMcp: boolean;
43
- hasRules: boolean;
44
- missingFiles: string[];
45
- }>;
46
- updateEnvId(envId: string): Promise<void>;
47
- updateDefaultAgent(agent: string): Promise<void>;
48
- updateClaudeConfig(type: 'custom' | 'cloudbase', config: {
49
- baseUrl?: string;
50
- apiKey?: string;
51
- provider?: string;
52
- model?: string;
53
- transformer?: string;
54
- }): Promise<void>;
55
- updateQwenConfig(type: 'custom' | 'cloudbase', config: {
56
- baseUrl?: string;
57
- apiKey?: string;
58
- provider?: string;
59
- model?: string;
60
- }): Promise<void>;
61
- updateCodexConfig(type: 'custom' | 'cloudbase', config: {
62
- baseUrl?: string;
63
- apiKey?: string;
64
- provider?: string;
65
- model?: string;
66
- }): Promise<void>;
67
- private updateConfig;
68
- }