@optima-chat/commerce-cli 1.0.0 → 1.2.0

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,6 +1,6 @@
1
1
  <div align="center">
2
2
 
3
- # ⚡️ Optima CLI
3
+ # ⚡️ Commerce CLI
4
4
 
5
5
  ### 用自然语言管理你的电商店铺
6
6
 
@@ -12,7 +12,7 @@
12
12
  [![TypeScript](https://img.shields.io/badge/TypeScript-5.3-blue?style=flat&logo=typescript)](https://www.typescriptlang.org/)
13
13
  [![Node Version](https://img.shields.io/badge/node-%3E%3D18-brightgreen?style=flat&logo=node.js)](https://nodejs.org/)
14
14
 
15
- [网站](https://cli.optima.shop) • [文档](https://github.com/Optima-Chat/optima-cli#readme) • [NPM](https://www.npmjs.com/package/@optima-chat/commerce-cli) • [问题反馈](https://github.com/Optima-Chat/optima-cli/issues)
15
+ [网站](https://cli.optima.shop) • [文档](https://github.com/Optima-Chat/commerce-cli#readme) • [NPM](https://www.npmjs.com/package/@optima-chat/commerce-cli) • [问题反馈](https://github.com/Optima-Chat/commerce-cli/issues)
16
16
 
17
17
  </div>
18
18
 
@@ -20,7 +20,7 @@
20
20
 
21
21
  ## 🎯 简介
22
22
 
23
- Optima CLI 是 [Optima Commerce](https://www.optima.shop) 生态的命令行工具,**专为 Claude Code 设计**。
23
+ Commerce CLI 是 [Optima Commerce](https://www.optima.shop) 生态的命令行工具,**专为 Claude Code 设计**。
24
24
 
25
25
  无需记住命令 - 直接用中文对话,Claude 会自动调用相应的 CLI 命令来管理你的电商店铺。
26
26
 
@@ -28,14 +28,14 @@ Optima CLI 是 [Optima Commerce](https://www.optima.shop) 生态的命令行工
28
28
  # 传统方式(需要记住命令)
29
29
  commerce product create --title "陶瓷杯" --price 89 --stock 20
30
30
 
31
- # Optima CLI + Claude Code(自然语言)
31
+ # Commerce CLI + Claude Code(自然语言)
32
32
  "创建陶瓷杯商品,89 美元,库存 20" ✨
33
33
  ```
34
34
 
35
35
  ## 🎬 演示
36
36
 
37
37
  ### Claude Code 自然语言交互
38
- > 这是 Optima CLI 最强大的功能 - 用自然语言管理电商店铺
38
+ > 这是 Commerce CLI 最强大的功能 - 用自然语言管理电商店铺
39
39
 
40
40
  <!--
41
41
  TODO: 录制演示 GIF 后取消注释
@@ -85,10 +85,21 @@ TODO: 录制商品管理演示 GIF
85
85
  npm install -g @optima-chat/commerce-cli@latest
86
86
  ```
87
87
 
88
- 安装完成后会自动配置 Claude Code 集成。如需在项目中启用,对 Claude 说:
88
+ 安装完成后,在项目中运行 `commerce init` 启用所需场景。支持 5 个场景化 Skills:
89
89
 
90
- ```
91
- "在这个项目启用 Optima CLI"
90
+ **可用场景**:
91
+ - 🛍️ **Product Management** - 商品管理(商品、变体、图片)
92
+ - 📦 **Order Fulfillment** - 订单履行(发货、退款)
93
+ - 📊 **Inventory Management** - 库存管理(监控、补货)
94
+ - 🏪 **Storefront Configuration** - 店铺配置(首页、集合)
95
+ - 🌍 **Internationalization** - 国际化(多语言翻译)
96
+
97
+ ```bash
98
+ # 交互式选择场景
99
+ commerce init
100
+
101
+ # 或直接指定场景
102
+ commerce init --skills product,order
92
103
  ```
93
104
 
94
105
  ### 2. 登录你的账号
@@ -116,13 +127,13 @@ Claude 会自动打开浏览器引导你完成 OAuth 授权。
116
127
  - "给商品添加中文翻译"
117
128
  ```
118
129
 
119
- Claude 会自动调用对应的 `optima` 命令来完成操作。
130
+ Claude 会自动调用对应的 `commerce` 命令来完成操作。
120
131
 
121
132
  **就是这么简单!** 🎉
122
133
 
123
134
  ## 📦 功能模块
124
135
 
125
- Optima CLI 提供 **16 个功能模块**,**95+ 个命令**,覆盖电商全流程:
136
+ Commerce CLI 提供 **16 个功能模块**,**95+ 个命令**,覆盖电商全流程:
126
137
 
127
138
  | 模块 | 命令数 | 说明 |
128
139
  |------|--------|------|
@@ -145,7 +156,7 @@ Optima CLI 提供 **16 个功能模块**,**95+ 个命令**,覆盖电商全
145
156
 
146
157
  ## 🎨 输出格式
147
158
 
148
- Optima CLI 支持两种输出格式,适用于不同场景:
159
+ Commerce CLI 支持两种输出格式,适用于不同场景:
149
160
 
150
161
  ### JSON 模式(默认,AI 友好)
151
162
 
@@ -226,11 +237,11 @@ $ commerce merchant info --pretty
226
237
 
227
238
  ## 🤖 非交互模式 / CI/CD
228
239
 
229
- **v0.16.0 新增**:Optima CLI 现在支持智能环境检测,自动适配终端用户和 AI/CI/CD 环境!
240
+ **v0.16.0 新增**:Commerce CLI 现在支持智能环境检测,自动适配终端用户和 AI/CI/CD 环境!
230
241
 
231
242
  ### 🎯 自动环境检测
232
243
 
233
- Optima CLI 自动检测运行环境,无需手动配置:
244
+ Commerce CLI 自动检测运行环境,无需手动配置:
234
245
 
235
246
  | 环境 | 行为 | 示例 |
236
247
  |------|------|------|
@@ -272,7 +283,7 @@ jobs:
272
283
  steps:
273
284
  - uses: actions/checkout@v3
274
285
 
275
- - name: Install Optima CLI
286
+ - name: Install Commerce CLI
276
287
  run: npm install -g @optima-chat/commerce-cli
277
288
 
278
289
  - name: Create Products
@@ -316,12 +327,12 @@ FROM node:18-alpine
316
327
  RUN npm install -g @optima-chat/commerce-cli
317
328
 
318
329
  # 非交互环境,需提供所有参数
319
- CMD ["optima", "product", "list", "--json"]
330
+ CMD ["commerce", "product", "list", "--json"]
320
331
  ```
321
332
 
322
333
  ```bash
323
334
  # 运行容器
324
- docker run -e OPTIMA_TOKEN=$OPTIMA_TOKEN optima-cli
335
+ docker run -e OPTIMA_TOKEN=$OPTIMA_TOKEN commerce-cli
325
336
  ```
326
337
 
327
338
  ### ✅ 确认操作(`--yes` 标志)
@@ -381,7 +392,7 @@ commerce auth logout --all # 登出所有环境
381
392
 
382
393
  **多环境支持**(v0.19.0+):
383
394
 
384
- Optima CLI 支持三个独立环境,各自拥有独立的配置文件:
395
+ Commerce CLI 支持三个独立环境,各自拥有独立的配置文件:
385
396
 
386
397
  | 环境 | Auth API | Commerce API | 前端域名 | 配置文件 |
387
398
  |------|----------|--------------|---------|----------|
@@ -389,7 +400,7 @@ Optima CLI 支持三个独立环境,各自拥有独立的配置文件:
389
400
  | **Stage** | **auth-stage.optima.shop** | **api-stage.optima.shop** | **stage.optima.shop** | **config-stage.json** |
390
401
  | Development | auth.optima.chat | api.optima.chat | optima.sh | config-dev.json |
391
402
 
392
- **配置文件位置**:`~/.config/optima-cli/`
403
+ **配置文件位置**:`~/.config/commerce-cli/`
393
404
 
394
405
  ```bash
395
406
  # 登录到不同环境
@@ -416,14 +427,14 @@ export OPTIMA_TOKEN=<your_access_token>
416
427
  commerce product list
417
428
 
418
429
  # Docker 容器
419
- docker run -e OPTIMA_TOKEN=<your_token> optima-cli product list
430
+ docker run -e OPTIMA_TOKEN=<your_token> commerce-cli product list
420
431
 
421
432
  # CI/CD 流水线
422
433
  export OPTIMA_TOKEN=${{ secrets.OPTIMA_TOKEN }}
423
434
  commerce product create --title "商品"
424
435
  ```
425
436
 
426
- **认证优先级**:`OPTIMA_TOKEN` 环境变量 > 配置文件(`~/.config/optima-cli`)
437
+ **认证优先级**:`OPTIMA_TOKEN` 环境变量 > 配置文件(`~/.config/commerce-cli`)
427
438
 
428
439
  **自定义 Backend 地址**(适用于开发/测试环境):
429
440
 
@@ -440,7 +451,7 @@ commerce auth login
440
451
  docker run \
441
452
  -e OPTIMA_TOKEN=<your_token> \
442
453
  -e OPTIMA_API_URL=http://host.docker.internal:8000 \
443
- optima-cli product list
454
+ commerce-cli product list
444
455
  ```
445
456
 
446
457
  **默认 Backend**:
@@ -800,7 +811,7 @@ commerce transfer summary # 财务汇总
800
811
 
801
812
  ### 🌐 国际化翻译
802
813
 
803
- Optima CLI 内置完整的多语言翻译管理系统:
814
+ Commerce CLI 内置完整的多语言翻译管理系统:
804
815
 
805
816
  ```bash
806
817
  # 语言管理
@@ -868,7 +879,7 @@ commerce i18n collection create --collection-id coll_789 \
868
879
 
869
880
  ### 🧪 测试工具
870
881
 
871
- Optima CLI 内置测试工具,可用作功能测试和 API 健康检查:
882
+ Commerce CLI 内置测试工具,可用作功能测试和 API 健康检查:
872
883
 
873
884
  ```bash
874
885
  # 健康检查(检查 API 连通性和响应时间)
@@ -1020,14 +1031,14 @@ $ commerce test smoke
1020
1031
  ## 🛠 工具命令
1021
1032
 
1022
1033
  ```bash
1023
- commerce init # 在当前项目启用 Optima CLI
1034
+ commerce init # 在当前项目启用 Commerce CLI(创建 Claude Skill)
1024
1035
  commerce cleanup # 清理配置文件
1025
1036
  commerce version # 显示版本信息
1026
1037
  ```
1027
1038
 
1028
1039
  ## 🏗 项目状态
1029
1040
 
1030
- **当前版本:v0.19.0** 🎉
1041
+ **当前版本:v1.0.0** 🎉
1031
1042
 
1032
1043
  ✅ **已完成功能**:
1033
1044
  - ✅ 完整的 OAuth 2.0 认证系统(Device Flow + 自动刷新)
@@ -1048,33 +1059,12 @@ commerce version # 显示版本信息
1048
1059
 
1049
1060
  **功能覆盖率**:100%(所有核心商户运营功能 + 测试工具)
1050
1061
 
1051
- **最近更新**:
1052
-
1053
- **v0.19.0**(2025-11-13):
1054
- - 🌐 **三环境架构**:新增 Stage 环境,支持 Production/Stage/Development 完全隔离
1055
- - 🔐 **多文件配置**:每个环境独立配置文件(config-prod.json, config-stage.json, config-dev.json)
1056
- - 🔄 **环境切换命令**:新增 `auth switch` 命令,无需重新登录即可切换环境
1057
- - 🧪 **测试模块**:新增 `test health` 和 `test smoke` 命令
1058
- - 📜 **E2E 测试脚本**:`scripts/e2e-test.sh` 用于 CI/CD 集成
1059
- - 🛠️ **认证命令增强**:`whoami` 显示环境信息,`logout` 支持 `--env` 和 `--all`
1060
- - 📚 **完整文档更新**:CLAUDE.md 和 README.md 包含所有新功能
1061
-
1062
- **v0.18.1**(2025-11-11):
1063
- - 🐛 修复:开发环境店铺域名使用正确的 `optima.sh`
1064
- - 🛠️ 优化:统一店铺域名管理,自动根据环境选择
1065
-
1066
- **v0.18.0**(2025-11-11):
1067
- - 🌍 新增:环境支持(`--env development` 参数)
1068
- - 🔐 支持生产和开发环境切换
1069
- - 🎯 自动选择对应的 OAuth Client ID 和 API 端点
1070
- - 🔄 环境配置持久化
1071
-
1072
1062
  ## 🔧 开发
1073
1063
 
1074
1064
  ```bash
1075
1065
  # 克隆仓库
1076
- git clone https://github.com/Optima-Chat/optima-cli.git
1077
- cd optima-cli
1066
+ git clone https://github.com/Optima-Chat/commerce-cli.git
1067
+ cd commerce-cli
1078
1068
 
1079
1069
  # 安装依赖
1080
1070
  npm install
@@ -1117,14 +1107,14 @@ git push --follow-tags # 推送触发自动发布
1117
1107
  - [Optima Store](https://go.optima.shop) - 买家购物前端
1118
1108
  - [Claude Code](https://claude.com/claude-code)
1119
1109
  - [NPM Package](https://www.npmjs.com/package/@optima-chat/commerce-cli)
1120
- - [GitHub Issues](https://github.com/Optima-Chat/optima-cli/issues)
1110
+ - [GitHub Issues](https://github.com/Optima-Chat/commerce-cli/issues)
1121
1111
 
1122
1112
  ## 💬 支持
1123
1113
 
1124
1114
  遇到问题?
1125
1115
 
1126
- - 提交 [Issue](https://github.com/Optima-Chat/optima-cli/issues)
1127
- - 查看 [完整命令列表](.claude/CLAUDE.md)
1116
+ - 提交 [Issue](https://github.com/Optima-Chat/commerce-cli/issues)
1117
+ - 查看完整命令列表:`commerce --help`
1128
1118
  - 联系团队:support@optima.chat
1129
1119
 
1130
1120
  ---
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkHpC,eAAO,MAAM,WAAW,SAAM,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoLpC,eAAO,MAAM,WAAW,SAAM,CAAC"}
@@ -3,95 +3,150 @@ import chalk from 'chalk';
3
3
  import fs from 'fs';
4
4
  import path from 'path';
5
5
  import { fileURLToPath } from 'url';
6
+ import inquirer from 'inquirer';
7
+ import { addEnhancedHelp } from '../utils/helpText.js';
8
+ import { isInteractiveEnvironment } from '../utils/interactive.js';
9
+ import { ValidationError, handleError } from '../utils/error.js';
6
10
  const __filename = fileURLToPath(import.meta.url);
7
11
  const __dirname = path.dirname(__filename);
8
- const PROJECT_CLAUDE_MD = path.join(process.cwd(), '.claude', 'CLAUDE.md');
9
- const OPTIMA_START_MARKER = '## Optima CLI';
10
- const OPTIMA_END_MARKER = '<!-- END_OPTIMA_CLI -->';
11
- // NPM 包内读取模板内容
12
- const TEMPLATE_CLAUDE_MD = path.join(__dirname, '..', '..', '.claude', 'CLAUDE.md');
13
- function getOptimaSection() {
12
+ const PROJECT_SKILLS_DIR = path.join(process.cwd(), '.claude', 'skills');
13
+ const TEMPLATE_SKILLS_DIR = path.join(__dirname, '..', '..', '.claude', 'skills');
14
+ // 可用的场景定义
15
+ const AVAILABLE_SKILLS = [
16
+ { id: 'product', name: 'Product Management', description: '商品管理 - 商品上架、编辑、SKU管理' },
17
+ { id: 'order', name: 'Order Fulfillment', description: '订单履行 - 订单处理、发货、售后' },
18
+ { id: 'inventory', name: 'Inventory Management', description: '库存管理 - 库存监控、补货、预留' },
19
+ { id: 'storefront', name: 'Storefront Configuration', description: '店铺配置 - 首页设置、集合管理' },
20
+ { id: 'i18n', name: 'Internationalization', description: '国际化 - 多语言翻译管理' },
21
+ ];
22
+ const cmd = new Command('init')
23
+ .description('Enable Commerce CLI Skills in current project')
24
+ .option('--skills <skills>', 'Comma-separated skill IDs (product,order,inventory,storefront,i18n)')
25
+ .action(async (options) => {
14
26
  try {
15
- const templateContent = fs.readFileSync(TEMPLATE_CLAUDE_MD, 'utf-8');
16
- const match = templateContent.match(new RegExp(`${OPTIMA_START_MARKER}[\\s\\S]*?${OPTIMA_END_MARKER}`));
17
- if (match) {
18
- return match[0];
19
- }
27
+ await initializeSkills(options);
20
28
  }
21
29
  catch (error) {
22
- console.log(chalk.yellow('⚠️ 无法读取模板文件,使用默认配置'));
30
+ handleError(error);
23
31
  }
24
- // 降级方案:简化版配置
25
- return `${OPTIMA_START_MARKER}
26
-
27
- 电商店铺管理命令行工具。
28
-
29
- 使用 \`commerce --help\` 查看所有命令。
30
- ${OPTIMA_END_MARKER}`;
31
- }
32
- import { addEnhancedHelp } from '../utils/helpText.js';
33
- const cmd = new Command('init')
34
- .description('Enable Optima CLI in current project (adds config to .claude/CLAUDE.md)')
35
- .action(async () => {
36
- try {
37
- const claudeDir = path.dirname(PROJECT_CLAUDE_MD);
38
- // 确保 .claude 目录存在
39
- if (!fs.existsSync(claudeDir)) {
40
- fs.mkdirSync(claudeDir, { recursive: true });
32
+ });
33
+ async function initializeSkills(options) {
34
+ let selectedSkills = [];
35
+ // 如果指定了 --skills 参数
36
+ if (options.skills) {
37
+ selectedSkills = options.skills.split(',').map(s => s.trim());
38
+ // 验证 skill IDs
39
+ const invalidSkills = selectedSkills.filter(id => !AVAILABLE_SKILLS.some(skill => skill.id === id));
40
+ if (invalidSkills.length > 0) {
41
+ throw new ValidationError(`无效的 skill IDs: ${invalidSkills.join(', ')}\n可用的 skills: ${AVAILABLE_SKILLS.map(s => s.id).join(', ')}`, 'skills');
42
+ }
43
+ }
44
+ // 交互式选择
45
+ else if (isInteractiveEnvironment()) {
46
+ const answer = await inquirer.prompt([
47
+ {
48
+ type: 'checkbox',
49
+ name: 'skills',
50
+ message: '选择要启用的场景(可多选):',
51
+ choices: AVAILABLE_SKILLS.map(skill => ({
52
+ name: `${skill.name} - ${skill.description}`,
53
+ value: skill.id,
54
+ checked: skill.id === 'product' || skill.id === 'order', // 默认选中常用场景
55
+ })),
56
+ validate: (answer) => {
57
+ if (answer.length === 0) {
58
+ return '请至少选择一个场景';
59
+ }
60
+ return true;
61
+ },
62
+ },
63
+ ]);
64
+ selectedSkills = answer.skills;
65
+ }
66
+ // 非交互环境且未指定 --skills
67
+ else {
68
+ throw new ValidationError('非交互环境需要使用 --skills 参数指定要启用的场景\n示例: commerce init --skills product,order', 'skills');
69
+ }
70
+ // 确保 .claude/skills 目录存在
71
+ if (!fs.existsSync(PROJECT_SKILLS_DIR)) {
72
+ fs.mkdirSync(PROJECT_SKILLS_DIR, { recursive: true });
73
+ }
74
+ // 复制选中的 Skills
75
+ const installedSkills = [];
76
+ const updatedSkills = [];
77
+ for (const skillId of selectedSkills) {
78
+ const skillDirName = `commerce-${skillId}`;
79
+ const projectSkillDir = path.join(PROJECT_SKILLS_DIR, skillDirName);
80
+ const projectSkillFile = path.join(projectSkillDir, 'SKILL.md');
81
+ const templateSkillDir = path.join(TEMPLATE_SKILLS_DIR, skillDirName);
82
+ const templateSkillFile = path.join(templateSkillDir, 'SKILL.md');
83
+ // 检查模板是否存在
84
+ if (!fs.existsSync(templateSkillFile)) {
85
+ console.log(chalk.yellow(`⚠️ 找不到 ${skillId} 的模板文件,跳过`));
86
+ continue;
41
87
  }
42
- // 读取现有内容
43
- let existingContent = '';
44
- let hasExisting = false;
45
- if (fs.existsSync(PROJECT_CLAUDE_MD)) {
46
- existingContent = fs.readFileSync(PROJECT_CLAUDE_MD, 'utf-8');
47
- hasExisting = existingContent.includes(OPTIMA_START_MARKER);
88
+ // 创建目录
89
+ if (!fs.existsSync(projectSkillDir)) {
90
+ fs.mkdirSync(projectSkillDir, { recursive: true });
48
91
  }
49
- // 移除旧的 Optima CLI 区块(如果存在)
50
- if (hasExisting) {
51
- console.log(chalk.cyan('\n正在更新 Optima CLI 配置...\n'));
52
- if (existingContent.includes(OPTIMA_END_MARKER)) {
53
- const regex = new RegExp(`${OPTIMA_START_MARKER}[\\s\\S]*?${OPTIMA_END_MARKER}\\n?`, 'g');
54
- existingContent = existingContent.replace(regex, '');
55
- }
56
- else {
57
- const regex = /## Optima CLI[\s\S]*?(?=\n## [^\n]|\n*$)/g;
58
- existingContent = existingContent.replace(regex, '');
59
- }
60
- existingContent = existingContent.replace(/\n{3,}/g, '\n\n').trim();
92
+ const isUpdate = fs.existsSync(projectSkillFile);
93
+ // 复制 Skill 文件
94
+ const skillContent = fs.readFileSync(templateSkillFile, 'utf-8');
95
+ fs.writeFileSync(projectSkillFile, skillContent, 'utf-8');
96
+ if (isUpdate) {
97
+ updatedSkills.push(skillDirName);
98
+ }
99
+ else {
100
+ installedSkills.push(skillDirName);
61
101
  }
62
- // 写入新配置
63
- const optimaSection = getOptimaSection();
64
- const newContent = existingContent.trim() + '\n\n' + optimaSection.trim() + '\n';
65
- fs.writeFileSync(PROJECT_CLAUDE_MD, newContent, 'utf-8');
66
- console.log(chalk.green('\n✓ Optima CLI 已在当前项目中启用'));
67
- console.log(chalk.gray(` 配置文件: ${PROJECT_CLAUDE_MD}`));
68
- console.log(chalk.gray('\n 现在可以使用 optima auth login 登录了!\n'));
69
102
  }
70
- catch (error) {
71
- console.log(chalk.red(`\n 配置失败: ${error.message}\n`));
103
+ // 输出结果
104
+ console.log(chalk.green('\n Commerce CLI Skills 配置完成\n'));
105
+ if (installedSkills.length > 0) {
106
+ console.log(chalk.cyan(`已启用 ${installedSkills.length} 个场景:`));
107
+ installedSkills.forEach(skill => console.log(chalk.gray(` - ${skill}`)));
72
108
  }
73
- });
109
+ if (updatedSkills.length > 0) {
110
+ console.log(chalk.cyan(`\n已更新 ${updatedSkills.length} 个场景:`));
111
+ updatedSkills.forEach(skill => console.log(chalk.gray(` - ${skill}`)));
112
+ }
113
+ console.log(chalk.gray(`\n Skills 目录: ${PROJECT_SKILLS_DIR}`));
114
+ console.log(chalk.gray('\n 现在可以用自然语言管理店铺了!'));
115
+ console.log(chalk.gray(' 例如:"帮我创建一个商品" 或 "查看今天的订单"\n'));
116
+ }
74
117
  addEnhancedHelp(cmd, {
75
118
  examples: [
76
- '# Enable Optima CLI in current project',
119
+ '# Interactive mode - select skills to enable',
77
120
  '$ commerce init',
78
121
  '',
79
- '# This adds comprehensive CLI documentation to .claude/CLAUDE.md',
80
- '# Including natural language command mappings for AI assistants',
122
+ '# Specify skills directly (non-interactive)',
123
+ '$ commerce init --skills product,order',
124
+ '',
125
+ '# Enable all skills',
126
+ '$ commerce init --skills product,order,inventory,storefront,i18n',
127
+ '',
128
+ 'Available skills:',
129
+ ' product - Product management (create, update, variants, images)',
130
+ ' order - Order fulfillment (shipping, cancellation, refunds)',
131
+ ' inventory - Inventory management (stock monitoring, replenishment)',
132
+ ' storefront - Storefront configuration (homepage, collections)',
133
+ ' i18n - Internationalization (multilingual translations)',
81
134
  ],
82
135
  output: {
83
- description: 'Creates/updates .claude/CLAUDE.md with Optima CLI configuration',
84
- example: 'Configuration file: /path/to/project/.claude/CLAUDE.md'
136
+ description: 'Creates Claude Skills in .claude/skills/ directory',
137
+ example: `已启用 2 个场景:
138
+ - commerce-product
139
+ - commerce-order`
85
140
  },
86
141
  relatedCommands: [
87
- { command: 'cleanup', description: 'Remove Optima config from Claude' },
88
142
  { command: 'auth login', description: 'Login after initialization' },
89
143
  ],
90
144
  notes: [
91
- 'Creates .claude directory if it doesn\'t exist',
92
- 'Preserves existing content in CLAUDE.md',
93
- 'Updates config if already present',
94
- 'Project-level configuration (not global)',
145
+ 'Creates .claude/skills/<skill-name> directories',
146
+ 'Each skill contains a SKILL.md file',
147
+ 'Claude auto-discovers skills based on user intent',
148
+ 'You can enable multiple skills for different use cases',
149
+ 'Project-level skills (not global)',
95
150
  ]
96
151
  });
97
152
  export const initCommand = cmd;
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AAC3E,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAC5C,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;AAEpD,iBAAiB;AACjB,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AAEpF,SAAS,gBAAgB;IACvB,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QACrE,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CACjC,IAAI,MAAM,CAAC,GAAG,mBAAmB,aAAa,iBAAiB,EAAE,CAAC,CACnE,CAAC;QACF,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,aAAa;IACb,OAAO,GAAG,mBAAmB;;;;;EAK7B,iBAAiB,EAAE,CAAC;AACtB,CAAC;AAED,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;KAC5B,WAAW,CAAC,yEAAyE,CAAC;KACtF,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAElD,kBAAkB;QAClB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,SAAS;QACT,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACrC,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;YAC9D,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QAC9D,CAAC;QAED,2BAA2B;QAC3B,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;YAErD,IAAI,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAChD,MAAM,KAAK,GAAG,IAAI,MAAM,CACtB,GAAG,mBAAmB,aAAa,iBAAiB,MAAM,EAC1D,GAAG,CACJ,CAAC;gBACF,eAAe,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,2CAA2C,CAAC;gBAC1D,eAAe,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACvD,CAAC;YACD,eAAe,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QACtE,CAAC;QAED,QAAQ;QACR,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,EAAE,GAAG,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC;QACjF,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAEzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,iBAAiB,EAAE,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;IACjE,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,eAAe,CAAC,GAAG,EAAE;IACnB,QAAQ,EAAE;QACR,wCAAwC;QACxC,iBAAiB;QACjB,EAAE;QACF,kEAAkE;QAClE,iEAAiE;KAClE;IACD,MAAM,EAAE;QACN,WAAW,EAAE,iEAAiE;QAC9E,OAAO,EAAE,wDAAwD;KAClE;IACD,eAAe,EAAE;QACf,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,kCAAkC,EAAE;QACvE,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,4BAA4B,EAAE;KACrE;IACD,KAAK,EAAE;QACL,gDAAgD;QAChD,yCAAyC;QACzC,mCAAmC;QACnC,0CAA0C;KAC3C;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEjE,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACzE,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAElF,UAAU;AACV,MAAM,gBAAgB,GAAG;IACvB,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,oBAAoB,EAAE,WAAW,EAAE,sBAAsB,EAAE;IAClF,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,WAAW,EAAE,mBAAmB,EAAE;IAC5E,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,mBAAmB,EAAE;IACnF,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,0BAA0B,EAAE,WAAW,EAAE,kBAAkB,EAAE;IACvF,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,eAAe,EAAE;CAC3E,CAAC;AAEF,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;KAC5B,WAAW,CAAC,+CAA+C,CAAC;KAC5D,MAAM,CAAC,mBAAmB,EAAE,qEAAqE,CAAC;KAClG,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,CAAC;QACH,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,KAAK,UAAU,gBAAgB,CAAC,OAA4B;IAC1D,IAAI,cAAc,GAAa,EAAE,CAAC;IAElC,oBAAoB;IACpB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9D,eAAe;QACf,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CACzC,EAAE,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CACvD,CAAC;QAEF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,eAAe,CACvB,kBAAkB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACvG,QAAQ,CACT,CAAC;QACJ,CAAC;IACH,CAAC;IACD,QAAQ;SACH,IAAI,wBAAwB,EAAE,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACnC;gBACE,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,gBAAgB;gBACzB,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACtC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,WAAW,EAAE;oBAC5C,KAAK,EAAE,KAAK,CAAC,EAAE;oBACf,OAAO,EAAE,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,KAAK,CAAC,EAAE,KAAK,OAAO,EAAE,WAAW;iBACrE,CAAC,CAAC;gBACH,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;oBACnB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACxB,OAAO,WAAW,CAAC;oBACrB,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;aACF;SACF,CAAC,CAAC;QAEH,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;IACjC,CAAC;IACD,qBAAqB;SAChB,CAAC;QACJ,MAAM,IAAI,eAAe,CACvB,yEAAyE,EACzE,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,yBAAyB;IACzB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACvC,EAAE,CAAC,SAAS,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,eAAe;IACf,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,MAAM,aAAa,GAAa,EAAE,CAAC;IAEnC,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,MAAM,YAAY,GAAG,YAAY,OAAO,EAAE,CAAC;QAC3C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC;QACpE,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;QACtE,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAElE,WAAW;QACX,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,OAAO,WAAW,CAAC,CAAC,CAAC;YACzD,SAAS;QACX,CAAC;QAED,OAAO;QACP,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACpC,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;QAEjD,cAAc;QACd,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACjE,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAE1D,IAAI,QAAQ,EAAE,CAAC;YACb,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,OAAO;IACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAE3D,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC;QAC9D,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC;QAC9D,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,kBAAkB,EAAE,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,eAAe,CAAC,GAAG,EAAE;IACnB,QAAQ,EAAE;QACR,8CAA8C;QAC9C,iBAAiB;QACjB,EAAE;QACF,6CAA6C;QAC7C,wCAAwC;QACxC,EAAE;QACF,qBAAqB;QACrB,kEAAkE;QAClE,EAAE;QACF,mBAAmB;QACnB,uEAAuE;QACvE,qEAAqE;QACrE,wEAAwE;QACxE,kEAAkE;QAClE,kEAAkE;KACnE;IACD,MAAM,EAAE;QACN,WAAW,EAAE,oDAAoD;QACjE,OAAO,EAAE;;mBAEM;KAChB;IACD,eAAe,EAAE;QACf,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,4BAA4B,EAAE;KACrE;IACD,KAAK,EAAE;QACL,iDAAiD;QACjD,qCAAqC;QACrC,mDAAmD;QACnD,wDAAwD;QACxD,mCAAmC;KACpC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAC"}
package/dist/index.js CHANGED
@@ -5,7 +5,6 @@ import { readFileSync } from 'fs';
5
5
  import { fileURLToPath } from 'url';
6
6
  import { dirname, join } from 'path';
7
7
  import { authCommand } from './commands/auth/index.js';
8
- import { cleanupCommand } from './commands/cleanup.js';
9
8
  import { initCommand } from './commands/init.js';
10
9
  import { productCommand } from './commands/product/index.js';
11
10
  import { orderCommand } from './commands/order/index.js';
@@ -89,7 +88,6 @@ Documentation:
89
88
  `);
90
89
  // 注册命令
91
90
  program.addCommand(authCommand);
92
- program.addCommand(cleanupCommand);
93
91
  program.addCommand(initCommand);
94
92
  program.addCommand(productCommand);
95
93
  program.addCommand(variantCommand);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}