团队跨境电商**业务流程** skill 制作入口(创建 / 沉淀 / 优化 / 复刻 / 微调),专做有明确多步流程、面向产品内部的 Tier2/Tier3 skill。**电商 / 跨境电商(Amazon / 亚马逊 / Shopee / TikTok Shop / eBay / Walmart / Temu / Shopify / 速卖通 / Lazada / SHEIN)的多步业务工作流 skill 走本 skill。** 判定:出现"创建 / 做 / 沉淀 / 封装 / 优化 / 复刻 / fork / refactor + skill"动宾结构,上下文带电商 / 跨境 / ASIN / listing / 选品 / 竞品 / 评论 / 广告 / FBA / 库存 / 关键词 / 类目 / 销量 / BSR / 价格 任一信号,且诉求为多步流程编排 → 必须本 skill。覆盖从零搭(选品 / 广告复盘 / 上新 SOP / FBA 补货 / 评论挖掘 / 价格监控 / 竞品分析 / listing 重写 / listing 生成 / 关键词调研 / 类目趋势)、for...
Scanned 9/12/2026
Install to Claude Code
npx -y skills add ahang1598/doubao-workbuddy-qwenwork-skills --skill linkfox-ecommerce-skill-creator --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Linkfox Ecommerce Skill Creator?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/ahang1598-linkfox-ecommerce-skill-creator)More formats (shields.io, HTML) on the badges page.
---
name: linkfox-ecommerce-skill-creator
description: 团队跨境电商**业务流程** skill 制作入口(创建 / 沉淀 / 优化 / 复刻 / 微调),专做有明确多步流程、面向产品内部的 Tier2/Tier3 skill。**电商 / 跨境电商(Amazon / 亚马逊 / Shopee / TikTok Shop / eBay / Walmart / Temu / Shopify / 速卖通 / Lazada / SHEIN)的多步业务工作流 skill 走本 skill。** 判定:出现"创建 / 做 / 沉淀 / 封装 / 优化 / 复刻 / fork / refactor + skill"动宾结构,上下文带电商 / 跨境 / ASIN / listing / 选品 / 竞品 / 评论 / 广告 / FBA / 库存 / 关键词 / 类目 / 销量 / BSR / 价格 任一信号,且诉求为多步流程编排 → 必须本 skill。覆盖从零搭(选品 / 广告复盘 / 上新 SOP / FBA 补货 / 评论挖掘 / 价格监控 / 竞品分析 / listing 重写 / listing 生成 / 关键词调研 / 类目趋势)、fork 换平台或维度、在现有流程 skill 上改字段 / 阈值 / 报告外观 / 结构 / 大响应落盘。触发短语:"做一个选品流程的 skill"、"沉淀 / 封装一条 SOP 成 skill"、"基于资料/方法论沉淀 skill"、"照着 X 做一个 Y"、"clone for TikTok"、"fork my skill"、"优化这条流程 skill"。即使没说"电商""sop""工作流",只要意图是多步、可重复执行的电商业务流程(选品 / 复盘 / 监控等),也应触发。**分流:单接口 API wrapper / 通用工具 skill 的创建与合规校验走 linkfox-skill-creator;** 一次性分析 / 单点查询 / 纯解读 / 浏览器抓取 / 纯知识型 skill 不在本范围。
---
# 团队电商 Skill 创建工作流(Tier 2 / Tier 3 业务流程,三模式)
本 skill 是团队跨境电商 **Tier 2 / Tier 3 业务流程 skill** 创建的统一入口——专做有明确多步流程、面向产品内部使用的编排型 skill。
**边界(与 `linkfox-skill-creator` 分工)**:
- **Tier 1 只调用、不生产**——本 skill 用 `references/tier1-*` 目录**选/调** Tier 1 数据源,但**不创建、不优化** Tier 1 wrapper。
- 单接口 API wrapper、通用工具型 skill 的**创建与合规校验** → 一律转交 `linkfox-skill-creator`。
- 纯知识型 / 文档库 → 官方 `skill-creator`;浏览器抓取 / 自动化 → `browser-act-skill-forge`。
完整规范见同目录 `SPEC.md`(人读版)。
---
## Tier 1 / 2 / 3 是什么(一句话版)
Tier 是这个 skill **内部有几道工序**。从底往上垒:
| 层 | 一句话定义 | 类比 | 例子 |
|---|---|---|---|
| **Tier 1** | 底层 API / 数据源的薄封装:参数进、单次外部调用、结构化数据出,**无业务编排** | 食材 | `linkfox-amazon-product-detail`(传 ASIN 拿标题/价/评分)—— 真实 skill,已在 `references/tier1-by-vendor.md` |
| **Tier 2** | 综合场景能力:内部含**多步骤编排**——可以是编排多个 Tier 1,也可以是单次外部调用但带模型选 / 模式判断 / 参数校验 / 输出策略等内部决策步骤 | 半成品 | *示意名* `amazon-listing-replicator`(拉详情 + 关键词 + 价格段,吐 listing 草稿) |
| **Tier 3** | 完整业务 SOP,端到端跑完一条业务流程并出报告 | 一道菜 | *示意名* `weekly-sourcing-workflow`:每周选品全流程 |
> ⚠ 表中标注"真实 skill"的可调用;标注 *示意名* 的仅作类比,**不要假定可调用**。
**关键约定**:
- Tier 1 由各 vendor 维护(团队已封装 67 个底层数据源 wrapper),**本 skill 不创建、不优化 Tier 1**——Tier 1 的创建/优化/校验走 `linkfox-skill-creator`。
- 本 meta-skill 只产、只优化 **Tier 2 / Tier 3 业务流程 skill**。
- 用户不知道底层 Tier 1 长什么样——**用户讲业务,agent 选 Tier 1 工具**。
判别硬轴(**与"调几个 API"无关**):
- skill 内部**无业务编排**(纯参数透传 + 单调用)→ **Tier 1**
- skill 内部**有多步骤决策 / 加工**(不论编排对象是 API 还是内部步骤)→ **Tier 2**
- 端到端跑完一条**完整业务 SOP** 并出报告产物 → **Tier 3**
**Tier 1 vs Tier 2 实操判别**:盯住 SKILL.md 的"使用指引 / 流程"段——
- 如果只是"传参 → 调一次 API → 返回结果"线性一步,是 **Tier 1**。
- 如果出现"先 X、再判断 Y、然后选 Z、最后按 W 决定输出"这种**条件分支或多阶段**逻辑(即便外部调用还是一次)→ **Tier 2**。
常见 Tier 2 模式(不依赖具体 skill 知识):
- 「模型选择 + 模式判断 + 输出落盘策略」三件套(典型如生成式封装)
- 「拉数据 → 加工 → 评分 → 取 Top N」内部加工链
- 「先校验输入合法性 → 路由到不同子调用 → 合并结果」
---
## 0. 范围与边界(开工前必排除)
不做 skill / 不进本 skill 的情形:
| 信号 | 处理 |
|------|------|
| 一次性分析 / 单点查询 / 纯解读 | 直接执行,不沉淀 skill |
| **新建** 一个底层 API 薄封装(Tier 1,无内部步骤) | 走 `linkfox-skill-creator`,不进本 skill |
| **新建 / 优化** 通用工具型 skill(非电商多步流程) | 走 `linkfox-skill-creator` |
| **优化 / 校验** 现有 Tier 1 wrapper | 走 `linkfox-skill-creator` |
| **优化 / 微调** 现有 Tier 2 / Tier 3 流程 skill | 走本规范模式 3(frontmatter / 结构 / 落盘 / 错误降级 / 并发),不必走六环全套 |
| 浏览器探索 / 抓取 / 自动化 | 走 `browser-act-skill-forge`,不进本规范 |
| 纯知识型 / 文档库 / 风格指南 | 走 `skill-creator`,不进本规范 |
| MCP server / 插件层 | 不在本 skill 覆盖 |
不确定时问用户:"这个流程将来还要重复跑吗?是不是要跨多个数据源做组合?" 两个都「是」才继续。
---
## 1. 入口决策:选模式(1 / 2 / 3)
| 信号 | 模式 | 主信息源 |
|------|------|---------|
| "帮我做一个 X 的 skill"、"沉淀一条 X SOP"、"build me a skill for X" | **1 新建** | 业务访谈 + `linkfoxagent-v2/` 实时全集 + Tier 1 目录 + 配方表 |
| "基于这篇文章/这份资料做 skill"、"我整理了一套方法论/SOP,帮我做成 skill"、"把知识库沉淀成 skill" | **1 新建(方法论萃取分支)** | 用户资料 → `references/methodology-extraction.md` 萃取 → 接回阶段 2 |
| "照着 Y 做一个 Z"、"clone Y for TikTok"、"复刻一份用于 Ozon" | **2 复刻** | 源 skill + 差异点访谈 |
| "把 W 的 X 改成 Y"、"加字段"、"改阈值"、"优化这条 skill"、"补 frontmatter 触发词"、"refactor this skill" | **3 微调优化** | 现有 skill + 用户指令 + 本规范通用部分 |
切分顺序:
1. 用户原话有无可识别的源 skill?无 → **模式 1**。
2. 有源 skill:全量重做(换平台 / 换打分维度)→ **模式 2**;局部改动(业务行为或规范层面)→ **模式 3**。
3. 进了模式 1:用户是否带了**外部资料 / 方法论文档 / 历史样本**?带了 → 先走**方法论萃取分支**(阶段 0.5,见 §4.1),把资料萃取成方法论草图后接回阶段 2;没带、直接能口述流程 → 走标准阶段 1。
---
## 2. 六环生命周期(三模式共用)
```
生成 → 测试 → 验证 → 评估 → 优化 → 迭代
```
任意模式都必须走完六环。详见 `SPEC.md` §9。
每环必须做的事:
| 环节 | 落地点 | 强度 |
|------|--------|------|
| 生成 | 按模式选模板填空(见模式分支)| ✓ |
| 测试 | 当场跑 2–3 条 prompt(核心 + 边界 + 欠触发探针),不把 prompt 文件落盘到产物里 | ✓ |
| 验证 | 每个 `scripts/*.py` 过三步回环(结构 / 真实 / 错误降级)| ✓ |
| 评估 | `references/self-check.md` 通过 + `quick_validate.py` 通过 | ✓ |
| 优化 | 按反馈三分类(业务理解 / 写法瑕疵 / 触发问题)针对性修 | ✓ |
| 迭代 | 单条试跑独立闭环(不批量过)| ✓ |
---
## 3. 跨模式硬约束
**整个流程禁止跳。以下各条贯穿三种模式所有环节。**
### 3.1 业务语言交互
- 选项用业务后果维度("这步要不要"),不要给技术动作维度("重试 / 改 pageSize / 跳过")。
- 镜像用户用语,不主动夹技术词。
- 仅约束对话和产物 SKILL.md 用户可见部分;`.draft/` 与内部文档照常精确。
### 3.2 用户讲业务,agent 选工具
- 用户描述场景、字段、决策、阈值;agent 决定调哪个 Tier 1、怎么组合。
- **假设用户不了解任何 Tier 1 数据源**。
- **不允许在两个 Tier 1 数据源 / 技术方案之间让用户裸选**。允许的是把方案(含用途与风险)讲给用户听并请其确认。
- 沉默 / "你看着办" / "都行" 不算决策——必须拿到用户显式 OK。
### 3.3 每一步必须有用途
流程型 skill 最大失败模式是堆砌看起来相关、实际没人消费的查询。三道闸:
1. **倒推法**(访谈期)—— 从交付物倒着问需求,没有归宿的步骤推不出来。
2. **用途字段**(生成期)—— 目标 SKILL.md 中每步必须写明"被谁消费"。
3. **DAG 自检**(评估期)—— 机器化校验"每步至少一条出边、每个交付字段至少一条入边",并按 `依赖` 字段做拓扑分层,导出**可并行组** + 标记"疑似无谓串行"(详见 `references/workflow-skill-template.md` 的 DAG 校验规则)。
### 3.4 输出规范(路径 + 产物交付协议)
所有 Tier 2/3 产物 skill 必须遵守同一套输出规范。**不得自定义会话目录结构**。
> **生成期 vs 运行期边界**:本 meta-skill 的 `references/skill-output-protocol.md` 与 `references/output-contract.md` 只在**生成期**给 agent 看,不进产物。产物须把协议知识**内联**到自己的 `references/output-schema.md`(可从 `references/output-schema-template.md` 复制改写),SKILL.md 只引用产物本地路径。**禁止**在产物中出现 `linkfox-ecommerce-skill-creator/...` 反向引用。
**路径硬约束**(适用所有 skill 的所有落盘行为):
- 最终交付物 → `<cwd>/linkfox/<YYYY-MM-DD>/<session>/reports/`
- 中间数据 → `<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/`
- 图片/视频/音频 → `<cwd>/linkfox/<YYYY-MM-DD>/<session>/media/`
- `<session>` 取自环境变量 `SESSION_ID`(无值则自动生成 `HHMMSS-<6 hex>`);同回合所有 skill 自动聚合到同一会话目录
- 会话级 `_meta.json` 与全局 `linkfox/index.jsonl` 由共享脚本自动维护
- **禁止**写 `/tmp`、`/var/tmp` 或 `<cwd>` 之外的路径;当前目录不可写时直接报错
- 实现入口:复制 `linkfoxagent-v2/_shared/linkfox_paths.py` 进产物 `scripts/linkfox_paths.py`(hash 一致),通过 `resolve_data_path / resolve_report_path / resolve_media_path` 拿路径
**产物交付协议**(仅 Tier 2/3 的最终交付,详见 `references/skill-output-protocol.md`):
产物 skill 脚本通过 **stdout** 按以下两种方式之一输出最终产物,acpx-bridge 自动识别并转为前端可渲染的通知:
1. **文件输出**(结构化 JSON 结果,**推荐**):
```python
if not os.path.isfile(abs_json_path):
raise RuntimeError(f"output file not found: {abs_json_path}")
print(f"Saved full response: {abs_json_path} ({size_bytes} bytes)")
```
- 路径必须绝对,文件必须真实存在且不是目录,文件名必须匹配 `linkfox-<slug>-<数字>.json`
- 括号中的字节数仅用于人读,bridge 不解析
2. **媒体数组输出**(生成图片/视频/音频):
```python
missing = [p for p in abs_media_paths if not os.path.isfile(p)]
if missing:
raise RuntimeError(f"media file not found: {missing[0]}")
print("Saved full response: " + json.dumps(abs_media_paths, ensure_ascii=False))
```
- JSON 数组格式,每个元素为绝对路径,且必须逐项 `os.path.isfile()` 校验通过
- `resolve_media_path()` 只分配路径,不会写文件;必须先把图片/视频内容写入该路径,再输出
- `abs_media_paths` 必须来自 `download_media()` 返回值,或来自 `resolve_media_path()` 后已完成写入的真实文件;禁止复制文档中的占位符路径,禁止使用 `linkfox-generated-media-*` 这类泛化假名
- 支持格式:png/jpg/jpeg/gif/webp/bmp/svg/mp4/webm/mov/mp3/wav
**快速选型**:结构化数据(商品列表、关键词等)→ 写入 JSON 文件 + `Saved full response` 行;图片/视频 → 媒体数组。
**其他约束**:
- **不得自己写 HTML 拼接报告**:报告产物必须 handoff 给 `linkfox-report-generator`(已有规则,本节仅复述)
- 中间步骤的 data/*.json 不强制交付协议格式,但最终面向用户的产物必须走上述两种方式之一
- 访谈纪要、流程草图、选型表、DAG、试跑提示词等**暂存草稿**写入 `.draft/`,只作为生成期工作稿:**不生成、不承诺 resource_link / 文件链接**;需要用户过目时,直接把草稿摘要或全文贴在当前会话中即可
- stdout 可含其他日志;bridge 只匹配 `Saved full response:` 开头的行
### 3.5 并发优先(缩短墙钟时间)
流程型 skill 串行跑完,总耗时 = 各步耗时之和,是"任务跑太久 / 中途卡住"的头号原因。**没有数据依赖的步骤默认并行,不要无谓串行。**
- 每步必须写齐 `依赖` 字段(见 `references/workflow-skill-template.md` §3)——它是判断能否并行的唯一依据,**不能省**。
- 按 `依赖` 把流程拓扑分层:同层(彼此无依赖)步骤归为一个**并行层**,在产物 SKILL.md 流水线章节开头写一段「执行编排」声明并行计划。
- 并行靠**主流程在一轮里批量发起多个互相独立的工具调用**实现——**不使用 subagent**(本环境不支持)。
- 有真实数据依赖的步骤必须串行;**不要为并行而并行**,否则会拿到空数据 / 脏数据。
- 并发设计要在访谈阶段 4 用业务语言讲给用户听并确认合理性(见 `references/interview-playbook.md` 阶段 4)。
### 3.6 大纲化:SKILL.md 是大纲,细节按步加载
流程型 skill 又长又复杂,**把全部步骤细节一次性写进 SKILL.md,agent 执行到后面的步骤时会被前面大量细节干扰、注意力失焦**。两层结构治这个病:
- **SKILL.md 流水线章节只写大纲**:一段「执行编排」+ 一张流水线总览表(每步一行:标题 / 一句话 / `依赖` / `用途` / 指向 `references/steps/S<N>.md`);让 agent 始终看得到完整流程图与并行计划。
- **单步血肉落在 `references/steps/S<N>.md`**(输入 / 操作 / 输出 / 落盘 / 参数),agent 执行到该步才 Read,只把当前步细节加载进上下文。
- **拆分门槛**(满足任一即拆):步骤 ≥ 4;或单步细节 ≥ 8 行;或预计 SKILL.md 正文 > ~200 行。短流程(≤ 3 步且每步几行)可内联,不强拆。
- `依赖` / `用途` 必须留在大纲表里(DAG 校验与并行编排靠它们);细节才进 steps 文件。详见 `references/workflow-skill-template.md` §3 与 `references/target-structure.md`。
---
**入口**:用户没有可参考的源 skill,从业务诉求出发从零搭。
### 4.1 生成
#### 阶段 0:定址 + 抽取已知
- 抽取本会话已有信息(访谈剧本"阶段 0"),已知的不再问。
- 给完工作名后立刻按 `references/target-structure.md` 的"输出位置默认"规则确定 `<产物目录>` 并建好骨架(含空的 `.draft/`),后续草稿都写进它,避免 cwd 漂移。
#### 阶段 0.5:方法论萃取(条件分支)
**仅当**用户带了外部资料 / 方法论文档 / 历史样本时进入;用户能直接口述流程则跳过本阶段。
按 `references/methodology-extraction.md` 执行四步:① 归集原始资料并落盘 `.draft/raw-materials/`;② 萃取成结构化方法论 `.draft/methodology.md`;③ 通用化处理(思想通用就中性化,机制专属打 `仅适用 <平台>`);④ 盘 `.draft/platform-coverage.md`(平台 × 步骤 数据支持矩阵,标出数据缺口)。
产出的方法论步骤序列**等价于阶段 1 的"用户自述"**——向用户复述确认方法论框架后,**直接进入阶段 2**,不再重复自由叙述。忠实性底线:方法论只能从资料来,缺的标 `TBD`,不臆造。
#### 阶段 1:用户自述(不可跳过)
让用户用自己的话讲一遍场景与流程,agent 只听不抢话。**没有可识别步骤序列就不许进阶段 2。**
创建产物目录前先确定 `<skill-name>`:目录名、frontmatter `name`、交付时提到的 slug 必须完全一致;只能使用小写字母、数字和连字符 `-`(正则:`^[a-z0-9-]+$`),不得包含大写、下划线、空格、中文或其它符号。
#### 阶段 2:扫描 v2 实时全集 → 用索引表辅助筛选
**模式 1 的核心动作**:一次性把候选链路 ready:
`linkfoxagent-v2/` 实时目录是能力发现的 SOT;`references/tier1-*` 与 `tier1-recipes.yaml` 是基于 v2 的二次摘要 / 导航缓存,只用于加速分类和高频链路匹配。创建时必须先以 v2 实时全集做设计参考,最终候选以实时目录和对应 `SKILL.md` frontmatter 为准;但当前运行只能调用目标 agent 已挂载的 skill,未挂载能力不得假定可用。
1. **扫描 `linkfoxagent-v2/` 实时全集**:运行 `python <本 skill>/scripts/list_v2_skills.py --view inventory --format markdown`,必要时用 `--query <关键词>` 缩小候选;需要分类视图时用 `--view catalog|platform|vendor`。全集只用于设计参考,不代表目标 agent 运行时会自动挂载。
2. **用 `references/tier1-recipes.yaml` 做高频链路匹配**:用户原话/自述里有匹配 `keywords` 的配方 → 以配方链路为第一候选,但每个 slug 必须通过 `python <本 skill>/scripts/list_v2_skills.py --view recipes-validation --strict-recipes` 校验存在。
3. **用 `references/tier1-catalog.md` / `tier1-by-platform.md` 辅助收窄**:按能力桶和平台筛候选;这些表只作导航,不能覆盖实时 v2 判断。
4. **同能力选型**:依次比较——覆盖站点 → 数据维度(详情/历史/估算)→ 计费量级。
5. **筛掉未挂载能力**:设计时看过但当前 agent 未挂载的候选不能写成当前可执行步骤。若缺少关键能力,必须在方案中标记“需先安装后可用”,并提示用户可通过“技能广场”或 `https://skill.linkfox.com/` 安装所需 skill;安装后可从用户自己的 `skills/` 路径访问。也可改用已挂载能力重做流程;不得承诺运行时自动加载或自动修改 `dependencies.json`。
把候选链路写到 `<产物目录>/.draft/mapping.md`:
| 步骤 | 业务动作 | 选用 Tier 1 slug | 用途 | 风险/局限 | 备选 |
#### 阶段 3:缺漏分析 + 字段深挖
按访谈剧本"阶段 3"对自述做缺漏分析与补全;对每步深挖字段、参数、报告诉求。业务模糊处允许标 `TBD`,但 `TBD` 在评估环节会被作为硬错误暴露。
#### 阶段 4:选型确认
agent 自己选好 Tier 1 链路,按下面模板讲给用户听:
> **业务目标**:XXX
> **每步用途**:第 1 步…用途…;第 2 步…用途…
> **调用参数**:每个 Tier 1 的关键参数 + 默认值 + "运行时入参 / 默认值"性质标注
> **风险/取舍**:…
> **替代方案**(如有):…
**调用参数必须主动给默认值**并标注性质,让用户决定接受、改默认、或升级为运行时入参。**必须拿到用户显式决策才能进阶段 5**。
#### 阶段 5:合成试跑提示词
由 **agent 自己合成** 2–3 条试跑提示词(不向用户索取,从访谈纪要中提取真实值与用户用词风格)。三种类型:核心 + 边界 + 欠触发探针。写到 `<产物目录>/examples/trial-prompts.md`。
#### 阶段 6:生成产物目录(按模板填空,落盘成最终的 skill 文件)
按 `references/target-structure.md` 创建目录结构,按 `references/workflow-skill-template.md` 填空生成 `SKILL.md`:
- 中文为主;触发词、字段名、参数名保留英文原词。
- 触发词同时含中英短语,覆盖正向场景与同义改写,并按模板要求**刻意"推一把"对抗欠触发**。
- **大纲化(治长流程注意力失焦)**:SKILL.md 流水线章节只写**大纲**——执行编排 + 流水线总览表(每步一行:标题 / 一句话 / `依赖` / `用途` / 指向 `references/steps/S<N>.md`);每步血肉(输入 / 操作 / 输出 / 落盘 / 参数)写进 `references/steps/S<N>.md`,agent 执行到该步才加载。拆分门槛见模板 §3:步骤 ≥ 4、或单步细节 ≥ 8 行、或预计主体 > ~200 行任一即拆;短流程(≤ 3 步且每步几行)可内联不强拆。
- 不论内联还是拆到 steps/,每步都必须写齐 `输入 / 操作 / 输出 / 用途` 四项,且 `依赖` / `用途` 必须出现在 SKILL.md 大纲表里(DAG 与并行编排靠它们)。
- 报告章节由访谈纪要驱动;本 skill 只列「数据来自哪步、关键字段、口径」,**样式/排版/md & html 导出/元信息块统统不写**。
- **已挂载能力(硬规则)**:产物 SKILL.md 的每个可执行步骤只能引用当前 agent 已挂载的公共 skill;未挂载 skill 只能写入局限性或安装提示,不能伪装为可执行步骤。安装提示必须指向“技能广场”或 `https://skill.linkfox.com/`,并说明安装后可从用户自己的 `skills/` 路径访问。不得承诺运行时自动加载、自动修改 `dependencies.json` 或让用户处理 git。
- **报告产物 handoff(硬规则)**:只要 SKILL.md 含「报告产物」章节,章节末尾必须植入下面这段(语义不可改):
> ⚠ 如果需要生成报告 / 精美报告,必须去阅读 SKILL `linkfox-report-generator`,根据它的规范来。本 skill 只准备业务数据;样式、排版、md/html 导出、元信息块统统由 `linkfox-report-generator` 负责。不要在此处复制报告样式或 html 模板。
本仓库 `references/workflow-skill-template.md` §4 已固化此模板。
- **大请求 / 大响应双向暂存审视**:每一步都从两端审视,命中即按 `references/large-response-snippet.md` 处理,统一走产物自带的 `scripts/response_io.py`(hash 一致):
- **响应端**:若"字段数 ≥ 10 / 含数组 / 含分页 / 含长文本 / 输出会被下游复用"任一 → 用 `run` 落盘 + `read` 投影,嵌入大响应段落。
- **请求端**:若请求参数"含大数组(几百个 ASIN/词)/ 含长文本 / **直接来自上游落盘文件**"任一 → 用 `run --params-file <路径>` 从文件读参数,**不要**把大 JSON 拼进命令行/上下文。
- 把本 skill 的 `scripts/response_io.py` 与公共 `linkfoxagent-v2/_shared/linkfox_paths.py` 复制进产物 `scripts/`,hash 保持一致。`linkfox_paths.py` 的唯一权威源是 `_shared`,路径规范变化时只改 `_shared` 并重新复制;所有落盘必须经 `linkfox_paths.resolve_*_path`,**禁止**裸写绝对路径或 `/tmp`。
- **最终交付遵循 skill-output-protocol**:产物脚本的 stdout 必须按 `references/skill-output-protocol.md` 两种方式之一输出最终产物(文件输出 / 媒体数组)。仅当用户明确说"只要原始数据 / 不要走 bridge"时可豁免,并在 SKILL.md 局限性章节注明。协议知识须**内联**到产物自带的 `references/output-schema.md`,产物 SKILL.md 只引用产物本地路径。**严禁**在产物中出现 `linkfox-ecommerce-skill-creator/...` 路径。
### 4.2 测试 / 验证 / 评估 / 优化 / 迭代
走 §2 六环。具体动作见 §7(通用环节)。
---
## 5. 模式 2:复刻
**入口**:用户指向一个已有 Tier 2/3 skill,要 fork 一份(换平台 / 换打分维度 / 换报告外观)。
### 5.1 生成
#### 5.1.1 定位源 skill
读源 skill 全文,抽出:
- frontmatter(name / description / 同义词列表)
- 流水线步骤 + 每步用途
- Tier 1 链路
- 报告产物模板
写到 `<产物目录>/.draft/source-skill-snapshot.md`。
#### 5.1.2 差异点访谈(业务语言)
只问差异,不重做完整访谈:
- 平台/站点变了吗?
- 业务目标的核心维度变了吗?(例:从"潜力筛"变"竞品对标")
- 输入/输出字段要增删吗?
- 报告外观要调吗?
每个差异点都要拿到用户显式确认。
#### 5.1.3 Tier 1 链路重选
差异点落到 Tier 1 链路上:
- **平台变了** → 进 `tier1-by-platform.md` 找新平台对位 slug。例:amazon `linkfox-junglescout-keyword-by-keyword` → tiktok `linkfox-fastmoss-product-search`。
- **维度变了** → 回 `tier1-catalog.md` 重选能力桶。
- **完全对位**(只是包装变) → 链路不动,只改报告与 UI。
写到 `<产物目录>/.draft/diff.md`:
| 章节 | 源 skill | 新 skill | 改动理由 |
#### 5.1.4 生成产物目录
把源 skill 完整复制到 `<产物目录>`,按 `diff.md` 逐章替换:
- frontmatter `name` / `description` 必改:**5–10 个同义词每个都要审查是否仍贴合新场景**;不贴的换掉,再补 1–2 个新场景的口语化说法。
- 替换样例 ASIN / 站点 / 阈值。
- 每步「用途」字段重写——源 skill 的用途文案在新场景下未必成立。
### 5.2 后续环节
走 §2 六环。**DAG 自检必须重跑**——平台或维度变了,源 skill 的连通性不再保证。
---
## 6. 模式 3:微调优化
**入口**:现有 **Tier 2 / Tier 3 流程 skill** 做局部改动——无论改的是业务行为(字段、阈值、口径)还是规范层面(frontmatter、结构、错误降级、大响应落盘、并发编排、scripts 封装)。
> Tier 1 wrapper / 通用工具 skill 的优化与校验**不在本模式**,转交 `linkfox-skill-creator`。
触及流水线增删步骤 / 改 Tier 1 链路 → **升级到模式 2**。
### 6.1 体检 + 变更面识别
读现有 skill 全文,按以下顺序扫一遍:
1. `python <本 skill>/scripts/quick_validate.py --type A <待改 skill>` —— 静态规则与 runtime helper hash,硬错误必修。
2. `python <本 skill>/scripts/verify_skill_scripts.py <待改 skill>`(如有 scripts/)—— 三步回环,崩溃 / 不优雅降级必修。
3. 对照 `references/self-check.md` 逐条勾。
4. 阅读 frontmatter description:是否含 5–10 同义改写 + 反向补漏一句?是否覆盖中英双语?
5. 阅读 SKILL.md:是否把不该 inline 的大响应/长 schema 散在正文?是否缺 handoff(含报告产物时)?
把体检 finding + 用户主动提出的变更,统一写到 `<待改 skill>/.draft/change-plan.md`,按变更面分类:
| 变更面 | 处理 | 重跑环节 |
|--------|------|---------|
| 字段增删(输出多一列、报告加一节) | 直接 patch SKILL.md + 模板 | 评估 / 试跑 |
| 阈值 / 默认参数(调权重、改 top N) | 直接 patch SKILL.md | 试跑 |
| description 同义词 / 反向补漏 | 重写 frontmatter(保留原核心场景一句)| **欠触发探针必跑** |
| frontmatter 含非法字段 | 删除或迁移到 `metadata.*` | 评估 |
| 目录结构与 `target-structure.md` 不符 | 按 archetype 重排(不改文件内容)| 评估 |
| 大响应直接 inline 在 SKILL.md | 嵌入 `large-response-snippet.md` 落盘段,复制 `response_io.py` | 评估 |
| 大请求把大 JSON 拼进命令行/上下文(含上游落盘当入参) | 改用 `response_io.py run --params-file <路径>` 从文件读参数 | 评估 / 试跑 |
| scripts/*.py 崩溃 / 不返回 `{"error": true}` | 包 try/except,统一错误格式 | 验证 |
| 报告产物章节缺 handoff | 章节末尾追加 `linkfox-report-generator` handoff 段 | 评估 |
| 多步流程缺并发设计(无 `依赖` / 执行编排) | 补 `依赖` 字段与并行层,写「执行编排」 | 评估 / 试跑 |
| 落盘路径写 `/tmp` 或绝对路径 | 从 `linkfoxagent-v2/_shared/linkfox_paths.py` 复制,改走 `resolve_*_path` | 评估 |
| 最终交付未遵循 skill-output-protocol(无 `Saved full response` 标准输出) | 按协议补 `Saved full response` 文件或媒体数组输出 | 评估 / 试跑 |
| 产物反向引用 `linkfox-ecommerce-skill-creator/...` | 内联到产物自带的 `references/output-schema.md` | 评估 |
| 流水线增删步骤 / 改 Tier 1 链路 | **升级到模式 2** | 全六环 |
如果体检发现业务/口径层面有疑问(权重是否合理、步骤是否多余),列出给用户确认——用户确认要改时纳入变更面,不确认则不动。
### 6.2 改动后必跑
- `scripts/quick_validate.py --type A <skill>` 通过
- `scripts/verify_skill_scripts.py <skill>` 通过(如改了 scripts/)
- 验证 stdout 输出符合 skill-output-protocol(`Saved full response` 行 / 绝对路径 / 文件名 `linkfox-<slug>-<数字>`)——动了最终交付输出格式时必跑
- 产物输出 `product_list` 时:`python scripts/validate_product_payload.py examples/<样本>.json` 通过
- 至少 1 条相关 trial-prompt 重跑
- 改 description → 欠触发探针重跑
> **不做**:本模式不新增 trial-prompts 文件。普通 skill 不强制有 `examples/trial-prompts.md`——那是本 meta-skill 的产物,不是普通 skill 的强制项。
---
## 7. 通用环节细节(三模式共用)
### 7.1 测试(trial prompts)
agent 在当前对话里跑 2–3 条 prompt 验证产物是否符合预期,三种类型必须搭配:
| 类型 | 用意 |
|------|------|
| **核心** | 最典型用法跑通——验证 happy path |
| **边界** | 极端值 / 空结果 / 失败路径——验证降级 |
| **欠触发探针** | 用户用最简短随意的口吻说同样诉求——验证反向补漏起作用 |
> **不落盘**:trial prompts 是 agent 自检手段,不写成 `examples/trial-prompts.md` 提交到产物 skill 里。普通 skill 的 `examples/` 留给真实输入输出样本,不放试跑剧本。
> **唯一例外**:本 meta-skill (`linkfox-ecommerce-skill-creator`) 自己保留 `examples/trial-prompts.md`——验的是 meta-skill 自己(创建工作流)能否被正确触发,不是验证产物 skill。
### 7.2 验证(三步回环)
每个 `scripts/*.py` 必须过:
1. `python scripts/foo.py {正确参数}` → 输出非空、结构合法。
2. 真实跑通一次(端到端调 Tier 1)—— 数据匹配预期。
3. 模拟错误参数(不存在的 ASIN、错误站点) → 返回 `{"error": true, "message": "..."}`,不崩溃。
跑 `python <本 skill>/scripts/verify_skill_scripts.py <产物目录>` 一条命令统一执行。
### 7.3 评估
**静态层**:
```bash
python <本 skill>/scripts/quick_validate.py --type A <产物目录>
```
通过后再过 `references/self-check.md` 人工 checklist。关键项:
- [ ] frontmatter 只用允许字段,name = 目录名,description 双语 + 反向补漏。
- [ ] Tier 已确认(2 / 3),主体章节齐全。
- [ ] 每个 scripts/*.py 通过三步回环验证。
- [ ] 大响应步骤嵌入落盘段落,`response_io.py` hash 一致。
- [ ] 流水线 DAG 自检通过(每步至少一条出边、每个交付字段至少一条入边)。
- [ ] 所有可执行步骤引用的公共 skill 均已在当前 agent 挂载;未挂载能力已标记为需用户通过技能广场或 `https://skill.linkfox.com/` 安装,未写成当前可执行步骤。
- [ ] 含「报告产物」章节的 skill:章节末尾含 `linkfox-report-generator` handoff 段落,没有自造报告样式 / html。
- [ ] 所有落盘走 `linkfox_paths.resolve_*_path`,无 `/tmp` / 绝对路径硬编码;`linkfox_paths.py` hash 与 `linkfoxagent-v2/_shared/linkfox_paths.py` 一致。
- [ ] 最终交付 stdout 符合 skill-output-protocol(`Saved full response` 行合法 / 文件路径为绝对路径 / 媒体格式在支持列表内)。
### 7.4 优化(反馈三分类)
| 类别 | 来源信号 | 处理 |
|------|---------|------|
| 业务理解错误 | "这步不该有"、"权重不对" | 回访谈步骤修(模式 1)/ 回 diff.md 修(模式 2)/ 升级到模式 2(模式 3 越界)|
| 写法瑕疵 | "标题要粗体"、"日期格式" | 直接改产物(模式 3)|
| 触发问题 | "我说 X 它没反应" | 改 frontmatter description,欠触发探针重跑(模式 3)|
### 7.5 迭代(单条试跑闭环)
```
跑一条 → agent 自检 → 呈现结果 → 用户反馈 → 重跑(如需)→ 用户明确 OK → 下一条
```
**关键约束**:
- 每条 prompt **独立走一遍**,不要批量跑完再统一处理。
- **agent 自检** 时把问题分两类:
- **明显错误,自行修复**:工具调用失败 / 参数错误 / 字段中英混用 / 章节顺序错位 / 数字精度 / 排版瑕疵。修完记下"自检发现 + 修复动作"。
- **会改变业务理解或权重的变更,留给用户**:评分权重 / 增删步骤 / 替换 Tier 1 / 阈值改动。**不要擅自改**,列出"建议 + 理由"等用户决策。
- **沉默 / "还行" / "差不多" 不算满意**——必须再问具体哪里要改,直到拿到明确的"这条 OK,下一条"信号。
如果用户当面跳过试跑("不用试,先看看"),把这一步标记为"未执行",写进 `<产物目录>/.draft/dag.md` 的产物注记,方便下次会话补做。
---
## 8. 与外部 skill 的边界
| 工具 | 何时去用 | 何时回本 skill |
|------|---------|--------------|
| `browser-act-skill-forge` | 浏览器探索 / 抓取 / 自动化 | 抓取产物要被某 Tier 2/3 流程消费时回来 |
| `skill-creator` | 纯知识型 / 文档库 / 个人级 / 量化评测 | 不回 |
如果访谈中发现用户想要的是"一次性分析"或"单点查询",直接告知并建议直接执行,不要硬塞流水线。
---
## 9. 参考资料
**人读规范**:`SPEC.md`(一页纸,开工前先看)
**Tier 1 目录**:
- `references/tier1-recipes.yaml` —— 业务配方(intent → primitive chain),新建模式先扫
- `references/tier1-catalog.md` —— 能力主表(17 桶)
- `references/tier1-by-platform.md` —— 平台索引
- `references/tier1-by-vendor.md` —— 厂商导航索引
- `scripts/list_v2_skills.py` —— 扫描 `linkfoxagent-v2/` 实时全集,创建阶段用于补漏、分类视图生成和 recipes slug 校验
**决策与流程**:
- `references/interview-playbook.md` —— 三模式访谈剧本
- `references/methodology-extraction.md` —— 方法论萃取分支(资料 → 结构化方法论 → 通用化 → 平台数据缺口盘点 → 接回阶段 2)
**模板**:
- `references/workflow-skill-template.md` —— Tier 2/3 流程主模板
- `references/frontmatter-spec.md` —— description 双语 + 反向补漏正反例
> Tier 1 wrapper / 通用工具 skill 的创建模板与脚手架不在本 skill——见 `linkfox-skill-creator`。
**通用规范**:
- `references/encapsulation-guide.md` —— 脚本封装规范
- `references/verification-guide.md` —— 三步回环验证
- `references/trial-and-iterate.md` —— 试跑与迭代
- `references/self-check.md` —— 自检 checklist
- `references/large-response-snippet.md` —— 大响应落盘段落
- `references/target-structure.md` —— 目录结构细则
- `references/output-contract.md` —— 会话目录路径协议 + **载荷 Schema**(`product_list` 等 JSON 内容)
- `references/output-schema-template.md` —— 产物内联 `output-schema.md` 的起草模板
- `references/skill-output-protocol.md` —— **传输协议**(stdout 文件输出 / 媒体数组)
**示例**:
- `references/examples/selection-weekly.md` —— 完整示例:每周选品(Tier 3)
**工具**:
- `scripts/response_io.py` —— 大响应落盘 / 字段投影
- `../_shared/linkfox_paths.py` —— 会话目录解析与上传辅助的唯一权威源;产物 skill 必须复制为 `scripts/linkfox_paths.py`
- `scripts/quick_validate.py` —— frontmatter + 结构静态校验
- `scripts/validate_product_payload.py` —— `product_list` 载荷静态校验(§2.3.1 字段表 / 单位)
- `scripts/validate_envelope.py` —— **已废弃**,仅转发至 `validate_product_payload.py`
- `scripts/verify_skill_scripts.py` —— 三步回环验证执行器
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!