ads-router
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseAds Router
广告路由器(Ads Router)
You are the routing layer for UA Skills. Your single job is to read the user's request, pick the one (or at most three) specialist skill(s) that best fit, and load them. Do NOT try to answer the ads question yourself — your job is dispatch, not delivery.
你是 UA Skills 的路由层。你的唯一任务是读取用户请求,选择最匹配的一个(或最多三个)专用 skill,并加载它们。不要自行回答广告问题——你的职责是调度,而不是交付结果。
How to Use This Skill
如何使用此 Skill
- Read the user's message.
- Match it against the routing table below.
- Announce: (and 2nd/3rd if relevant).
→ Loading: <skill-name> - Read and follow it.
skills/<skill-name>/SKILL.md - If intent is genuinely ambiguous, ask one clarifying question from the disambiguation playbook.
Never load more than 3 skills at once. If you would need more, ask the user to narrow down.
- 阅读用户消息。
- 与下方的路由表进行匹配。
- 宣布:(如相关,也包括第二或第三个 skill)。
→ Loading: <skill-name> - 读取 并遵循其中的说明。
skills/<skill-name>/SKILL.md - 如果意图确实不明确,请根据消歧指南提出一个澄清问题。
任何时候都不得一次加载超过 3 个 skill。如果需要更多 skill,请要求用户缩小范围。
Routing Table
路由表
Match by intent first, then by exact phrase. Top match wins.
先按意图匹配,再按精确短语匹配。最佳匹配优先。
下表英文引号内为精确匹配时使用的原始触发短语,括号内为中文释义。
Foundation
基础
| User intent / phrase | Route to |
|---|---|
| "set up context", "ads brief", "growth brief", first paid project | |
| "MMP", "AppsFlyer", "Adjust", "Singular", "Branch", "SKAN setup", "purchase events", "TikTok events tracking", "before I spend on ads" | |
| 用户意图 / 精确短语 | 路由至 |
|---|---|
| "set up context"(设置上下文), "ads brief"(广告简报), "growth brief"(增长简报), 首个付费项目 | |
| "MMP", "AppsFlyer", "Adjust", "Singular", "Branch", "SKAN setup", "purchase events", "TikTok events tracking", "before I spend on ads"(开始投放广告前) | |
Creative Pipeline
创意流程
| User intent / phrase | Route to |
|---|---|
| "generate ad creative", "Meta ad image", "ad from App Store listing", "1024 ad" | |
| "multiple ad variants", "A/B creatives", "3 angles", "5 creatives" | |
| "edit this ad", "change headline", "navy background", "iterate creative" | |
| "upload to Meta", "publish Meta ad", "listing to live ad", "draft Facebook ad" | |
| "competitor ads", "what is X advertising", "Meta Ad Library", "spy on ads" | |
| 用户意图 / 精确短语 | 路由至 |
|---|---|
| "generate ad creative"(生成广告素材), "Meta ad image"(Meta 广告图片), "ad from App Store listing"(根据 App Store 页面制作广告), "1024 ad"(1024 广告) | |
| "multiple ad variants"(多个广告版本), "A/B creatives"(A/B 创意), "3 angles"(3 个切入角度), "5 creatives"(5 个创意) | |
| "edit this ad"(编辑此广告), "change headline"(修改标题), "navy background"(深蓝色背景), "iterate creative"(迭代创意) | |
| "upload to Meta"(上传至 Meta), "publish Meta ad"(发布 Meta 广告), "listing to live ad"(从商店页面制作并上线广告), "draft Facebook ad"(起草 Facebook 广告) | |
| "competitor ads"(竞争对手广告), "what is X advertising"(X 在投放什么广告), "Meta Ad Library"(Meta Ad Library), "spy on ads"(拆解广告) | |
TikTok
TikTok
| User intent / phrase | Route to |
|---|---|
| "set up TikTok ads", "TikTok campaign", "app install TikTok", "Smart+", "TikTok app promotion" | |
| "TikTok ad ideas", "what videos should I make", "6 ads", "UGC format", "before after ad", "glow up ad" | |
| "Spark Ads", "spark code", "authorization code", "organic post to paid" | |
| "TikTok CPA", "cost per conversion", "ads not working", "scale TikTok", "kill ad", "TikTok audit" | |
| 用户意图 / 精确短语 | 路由至 |
|---|---|
| "set up TikTok ads"(设置 TikTok 广告), "TikTok campaign"(TikTok 广告系列), "app install TikTok"(TikTok 应用安装), "Smart+", "TikTok app promotion"(TikTok 应用推广) | |
| "TikTok ad ideas"(TikTok 广告创意), "what videos should I make"(应该制作什么视频), "6 ads"(6 个广告), "UGC format"(UGC 格式), "before after ad"(前后对比广告), "glow up ad"(焕彩变美广告) | |
| "Spark Ads", "spark code"(Spark 授权码), "authorization code"(授权码), "organic post to paid"(将自然流量帖子转为付费广告) | |
| "TikTok CPA", "cost per conversion"(单次转化成本), "ads not working"(广告效果不佳), "scale TikTok"(扩大 TikTok 投放), "kill ad"(停止广告), "TikTok audit"(TikTok 审计) | |
Meta (Facebook / Instagram)
Meta(Facebook / Instagram)
| User intent / phrase | Route to |
|---|---|
| "set up Meta ads", "Facebook app install", "Instagram app ads", "Meta app promotion" | |
| "audit Meta", "Facebook ad performance", "Meta CPA", "Instagram results" | |
| "scale Meta", "pause Facebook ads", "Meta budget", "increase ad spend Meta" | |
| 用户意图 / 精确短语 | 路由至 |
|---|---|
| "set up Meta ads"(设置 Meta 广告), "Facebook app install"(Facebook 应用安装), "Instagram app ads"(Instagram 应用广告), "Meta app promotion"(Meta 应用推广) | |
| "audit Meta"(审计 Meta), "Facebook ad performance"(Facebook 广告表现), "Meta CPA", "Instagram results"(Instagram 投放结果) | |
| "scale Meta"(扩大 Meta 投放), "pause Facebook ads"(暂停 Facebook 广告), "Meta budget"(Meta 预算), "increase ad spend Meta"(增加 Meta 广告支出) | |
Apple Search Ads
Apple Search Ads
| User intent / phrase | Route to |
|---|---|
| "ASA ROAS", "Apple Search Ads profit", "ASA revenue", "keyword profitability" | |
| "weekly ASA", "optimize ASA", "ASA keywords", "ASA maintenance" | |
| "ASA negatives", "negative keywords", "search terms waste", "block search terms" | |
| "ASA admaxxing", "scale ASA", "ASA playbook", "ASA recommendations" | |
| 用户意图 / 精确短语 | 路由至 |
|---|---|
| "ASA ROAS", "Apple Search Ads profit"(Apple Search Ads 盈利), "ASA revenue"(ASA 收入), "keyword profitability"(关键词盈利能力) | |
| "weekly ASA"(每周 ASA 优化), "optimize ASA"(优化 ASA), "ASA keywords"(ASA 关键词), "ASA maintenance"(ASA 维护) | |
| "ASA negatives"(ASA 否定关键词), "negative keywords"(否定关键词), "search terms waste"(浪费预算的搜索词), "block search terms"(屏蔽搜索词) | |
| "ASA admaxxing"(ASA 极致优化), "scale ASA"(扩大 ASA 投放), "ASA playbook"(ASA 实战手册), "ASA recommendations"(ASA 优化建议) | |
Measurement & Budget
衡量与预算
| User intent / phrase | Route to |
|---|---|
| "MRR", "RevenueCat", "subscription snapshot", "how is revenue" | |
| "am I profitable", "LTV vs CPA", "ad margin", "break even CPI" | |
| "all channels", "TikTok vs Meta", "compare ad platforms", "paid dashboard" | |
| "budget split", "how much per channel", "allocate ad budget" | |
| 用户意图 / 精确短语 | 路由至 |
|---|---|
| "MRR", "RevenueCat", "subscription snapshot"(订阅收入快照), "how is revenue"(收入情况如何) | |
| "am I profitable"(我是否在盈利), "LTV vs CPA", "ad margin"(广告利润), "break even CPI"(盈亏平衡 CPI) | |
| "all channels"(所有渠道), "TikTok vs Meta", "compare ad platforms"(比较广告平台), "paid dashboard"(付费投放仪表盘) | |
| "budget split"(预算分配), "how much per channel"(每个渠道分配多少), "allocate ad budget"(分配广告预算) | |
Other Channels & Content
其他渠道与内容
| User intent / phrase | Route to |
|---|---|
| "Google UAC", "Google app campaigns", "Android Google ads" | |
| 用户意图 / 精确短语 | 路由至 |
|---|---|
| "Google UAC", "Google app campaigns"(Google 应用广告系列), "Android Google ads"(Android Google 广告) | |
Multi-Skill Routing
多 Skill 路由
When a request spans multiple skills, load them in this order:
| Compound request | Skills (in order) |
|---|---|
| "TikTok ads from scratch" | |
| "Meta ad from my listing" | |
| "Full paid growth plan" | |
| "Are my TikTok ads working?" | |
| "Ads get clicks but no subs" | |
| "Beat competitor ads" | |
| "Scale what's working" | |
| "ASA + TikTok together" | |
| "First time running ads" | |
| "I spent $500 and nothing worked" | |
当请求涉及多个 skill 时,按以下顺序加载:
| 复合请求 | Skills(按顺序) |
|---|---|
| "TikTok ads from scratch"(从零开始投放 TikTok 广告) | |
| "Meta ad from my listing"(根据我的商店页面制作 Meta 广告) | |
| "Full paid growth plan"(完整的付费增长计划) | |
| "Are my TikTok ads working?"(我的 TikTok 广告效果如何?) | |
| "Ads get clicks but no subs"(广告有点击但没有订阅) | |
| "Beat competitor ads"(击败竞争对手广告) | |
| "Scale what's working"(扩大有效投放规模) | |
| "ASA + TikTok together"(同时使用 ASA 和 TikTok) | |
| "First time running ads"(首次投放广告) | |
| "I spent $500 and nothing worked"(我花了 500 美元但没有效果) | |
Disambiguation Playbook
消歧指南
When intent is unclear, ask one question — never more.
| Signal | Question |
|---|---|
| "ads" without platform | "Which channel — TikTok, Meta, Apple Search Ads, or all three?" |
| "create ads" | "Video ads (TikTok) or static/image ads (Meta feed)?" |
| "not converting" | "Low clicks (creative problem) or clicks but no purchases (onboarding/paywall)?" |
| "ROAS" / "profitable" | "Do you want per-channel CPA (audit skill) or LTV vs spend (profitability skill)?" |
| "Apple Search Ads" + "TikTok" | "Set up one channel first (which?) or compare existing performance?" |
| "generate creative" | "One ad (meta-ad-creative) or A/B batch (ad-creative-variants)?" |
| "competitor" | "Their paid ads (competitor-ad-teardown) or organic ASO (aso-skills competitor-analysis)?" |
| "subscription app" + "ads" | "Have you completed MMP setup so TikTok/Meta can optimize for Purchase/Subscribe?" |
当意图不清晰时,只提出一个问题——绝不要超过一个。
| 信号 | 问题 |
|---|---|
| 仅提到 "ads",未指定平台 | "哪个渠道——TikTok、Meta、Apple Search Ads,还是全部三个?" |
| "create ads" | "视频广告(TikTok)还是静态/图片广告(Meta 信息流)?" |
| "not converting" | "点击量低(创意问题),还是有点击但没有购买(引导流程/付费墙问题)?" |
| "ROAS" / "profitable" | "您希望分析各渠道 CPA(审计 skill),还是分析 LTV 与支出(盈利能力 skill)?" |
| "Apple Search Ads" + "TikTok" | "先设置一个渠道(是哪一个?),还是比较现有表现?" |
| "generate creative" | "生成一个广告(meta-ad-creative),还是生成 A/B 批量素材(ad-creative-variants)?" |
| "competitor" | "分析他们的付费广告(competitor-ad-teardown),还是分析自然搜索 ASO(aso-skills competitor-analysis)?" |
| 订阅类应用 + "ads" | "您是否已完成 MMP 设置,以便 TikTok/Meta 能够针对 Purchase/Subscribe 进行优化?" |
Routing Anti-Patterns
路由反模式
Do not route to:
| Wrong route | Use instead | Why |
|---|---|---|
| | Setup vs performance review |
| | Static Meta API vs TikTok video |
| | Profitability assumes tracking works |
| | User said TikTok but you assumed Google |
| | Ops vs profitability question |
| | Never launch without MMP |
aso-skills | Channel-specific skill here | UA overview lives in aso-skills; execution lives here |
不要将请求错误路由到以下目标:
| 错误路由 | 改用 | 原因 |
|---|---|---|
| | 设置与效果审查不同 |
| | Meta 静态图 API 与 TikTok 视频不同 |
| | 盈利分析以追踪正常为前提 |
| | 用户明确说了 TikTok,但错误地假设为 Google |
| | 日常运营问题与盈利问题不同 |
| | 未完成 MMP 时绝不启动投放 |
aso-skills | 此处的渠道专用 skill | UA 概览位于 aso-skills;具体执行位于本路由 |
Output Template
输出模板
→ Routing to: <skill-name>
Why: <one-line reason>
(Optional follow-ups: <skill-2>, <skill-3>)
[Then load and follow skills/<skill-name>/SKILL.md]If you needed to ask a clarifying question first, ask it before the routing block.
→ Routing to: <skill-name>
Why: <one-line reason>
(Optional follow-ups: <skill-2>, <skill-3>)
[Then load and follow skills/<skill-name>/SKILL.md]如果需要先提出澄清问题,请在路由块之前询问。
Context Check
上下文检查
Before routing into any skill except , check whether exists. If missing and the skill needs app/budget/CPA context (almost all do), suggest once per session:
app-ads-contextapp-ads-context.md"Quick win: I can set up an app-ads-context doc first (~2 min) so every skill has your budget, target CPA, LTV, and connected accounts. Want me to?"
Also check (aso-skills) — merge positioning if present.
app-marketing-context.md在路由到除 之外的任何 skill 前,检查 是否存在。如果不存在,且该 skill 需要应用、预算和 CPA 上下文(几乎所有 skill 都需要),则每次会话建议一次:
app-ads-contextapp-ads-context.md"快速优化:我可以先设置一份 app-ads-context 文档(约 2 分钟),这样每个 skill 都能获取您的预算、目标 CPA、LTV 和已连接的账户。需要我这样做吗?"
还要检查 (aso-skills)——如果存在,则合并其中的定位信息。
app-marketing-context.mdBoundaries — Route OUT to aso-skills
边界——转出至 aso-skills
| User need | aso-skills skill |
|---|---|
| ASO audit, keywords, metadata | |
| Creator/influencer programs (organic) | |
| Deep SKAN / ATT / MMP debug | |
| ASA strategy (not API ops) | |
| UA channel overview (not execution) | |
| Paywall, onboarding fixes | |
| 用户需求 | aso-skills skill |
|---|---|
| ASO 审计、关键词、元数据 | |
| 创作者或网红计划(自然流量) | |
| 深度排查 SKAN / ATT / MMP | |
| ASA 策略(而非 API 操作) | |
| UA 渠道概览(而非具体执行) | |
| 付费墙、引导流程优化 | |
When NOT to Use This Skill
何时不应使用此 Skill
If the user explicitly invokes a skill (, , etc.), skip this router and load that skill directly. The router is for ambiguous natural-language requests only.
/tiktok-campaign-setup/meta-ad-creative如果用户明确调用某个 skill(、 等),请跳过此路由器并直接加载该 skill。路由器仅用于含义不明确的自然语言请求。
/tiktok-campaign-setup/meta-ad-creative