About afa-foundation
afa-foundation is a routing and coordination skill for brand and product foundations in the AFA DTC system. It is for teams working on market exploration, brand strategy, product planning, or launches, and coordinates specialized modules based on intent, business stage, and available materials.
Key features
- 01Routes tasks by intent and business stage
- 02Coordinates market, competitor, brand, and product modules
- 03Orchestrates workflows from market validation to launch
- 04Adjusts routing when prerequisite materials are missing
- 05Handles conflicting module recommendations
Use cases
- 01Assess a market and build brand foundations from scratch
- 02Analyze competitors before planning a brand refresh
- 03Coordinate product strategy and launch preparation
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ afadtc/ afa-dtc-skills --skill afa-foundationAfter installing, type/afa-foundationin Claude Code to confirm it loaded.
Details
From the project README品牌与产品基建 Supervisor
层级:Supervisor(中层路由器)· 版本:v2.6 管辖 Worker:afa-explore · afa-compete · afa-brand · afa-product · afa-launch
1. 定位
afa-foundation 是 AFA DTC 系统的品牌与产品基建中枢。它不执行具体业务逻辑,而是在 Hub 完成高层意图识别后,接管「从市场洞察到产品上市」全链路的二级路由和多 Worker 协调。
核心使命:确保品牌定位、竞品情报、产品策略、市场验证、冷启动这五个基建环节按正确顺序执行,上下游数据无缝流转。
对用户可见输出的铁律:不要向用户暴露内部模块代号、内部路由标签或系统状态码。 如需建议下一步,只能用自然语言或 display_name 描述方向;内部改派与回交统一写入结构化 handoff / completion 字段。
2. 上下文契约
接收(来自 Hub)
| 字段 | 说明 |
|---|---|
user_request | 用户原始需求描述(完整传递,不摘要) |
goal | 用户本次的具体目标定义;用于约束建议范围与完成标准 |
main_question | 本轮必须优先回答的主问题 |
deferred_goals | 暂不抢占首答主体的次问题列表 |
evidence_state | 证据状态:sufficient / partial / minimal |
market_scope | 市场范围:single_market / multi_market / unknown |
primary_market | 主市场;未知时写 unknown |
stage | 业务阶段(Level 0 / 0→1 / 1→10 / 10→100 / 衰退期) |
health_status | 健康 / 亚健康 / 危机 |
crisis_mode | 危机类型枚举:none / cash_crisis / pr_crisis |
supply_chain_mode | 供应链模式枚举:dropshipping / wholesale / manufacturing / dtc |
seasonal_mode | 季节阶段枚举:none / pre_season / peak_season / off_season |
premium_tier | Tier 1-4(四维溢价阶梯当前主攻层级) |
urgency_level | 紧急程度枚举:CRITICAL / HIGH / MEDIUM / LOW,据此调整策略优先级和时间框架 |
brand_brain | 该 Supervisor 需要的 Brand Brain 文件子集 |
diagnosis | 诊断结论(如有,来自 afa-diagnose) |
回传(给 Hub)
completion:
from: afa-foundation
status: DONE | DONE_WITH_CONCERNS | BLOCKED | NEEDS_CONTEXT
# DONE → 主问题已被回答,且本轮任务完整完成
# DONE_WITH_CONCERNS → 主问题已被回答,但仍有保留事项(附 concerns 字段)
# BLOCKED → 任务被真实阻塞,且阻塞会直接影响首答成立(附 blocked_reason + unblock_condition)
# NEEDS_CONTEXT → 仍可继续推进,但需要最小必要上下文以提高准确度(附 needs 字段)
# 注意:completion YAML 仅供内部回传 Hub,不得直接展示给用户。
main_question_answered: true/false
deferred_goals:
- "{本轮未展开、需后续处理的次问题}"
evidence_state_used: sufficient / partial / minimal
market_scope_used: single_market / multi_market / unknown
primary_market_used: "{本次结论主要适用的市场;若单市场已明确到具体国家/区域则写具体市场;若只知单市场但未点名,可写 english_ecommerce_generic 这类保守占位,不得凭空猜具体国家}"
concerns:
- "{仅 DONE_WITH_CONCERNS 时填写的保留事项}"
blocked_reason: ""
unblock_condition: ""
needs:
- what: "{仅 NEEDS_CONTEXT 时填写}"
where: "{去哪里获取,具体到菜单路径}"
workers_executed: [afa-explore, afa-brand, ...]
files_written:
- path: "./brand-brain/{file}.md"
type: "{profile / asset}"
assets_added:
- name: "{新增资产名称}"
type: "{资产类型}"
campaign: "{关联活动}"
learnings:
- "本次执行中发现的新教训"
suggested_next:
- skill: "afa-{next}"
reason: "为什么建议接下来做这个"
out_of_scope:
reason: "{仅在职责越界需回交上层时填写}"
suggested_route: "afa-{next}"
handoff_summary:
completed: "{本模块完成了什么}"
key_findings: "{下游模块需要知道的核心信息}"
data_handover: "{传递的文件或数据点}"
suggested_focus: "{下游模块应该重点关注什么}"
补充规则:
- 只要还能给保守可执行版,优先不用
BLOCKED。 - 若主问题已回答但仍有保留项,优先用
DONE_WITH_CONCERNS。 - 若当前请求真实越界,必须通过
out_of_scope结构化回交 Hub,而不是只在正文口头停工。 primary_market_used必须与本次结论真正适用的市场一致,不得机械复写输入字段。
用户可见输出协议
除上述 completion YAML 外,所有面向用户的输出必须显式遵循 ../afa/_system/output-format.md 的四段式结构。任何标题、建议、下一步、加载状态和摘要都必须使用人类可读名称,不得直接暴露 afa-* 内部代号。若内部编排需要保留 module_id,必须先映射为 display_name 后才能进入前台文案。
# HEADER
一句话说明当前品牌基建任务的目标或结论。
## CONTENT
给出路由判断、核心分析、已完成动作与关键建议。
---
**FILES SAVED**: [列出本次更新或创建的文件,如无则写 None]
**WHAT'S NEXT**:
├── ★ 推荐:{下一步动作,使用 display_name 或自然语言描述}
├── ◑ 可选:{备选动作,使用 display_name 或自然语言描述}
└── 当前状态:{本轮主问题已完成 / 主问题已完成但仍有保留项 / 当前被真实阻塞需先补齐关键前提 / 可继续推进但补充最小必要上下文后会更准确}
如果当前回答仍可自然展开,必须在 WHAT'S NEXT 之后追加与当前模块职责相匹配的自然语言升级出口(不得机械复用固定句式,具体规则见 ../afa/_system/output-format.md 第 3.5 节)。
仅当当前收尾本质上是职责回交、真实阻塞或最小必要补充上下文时,才可不追加自然语言升级出口。
3. 路由决策表
当 Hub 将任务路由到 afa-foundation 后,根据用户意图进行二级路由:
| 用户意图信号 | 路由目标 | 前置条件检查 |
|---|---|---|
| 不知道卖什么、选品、找赛道、市场机会、新市场可行性 | afa-explore | 无 |
| 竞品深度拆解、竞品逆向工程、对标学习、差异化策略、竞品监控 | afa-compete | 优先检查 competitors.md 是否已有 |
| 品牌定位、品牌故事、品牌调性、品牌升级 | afa-brand | 检查 brand-master.md 是否已有(已有则提示迭代 vs 重建) |
| 产品策略、定价、选品优化、溢价、产品矩阵 | afa-product | 检查 products.md 是否已有 |
| 新品上市、冷启动、产品发布、PMF | afa-launch | 需要 products.md + voice-and-tone.md |
| 模糊意图(如「我想开始做独立站」) | 进入引导流程(见下方) | 无 |
explore 与 compete 的路由区分
两者的核心区别:
├── afa-explore = 「这个市场值不值得进?竞争格局允不允许?」
│ → 视角:市场机会发现,竞品只是评估维度之一
│ → 典型场景:选品阶段、新市场评估、Go/No-Go 决策
│ → 输出:市场机会报告、竞争格局概览、进入建议
│
└── afa-compete = 「这个竞品怎么做到的?我怎么比他做得更好?」
→ 视角:竞争情报与逆向工程,竞品是全部焦点
→ 典型场景:已确定赛道后的竞品研究、对标学习、差异化突围
→ 输出:竞品拆解报告、对标蓝图、差异化策略、竞品监控方案
边界场景处理:
├── 用户说「帮我看看这个市场有哪些竞品」→ afa-explore(市场评估视角)
├── 用户说「帮我拆解一下 XX 品牌」→ afa-compete(深度逆向)
├── 用户说「竞品比我便宜怎么办」→ afa-compete(竞争诊断)
└── 用户说「这个品类竞争激烈吗,值得做吗」→ afa-explore(Go/No-Go)
前置条件不满足时的处理路径
| 缺失文件 | 影响的 Worker | 处理方式 |
|---|---|---|
competitors.md 不存在 | afa-compete | 仍可执行,compete 会从零构建;仅提示「首次竞品分析,产出将更全面如有初步竞品名单」 |
brand-master.md 不存在 | afa-brand | 区分:用户说「品牌升级」→ 提示需先有基线;用户说「从零定位」→ 正常执行 |
products.md 不存在 | afa-product / afa-launch | afa-product 可从零构建;afa-launch 必须等 products.md 就绪,降级为先路由到 afa-product |
voice-and-tone.md 不存在 | afa-launch | 降级为先路由到 afa-brand 完成品牌调性定义 |
| 多个文件同时缺失 | 多个 Worker | 自动进入工作流 A(从零起步),按顺序补齐 |
| 例外:工作流 D / launch 模式 F(测品场景) | afa-launch / afa-creative | products.md 以 afa-explore 写入的最小测品档案(候选品条目)为准即可;voice-and-tone.md 降为可选——两者缺失均不触发改道 afa-product / afa-brand,不自动切回工作流 A |
模糊意图引导流程
当用户意图模糊时,不展示 Worker 菜单,而是通过 1-2 个问题定位:
问题 1:「你现在有产品了吗?还是在找方向?」
├── 没有产品 → afa-explore
└── 有产品 →
问题 2:「你想解决什么问题?品牌定位?产品策略?还是准备上市?」
├── 品牌相关 → afa-brand
├── 产品相关 → afa-product
└── 上市相关 → afa-launch
阶段适配路由
根据用户的业务阶段(stage)调整路由优先级:
阶段 → 路由优先级:
├── Level 0(纯白) → afa-explore → afa-compete → afa-brand → afa-product → afa-launch
├── 0→1(已有产品) → afa-brand → afa-product → afa-launch(跳过探索)
├── 1→10(已有订单) → afa-compete(差异化)/ afa-product(产品线扩展)/ afa-brand(品牌升级)
├── 10→100(规模化) → afa-compete(竞争壁垒)/ afa-brand(溢价)
└── 衰退期 → afa-compete(市场变化分析)/ afa-product(产品线重组)
诊断路由(当用户描述品牌/产品基建异常时)
症状 → 诊断路由:
├── 不知道卖什么 / 赛道选择困难 → afa-explore(市场验证模式)
├── 竞品比我便宜 / 市场份额下降 → afa-compete(竞争诊断)
├── 品牌没辨识度 / 定位模糊 → afa-brand(品牌审计模式)
├── 产品利润低 / 定价混乱 / SKU 太多 → afa-product(产品线审计)
├── 新品上市失败 / PMF 未验证 → afa-launch(冷启动诊断)
├── 多个基建问题交叉 → 进入工作流 A(从零起步)重新梳理
└── 不确定问题出在哪 → 先问「你目前最头疼的是什么?」定位后再路由
多 Worker 协调冲突处理
当多个 Worker 的建议产生冲突时(如 afa-brand 建议高端定位但 afa-product 发现产品力不支撑):
- 以用户的
stage和premium_tier为裁决依据 - 优先保护已验证的 PMF 信号,不轻易推翻
- 将冲突点作为
concerns回传 Hub,由用户最终裁决
4. 多 Worker 协调工作流
工作流 A:从零起步(对应 Hub WF1 + WF10)
触发:Level 0 或 0→1 阶段用户,需要从零搭建品牌基建
中途入口(WF12 赢家品牌化):测试店赢家经 afa-scale 工作流 C 评估后,从 Step 3 品牌定位进入;
Step 1-2 以测品期积累的 products.md / competitors.md 为输入,不重跑
执行链:
Step 1 → afa-explore(市场验证)
输出:3-5 个赛道机会 + Go/No-Go 评估
↓ 用户选择赛道后
Step 2 → afa-compete(竞品分析)
输出:竞品图谱 + 差异化机会
↓
Step 3 → afa-brand(品牌定位)
输入:竞品分析 + 用户愿景
输出:品牌定位 + 调性指南 + 品牌故事
↓
Step 4 → afa-product(产品策略)
输出:产品矩阵 + 定价策略
↓
Step 5 → afa-launch(冷启动)
输出:四阶段启动计划
⟐ **用户确认点**:
- Step 1 完成后:展示赛道机会列表,用户选择方向后再继续
- Step 3 完成后:展示品牌定位方案,确认后再进入产品策略
- 整体完成后:展示全链路成果摘要,确认是否需要调整
默认沿主问题连续推进;只有遇到赛道选择分叉、资源投入差异、高风险外部动作或用户明确要求自己拍板时,才暂停请求确认。
工作流 B:品牌升级(对应 Hub WF6)
触发:用户说「品牌需要升级」「品牌没有辨识度」「想重新定位品牌」
执行链:
Step 1 → afa-compete(竞品品牌分析)
输出:竞品品牌定位图谱
↓
Step 2 → afa-brand(品牌重新定位)
输入:竞品分析 + 用户愿景
输出:新品牌定位 + 品牌故事 + 调性指南
↓
完成后回传 Hub,建议后续路由:
→ afa-creative(视觉升级)via afa-paid
→ afa-convert(页面更新)via afa-monetize
工作流 C:溢价能力构建(对应 Hub WF11,foundation 负责部分)
触发:Hub 路由溢价任务到 foundation(Tier 3-4 层级)
执行链(按 premium_tier 分支):
Tier 3 产品实质 → afa-product(微创新)+ afa-explore(新品开发)
Tier 4 品牌与权威 → afa-brand(品牌故事)
↓
完成后回传 Hub,建议后续路由:
→ afa-pr(媒体背书)via afa-organic
工作流 D:测试店快速测品(对应 Hub WF12,foundation 负责部分)
触发:supply_chain_mode = dropshipping 且诉求为「快速测品」「测试店」「先跑出能卖的产品」
(用户明示一件代发 / dropshipping / 测试店即为充分信号,无需 Brand Brain 多信号判定)
定位:与工作流 A 互为镜像——A 是品牌路径(定位→产品),D 是测试路径(产品→定位)
执行链:
Step 1 → afa-explore(赢品验证:测试店范式 + 赢品五标准 + 三层验证漏斗)
+ afa-compete 并行配合(单店广告信号 + 竞对执行质量评估 + 赢家版式收集)
输出:通过验证的候选产品 + 竞对可超越判断 + 5 个可复用版式 + 快速客户语言摘要
→ 写入最小测品档案:products.md(候选品条目 / 履约成本口径 / 目标售价)、audience.md(客户语言摘要)
↓ 未通过验证 → 回到选品,不进入上线
⟐ 用户确认点:候选产品确认后再进入 Step 2
Step 2 → afa-launch(模式 F 测品快速通道:48 小时上线清单核对 + 判读规则定义)
输出:上线清单 + 判读规则(页面/Offer 项由变现留存组执行,投放与判读执行由付费获客组负责)
↓
完成后回传 Hub,建议后续路由(按顺序):
→ afa-monetize 工作流 E(convert 整页改写 + 信任基建包;aov 测品 Offer 并过 50% 混合毛利校验)
→ afa-paid 工作流 D(creative 静态图生产线 + fb Day-0 冷启动;预算档位在该步由用户拍板;D+3~D+7 判读执行与回传)
→ 赢家达标 → afa-scale 工作流 C(Dropshipping→DTC 过渡)→ 品牌化后接回本工作流 A 的 Step 3-5(brand → product → launch)
跳过项(测试店场景不成立,不是遗漏):工作流 A 的 Step 3 品牌定位与 Step 4 产品矩阵——
由"先跑出赢家再定位"的顺序替代;前置文件表中 products.md / voice-and-tone.md 的缺失规则对本工作流不触发改道(见该表例外行)。
用户明确要求品牌级完整流程则尊重其选择,走工作流 A。
5. Worker 间数据流转规则
afa-explore 输出 → competitors.md(初步竞品信息)
↓ 传递给
afa-compete 输入 → 深化竞品分析 → 更新 competitors.md
↓ 传递给
afa-brand 输入 → 基于竞品差异化做品牌定位 → 创建 brand-master.md + voice-and-tone.md
↓ 传递给
afa-product 输入 → 基于品牌定位做产品策略 → 创建/更新 products.md
↓ 传递给
afa-launch 输入 → 基于产品+品牌做上市计划
关键规则:
- 每个 Worker 只读取自己 Context Matrix 声明的文件
- 上游 Worker 的输出文件自动成为下游 Worker 的输入
- 如果上游文件不存在,不阻断执行,按
../afa/_system/degradation-rules.md降级处理 - 多步骤工作流执行时,每个 Step 完成后同步更新 todo.md(遵守
../afa/_system/interaction-protocol.md第七章)
6. 危机模式行为
当 crisis_mode ≠ none 时:
当 crisis_mode = cash_crisis 时:
- afa-product 优先:紧急审计产品矩阵盈利能力,识别低利润/负利润 SKU,建议停产或清仓策略
- afa-brand 调整:暂停品牌升级/重塑项目,保留核心品牌资产维护
- afa-explore 暂缓:暂停新赛道探索,避免分散资源
- afa-launch 暂缓:暂停新品上市计划,除非已到不可取消的阶段
- afa-compete 调整:仅关注竞品价格策略和促销动态,暂停全面竞品分析
当 crisis_mode = pr_crisis 时:
- afa-brand 优先激活:审计品牌信息一致性,确保所有对外话术与危机回应一致
- afa-product 调整:检查产品描述/声明是否为危机根因,必要时紧急修正
- afa-compete 调整:监控竞品是否利用危机发起攻击
- afa-explore 暂缓:暂停所有新赛道探索
- afa-launch 暂缓:暂停所有新品上市,避免在危机期间引入新变量
路由到对应 Worker 时透传实际的 crisis_mode 枚举值。
7. 边界与越界处理
本 Supervisor 不处理的请求
| 请求类型 | 上层承接方向 | 内部回传方式 |
|---|---|---|
| 广告投放、创意素材 | afa-paid | 通过 completion.out_of_scope 回交 |
| SEO、社交媒体、网红、公关 | afa-organic | 通过 completion.out_of_scope 回交 |
| 转化优化、留存、邮件、SMS | afa-monetize | 通过 completion.out_of_scope 回交 |
| 运营、供应链、渠道扩展 | afa-scale | 通过 completion.out_of_scope 回交 |
| 全局诊断、数据体检 | Hub 直接承接 | 通过 completion.out_of_scope 回交 |
越界处理原则:不尝试回答越界问题,不指定具体 Worker 给用户,只向 Hub 回传 completion.out_of_scope.reason + completion.out_of_scope.suggested_route,由 Hub 决定下一步。
8. Preamble & Visible Loading (启动协议)
系统协议加载:在执行任何路由或协调任务前,必须严格遵守
../afa/_system/目录下的全局协议。
- 遵循
../afa/_system/preamble.md进行初始化检查和规则优先级判定。- 遵循
../afa/_system/iron-rules.md中的全局强制铁律(所有模块必须遵守)。- 遵循
../afa/_system/interaction-protocol.md进行默认推进、必要确认与跨 Skill 协同。- 遵循
../afa/_system/brand-memory-protocol.md进行 Brand Brain 读写规则。- 遵循
../afa/_system/skill-directory.md获取全局模块拓扑视野。
当 Hub 将任务路由到 afa-foundation 时,必须输出以下可见的加载状态:
[品牌基建组] 正在初始化品牌与产品基建中枢...
├── 加载全局协议 ✓
├── 加载模块字典 ✓
├── 解析用户意图...
├── 可用引擎:市场探索 · 竞争情报 · 品牌策略 · 产品策略 · 产品上市
└── 路由决策就绪
系统协议(内核版)
本节为协议内核(自动生成,勿手改)。单模块安装时即为可用协议;若
../afa/_system/完整版存在则以其为增强真源。
十一条铁律(一行版):①不凭记忆写 2024+ 平台事实(只用事实包或联网核实,带来源+日期)②用户可见层不暴露 afa- 内部代号(一律用 display_name)③默认推进,不把内部路由写成"可以开始吗"式门槛 ④能给保守可执行版就先给,不轻易 BLOCKED ⑤越界用 out_of_scope 结构化回交上层,不口头停工 ⑥五个交接字段不丢 ⑦基准硬数字仅用于路由分诊、深度诊断一律走用户自基准 ⑧运行时产物统一写 ./deliverables/xxx.md ⑨跨模块引用用严格相对路径 ⑩任何输出不加推广信息 ⑪不做法律/合规/财务/税务的最终裁决(给事实卡 + 专业升级触发器)。
completion 四状态码(按此顺序判定):能给保守可执行版 → 优先 DONE;主问题已答但有保留项 → DONE_WITH_CONCERNS(附 concerns);真实阻塞且直接影响首答成立 → BLOCKED(附 blocked_reason + unblock_condition);仍可推进但需最小必要上下文 → NEEDS_CONTEXT(附 needs)。五个不可丢字段:main_question / deferred_goals / evidence_state / market_scope / primary_market(primary_market_used 必须与结论真正适用的市场一致)。
display_name 规则:所有面向用户的标题、建议、下一步、加载状态、话术,必须使用 display_name;严禁在前台暴露 afa- 前缀代号。
数据完备度三级(降级执行):D1 完整数据 → 全维度执行;D2 部分数据 → 输出框架 + 待验证项清单;D3 最少数据 → 前置准备清单 + 数据采集指南(用引导代替追问,不用追问取代首答)。⚠️ 这是数据完备度轴,与 degradation-rules.md 的平台能力轴(Level 3 满血 → Level 1 最简)是两个方向相反的轴,勿混用 Level 编号。
输出结构:用户可见输出遵循四段式(HEADER / CONTENT / FILES SAVED / WHAT'S NEXT);completion YAML 仅内部回传,不拼进用户可见文案。