@vocmarket/voc-skill 0.3.35 → 0.3.36

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "voc-intelligence",
3
3
  "description": "VOC intelligence skills for Claude Code: end-to-end VOC business workflows, Xiaohongshu and Douyin trend reports, live social VOC collection, Fmode Doubao image analysis, token/recharge checks, evidence-card outputs, prioritized issue pools, single-problem deep dives, competitor maps, 7-day content plans, VOC-backed speaking script co-creation, boss/operator action plans, and multi-turn memory.",
4
- "version": "0.3.35",
4
+ "version": "0.3.36",
5
5
  "author": {
6
6
  "name": "nkkj-BrainHack"
7
7
  }
@@ -2382,7 +2382,7 @@ Studio 已有 `/balance`、Token 免登录、NewAPI 余额、支付二维码、
2382
2382
 
2383
2383
  ### 21.34 2026-09-06 P1 历史批处理报价适配与偏差校准
2384
2384
 
2385
- 本轮继续推进技能包侧 P1,新增内容已经在源码和测试中闭环;由于已发布的 `0.3.34` 不可覆盖,以下改动随下一版 `0.3.35` 发布。
2385
+ 本轮继续推进技能包侧 P1,新增内容已经在源码和测试中闭环;基础适配已随 `0.3.35` 正式发布,通道模型映射修复随 `0.3.36` 发布。
2386
2386
 
2387
2387
  | 工作项 | 状态 | 落地点 |
2388
2388
  | --- | --- | --- |
@@ -2422,7 +2422,8 @@ Studio 已有 `/balance`、Token 免登录、NewAPI 余额、支付二维码、
2422
2422
 
2423
2423
  - `npm run smoke:cost-calibration`:通过,覆盖小红书历史 Skill 配置、关键词/笔记/评论分页计数、可选作者画像剔除和偏差汇总。
2424
2424
  - `npm run smoke:cost`:通过,既有报价和用量报告回归保持通过。
2425
- - `npm run audit:index`、`npm run acceptance`:需在版本升至 `0.3.35` 后重跑,确认新测试和文档进入发布包。
2425
+ - `npm run audit:index`、`npm run acceptance`:通过,版本 `0.3.35` 的 ZIP/npm/npx/workspace 产物包含新测试和文档。
2426
+ - npm 正式发布:通过,`@vocmarket/voc-skill@0.3.35` registry 可见,指定版本线上 workspace smoke 通过。
2426
2427
 
2427
2428
  #### 尚未由技能包单独完成的事项
2428
2429
 
@@ -99,7 +99,13 @@ function stepCount(step, input) {
99
99
 
100
100
  function modelForConfig(config, api = {}) {
101
101
  const explicit = api.model || api.channel;
102
- if (explicit) return cleanLabel(explicit);
102
+ if (explicit) {
103
+ const normalized = String(explicit).toLowerCase();
104
+ if (normalized === 'ecom' || normalized === 'ecommerce') return 'voc-ecom';
105
+ if (normalized === 'overseas' || normalized === 'overseas-ecom') return 'voc-overseas';
106
+ if (normalized === 'social') return 'voc-social';
107
+ return cleanLabel(explicit);
108
+ }
103
109
  const source = `${config.category || ''} ${api.forwardUrl || ''} ${api.service || ''} ${api.skill || ''}`.toLowerCase();
104
110
  if (source.includes('overseas') || source.includes('amazon') || source.includes('跨境')) return 'voc-overseas';
105
111
  if (source.includes('ecom') || source.includes('taobao') || source.includes('amazon') || source.includes('电商')) return 'voc-ecom';
package/mcp/src/server.js CHANGED
@@ -66,7 +66,7 @@ function normalizeToolResult(result = {}) {
66
66
  function createServer() {
67
67
  const server = new McpServer({
68
68
  name: 'voc-intelligence',
69
- version: '0.3.35'
69
+ version: '0.3.36'
70
70
  });
71
71
 
72
72
  server.registerTool(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vocmarket/voc-skill",
3
- "version": "0.3.35",
3
+ "version": "0.3.36",
4
4
  "description": "Claude Code VOC intelligence skills for Xiaohongshu and Douyin trend reports, live social VOC collection, Fmode image analysis, single-issue deep dives, boss/operator action plans, and multi-turn memory.",
5
5
  "type": "commonjs",
6
6
  "bin": {
@@ -29,6 +29,17 @@ function main() {
29
29
  assert.equal(plans[0].operations.some(operation => operation.path.includes('user-info')), false);
30
30
  assert.equal(plans[1].operations.some(operation => operation.path.includes('user-info')), true);
31
31
 
32
+ const ecomPlans = buildLegacySkillPlans({
33
+ skillConfig: {
34
+ name: 'legacy-ecom-fixture',
35
+ category: 'ecommerce',
36
+ pipeline: [{ step: 1, name: '商品详情', forEach: 'products', api: { channel: 'ecommerce', endpoint: 'product.detail', method: 'GET' } }]
37
+ },
38
+ productCount: 2,
39
+ mode: 'standard'
40
+ });
41
+ assert.equal(ecomPlans[0].operations[0].model, 'voc-ecom');
42
+
32
43
  const estimate = {
33
44
  workflowType: 'legacy_skill:xiaohongshu-mini-voc',
34
45
  selectedMode: 'standard',
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-code-voc-intelligence",
3
- "version": "0.3.35",
3
+ "version": "0.3.36",
4
4
  "capabilities": {
5
5
  "summary": "三类情报源同源接入:①社媒内容 ②国内电商+创作者情报 ③海外选品。统一 search→doc→call、鉴权计费一致。",
6
6
  "channels": [