@optima-chat/optima-agent 0.9.11 → 0.9.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/.claude/skills/.kb-skills-managed.json +9 -9
- package/.claude/skills/ads/SKILL.md +244 -244
- package/.claude/skills/ads/template/campaign/CREATIVES.md +18 -18
- package/.claude/skills/ads/template/campaign/NOTES.md +10 -10
- package/.claude/skills/ads/template/campaign/STRATEGY.md +29 -29
- package/.claude/skills/ads/template/user/ADS.md +29 -29
- package/.claude/skills/ads/template/user/LEARNINGS.md +15 -15
- package/.claude/skills/ads/template/user/PROGRESS.md +20 -20
- package/.claude/skills/ads/template/user/README.md +25 -25
- package/.claude/skills/ads/template/user/assets/.gitignore +2 -2
- package/.claude/skills/bi/SKILL.md +131 -131
- package/.claude/skills/browser/SKILL.md +201 -201
- package/.claude/skills/channels/SKILL.md +188 -188
- package/.claude/skills/collection/SKILL.md +88 -88
- package/.claude/skills/douyin/SKILL.md +408 -408
- package/.claude/skills/ffmpeg/SKILL.md +164 -164
- package/.claude/skills/gen/SKILL.md +279 -279
- package/.claude/skills/growth/SKILL.md +90 -90
- package/.claude/skills/growth/template/ACCOUNTS.md +14 -14
- package/.claude/skills/growth/template/CALENDAR.md +7 -7
- package/.claude/skills/growth/template/COMMENTS.md +7 -7
- package/.claude/skills/growth/template/GROWTH.md +37 -37
- package/.claude/skills/growth/template/PROGRESS.md +4 -4
- package/.claude/skills/growth/template/README.md +20 -20
- package/.claude/skills/growth/template/TOPICS.md +7 -7
- package/.claude/skills/homepage/SKILL.md +177 -177
- package/.claude/skills/i18n/SKILL.md +517 -517
- package/.claude/skills/ingesting-sources/SKILL.md +94 -94
- package/.claude/skills/initializing-kb/SKILL.md +117 -117
- package/.claude/skills/instagram/SKILL.md +321 -321
- package/.claude/skills/inventory/SKILL.md +328 -328
- package/.claude/skills/kol-outreach/SKILL.md +232 -232
- package/.claude/skills/kol-outreach/template/campaign/CONFIG.md +60 -60
- package/.claude/skills/kol-outreach/template/campaign/KOLS.md +6 -6
- package/.claude/skills/kol-outreach/template/campaign/PROGRESS.md +3 -3
- package/.claude/skills/kol-outreach/template/campaign/TEMPLATES.md +88 -88
- package/.claude/skills/kol-outreach/template/merchant/BRAND.md +36 -36
- package/.claude/skills/kol-outreach/template/merchant/CAMPAIGNS.md +6 -6
- package/.claude/skills/kol-outreach/template/merchant/MERCHANT_LIMITS.md +16 -16
- package/.claude/skills/kol-outreach/template/merchant/PROGRESS.md +4 -4
- package/.claude/skills/kol-outreach/template/merchant/README.md +20 -20
- package/.claude/skills/linting-the-wiki/SKILL.md +68 -68
- package/.claude/skills/logistics/SKILL.md +180 -180
- package/.claude/skills/markdown-pdf/SKILL.md +72 -72
- package/.claude/skills/merchant/SKILL.md +110 -110
- package/.claude/skills/multigrid-poster/SKILL.md +192 -192
- package/.claude/skills/multigrid-poster/layouts/2x2.json +34 -34
- package/.claude/skills/multigrid-poster/layouts/3x3.json +43 -43
- package/.claude/skills/multigrid-poster/scripts/compose.py +116 -116
- package/.claude/skills/order/SKILL.md +452 -452
- package/.claude/skills/product/SKILL.md +379 -379
- package/.claude/skills/product-page/SKILL.md +106 -106
- package/.claude/skills/querying-the-wiki/SKILL.md +59 -59
- package/.claude/skills/reddit/SKILL.md +277 -277
- package/.claude/skills/review/SKILL.md +321 -321
- package/.claude/skills/scout/SKILL.md +575 -575
- package/.claude/skills/sentinel/SKILL.md +281 -281
- package/.claude/skills/shein/SKILL.md +246 -246
- package/.claude/skills/shipping/SKILL.md +200 -200
- package/.claude/skills/shop-content/SKILL.md +101 -101
- package/.claude/skills/shopify/SKILL.md +282 -282
- package/.claude/skills/skillify/SKILL.md +114 -114
- package/.claude/skills/taobao/SKILL.md +238 -238
- package/.claude/skills/tiktok/SKILL.md +381 -381
- package/.claude/skills/twitter/SKILL.md +302 -302
- package/.claude/skills/updating-related-pages/SKILL.md +65 -65
- package/.claude/skills/video-edit/SKILL.md +138 -138
- package/.claude/skills/video-gen/SKILL.md +630 -630
- package/.claude/skills/video-gen/templates/INDEX.md +78 -78
- package/.claude/skills/video-gen/templates/before-after-beauty.md +183 -183
- package/.claude/skills/video-gen/templates/drama-fmcg.md +183 -183
- package/.claude/skills/video-gen/templates/kol-reaction-food.md +193 -193
- package/.claude/skills/video-gen/templates/multi-point-apparel.md +185 -185
- package/.claude/skills/video-gen/templates/pain-solution-home.md +184 -184
- package/.claude/skills/video-gen/templates/pdp-360-showcase.md +189 -189
- package/.claude/skills/video-gen/templates/pdp-feature-highlight.md +182 -182
- package/.claude/skills/video-gen/templates/scene-digital.md +183 -183
- package/.claude/skills/wechat/SKILL.md +174 -174
- package/.claude/skills/xhs/SKILL.md +170 -170
- package/README.md +276 -276
- package/dist/bin/optima.js +26 -26
- package/dist/bin/serve.js +23 -23
- package/dist/bin/video-edit.d.ts +3 -0
- package/dist/bin/video-edit.d.ts.map +1 -0
- package/dist/bin/video-edit.js +153 -0
- package/dist/bin/video-edit.js.map +1 -0
- package/dist/src/agent.d.ts +1 -1
- package/dist/src/agent.js +4 -4
- package/dist/src/system-prompt.d.ts.map +1 -1
- package/dist/src/system-prompt.js +175 -173
- package/dist/src/system-prompt.js.map +1 -1
- package/dist/src/tools/memory.js +10 -10
- package/dist/src/ui/headless.js +7 -7
- package/package.json +79 -79
|
@@ -1,328 +1,328 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: inventory
|
|
3
|
-
description: Inventory management and stock monitoring. Set stock to exact values, adjust stock incrementally, check low stock alerts, view history, reserve stock. Use when user needs to set/update stock, replenish inventory, monitor low stock, or manage reservations. Two key commands - `inventory set` (set to exact number) and `inventory adjust` (add/remove incrementally).
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Commerce CLI - Inventory Management
|
|
7
|
-
|
|
8
|
-
库存管理模块,用于监控库存水平、补货、预留和历史跟踪。
|
|
9
|
-
|
|
10
|
-
## 典型场景
|
|
11
|
-
|
|
12
|
-
### ⚠️ set vs adjust — 必须区分!
|
|
13
|
-
|
|
14
|
-
| 命令 | 作用 | 示例 | 效果 |
|
|
15
|
-
|------|------|------|------|
|
|
16
|
-
| `inventory set --id XX --quantity 18` | **设置为**目标值 | 当前库存13,设为18 | 库存变为 18 |
|
|
17
|
-
| `inventory adjust --id XX --quantity 5` | **增加**库存 | 当前库存13,加5 | 库存变为 18 |
|
|
18
|
-
| `inventory adjust --id XX --quantity -3` | **减少**库存 | 当前库存13,减3 | 库存变为 10 |
|
|
19
|
-
|
|
20
|
-
**判断用哪个**:
|
|
21
|
-
- 用户说"库存设置为/设为/改为 N" → `inventory set`
|
|
22
|
-
- 用户说"补货/加 N 个" → `inventory adjust`(正数)
|
|
23
|
-
- 用户说"扣减/减 N 个" → `inventory adjust`(负数)
|
|
24
|
-
|
|
25
|
-
### 场景决策表
|
|
26
|
-
|
|
27
|
-
| 用户需求 | 推荐命令 | 关键注意点 |
|
|
28
|
-
|---------|---------|-----------|
|
|
29
|
-
| 设置库存为 N | `inventory set --id XX --quantity N` | 直接设为目标值 |
|
|
30
|
-
| 查看低库存 | `inventory low-stock --threshold 10` | 阈值根据品类和销售速度设定 |
|
|
31
|
-
| 补货操作 | `inventory adjust --id XX --quantity N` | 增量补货(+=) |
|
|
32
|
-
| 盘点调整 | `inventory set --id XX --quantity N` | 以实际盘点数量为准 |
|
|
33
|
-
| 预留库存 | `inventory reserve --id XX --quantity N` | 订单创建时立即预留,避免超卖 |
|
|
34
|
-
| 查看历史 | `inventory history --id XX` | 分析库存变化趋势,优化补货策略 |
|
|
35
|
-
|
|
36
|
-
### 1. 查看低库存预警
|
|
37
|
-
|
|
38
|
-
**场景**:每日检查需要补货的商品
|
|
39
|
-
|
|
40
|
-
```bash
|
|
41
|
-
# 用户说:"查看库存低于5的商品"
|
|
42
|
-
commerce inventory low-stock --threshold 5
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
### 2. 补货操作
|
|
46
|
-
|
|
47
|
-
**场景**:根据销售速度和品类特性进行科学补货
|
|
48
|
-
|
|
49
|
-
```bash
|
|
50
|
-
# 用户说:"商品prod_123补货100个"(增量)
|
|
51
|
-
commerce inventory adjust --id prod_123 --quantity 100
|
|
52
|
-
|
|
53
|
-
# 根据销售数据决定补货量
|
|
54
|
-
commerce inventory adjust --id prod_hot --quantity 500
|
|
55
|
-
commerce inventory adjust --id prod_normal --quantity 100
|
|
56
|
-
commerce inventory adjust --id prod_slow --quantity 20
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
### 3. 预留库存
|
|
60
|
-
|
|
61
|
-
**场景**:订单创建时立即预留库存,防止超卖
|
|
62
|
-
|
|
63
|
-
```bash
|
|
64
|
-
# 用户说:"为订单预留5个商品"
|
|
65
|
-
commerce inventory reserve --id prod_123 --quantity 5
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
**库存预留机制**:
|
|
69
|
-
- **订单创建时预留** - 避免超卖,保证订单可履行
|
|
70
|
-
- **发货后扣减** - 商品发货后从可用库存扣减
|
|
71
|
-
|
|
72
|
-
### 4. 盘点调整
|
|
73
|
-
|
|
74
|
-
**场景**:定期盘点发现账实差异,需要调整库存
|
|
75
|
-
|
|
76
|
-
```bash
|
|
77
|
-
# 实际库存95,直接设置为实际数量
|
|
78
|
-
commerce inventory set --id prod_123 --quantity 95
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
### 5. 处理超卖
|
|
82
|
-
|
|
83
|
-
**场景**:发现库存不足以满足所有订单
|
|
84
|
-
|
|
85
|
-
**预防措施**:
|
|
86
|
-
- 订单创建时立即预留库存
|
|
87
|
-
- 使用实时库存同步机制
|
|
88
|
-
|
|
89
|
-
**发生后处理**:
|
|
90
|
-
1. 优先处理早期订单,确保先到先得
|
|
91
|
-
2. 联系后续客户协商延期或退款
|
|
92
|
-
3. 紧急补货,缩短等待时间
|
|
93
|
-
|
|
94
|
-
**长期优化**:
|
|
95
|
-
- 检查库存同步机制,修复bug
|
|
96
|
-
- 加强预留机制的可靠性
|
|
97
|
-
- 设置安全库存缓冲
|
|
98
|
-
|
|
99
|
-
### 6. 查看库存历史
|
|
100
|
-
|
|
101
|
-
**场景**:分析库存变化趋势,优化补货策略
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
# 用户说:"查看商品prod_123的库存变更记录"
|
|
105
|
-
commerce inventory history --id prod_123
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
## 卓越标准
|
|
109
|
-
|
|
110
|
-
### 库存管理质量指标
|
|
111
|
-
- **库存准确率**: 账实相符率 ≥ 98%,定期盘点验证
|
|
112
|
-
- **低库存预警响应**: 检测到低库存后24小时内补货
|
|
113
|
-
- **缺货率**: < 2%,避免影响客户体验和转化率
|
|
114
|
-
- **超卖率**: 0%,通过预留机制和实时同步防止超卖
|
|
115
|
-
- **库存周转率**: 根据品类优化,畅销品 > 6次/年,滞销品及时清理
|
|
116
|
-
|
|
117
|
-
### 库存管理原则
|
|
118
|
-
- **实时同步**: 订单创建时立即预留库存,发货后扣减,取消后释放
|
|
119
|
-
- **安全库存**: 设置合理的低库存阈值(畅销品 > 30天销量,滞销品 > 7天销量)
|
|
120
|
-
- **先进先出**: 先入库的商品优先出库,减少积压和过期
|
|
121
|
-
- **定期盘点**: 每月盘点核对账实差异,及时调整
|
|
122
|
-
- **历史追踪**: 所有库存变更必须记录原因,便于审计
|
|
123
|
-
|
|
124
|
-
### 日常库存监控流程
|
|
125
|
-
1. **查看低库存** - 每日 `commerce inventory low-stock --threshold 10`
|
|
126
|
-
2. **分析销售趋势** - 结合订单数据判断补货优先级
|
|
127
|
-
3. **制定补货计划** - 畅销品加大补货量,滞销品谨慎补货
|
|
128
|
-
4. **执行补货** - `commerce inventory adjust --id XX --quantity YY`
|
|
129
|
-
5. **验证更新** - `commerce product get --id XX` 确认库存正确
|
|
130
|
-
6. **定期盘点** - 每月实地盘点,调整账面库存
|
|
131
|
-
|
|
132
|
-
## 常见问题
|
|
133
|
-
|
|
134
|
-
### ❌ 问题1:批量补货不分析,造成库存积压
|
|
135
|
-
|
|
136
|
-
**错误做法**:
|
|
137
|
-
```bash
|
|
138
|
-
# 不分析就盲目补货,可能造成库存积压
|
|
139
|
-
for product_id in $(commerce inventory low-stock --json | jq -r '.[].id'); do
|
|
140
|
-
commerce inventory adjust --id $product_id --quantity 100
|
|
141
|
-
done
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
**✅ 正确做法**:
|
|
145
|
-
```bash
|
|
146
|
-
# 先分析低库存商品,按销售速度分级补货
|
|
147
|
-
commerce inventory low-stock --threshold 10
|
|
148
|
-
|
|
149
|
-
# 根据销售数据决定补货量
|
|
150
|
-
commerce inventory adjust --id prod_hot --quantity 500 # 畅销品大量补货
|
|
151
|
-
commerce inventory adjust --id prod_normal --quantity 100 # 常规补货
|
|
152
|
-
commerce inventory adjust --id prod_slow --quantity 20 # 滞销品少量补货
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
### ❌ 问题2:库存差异超过5%未深入调查
|
|
156
|
-
|
|
157
|
-
**场景**:定期盘点发现差异
|
|
158
|
-
|
|
159
|
-
**处理流程**:
|
|
160
|
-
1. 核实实际库存,调整账面库存
|
|
161
|
-
2. 记录差异原因(损耗、盗窃、系统错误等)
|
|
162
|
-
3. 差异率 > 5%需要深入调查根本原因
|
|
163
|
-
|
|
164
|
-
```bash
|
|
165
|
-
# 盘点调整:实际95,直接设为95
|
|
166
|
-
commerce inventory set --id prod_123 --quantity 95
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
### ❌ 问题3:滞销商品长期占用库存
|
|
170
|
-
|
|
171
|
-
**滞销商品处理策略**:
|
|
172
|
-
|
|
173
|
-
| 滞销时长 | 处理方式 | 命令示例 |
|
|
174
|
-
|---------|---------|---------|
|
|
175
|
-
| 库存周转率低 | 降价促销、捆绑销售 | 调整价格,增加曝光 |
|
|
176
|
-
| 3个月未动销 | 考虑清仓处理 | 大幅降价或买一送一 |
|
|
177
|
-
| 6个月未动销 | 下架并清理库存 | 捐赠、报废或转移 |
|
|
178
|
-
|
|
179
|
-
```bash
|
|
180
|
-
# 查看库存历史判断是否滞销
|
|
181
|
-
commerce inventory history --id prod_slow
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
### ❌ 问题4:不分析销售数据就补货
|
|
185
|
-
|
|
186
|
-
**错误做法**:直接设置固定数量,不考虑销售速度
|
|
187
|
-
|
|
188
|
-
**✅ 正确做法**:
|
|
189
|
-
```bash
|
|
190
|
-
# 根据销售数据决定补货量(如上周销量50,预计2周销量)
|
|
191
|
-
commerce inventory adjust --id prod_123 --quantity 100
|
|
192
|
-
```
|
|
193
|
-
|
|
194
|
-
### ❌ 问题5:超卖后处理不当
|
|
195
|
-
|
|
196
|
-
**预防措施**:
|
|
197
|
-
- 订单创建时立即预留库存
|
|
198
|
-
- 使用实时库存同步机制
|
|
199
|
-
|
|
200
|
-
**发生后正确处理**:
|
|
201
|
-
1. ✅ 优先处理早期订单(先到先得)
|
|
202
|
-
2. ✅ 主动联系后续客户,提供补偿方案
|
|
203
|
-
3. ✅ 紧急补货,缩短等待时间
|
|
204
|
-
4. ❌ 不要直接取消订单不解释
|
|
205
|
-
5. ❌ 不要让客户长时间等待无反馈
|
|
206
|
-
|
|
207
|
-
## 命令参考
|
|
208
|
-
|
|
209
|
-
### 自然语言映射
|
|
210
|
-
|
|
211
|
-
当用户说:
|
|
212
|
-
- "库存设置为/设为/改为 N" → `commerce inventory set --id XX --quantity N`
|
|
213
|
-
- "商品XX补货50个" → `commerce inventory adjust --id XX --quantity 50`
|
|
214
|
-
- "扣减库存5个" → `commerce inventory adjust --id XX --quantity -5`
|
|
215
|
-
- "查看库存低于10的商品" → `commerce inventory low-stock --threshold 10`
|
|
216
|
-
- "预留库存" → `commerce inventory reserve --id XX --quantity YY`
|
|
217
|
-
- "查看库存历史" → `commerce inventory history --id XX`
|
|
218
|
-
|
|
219
|
-
### 核心功能
|
|
220
|
-
|
|
221
|
-
- `commerce inventory set` - 设置库存为目标值(覆盖当前值)
|
|
222
|
-
- `commerce inventory adjust` - 增减库存(增量 +=/-=)
|
|
223
|
-
- `commerce inventory low-stock` - 查看低库存商品
|
|
224
|
-
- `commerce inventory history` - 查看库存变更历史
|
|
225
|
-
- `commerce inventory reserve` - 预留库存
|
|
226
|
-
|
|
227
|
-
## 详细示例
|
|
228
|
-
|
|
229
|
-
### 查看低库存预警
|
|
230
|
-
```bash
|
|
231
|
-
# 用户说:"查看库存低于5的商品"
|
|
232
|
-
commerce inventory low-stock --threshold 5
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
### 设置库存
|
|
236
|
-
```bash
|
|
237
|
-
# 用户说:"商品prod_123库存设为100"
|
|
238
|
-
commerce inventory set --id prod_123 --quantity 100
|
|
239
|
-
```
|
|
240
|
-
|
|
241
|
-
### 补货操作
|
|
242
|
-
```bash
|
|
243
|
-
# 用户说:"商品prod_123补货100个"(在现有基础上增加100)
|
|
244
|
-
commerce inventory adjust --id prod_123 --quantity 100
|
|
245
|
-
```
|
|
246
|
-
|
|
247
|
-
### 预留库存
|
|
248
|
-
```bash
|
|
249
|
-
# 用户说:"为订单预留5个商品"
|
|
250
|
-
commerce inventory reserve \
|
|
251
|
-
--id prod_123 \
|
|
252
|
-
--quantity 5
|
|
253
|
-
```
|
|
254
|
-
|
|
255
|
-
### 查看库存历史
|
|
256
|
-
```bash
|
|
257
|
-
# 用户说:"查看商品prod_123的库存变更记录"
|
|
258
|
-
commerce inventory history --id prod_123
|
|
259
|
-
```
|
|
260
|
-
|
|
261
|
-
## 变体库存管理(重要)
|
|
262
|
-
|
|
263
|
-
**这是最常见的库存管理错误,务必理解!**
|
|
264
|
-
|
|
265
|
-
### 核心规则
|
|
266
|
-
|
|
267
|
-
| 产品类型 | 库存设置方式 | 说明 |
|
|
268
|
-
|---------|-------------|------|
|
|
269
|
-
| **有变体的产品** | 必须设置**变体库存** | 产品库存 = 所有变体库存之和(自动计算) |
|
|
270
|
-
| **无变体的产品** | 直接设置**产品库存** | 正常更新即可 |
|
|
271
|
-
|
|
272
|
-
### 正确的库存更新流程
|
|
273
|
-
|
|
274
|
-
```bash
|
|
275
|
-
# 1. 先查看产品是否有变体
|
|
276
|
-
commerce product get --id prod_123
|
|
277
|
-
|
|
278
|
-
# 2. 如果 variants 数组不为空,逐个设置变体库存
|
|
279
|
-
commerce inventory set --id var_abc --quantity 10 # 变体1
|
|
280
|
-
commerce inventory set --id var_def --quantity 10 # 变体2
|
|
281
|
-
commerce inventory set --id var_ghi --quantity 10 # 变体3
|
|
282
|
-
|
|
283
|
-
# 3. 如果没有变体,直接设置产品库存
|
|
284
|
-
commerce inventory set --id prod_123 --quantity 30
|
|
285
|
-
```
|
|
286
|
-
|
|
287
|
-
### ❌ 常见错误
|
|
288
|
-
|
|
289
|
-
```bash
|
|
290
|
-
# 错误1:直接设置有变体产品的产品级库存(会被 API 拒绝)
|
|
291
|
-
commerce inventory set --id prod_123 --quantity 30
|
|
292
|
-
|
|
293
|
-
# 错误2:想设为18,却用了 adjust(结果是当前值+18)
|
|
294
|
-
commerce inventory adjust --id var_abc --quantity 18 # ❌ 增加了18,不是设为18
|
|
295
|
-
```
|
|
296
|
-
|
|
297
|
-
### ✅ 正确做法
|
|
298
|
-
|
|
299
|
-
```bash
|
|
300
|
-
# 用户说:"把所有变体库存都设置为10"
|
|
301
|
-
|
|
302
|
-
# 1. 先获取产品和变体信息
|
|
303
|
-
commerce product get --id prod_123
|
|
304
|
-
|
|
305
|
-
# 2. 逐个设置变体库存
|
|
306
|
-
commerce inventory set --id var_abc --quantity 10
|
|
307
|
-
commerce inventory set --id var_def --quantity 10
|
|
308
|
-
commerce inventory set --id var_ghi --quantity 10
|
|
309
|
-
|
|
310
|
-
# 产品总库存会自动变为 30(10+10+10)
|
|
311
|
-
```
|
|
312
|
-
|
|
313
|
-
### 批量设置变体库存
|
|
314
|
-
|
|
315
|
-
当用户说"所有变体库存设置为 N"时:
|
|
316
|
-
|
|
317
|
-
1. 先用 `commerce product get --id XX` 获取变体列表
|
|
318
|
-
2. 遍历每个变体,用 `commerce inventory set --id <variant_id> --quantity N` 设置
|
|
319
|
-
3. 确认更新成功后,产品总库存会自动计算
|
|
320
|
-
|
|
321
|
-
## 重要提示
|
|
322
|
-
|
|
323
|
-
- **`inventory set`** 设为目标值,**`inventory adjust`** 增减库存 — 务必区分
|
|
324
|
-
- **有变体的产品必须设置变体库存,不能直接设置产品库存**(会被 API 拒绝)
|
|
325
|
-
- 库存变更会自动记录历史
|
|
326
|
-
- 预留库存不会减少可用库存数量
|
|
327
|
-
- 低库存阈值可自定义(默认5)
|
|
328
|
-
- 使用 `--help` 查看命令详细参数
|
|
1
|
+
---
|
|
2
|
+
name: inventory
|
|
3
|
+
description: Inventory management and stock monitoring. Set stock to exact values, adjust stock incrementally, check low stock alerts, view history, reserve stock. Use when user needs to set/update stock, replenish inventory, monitor low stock, or manage reservations. Two key commands - `inventory set` (set to exact number) and `inventory adjust` (add/remove incrementally).
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Commerce CLI - Inventory Management
|
|
7
|
+
|
|
8
|
+
库存管理模块,用于监控库存水平、补货、预留和历史跟踪。
|
|
9
|
+
|
|
10
|
+
## 典型场景
|
|
11
|
+
|
|
12
|
+
### ⚠️ set vs adjust — 必须区分!
|
|
13
|
+
|
|
14
|
+
| 命令 | 作用 | 示例 | 效果 |
|
|
15
|
+
|------|------|------|------|
|
|
16
|
+
| `inventory set --id XX --quantity 18` | **设置为**目标值 | 当前库存13,设为18 | 库存变为 18 |
|
|
17
|
+
| `inventory adjust --id XX --quantity 5` | **增加**库存 | 当前库存13,加5 | 库存变为 18 |
|
|
18
|
+
| `inventory adjust --id XX --quantity -3` | **减少**库存 | 当前库存13,减3 | 库存变为 10 |
|
|
19
|
+
|
|
20
|
+
**判断用哪个**:
|
|
21
|
+
- 用户说"库存设置为/设为/改为 N" → `inventory set`
|
|
22
|
+
- 用户说"补货/加 N 个" → `inventory adjust`(正数)
|
|
23
|
+
- 用户说"扣减/减 N 个" → `inventory adjust`(负数)
|
|
24
|
+
|
|
25
|
+
### 场景决策表
|
|
26
|
+
|
|
27
|
+
| 用户需求 | 推荐命令 | 关键注意点 |
|
|
28
|
+
|---------|---------|-----------|
|
|
29
|
+
| 设置库存为 N | `inventory set --id XX --quantity N` | 直接设为目标值 |
|
|
30
|
+
| 查看低库存 | `inventory low-stock --threshold 10` | 阈值根据品类和销售速度设定 |
|
|
31
|
+
| 补货操作 | `inventory adjust --id XX --quantity N` | 增量补货(+=) |
|
|
32
|
+
| 盘点调整 | `inventory set --id XX --quantity N` | 以实际盘点数量为准 |
|
|
33
|
+
| 预留库存 | `inventory reserve --id XX --quantity N` | 订单创建时立即预留,避免超卖 |
|
|
34
|
+
| 查看历史 | `inventory history --id XX` | 分析库存变化趋势,优化补货策略 |
|
|
35
|
+
|
|
36
|
+
### 1. 查看低库存预警
|
|
37
|
+
|
|
38
|
+
**场景**:每日检查需要补货的商品
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
# 用户说:"查看库存低于5的商品"
|
|
42
|
+
commerce inventory low-stock --threshold 5
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### 2. 补货操作
|
|
46
|
+
|
|
47
|
+
**场景**:根据销售速度和品类特性进行科学补货
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
# 用户说:"商品prod_123补货100个"(增量)
|
|
51
|
+
commerce inventory adjust --id prod_123 --quantity 100
|
|
52
|
+
|
|
53
|
+
# 根据销售数据决定补货量
|
|
54
|
+
commerce inventory adjust --id prod_hot --quantity 500
|
|
55
|
+
commerce inventory adjust --id prod_normal --quantity 100
|
|
56
|
+
commerce inventory adjust --id prod_slow --quantity 20
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### 3. 预留库存
|
|
60
|
+
|
|
61
|
+
**场景**:订单创建时立即预留库存,防止超卖
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# 用户说:"为订单预留5个商品"
|
|
65
|
+
commerce inventory reserve --id prod_123 --quantity 5
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
**库存预留机制**:
|
|
69
|
+
- **订单创建时预留** - 避免超卖,保证订单可履行
|
|
70
|
+
- **发货后扣减** - 商品发货后从可用库存扣减
|
|
71
|
+
|
|
72
|
+
### 4. 盘点调整
|
|
73
|
+
|
|
74
|
+
**场景**:定期盘点发现账实差异,需要调整库存
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# 实际库存95,直接设置为实际数量
|
|
78
|
+
commerce inventory set --id prod_123 --quantity 95
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### 5. 处理超卖
|
|
82
|
+
|
|
83
|
+
**场景**:发现库存不足以满足所有订单
|
|
84
|
+
|
|
85
|
+
**预防措施**:
|
|
86
|
+
- 订单创建时立即预留库存
|
|
87
|
+
- 使用实时库存同步机制
|
|
88
|
+
|
|
89
|
+
**发生后处理**:
|
|
90
|
+
1. 优先处理早期订单,确保先到先得
|
|
91
|
+
2. 联系后续客户协商延期或退款
|
|
92
|
+
3. 紧急补货,缩短等待时间
|
|
93
|
+
|
|
94
|
+
**长期优化**:
|
|
95
|
+
- 检查库存同步机制,修复bug
|
|
96
|
+
- 加强预留机制的可靠性
|
|
97
|
+
- 设置安全库存缓冲
|
|
98
|
+
|
|
99
|
+
### 6. 查看库存历史
|
|
100
|
+
|
|
101
|
+
**场景**:分析库存变化趋势,优化补货策略
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
# 用户说:"查看商品prod_123的库存变更记录"
|
|
105
|
+
commerce inventory history --id prod_123
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## 卓越标准
|
|
109
|
+
|
|
110
|
+
### 库存管理质量指标
|
|
111
|
+
- **库存准确率**: 账实相符率 ≥ 98%,定期盘点验证
|
|
112
|
+
- **低库存预警响应**: 检测到低库存后24小时内补货
|
|
113
|
+
- **缺货率**: < 2%,避免影响客户体验和转化率
|
|
114
|
+
- **超卖率**: 0%,通过预留机制和实时同步防止超卖
|
|
115
|
+
- **库存周转率**: 根据品类优化,畅销品 > 6次/年,滞销品及时清理
|
|
116
|
+
|
|
117
|
+
### 库存管理原则
|
|
118
|
+
- **实时同步**: 订单创建时立即预留库存,发货后扣减,取消后释放
|
|
119
|
+
- **安全库存**: 设置合理的低库存阈值(畅销品 > 30天销量,滞销品 > 7天销量)
|
|
120
|
+
- **先进先出**: 先入库的商品优先出库,减少积压和过期
|
|
121
|
+
- **定期盘点**: 每月盘点核对账实差异,及时调整
|
|
122
|
+
- **历史追踪**: 所有库存变更必须记录原因,便于审计
|
|
123
|
+
|
|
124
|
+
### 日常库存监控流程
|
|
125
|
+
1. **查看低库存** - 每日 `commerce inventory low-stock --threshold 10`
|
|
126
|
+
2. **分析销售趋势** - 结合订单数据判断补货优先级
|
|
127
|
+
3. **制定补货计划** - 畅销品加大补货量,滞销品谨慎补货
|
|
128
|
+
4. **执行补货** - `commerce inventory adjust --id XX --quantity YY`
|
|
129
|
+
5. **验证更新** - `commerce product get --id XX` 确认库存正确
|
|
130
|
+
6. **定期盘点** - 每月实地盘点,调整账面库存
|
|
131
|
+
|
|
132
|
+
## 常见问题
|
|
133
|
+
|
|
134
|
+
### ❌ 问题1:批量补货不分析,造成库存积压
|
|
135
|
+
|
|
136
|
+
**错误做法**:
|
|
137
|
+
```bash
|
|
138
|
+
# 不分析就盲目补货,可能造成库存积压
|
|
139
|
+
for product_id in $(commerce inventory low-stock --json | jq -r '.[].id'); do
|
|
140
|
+
commerce inventory adjust --id $product_id --quantity 100
|
|
141
|
+
done
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
**✅ 正确做法**:
|
|
145
|
+
```bash
|
|
146
|
+
# 先分析低库存商品,按销售速度分级补货
|
|
147
|
+
commerce inventory low-stock --threshold 10
|
|
148
|
+
|
|
149
|
+
# 根据销售数据决定补货量
|
|
150
|
+
commerce inventory adjust --id prod_hot --quantity 500 # 畅销品大量补货
|
|
151
|
+
commerce inventory adjust --id prod_normal --quantity 100 # 常规补货
|
|
152
|
+
commerce inventory adjust --id prod_slow --quantity 20 # 滞销品少量补货
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### ❌ 问题2:库存差异超过5%未深入调查
|
|
156
|
+
|
|
157
|
+
**场景**:定期盘点发现差异
|
|
158
|
+
|
|
159
|
+
**处理流程**:
|
|
160
|
+
1. 核实实际库存,调整账面库存
|
|
161
|
+
2. 记录差异原因(损耗、盗窃、系统错误等)
|
|
162
|
+
3. 差异率 > 5%需要深入调查根本原因
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
# 盘点调整:实际95,直接设为95
|
|
166
|
+
commerce inventory set --id prod_123 --quantity 95
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### ❌ 问题3:滞销商品长期占用库存
|
|
170
|
+
|
|
171
|
+
**滞销商品处理策略**:
|
|
172
|
+
|
|
173
|
+
| 滞销时长 | 处理方式 | 命令示例 |
|
|
174
|
+
|---------|---------|---------|
|
|
175
|
+
| 库存周转率低 | 降价促销、捆绑销售 | 调整价格,增加曝光 |
|
|
176
|
+
| 3个月未动销 | 考虑清仓处理 | 大幅降价或买一送一 |
|
|
177
|
+
| 6个月未动销 | 下架并清理库存 | 捐赠、报废或转移 |
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
# 查看库存历史判断是否滞销
|
|
181
|
+
commerce inventory history --id prod_slow
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### ❌ 问题4:不分析销售数据就补货
|
|
185
|
+
|
|
186
|
+
**错误做法**:直接设置固定数量,不考虑销售速度
|
|
187
|
+
|
|
188
|
+
**✅ 正确做法**:
|
|
189
|
+
```bash
|
|
190
|
+
# 根据销售数据决定补货量(如上周销量50,预计2周销量)
|
|
191
|
+
commerce inventory adjust --id prod_123 --quantity 100
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
### ❌ 问题5:超卖后处理不当
|
|
195
|
+
|
|
196
|
+
**预防措施**:
|
|
197
|
+
- 订单创建时立即预留库存
|
|
198
|
+
- 使用实时库存同步机制
|
|
199
|
+
|
|
200
|
+
**发生后正确处理**:
|
|
201
|
+
1. ✅ 优先处理早期订单(先到先得)
|
|
202
|
+
2. ✅ 主动联系后续客户,提供补偿方案
|
|
203
|
+
3. ✅ 紧急补货,缩短等待时间
|
|
204
|
+
4. ❌ 不要直接取消订单不解释
|
|
205
|
+
5. ❌ 不要让客户长时间等待无反馈
|
|
206
|
+
|
|
207
|
+
## 命令参考
|
|
208
|
+
|
|
209
|
+
### 自然语言映射
|
|
210
|
+
|
|
211
|
+
当用户说:
|
|
212
|
+
- "库存设置为/设为/改为 N" → `commerce inventory set --id XX --quantity N`
|
|
213
|
+
- "商品XX补货50个" → `commerce inventory adjust --id XX --quantity 50`
|
|
214
|
+
- "扣减库存5个" → `commerce inventory adjust --id XX --quantity -5`
|
|
215
|
+
- "查看库存低于10的商品" → `commerce inventory low-stock --threshold 10`
|
|
216
|
+
- "预留库存" → `commerce inventory reserve --id XX --quantity YY`
|
|
217
|
+
- "查看库存历史" → `commerce inventory history --id XX`
|
|
218
|
+
|
|
219
|
+
### 核心功能
|
|
220
|
+
|
|
221
|
+
- `commerce inventory set` - 设置库存为目标值(覆盖当前值)
|
|
222
|
+
- `commerce inventory adjust` - 增减库存(增量 +=/-=)
|
|
223
|
+
- `commerce inventory low-stock` - 查看低库存商品
|
|
224
|
+
- `commerce inventory history` - 查看库存变更历史
|
|
225
|
+
- `commerce inventory reserve` - 预留库存
|
|
226
|
+
|
|
227
|
+
## 详细示例
|
|
228
|
+
|
|
229
|
+
### 查看低库存预警
|
|
230
|
+
```bash
|
|
231
|
+
# 用户说:"查看库存低于5的商品"
|
|
232
|
+
commerce inventory low-stock --threshold 5
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
### 设置库存
|
|
236
|
+
```bash
|
|
237
|
+
# 用户说:"商品prod_123库存设为100"
|
|
238
|
+
commerce inventory set --id prod_123 --quantity 100
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### 补货操作
|
|
242
|
+
```bash
|
|
243
|
+
# 用户说:"商品prod_123补货100个"(在现有基础上增加100)
|
|
244
|
+
commerce inventory adjust --id prod_123 --quantity 100
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### 预留库存
|
|
248
|
+
```bash
|
|
249
|
+
# 用户说:"为订单预留5个商品"
|
|
250
|
+
commerce inventory reserve \
|
|
251
|
+
--id prod_123 \
|
|
252
|
+
--quantity 5
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
### 查看库存历史
|
|
256
|
+
```bash
|
|
257
|
+
# 用户说:"查看商品prod_123的库存变更记录"
|
|
258
|
+
commerce inventory history --id prod_123
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
## 变体库存管理(重要)
|
|
262
|
+
|
|
263
|
+
**这是最常见的库存管理错误,务必理解!**
|
|
264
|
+
|
|
265
|
+
### 核心规则
|
|
266
|
+
|
|
267
|
+
| 产品类型 | 库存设置方式 | 说明 |
|
|
268
|
+
|---------|-------------|------|
|
|
269
|
+
| **有变体的产品** | 必须设置**变体库存** | 产品库存 = 所有变体库存之和(自动计算) |
|
|
270
|
+
| **无变体的产品** | 直接设置**产品库存** | 正常更新即可 |
|
|
271
|
+
|
|
272
|
+
### 正确的库存更新流程
|
|
273
|
+
|
|
274
|
+
```bash
|
|
275
|
+
# 1. 先查看产品是否有变体
|
|
276
|
+
commerce product get --id prod_123
|
|
277
|
+
|
|
278
|
+
# 2. 如果 variants 数组不为空,逐个设置变体库存
|
|
279
|
+
commerce inventory set --id var_abc --quantity 10 # 变体1
|
|
280
|
+
commerce inventory set --id var_def --quantity 10 # 变体2
|
|
281
|
+
commerce inventory set --id var_ghi --quantity 10 # 变体3
|
|
282
|
+
|
|
283
|
+
# 3. 如果没有变体,直接设置产品库存
|
|
284
|
+
commerce inventory set --id prod_123 --quantity 30
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### ❌ 常见错误
|
|
288
|
+
|
|
289
|
+
```bash
|
|
290
|
+
# 错误1:直接设置有变体产品的产品级库存(会被 API 拒绝)
|
|
291
|
+
commerce inventory set --id prod_123 --quantity 30
|
|
292
|
+
|
|
293
|
+
# 错误2:想设为18,却用了 adjust(结果是当前值+18)
|
|
294
|
+
commerce inventory adjust --id var_abc --quantity 18 # ❌ 增加了18,不是设为18
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
### ✅ 正确做法
|
|
298
|
+
|
|
299
|
+
```bash
|
|
300
|
+
# 用户说:"把所有变体库存都设置为10"
|
|
301
|
+
|
|
302
|
+
# 1. 先获取产品和变体信息
|
|
303
|
+
commerce product get --id prod_123
|
|
304
|
+
|
|
305
|
+
# 2. 逐个设置变体库存
|
|
306
|
+
commerce inventory set --id var_abc --quantity 10
|
|
307
|
+
commerce inventory set --id var_def --quantity 10
|
|
308
|
+
commerce inventory set --id var_ghi --quantity 10
|
|
309
|
+
|
|
310
|
+
# 产品总库存会自动变为 30(10+10+10)
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
### 批量设置变体库存
|
|
314
|
+
|
|
315
|
+
当用户说"所有变体库存设置为 N"时:
|
|
316
|
+
|
|
317
|
+
1. 先用 `commerce product get --id XX` 获取变体列表
|
|
318
|
+
2. 遍历每个变体,用 `commerce inventory set --id <variant_id> --quantity N` 设置
|
|
319
|
+
3. 确认更新成功后,产品总库存会自动计算
|
|
320
|
+
|
|
321
|
+
## 重要提示
|
|
322
|
+
|
|
323
|
+
- **`inventory set`** 设为目标值,**`inventory adjust`** 增减库存 — 务必区分
|
|
324
|
+
- **有变体的产品必须设置变体库存,不能直接设置产品库存**(会被 API 拒绝)
|
|
325
|
+
- 库存变更会自动记录历史
|
|
326
|
+
- 预留库存不会减少可用库存数量
|
|
327
|
+
- 低库存阈值可自定义(默认5)
|
|
328
|
+
- 使用 `--help` 查看命令详细参数
|