@agile-team/robot-cli 1.1.9 → 1.1.12

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.
package/README.md CHANGED
@@ -1,439 +1,439 @@
1
- # 🤖 Robot CLI
2
-
3
- > 现代化项目脚手架工具,专为团队协作打造
4
-
5
- 一条命令,60秒搭建完整项目。支持多种技术栈、多种架构模式,让项目创建变得简单高效。
6
-
7
- ## ✨ 核心特性
8
-
9
- - **🎯 智能模板分类** - 推荐模板、分类浏览、关键词搜索
10
- - **⚡ 极速项目创建** - 一条命令创建完整项目架构
11
- - **📦 现代包管理器** - 优先推荐 bun/pnpm,智能检测最佳选择
12
- - **🌐 总是最新版本** - 每次创建都下载最新模板,无缓存困扰
13
- - **🎨 友好用户界面** - 现代化终端交互,清晰进度提示
14
-
15
- ## 🚀 快速开始
16
-
17
- ### 安装
18
- ```bash
19
- npm install -g @agile-team/robot-cli
20
- ```
21
-
22
- ### 创建项目
23
- ```bash
24
- # 交互式创建(推荐)
25
- robot create
26
-
27
- # 快速创建指定模板
28
- robot create my-vue-admin --template robot-admin
29
-
30
- # 查看所有模板
31
- robot list
32
- ```
33
-
34
- ## 📋 支持的模板
35
-
36
- ### 🎨 前端项目
37
- | 技术栈 | 模板 | 描述 |
38
- |-------|------|------|
39
- | **Vue.js** | `robot-admin` | 后台管理系统完整版 |
40
- | | `robot-admin-base` | 后台管理系统精简版 |
41
- | | `robot-micro` | 微前端架构(MicroApp) |
42
- | **React.js** | `robot-react` | React后台完整版 |
43
-
44
- ### 📱 移动端项目
45
- | 技术栈 | 模板 | 描述 |
46
- |-------|------|------|
47
- | **uni-app** | `robot-uniapp` | 多端应用(小程序/H5/App) |
48
-
49
- ### 🚀 后端项目
50
- | 技术栈 | 模板 | 描述 |
51
- |-------|------|------|
52
- | **NestJS** | `robot-nest` | 企业级Node.js框架 |
53
- | **Koa3** | `robot-koa` | 轻量级Node.js框架 |
54
-
55
- ### 💻 桌面端项目
56
- | 技术栈 | 模板 | 描述 |
57
- |-------|------|------|
58
- | **Electron** | `robot-electron` | 跨平台桌面应用 |
59
- | **Tauri** | `robot-tauri` | 轻量级桌面应用 |
60
-
61
- ## 📖 命令详解
62
-
63
- ### 创建项目
64
- ```bash
65
- # 交互式创建
66
- robot create
67
-
68
- # 指定模板
69
- robot create my-project --template robot-admin
70
-
71
- # 跳过依赖安装
72
- robot create my-project --skip-install
73
- ```
74
-
75
- ### 模板管理
76
- ```bash
77
- # 查看所有模板
78
- robot list
79
-
80
- # 查看推荐模板
81
- robot list --recommended
82
-
83
- # 搜索模板
84
- robot search vue
85
- robot search admin
86
- ```
87
-
88
- ## 📦 包管理器优先级
89
-
90
- Robot CLI 智能选择最佳包管理器:
91
-
92
- 1. **bun** 🥇 - 极速安装,现代化
93
- 2. **pnpm** 🥈 - 快速安装,节省空间
94
- 3. **yarn** ⚖️ - 兼容现有项目
95
- 4. **npm** ⚖️ - Node.js默认
96
-
97
- ## 🌐 为什么选择"总是最新"
98
-
99
- Robot CLI 不使用本地缓存,每次创建项目都会下载最新版本的模板:
100
-
101
- - ✅ **确保最新**: 总是获得最新的代码和依赖
102
- - ✅ **避免冲突**: 无需担心缓存过期或版本不一致
103
- - ✅ **简化维护**: 用户无需管理缓存,开发者无需考虑缓存策略
104
- - ✅ **减少错误**: 避免因缓存损坏导致的创建失败
105
-
106
- ## 🛠 开发指南
107
-
108
- ### 项目结构
109
- ```
110
- robot-cli/
111
- ├── bin/index.js # CLI入口
112
- ├── lib/
113
- │ ├── templates.js # 模板配置
114
- │ ├── create.js # 创建流程
115
- │ ├── download.js # 下载逻辑
116
- │ └── utils.js # 工具函数
117
- └── test/local-test.js # 测试脚本
118
- ```
119
-
120
- ### 添加新模板
121
-
122
- 1. 在 `lib/templates.js` 中添加配置:
123
- ```javascript
124
- 'robot-new-template': {
125
- name: 'Robot新模板',
126
- description: '模板描述',
127
- repoUrl: 'https://github.com/ChenyCHENYU/Robot_New_Template',
128
- features: ['特性1', '特性2'],
129
- version: 'full'
130
- }
131
- ```
132
-
133
- 2. 模板仓库要求:
134
- - 包含 `package.json` 和 `README.md`
135
- - 使用 `_gitignore` 而不是 `.gitignore`
136
- - 使用 `_env.example` 而不是 `.env.example`
137
-
138
- 3. 命名规范:
139
- - **模板key**: `robot-xxx` (如:robot-admin)
140
- - **仓库名**: `Robot_Xxx` (如:Robot_Admin)
141
- - **精简版**: 加 `-base` 后缀
142
-
143
- ### 本地测试
144
- ```bash
145
- # 克隆项目
146
- git clone https://github.com/ChenyCHENYU/robot-cli.git
147
- cd robot-cli && npm install && npm link
148
-
149
- # 创建测试环境
150
- npm run test:setup
151
-
152
- # 测试命令
153
- robot create test-project
154
- ```
155
-
156
- ## 🔧 扩展与定制
157
-
158
- ### 基于Robot CLI二次开发
159
-
160
- 如果你想基于Robot CLI创建自己的脚手架工具:
161
-
162
- #### 1. Fork和克隆
163
- ```bash
164
- # Fork GitHub仓库后克隆
165
- git clone https://github.com/YOUR_USERNAME/robot-cli.git
166
- cd robot-cli
167
- npm install
168
- ```
169
-
170
- #### 2. 修改配置
171
- ```bash
172
- # 修改package.json
173
- {
174
- "name": "@yourteam/your-cli",
175
- "bin": {
176
- "your-cli": "./bin/index.js"
177
- }
178
- }
179
-
180
- # 修改bin/index.js中的程序名称
181
- program.name('your-cli')
182
- ```
183
-
184
- #### 3. 自定义模板源
185
- ```javascript
186
- // lib/templates.js - 替换为你的模板仓库
187
- export const TEMPLATE_CATEGORIES = {
188
- frontend: {
189
- name: '🎨 前端项目',
190
- stacks: {
191
- vue: {
192
- name: 'Vue.js',
193
- patterns: {
194
- monolith: {
195
- name: '单体应用',
196
- templates: {
197
- 'your-admin': {
198
- name: '你的后台模板',
199
- repoUrl: 'https://github.com/YOUR_ORG/Your_Admin_Template',
200
- // ...
201
- }
202
- }
203
- }
204
- }
205
- }
206
- }
207
- }
208
- }
209
- ```
210
-
211
- #### 4. 定制交互界面
212
- ```javascript
213
- // lib/create.js - 修改欢迎信息和Logo
214
- function showWelcome() {
215
- const logoLines = [
216
- ' ██ ██ ██████ ██ ██ ██████ ',
217
- ' ██ ██ ██ ██ ██ ██ ██ ██ ',
218
- ' ████ ██ ██ ██ ██ ██████ ',
219
- ' ██ ██ ██ ██ ██ ██ ██ ',
220
- ' ██ ██████ ██████ ██ ██ '
221
- ];
222
- // 自定义你的Logo和标题
223
- }
224
- ```
225
-
226
- #### 5. 发布自己的CLI
227
- ```bash
228
- # 更新版本
229
- npm version 1.0.0
230
-
231
- # 发布到npm
232
- npm publish --access public
233
-
234
- # 全局安装测试
235
- npm install -g @yourteam/your-cli
236
- your-cli create my-project
237
- ```
238
-
239
- ### 企业内部定制方案
240
-
241
- #### 私有npm源
242
- ```bash
243
- # 发布到企业私有npm
244
- npm publish --registry=https://your-company-npm.com
245
-
246
- # 用户安装
247
- npm install -g @yourcompany/cli --registry=https://your-company-npm.com
248
- ```
249
-
250
- #### 模板源配置
251
- ```javascript
252
- // 支持配置文件 ~/.your-cli-config.json
253
- {
254
- "templateSource": "https://your-git-server.com",
255
- "defaultOrg": "YOUR_COMPANY",
256
- "defaultBranch": "main"
257
- }
258
- ```
259
-
260
- #### 批量模板管理
261
- ```javascript
262
- // lib/templates.js - 支持动态加载模板列表
263
- export async function loadTemplatesFromAPI() {
264
- const response = await fetch('https://your-api.com/templates');
265
- return response.json();
266
- }
267
- ```
268
-
269
- ### 插件化扩展
270
-
271
- #### 添加自定义命令
272
- ```javascript
273
- // lib/plugins/deploy.js
274
- export function addDeployCommand(program) {
275
- program
276
- .command('deploy')
277
- .description('部署项目到服务器')
278
- .action(async () => {
279
- // 你的部署逻辑
280
- });
281
- }
282
-
283
- // bin/index.js
284
- import { addDeployCommand } from '../lib/plugins/deploy.js';
285
- addDeployCommand(program);
286
- ```
287
-
288
- #### 添加自定义生成器
289
- ```javascript
290
- // lib/generators/component.js
291
- export async function generateComponent(name, options) {
292
- // 生成组件文件的逻辑
293
- }
294
-
295
- // 使用
296
- your-cli generate component MyComponent
297
- ```
298
-
299
- ### 配置文件支持
300
-
301
- #### 项目级配置
302
- ```json
303
- // robot.config.json
304
- {
305
- "defaultTemplate": "your-admin",
306
- "packageManager": "pnpm",
307
- "gitInit": true,
308
- "plugins": ["@yourteam/cli-plugin-deploy"]
309
- }
310
- ```
311
-
312
- #### 全局配置
313
- ```json
314
- // ~/.robot-cli/config.json
315
- {
316
- "templateSource": "github",
317
- "defaultOrg": "YourOrg",
318
- "alwaysLatest": true
319
- }
320
- ```
321
-
322
- ### 高级定制示例
323
-
324
- #### 1. 多源模板支持
325
- ```javascript
326
- // 支持从多个源获取模板
327
- const TEMPLATE_SOURCES = {
328
- github: 'https://github.com',
329
- gitlab: 'https://gitlab.com',
330
- gitee: 'https://gitee.com',
331
- custom: process.env.CUSTOM_TEMPLATE_SOURCE
332
- };
333
- ```
334
-
335
- #### 2. 模板预处理
336
- ```javascript
337
- // 模板下载后的预处理钩子
338
- export async function preprocessTemplate(templatePath, options) {
339
- // 替换模板中的占位符
340
- // 执行自定义脚本
341
- // 添加企业标准配置
342
- }
343
- ```
344
-
345
- #### 3. 集成CI/CD
346
- ```javascript
347
- // 创建项目后自动设置CI/CD
348
- export async function setupCICD(projectPath, options) {
349
- if (options.cicd) {
350
- await generateGitlabCI(projectPath);
351
- await generateDockerfile(projectPath);
352
- }
353
- }
354
- ```
355
-
356
- ### 维护指南
357
-
358
- #### 版本管理策略
359
- ```bash
360
- # 语义化版本
361
- major.minor.patch
362
-
363
- # 发布流程
364
- npm run test
365
- npm run build
366
- npm version patch
367
- npm publish
368
- git push --tags
369
- ```
370
-
371
- #### 模板同步
372
- ```bash
373
- # 定期同步模板仓库
374
- npm run sync-templates
375
-
376
- # 检查模板有效性
377
- npm run validate-templates
378
- ```
379
-
380
- #### 监控和分析
381
- ```javascript
382
- // 添加使用统计
383
- import analytics from './lib/analytics.js';
384
-
385
- analytics.track('template_used', {
386
- template: template.key,
387
- version: packageJson.version
388
- });
389
- ```
390
-
391
- ## 🔧 常见问题
392
-
393
- **Q: 提示 "command not found"?**
394
- A: 全局安装CLI:`npm install -g @agile-team/robot-cli`
395
-
396
- **Q: 模板下载失败?**
397
- A: 检查网络连接,确保能访问GitHub
398
-
399
- **Q: 如何添加自定义模板?**
400
- A: 创建模板仓库 → 添加配置 → 测试功能
401
-
402
- **Q: 支持私有仓库吗?**
403
- A: 目前仅支持公开GitHub仓库
404
-
405
- **Q: 为什么不使用缓存?**
406
- A: 为了确保总是获得最新版本的模板,避免缓存相关的问题
407
-
408
- ## 🎉 快速体验
409
-
410
- ```bash
411
- # 安装并创建项目
412
- npm install -g @agile-team/robot-cli
413
- robot create my-awesome-project
414
-
415
- # 启动开发服务器
416
- cd my-awesome-project && bun install && bun run dev
417
- ```
418
-
419
- ## 🤝 贡献
420
-
421
- 欢迎提交 Issues 和 Pull Requests!
422
-
423
- ## 📜 许可证
424
-
425
- MIT License
426
-
427
- ## 🔗 相关链接
428
-
429
- - [GitHub仓库](https://github.com/ChenyCHENYU/robot-cli)
430
- - [npm包](https://www.npmjs.com/package/@agile-team/robot-cli)
431
- - [问题反馈](https://github.com/ChenyCHENYU/robot-cli/issues)
432
-
433
- ---
434
-
435
- **让项目创建变得简单高效,专注于业务逻辑的实现!** 🚀
436
-
437
- ```bash
438
- npx @agile-team/robot-cli create my-project
1
+ # 🤖 Robot CLI
2
+
3
+ > 现代化项目脚手架工具,专为团队协作打造
4
+
5
+ 一条命令,60秒搭建完整项目。支持多种技术栈、多种架构模式,让项目创建变得简单高效。
6
+
7
+ ## ✨ 核心特性
8
+
9
+ - **🎯 智能模板分类** - 推荐模板、分类浏览、关键词搜索
10
+ - **⚡ 极速项目创建** - 一条命令创建完整项目架构
11
+ - **📦 现代包管理器** - 优先推荐 bun/pnpm,智能检测最佳选择
12
+ - **🌐 总是最新版本** - 每次创建都下载最新模板,无缓存困扰
13
+ - **🎨 友好用户界面** - 现代化终端交互,清晰进度提示
14
+
15
+ ## 🚀 快速开始
16
+
17
+ ### 安装
18
+ ```bash
19
+ npm install -g @agile-team/robot-cli
20
+ ```
21
+
22
+ ### 创建项目
23
+ ```bash
24
+ # 交互式创建(推荐)
25
+ robot create
26
+
27
+ # 快速创建指定模板
28
+ robot create my-vue-admin --template robot-admin
29
+
30
+ # 查看所有模板
31
+ robot list
32
+ ```
33
+
34
+ ## 📋 支持的模板
35
+
36
+ ### 🎨 前端项目
37
+ | 技术栈 | 模板 | 描述 |
38
+ |-------|------|------|
39
+ | **Vue.js** | `robot-admin` | 后台管理系统完整版 |
40
+ | | `robot-admin-base` | 后台管理系统精简版 |
41
+ | | `robot-micro` | 微前端架构(MicroApp) |
42
+ | **React.js** | `robot-react` | React后台完整版 |
43
+
44
+ ### 📱 移动端项目
45
+ | 技术栈 | 模板 | 描述 |
46
+ |-------|------|------|
47
+ | **uni-app** | `robot-uniapp` | 多端应用(小程序/H5/App) |
48
+
49
+ ### 🚀 后端项目
50
+ | 技术栈 | 模板 | 描述 |
51
+ |-------|------|------|
52
+ | **NestJS** | `robot-nest` | 企业级Node.js框架 |
53
+ | **Koa3** | `robot-koa` | 轻量级Node.js框架 |
54
+
55
+ ### 💻 桌面端项目
56
+ | 技术栈 | 模板 | 描述 |
57
+ |-------|------|------|
58
+ | **Electron** | `robot-electron` | 跨平台桌面应用 |
59
+ | **Tauri** | `robot-tauri` | 轻量级桌面应用 |
60
+
61
+ ## 📖 命令详解
62
+
63
+ ### 创建项目
64
+ ```bash
65
+ # 交互式创建
66
+ robot create
67
+
68
+ # 指定模板
69
+ robot create my-project --template robot-admin
70
+
71
+ # 跳过依赖安装
72
+ robot create my-project --skip-install
73
+ ```
74
+
75
+ ### 模板管理
76
+ ```bash
77
+ # 查看所有模板
78
+ robot list
79
+
80
+ # 查看推荐模板
81
+ robot list --recommended
82
+
83
+ # 搜索模板
84
+ robot search vue
85
+ robot search admin
86
+ ```
87
+
88
+ ## 📦 包管理器优先级
89
+
90
+ Robot CLI 智能选择最佳包管理器:
91
+
92
+ 1. **bun** 🥇 - 极速安装,现代化
93
+ 2. **pnpm** 🥈 - 快速安装,节省空间
94
+ 3. **yarn** ⚖️ - 兼容现有项目
95
+ 4. **npm** ⚖️ - Node.js默认
96
+
97
+ ## 🌐 为什么选择"总是最新"
98
+
99
+ Robot CLI 不使用本地缓存,每次创建项目都会下载最新版本的模板:
100
+
101
+ - ✅ **确保最新**: 总是获得最新的代码和依赖
102
+ - ✅ **避免冲突**: 无需担心缓存过期或版本不一致
103
+ - ✅ **简化维护**: 用户无需管理缓存,开发者无需考虑缓存策略
104
+ - ✅ **减少错误**: 避免因缓存损坏导致的创建失败
105
+
106
+ ## 🛠 开发指南
107
+
108
+ ### 项目结构
109
+ ```
110
+ robot-cli/
111
+ ├── bin/index.js # CLI入口
112
+ ├── lib/
113
+ │ ├── templates.js # 模板配置
114
+ │ ├── create.js # 创建流程
115
+ │ ├── download.js # 下载逻辑
116
+ │ └── utils.js # 工具函数
117
+ └── test/local-test.js # 测试脚本
118
+ ```
119
+
120
+ ### 添加新模板
121
+
122
+ 1. 在 `lib/templates.js` 中添加配置:
123
+ ```javascript
124
+ 'robot-new-template': {
125
+ name: 'Robot新模板',
126
+ description: '模板描述',
127
+ repoUrl: 'https://github.com/ChenyCHENYU/Robot_New_Template',
128
+ features: ['特性1', '特性2'],
129
+ version: 'full'
130
+ }
131
+ ```
132
+
133
+ 2. 模板仓库要求:
134
+ - 包含 `package.json` 和 `README.md`
135
+ - 使用 `_gitignore` 而不是 `.gitignore`
136
+ - 使用 `_env.example` 而不是 `.env.example`
137
+
138
+ 3. 命名规范:
139
+ - **模板key**: `robot-xxx` (如:robot-admin)
140
+ - **仓库名**: `Robot_Xxx` (如:Robot_Admin)
141
+ - **精简版**: 加 `-base` 后缀
142
+
143
+ ### 本地测试
144
+ ```bash
145
+ # 克隆项目
146
+ git clone https://github.com/ChenyCHENYU/robot-cli.git
147
+ cd robot-cli && npm install && npm link
148
+
149
+ # 创建测试环境
150
+ npm run test:setup
151
+
152
+ # 测试命令
153
+ robot create test-project
154
+ ```
155
+
156
+ ## 🔧 扩展与定制
157
+
158
+ ### 基于Robot CLI二次开发
159
+
160
+ 如果你想基于Robot CLI创建自己的脚手架工具:
161
+
162
+ #### 1. Fork和克隆
163
+ ```bash
164
+ # Fork GitHub仓库后克隆
165
+ git clone https://github.com/YOUR_USERNAME/robot-cli.git
166
+ cd robot-cli
167
+ npm install
168
+ ```
169
+
170
+ #### 2. 修改配置
171
+ ```bash
172
+ # 修改package.json
173
+ {
174
+ "name": "@yourteam/your-cli",
175
+ "bin": {
176
+ "your-cli": "./bin/index.js"
177
+ }
178
+ }
179
+
180
+ # 修改bin/index.js中的程序名称
181
+ program.name('your-cli')
182
+ ```
183
+
184
+ #### 3. 自定义模板源
185
+ ```javascript
186
+ // lib/templates.js - 替换为你的模板仓库
187
+ export const TEMPLATE_CATEGORIES = {
188
+ frontend: {
189
+ name: '🎨 前端项目',
190
+ stacks: {
191
+ vue: {
192
+ name: 'Vue.js',
193
+ patterns: {
194
+ monolith: {
195
+ name: '单体应用',
196
+ templates: {
197
+ 'your-admin': {
198
+ name: '你的后台模板',
199
+ repoUrl: 'https://github.com/YOUR_ORG/Your_Admin_Template',
200
+ // ...
201
+ }
202
+ }
203
+ }
204
+ }
205
+ }
206
+ }
207
+ }
208
+ }
209
+ ```
210
+
211
+ #### 4. 定制交互界面
212
+ ```javascript
213
+ // lib/create.js - 修改欢迎信息和Logo
214
+ function showWelcome() {
215
+ const logoLines = [
216
+ ' ██ ██ ██████ ██ ██ ██████ ',
217
+ ' ██ ██ ██ ██ ██ ██ ██ ██ ',
218
+ ' ████ ██ ██ ██ ██ ██████ ',
219
+ ' ██ ██ ██ ██ ██ ██ ██ ',
220
+ ' ██ ██████ ██████ ██ ██ '
221
+ ];
222
+ // 自定义你的Logo和标题
223
+ }
224
+ ```
225
+
226
+ #### 5. 发布自己的CLI
227
+ ```bash
228
+ # 更新版本
229
+ npm version 1.0.0
230
+
231
+ # 发布到npm
232
+ npm publish --access public
233
+
234
+ # 全局安装测试
235
+ npm install -g @yourteam/your-cli
236
+ your-cli create my-project
237
+ ```
238
+
239
+ ### 企业内部定制方案
240
+
241
+ #### 私有npm源
242
+ ```bash
243
+ # 发布到企业私有npm
244
+ npm publish --registry=https://your-company-npm.com
245
+
246
+ # 用户安装
247
+ npm install -g @yourcompany/cli --registry=https://your-company-npm.com
248
+ ```
249
+
250
+ #### 模板源配置
251
+ ```javascript
252
+ // 支持配置文件 ~/.your-cli-config.json
253
+ {
254
+ "templateSource": "https://your-git-server.com",
255
+ "defaultOrg": "YOUR_COMPANY",
256
+ "defaultBranch": "main"
257
+ }
258
+ ```
259
+
260
+ #### 批量模板管理
261
+ ```javascript
262
+ // lib/templates.js - 支持动态加载模板列表
263
+ export async function loadTemplatesFromAPI() {
264
+ const response = await fetch('https://your-api.com/templates');
265
+ return response.json();
266
+ }
267
+ ```
268
+
269
+ ### 插件化扩展
270
+
271
+ #### 添加自定义命令
272
+ ```javascript
273
+ // lib/plugins/deploy.js
274
+ export function addDeployCommand(program) {
275
+ program
276
+ .command('deploy')
277
+ .description('部署项目到服务器')
278
+ .action(async () => {
279
+ // 你的部署逻辑
280
+ });
281
+ }
282
+
283
+ // bin/index.js
284
+ import { addDeployCommand } from '../lib/plugins/deploy.js';
285
+ addDeployCommand(program);
286
+ ```
287
+
288
+ #### 添加自定义生成器
289
+ ```javascript
290
+ // lib/generators/component.js
291
+ export async function generateComponent(name, options) {
292
+ // 生成组件文件的逻辑
293
+ }
294
+
295
+ // 使用
296
+ your-cli generate component MyComponent
297
+ ```
298
+
299
+ ### 配置文件支持
300
+
301
+ #### 项目级配置
302
+ ```json
303
+ // robot.config.json
304
+ {
305
+ "defaultTemplate": "your-admin",
306
+ "packageManager": "pnpm",
307
+ "gitInit": true,
308
+ "plugins": ["@yourteam/cli-plugin-deploy"]
309
+ }
310
+ ```
311
+
312
+ #### 全局配置
313
+ ```json
314
+ // ~/.robot-cli/config.json
315
+ {
316
+ "templateSource": "github",
317
+ "defaultOrg": "YourOrg",
318
+ "alwaysLatest": true
319
+ }
320
+ ```
321
+
322
+ ### 高级定制示例
323
+
324
+ #### 1. 多源模板支持
325
+ ```javascript
326
+ // 支持从多个源获取模板
327
+ const TEMPLATE_SOURCES = {
328
+ github: 'https://github.com',
329
+ gitlab: 'https://gitlab.com',
330
+ gitee: 'https://gitee.com',
331
+ custom: process.env.CUSTOM_TEMPLATE_SOURCE
332
+ };
333
+ ```
334
+
335
+ #### 2. 模板预处理
336
+ ```javascript
337
+ // 模板下载后的预处理钩子
338
+ export async function preprocessTemplate(templatePath, options) {
339
+ // 替换模板中的占位符
340
+ // 执行自定义脚本
341
+ // 添加企业标准配置
342
+ }
343
+ ```
344
+
345
+ #### 3. 集成CI/CD
346
+ ```javascript
347
+ // 创建项目后自动设置CI/CD
348
+ export async function setupCICD(projectPath, options) {
349
+ if (options.cicd) {
350
+ await generateGitlabCI(projectPath);
351
+ await generateDockerfile(projectPath);
352
+ }
353
+ }
354
+ ```
355
+
356
+ ### 维护指南
357
+
358
+ #### 版本管理策略
359
+ ```bash
360
+ # 语义化版本
361
+ major.minor.patch
362
+
363
+ # 发布流程
364
+ npm run test
365
+ npm run build
366
+ npm version patch
367
+ npm publish
368
+ git push --tags
369
+ ```
370
+
371
+ #### 模板同步
372
+ ```bash
373
+ # 定期同步模板仓库
374
+ npm run sync-templates
375
+
376
+ # 检查模板有效性
377
+ npm run validate-templates
378
+ ```
379
+
380
+ #### 监控和分析
381
+ ```javascript
382
+ // 添加使用统计
383
+ import analytics from './lib/analytics.js';
384
+
385
+ analytics.track('template_used', {
386
+ template: template.key,
387
+ version: packageJson.version
388
+ });
389
+ ```
390
+
391
+ ## 🔧 常见问题
392
+
393
+ **Q: 提示 "command not found"?**
394
+ A: 全局安装CLI:`npm install -g @agile-team/robot-cli`
395
+
396
+ **Q: 模板下载失败?**
397
+ A: 检查网络连接,确保能访问GitHub
398
+
399
+ **Q: 如何添加自定义模板?**
400
+ A: 创建模板仓库 → 添加配置 → 测试功能
401
+
402
+ **Q: 支持私有仓库吗?**
403
+ A: 目前仅支持公开GitHub仓库
404
+
405
+ **Q: 为什么不使用缓存?**
406
+ A: 为了确保总是获得最新版本的模板,避免缓存相关的问题
407
+
408
+ ## 🎉 快速体验
409
+
410
+ ```bash
411
+ # 安装并创建项目
412
+ npm install -g @agile-team/robot-cli
413
+ robot create my-awesome-project
414
+
415
+ # 启动开发服务器
416
+ cd my-awesome-project && bun install && bun run dev
417
+ ```
418
+
419
+ ## 🤝 贡献
420
+
421
+ 欢迎提交 Issues 和 Pull Requests!
422
+
423
+ ## 📜 许可证
424
+
425
+ MIT License
426
+
427
+ ## 🔗 相关链接
428
+
429
+ - [GitHub仓库](https://github.com/ChenyCHENYU/robot-cli)
430
+ - [npm包](https://www.npmjs.com/package/@agile-team/robot-cli)
431
+ - [问题反馈](https://github.com/ChenyCHENYU/robot-cli/issues)
432
+
433
+ ---
434
+
435
+ **让项目创建变得简单高效,专注于业务逻辑的实现!** 🚀
436
+
437
+ ```bash
438
+ npx @agile-team/robot-cli create my-project
439
439
  ```