1. 项目缘起:为什么我要把营销方法论拆成可复用的技能包
做增长和SEO这行十来年,最头疼的一件事从来不是“不知道怎么做”,而是“知道怎么做,但每次都要重新讲一遍”。团队里新来的优化师、外包的内容写手、临时拉来帮忙的投放同学,每个人上手都要重复问一遍:关键词怎么分层、落地页首屏怎么写、内链结构怎么搭、A/B测试的样本量怎么算。讲一次两次还行,讲十次八次就是纯消耗。
marketingskills这个项目,本质上就是把我这些年积累的营销打法,拆成一个个结构化的、可被AI代理直接调用的“技能模块”。你可以把它理解成一套给AI代理看的营销操作手册——每个技能模块里封装了一个具体场景的判断逻辑、执行步骤和验收标准。当AI代理接到“帮我优化这个落地页的转化率”或者“给这个新站做一套关键词布局”这类任务时,它不需要从零推理,而是直接调用对应的技能包,按里面沉淀好的流程走。
这套东西解决的核心问题是:营销执行的一致性。人做营销,状态好和状态差出来的结果能差三倍;不同的人做同一个任务,风格和深度也完全不一样。但技能包是标准化的,只要输入条件满足,输出质量就有底线保障。它适合三类人参考:一是带小团队的增长负责人,想把手里的打法沉淀下来;二是独立开发者或独立站站长,一个人要干完SEO、内容、转化所有活;三是对AI代理工作流感兴趣、想看看营销场景怎么落地的人。
我最初是在Claude Code这个环境里跑这套技能的,因为它支持把本地文件作为上下文直接喂给代理,技能包以Markdown文件形式存在,代理按需读取。但需要说明的是,这套思路不绑定任何特定工具——你完全可以用其他支持文件读取的AI代理环境来承载,核心在于技能包的结构设计,而不是运行环境。
2. 技能包的整体设计思路:从“大而全”到“小而准”
2.1 为什么不做成一个巨型提示词
一开始我试过把所有营销知识塞进一个超长的系统提示里,结果很糟糕。代理在处理具体任务时,会被大量无关信息干扰,比如我在做关键词研究,它却把落地页文案的规则也考虑进来,输出变得又长又散。更麻烦的是,每次修改一个细节,都要动整个大文件,版本管理一塌糊涂。
后来我改成“一个技能一个文件”的结构。每个技能文件只解决一类问题,文件内部再分“适用场景”“输入要求”“执行步骤”“输出格式”“验收清单”五个部分。代理接到任务后,先判断属于哪类问题,再读取对应文件。这样做的直接好处是:上下文干净,代理的注意力集中在当前任务上;维护方便,改关键词策略不会误伤转化率优化的逻辑;可组合,复杂任务可以按顺序调用多个技能。
2.2 技能模块的粒度怎么定
粒度太粗,比如“SEO技能”一个文件包打天下,那和巨型提示词没区别;粒度太细,比如“标题标签怎么写”单独一个文件,又会导致技能数量爆炸,代理选择成本变高。我最后定的粒度标准是:一个技能对应一个可独立交付的工作成果。
举个例子,“关键词分层与布局”是一个技能,它的交付成果是一张关键词映射表,包含每个关键词对应的页面、意图分类、优先级。“落地页首屏优化”是另一个技能,交付成果是一份首屏文案的修改方案,包含标题、副标题、行动号召按钮文案。这两个技能可以独立使用,也可以串联——先做关键词布局,再针对高优先级页面做首屏优化。
目前我沉淀下来的技能模块覆盖了这几个方向:关键词研究与分层、站内SEO结构优化、内容 brief 生成、落地页转化要素检查、A/B测试设计与样本量计算、竞品内容差距分析。每个模块都是独立文件,放在一个目录下,代理通过读取目录列表来发现可用技能。
2.3 技能文件的内部结构
每个技能文件我固定用五段式结构,这个结构是反复调整后定下来的:
- 适用场景:用一两句话说明什么情况下该调用这个技能,什么情况下不该调用。比如关键词分层技能明确写了“适用于新站冷启动或现有站点拓展新领域,不适用于已有成熟关键词库的微调”。
- 输入要求:列出执行这个技能需要代理提前获取哪些信息。比如做落地页优化,输入要求里必须包含“当前页面URL或完整文案”“目标转化动作”“目标受众描述”。如果输入不全,代理应该先追问,而不是硬编。
- 执行步骤:这是核心部分,把操作流程拆成有序步骤,每步说明做什么、为什么做、注意什么。步骤不写死具体工具,而是写清楚判断逻辑,让代理能根据实际情况灵活处理。
- 输出格式:规定交付成果长什么样。比如关键词映射表要求用Markdown表格输出,列包括关键词、搜索意图、目标页面、优先级、备注。
- 验收清单:一组检查项,代理在输出前自己过一遍,确保没有遗漏关键要素。比如落地页优化技能的验收清单里有一条“首屏是否在5秒内能说清价值主张”。
这个五段式结构的好处是,它把“怎么做”和“做到什么程度算好”分开写,代理在执行时不会混淆过程和标准。而且验收清单可以单独抽出来做质量检查,即使不用AI,人工按这个清单过一遍也能发现不少问题。
3. 核心技能模块拆解与实操要点
3.1 关键词分层与布局技能
这个技能是我用得最多的,也是整个技能包的基础。它的核心逻辑不是简单地拉一堆关键词,而是按搜索意图和竞争难度两个维度做分层,再把每一层关键词映射到具体的页面类型上。
执行步骤大致是这样的:第一步,收集种子关键词,来源包括竞品分析、搜索下拉框、相关搜索、行业论坛的高频问题。第二步,对每个关键词做意图分类,分成信息型、导航型、商业调查型、交易型四类。第三步,用竞争难度做二次分层,分成高竞争、中竞争、低竞争三档。第四步,做关键词到页面的映射:信息型低竞争词映射到博客文章,商业调查型中竞争词映射到对比页或评测页,交易型高竞争词映射到产品页或落地页。
这里有个容易踩的坑:很多人做关键词分层只看搜索量,不看意图。结果把“什么是独立站SEO”这种信息型词硬塞到产品页上,用户搜的是知识,你给的是购买链接,跳出率必然高。我在技能文件里专门加了一条判断规则:如果关键词包含“是什么”“怎么做”“教程”“指南”这类词根,一律归为信息型,优先用内容页承接。
另一个实操要点是关键词映射的优先级排序。我用的公式是:优先级 = 搜索量 × 意图匹配度 ÷ 竞争难度。意图匹配度用1到3打分,交易型词打3分,信息型词打1分。这个公式不追求精确,目的是把明显该先做的词筛出来。比如一个月搜索量500、意图匹配度3、竞争难度中等的词,优先级得分是500×3÷2=750;而一个月搜索量2000、意图匹配度1、竞争难度高的词,得分是2000×1÷3≈667。前者反而更值得先做。
注意:关键词分层不是一劳永逸的事。我建议每季度重新跑一次,因为竞争难度会变,搜索意图也可能漂移。有些词一开始是信息型,搜的人多了之后会分化出交易意图,这时候就要考虑单独做一个落地页来承接。
3.2 站内SEO结构优化技能
这个技能解决的是“页面之间怎么连”的问题。很多站点内容不少,但权重分散,核心页面拿不到足够的内链支持。我的做法是先画一张站点结构图,标出所有页面的层级和当前内链关系,然后按“金字塔原则”重新设计内链流向。
具体步骤:第一步,确定3到5个核心页面,通常是产品页或高转化落地页。第二步,把所有内容页按主题聚类,每个聚类选一个“支柱页面”,支柱页面链接到聚类内所有文章,所有文章也链接回支柱页面。第三步,在文章正文中自然插入指向核心页面的内链,锚文本用目标页面的核心关键词,而不是“点击这里”这种废话。第四步,检查每个核心页面至少有多少条内链指向它,我一般要求首页之外的核心页面至少有10条来自不同页面的内链。
这里有个细节值得展开:锚文本的多样性。如果所有内链都用同一个锚文本,搜索引擎会认为你在刻意操纵。我的做法是核心关键词用一次,长尾变体用两到三次,自然描述用两到三次。比如目标页面是关于“独立站SEO”的,锚文本可以分别是“独立站SEO”“独立站SEO优化”“独立站搜索排名提升”“这个独立站SEO指南”等。
实操心得:内链建设最容易犯的错是“为了内链而内链”。在文章里硬塞不相关的链接,读者体验差,搜索引擎也能识别出来。我的判断标准是:如果这个链接对读者理解当前内容有帮助,就加;如果只是为了传递权重,就不加。权重传递是结果,不是目的。
3.3 落地页转化要素检查技能
这个技能是我从CRO(转化率优化)的实践里提炼出来的。它不负责生成文案,而是负责检查现有落地页是否遗漏了关键转化要素。检查清单包括:首屏价值主张是否清晰、社会证明是否充分、行动号召是否突出、信任元素是否到位、表单字段是否精简、移动端体验是否流畅。
执行时,代理会逐项检查并给出修改建议。比如首屏检查,我会要求代理回答三个问题:用户打开页面5秒内能不能知道这是干什么的?能不能知道对自己有什么好处?能不能知道下一步该点哪里?如果任何一个答案是“不能”,首屏就需要改。
社会证明这块,我列了几种常见形式:客户评价、案例数据、媒体报道、用户数量、合作品牌Logo。不是每种都要有,但至少要有两种。我见过很多落地页只放一个“关于我们”的链接,没有任何第三方背书,转化率自然上不去。
行动号召按钮的检查要点:按钮文案是否包含动词、是否说明了点击后的结果、是否在首屏可见、颜色是否与背景有足够对比。我测试过“立即购买”和“获取方案”两种文案,后者在B2B场景下转化率高出不少,因为“获取方案”听起来门槛更低。
常见问题:很多人把落地页当成产品说明书,把所有功能都列上去。但用户不关心你有什么功能,只关心你能解决什么问题。我的建议是,落地页只讲一个核心价值点,其他功能放到二级页面去讲。
3.4 A/B测试设计与样本量计算技能
这个技能解决的是“测试结果不可信”的问题。很多人做A/B测试,跑了两天看到B版本高就上线,结果过一周数据又反过来了。根本原因是样本量不够,随机波动被当成了真实差异。
技能文件里内置了一个样本量计算公式:n = (Zα/2 + Zβ)² × 2 × p × (1-p) ÷ Δ²。其中p是基准转化率,Δ是希望检测到的最小提升幅度,Zα/2和Zβ分别对应显著性水平和统计功效。我一般设显著性水平0.05,统计功效0.8,对应的Z值分别是1.96和0.84。
举个例子,基准转化率是3%,我希望检测到相对提升20%的变化,也就是绝对提升0.6个百分点,Δ=0.006。代入公式:n = (1.96+0.84)² × 2 × 0.03 × 0.97 ÷ 0.006² ≈ 7.84 × 0.0582 ÷ 0.000036 ≈ 12673。也就是说,每个版本至少需要约12673个访客才能得出可信结论。如果你的页面每天只有500个访客,这个测试要跑25天以上。
这个计算过程我写进了技能文件,代理在接到A/B测试任务时会自动算样本量,并给出预计测试周期。如果周期太长,代理会建议要么提高基准转化率(比如优化流量质量),要么放宽检测幅度(比如只检测30%以上的提升)。
注意:样本量算出来只是最低要求,实际测试中还要考虑流量分配是否均匀、测试期间是否有外部事件干扰(比如大促、节假日)。我一般会在测试期间监控流量来源和用户设备分布,如果发现异常波动,测试结果就要打折扣。
4. 技能包在AI代理工作流中的落地方式
4.1 技能发现与调用机制
技能包放在一个目录下,每个技能是一个独立的Markdown文件,文件名就是技能名称,比如keyword-layering.md、landing-page-audit.md。代理启动时,先读取目录列表,把可用技能列出来。当用户提出任务时,代理先做意图匹配,判断该调用哪个技能。
匹配逻辑我写在了一个单独的“路由”文件里,里面是一组规则:如果任务涉及关键词研究、搜索意图分析,调用关键词分层技能;如果任务涉及页面转化率、首屏优化,调用落地页检查技能;如果任务涉及测试设计、数据验证,调用A/B测试技能。路由文件不写死,代理也可以根据任务描述自行判断,但路由规则作为兜底。
这里有个设计取舍:要不要让代理自动调用多个技能?我的答案是,简单任务只调一个,复杂任务可以串联,但串联顺序要明确。比如“给这个新页面做完整优化”,应该先调关键词分层技能确定目标词,再调落地页检查技能优化转化要素,最后调A/B测试技能设计验证方案。顺序反了,先做A/B测试再改关键词,测试结果就白费了。
4.2 输入信息的收集与校验
代理在执行技能前,会先检查输入信息是否完整。每个技能文件里都写了“输入要求”,代理会逐项核对。如果缺少关键信息,代理会追问,而不是自己编一个。比如落地页检查技能要求提供“目标转化动作”,如果用户没说,代理会问“这个页面希望用户完成什么动作?是注册、购买、还是提交表单?”
这个校验机制很重要,因为营销任务的质量高度依赖输入质量。你给代理一个模糊的需求,它只能给一个模糊的输出。我见过很多人抱怨AI生成的营销方案不落地,一问才知道,他们只说了“帮我优化一下”,没给任何背景信息。
实操心得:我一般会在任务描述里主动带上三样东西:当前状态(比如“落地页转化率1.2%”)、目标状态(比如“希望提升到2%”)、约束条件(比如“不能改价格”)。这三样给全了,代理的输出质量会明显提升。
4.3 输出结果的验收与迭代
代理输出结果后,会自己过一遍验收清单。但我的经验是,代理的自检不能完全替代人工审核。我一般会重点看三个地方:一是关键词映射表里有没有明显不合理的映射,比如把信息型词映射到产品页;二是落地页建议里有没有脱离实际的改动,比如建议加一个需要开发两周才能实现的功能;三是A/B测试的样本量计算有没有用错基准转化率。
如果发现问题,我会直接修改技能文件里的对应规则,而不是每次在对话里纠正。比如我发现代理总是把“价格”相关词归为信息型,但实际上“独立站SEO价格”这种词有很强的商业调查意图,我就在关键词分层技能里加了一条规则:包含“价格”“费用”“多少钱”的词根,归为商业调查型,优先用报价页或服务页承接。
这种“发现问题→修改技能文件→重新测试”的循环,是技能包持续进化的方式。技能文件不是写完就完了,它应该随着你的实践不断更新。我现在的技能包已经迭代了十几个版本,很多规则都是踩坑之后加进去的。
5. 常见问题与排查技巧实录
5.1 代理不按技能文件执行怎么办
这是最常见的问题。代理有时候会忽略技能文件里的步骤,按自己的理解来。排查思路分三步:第一,检查技能文件是否被正确加载,有时候文件路径写错了,代理根本没读到;第二,检查技能文件里的指令是否足够明确,如果写得太笼统,代理会自行发挥;第三,检查任务描述是否触发了代理的“通用回答”模式,有些任务描述太像常识问题,代理会直接回答而不调用技能。
我的解决方法是,在技能文件开头加一句强指令:“执行本技能时,必须严格按照以下步骤操作,不得跳过或合并步骤。”同时在路由文件里明确写:“涉及关键词、落地页、A/B测试的任务,必须先读取对应技能文件再执行。”这两条加上之后,代理的遵循率明显提高。
5.2 技能之间的输出格式不统一
早期我的技能文件各自为政,关键词技能输出表格,落地页技能输出段落,A/B测试技能输出列表。结果串联调用时,代理要把不同格式的输出拼在一起,很容易乱。后来我统一了输出格式规范:所有技能的输出都必须是Markdown格式,表格用于结构化数据,列表用于步骤和检查项,段落用于解释和说明。每个技能文件里都有一段“输出格式”说明,引用同一个格式规范文件。
这个统一带来的好处是,代理在串联多个技能时,可以直接把上一个技能的输出作为下一个技能的输入,不需要做格式转换。比如关键词映射表可以直接作为落地页优化技能的输入,代理知道从表格里读取“目标页面”列来确定要优化哪个页面。
5.3 技能包太大导致代理响应变慢
技能文件多了之后,代理每次启动都要读取所有文件,响应速度会下降。我的优化方法是:把技能文件分成“核心技能”和“扩展技能”两个目录,核心技能是高频使用的,启动时加载;扩展技能是低频使用的,按需加载。同时在路由文件里标注每个技能的加载优先级。
另一个优化是压缩技能文件的体积。早期我写得很啰嗦,一个技能文件好几千字。后来我把重复的解释性内容抽出来放到公共说明文件里,技能文件只保留该技能特有的内容。这样每个技能文件控制在800到1500字之间,加载速度明显改善。
5.4 常见问题速查表
| 问题现象 | 可能原因 | 排查方法 | 解决措施 |
|---|---|---|---|
| 代理不调用技能,直接回答 | 任务描述太泛或技能未加载 | 检查任务描述是否包含技能关键词,检查文件路径 | 在任务描述中明确要求调用技能,检查路由文件 |
| 输出格式混乱 | 技能文件输出格式不统一 | 对比不同技能的输出格式说明 | 统一引用格式规范文件 |
| 关键词映射不合理 | 意图分类规则不完善 | 检查映射表中信息型词是否映射到产品页 | 补充意图分类规则,增加词根判断 |
| A/B测试样本量算错 | 基准转化率或检测幅度输入错误 | 核对输入参数,重新计算 | 在技能文件中增加参数校验步骤 |
| 落地页建议不可执行 | 代理不了解技术约束 | 检查任务描述是否包含约束条件 | 在输入要求中增加“技术约束”字段 |
| 技能响应变慢 | 技能文件过多或过大 | 检查加载了哪些文件,统计文件体积 | 拆分核心与扩展技能,压缩文件体积 |
最后分享一个我踩过的坑:不要试图让一个技能解决所有问题。我一开始把“关键词研究”和“内容 brief 生成”放在一个技能里,结果代理在做关键词研究时总是忍不住去写内容大纲,输出变得又长又偏。拆成两个技能后,各司其职,质量反而更高。技能包的边界清晰,比功能全面更重要。