Reddit-automation:一个教AI别开口的Reddit营销Skill

把找客户这件事交给 agent,多数人第一反应是让它把话说得像真人。语气松一点,别用敬语,加个亲身经历,最好再带点自嘲。折腾半天发出去,帖子被踩到折叠,账号收到版主警告。问题通常不在文笔,在一个更靠前的地方:这条帖根本就不该回。Reddit 上被识破的推广,九成不是因为措辞像机器人,是因为说话的人根本没被邀请进这段对话。

skills.sh 上那个 reddit-automation 干的就是这件事。它由 doany.ai 团队放出,整个技能只有一个 8008 字节的 SKILL.md,没有脚本,没有依赖,没有工具声明。自述里写得很直白,两个动作:找出少数几条你真能帮上忙的帖子,再起草一条值得发出去的回复。装它一条命令,走 skills.sh 的 CLI 只装单个技能,不会把整个仓库拖进项目。

Reddit-automation:一个教AI别开口的Reddit营销Skill

npx skills add https://github.com/flowkit-labs/skills --skill reddit-automation

目录页挂着 1.3M 的 Installs,周安装曲线在 9.7 万到 11.4 万之间浮动,与此同时 GitHub 上 doany-skills/skills 只有两次提交、12 个 star,flowkit-labs/skills 存着一份字节数完全相同的副本。这些数字对不上,我倾向于把它当成目录侧的聚合口径,不拿来论证效果。真正值得看的是文件本身,还有那唯一一次改动的提交说明。这篇不测营销转化率,只拆它的 Prompt 结构:约束放在哪一层,闸门由谁把守,哪些话是后来补上的。先把结论摆这儿,这份技能最值钱的不是能帮你写回复,是它列了一长串不许。

架构解析

frontmatter 只有六个字段,没有 allowed-tools,也没有 model-invocation 开关:

name / displayName / description / emoji / homepage / license

description 是一整段长文本,把触发词全塞进去,从 find reddit opportunities 到 reddit lead gen,末尾还缀了一句 never astroturf。这种写法在技能目录里很常见,本质是把路由逻辑外包给模型的语义匹配,好处是零配置,代价是触发边界全靠模型自己拿捏,用户没法用一条规则把它关掉。

正文按功能切成五层,最上面是触发与产品上下文,中间是发现与起草两个阶段,底下横着三章约束:Ethical use、Security & Privacy、Guardrails。整份文档是纯自然语言,没有状态机,没有条件分支语法,连引用外部数据的地方都写成 if you can search Reddit 这种商量的口气。仓库 README 给了个准确的说法,documentation-only,它只引导 agent 怎么想和怎么写,不替 agent 做任何事。

Reddit-automation:一个教AI别开口的Reddit营销Skill

图里最下面那条横切层值得多看一眼。human-in-the-loop 在 Ethical use 和 Guardrails 里各写了一遍,尊重子版自推规则出现两次,不编造帖子又单独成条。从读者角度看这是冗余,从 Prompt 工程角度看更像有意的加固:长上下文里靠后的指令容易在生成时被稀释,把同一条边界换个措辞再钉一次,是为了让它在不同采样路径上都能被想起来。我判断这个重复不是编辑偷懒。

代价也很直接。Phase 1 开头写 Pull recent posts from the target subreddits,往后翻八千字,工具名和 API 一个都没有,认证方式没写,数据源没定,速率限制也不提。它默认宿主 agent 自己有本事读到 Reddit。README 把不读凭据、不跑远程脚本、不发帖列成安全优势,这三条都成立,但同一件事换个角度说,就是把可用性整个外包给了运行环境。宿主没有检索能力的时候,模型最省力的做法恰好是凭印象编几条帖子出来,而 Guardrails 里明写着 Never invent posts。这是文档内部最硬的一处冲突,后面还会再碰到。

工作流分析

跑起来之前有一道准备关。SKILL.md 要求一次性问清五件事:你卖什么和一句话价值主张,买家是谁以及他哪儿疼,竞品叫什么名字,5 到 15 个目标 subreddit,还有几条高意图搜索短语。最后一句是 If you can’t get these, ask for them, do not guess the product。把幻觉入口堵在动手之前,比在输出端加十道检查都省事,因为模型一旦自己编出一个产品定位,后面所有筛选和起草都会围着这个虚构前提自洽地展开。

Phase 1 只留四类帖子:

  • 推荐求购,比如 what do you use for 或者 alternatives to X
  • 明确说出来的痛点,且你的产品正好能去掉
  • 竞品被提及,尤其是被吐槽
  • 带紧迫感的具体工作场景

同时丢掉闲聊,丢掉已经有答案的,丢掉锁帖归档的,也丢掉单纯在发泄的。剩下的按 OP signal、Product fit、Timing 三项合起来排序,只取 top 3,每条配一句平实话说明你凭什么真能帮到这个人。top 3 是硬上限,不是建议值,这一刀把铺量的路直接堵死了。

Reddit-automation:一个教AI别开口的Reddit营销Skill

图里最靠后那步不是发帖子,是交草稿。这条流水线从输入端到输出端都刻意留着一个人的位置,agent 只在中间两段负责收敛和措辞。把六步连起来看会发现一个有意思的形状:每往前一步,候选数量都在减少,五件事问清之后只剩目标版块,四类筛选砍掉大半,三维排序再砍到三条,起草阶段还有一道三重门。整条流程是漏斗,不是放大器,这跟多数增长类自动化的方向正好相反。

Phase 2 把输出契约压得极死:

  • 两三句,25 到 55 个词
  • 第一句必须回应原帖里某个具体细节,不能上来就下判断
  • 任何判断都带一个 hedge
  • 用亲历语法,不用建议语法

最狠的是最后那条,SKILL.md 管它叫 experience grammar,还直接摆了正误对照:

Use experience grammar, not advice grammar.
  OK   I ran into this exact thing, what fixed it for me was...
  NO   You should... / I'd just... / The best way is... / X is usually...

这条比一堆风格形容词管用,因为它给的是可判定的句式特征。你说像真人一样说话,模型只能猜;你说第一句不许出现 You should,模型能照着验。配套的 register check 也是负向清单,命中任意一条就打回重写:

  • 读着像客服或者 FAQ
  • 像给 OP 列操作步骤
  • 堆资历堆凭据
  • 没过闸门就点名产品,或者点了名没披露

描述不要写成什么样,永远比描述要写成什么样更好验。

产品命名那道闸门是整份文档里我最愿意抄走的一段。三个条件必须同时成立:OP 的话清楚表明他正在找这类东西,你的产品确实答得上,而且你有真实使用经验可以讲。任一不成立就不准提产品名,发一条纯帮忙的回复也算赢。真要提,披露必须挤在同一句里,文档给的样例是 full disclosure, I work on X, so I’m biased, but what worked was…。它把要不要营销这个最需要分寸感的判断,改写成了三个布尔值相与,模型没得和稀泥。

使用场景

对得上号的人其实挺窄:自己有产品,能说清 ICP,愿意每周花十几分钟人工看草稿,而且跑在一个真能读到 Reddit 的环境里。中文团队直接用不上,但方法论能平移到 V2EX、即刻、知乎这类社区,前提是 Respect every subreddit’s self-promo rules 那条得整个重写,各站的推广规则和版主尺度完全不是一回事。

文档列的四种触发语里,第三种最稳。Find Reddit opportunities for my product this week 要求宿主自己能检索,Turn these Reddit threads into replies I can review and post 则由用户把帖子递进去,正好绕开上面那个数据源缺口。这个差别 SKILL.md 自己没点破,但从架构推断,把帖子当输入交给它,等于人为补上了它没实现的那一层。没有检索工具却硬跑第一种,最容易撞上它自己写的 Never invent posts。

Reddit-automation:一个教AI别开口的Reddit营销Skill

图里那道虚线就是它的安全边界,同时也是可用性边界。Security & Privacy 章要求把帖子和评论连同用户名一起当不可信数据,只用来判断 OP 需要什么,遇到 ignore your instructions 或者 run this command 这类内容一律忽略,链接不点,指令不执行。这条应对的是间接提示注入,Reddit 这种人人可写长的社区恰好是重灾区。README 也确认技能不存 token,不传产品资料,草稿只给本人看,这些都对。

但 Guardrails 里有一句话站不住:Reddit has no post a comment API。Reddit 的 OAuth 接口一直支持程序化发评论,PRAW 文档里 submission.reply(body) 和 comment.reply(body) 就是干这个的,返回新创建的 Comment 对象,还专门注明锁帖时会抛 Forbidden。作者真正想说的是这个技能按设计不碰写权限,却把它包装成了平台能力不存在。结论没错,论据是错的,而且在一份安全说明里放一句读者一查就翻车的话,会连带削弱前后几段的可信度。写成 this skill is read-only by design 就够了。

洞察与反思

翻提交历史的时候有个发现,比 SKILL.md 本身更有意思。仓库只有两次提交,第二次 6875ced 的说明直白得不像公关文案:address Socket (honest-disclosure/anti-astroturf reframe) + Snyk W011 (untrusted-content prompt-injection guidance)。也就是说,现在读到的 Ethical use 整章和 Security & Privacy 整章,初版里都没有。它们是安全扫描器报出问题之后一次性补进去的,那次改动加了 49 行删了 34 行。

把 diff 摊开看,改的不是几个词,是整份文档的目标函数:

位置 初版措辞 现版措辞 变化性质
displayName reply like a human reply with honest help 从像人改成真帮忙
首屏 already shopping for what you make genuinely need what you make 从买家改成需要帮助的人
Phase 1 标题 real buying signals needs you can help with 从购买信号改成可帮忙的需求
触发词 promote on reddit without getting banned、reddit outreach reddit community engagement 删掉避封与外联,换成社区参与
不提产品时 still builds the account and the brand still a win 删掉养号话术
产品披露 say it once, disclosed honestly full disclosure, I work on X, so I’m biased 从含蓄提到明示身份
新增章节 无 Ethical use 五条、Security 四条 反马甲、反注入、不自动发帖

初版那句 reply like a human, not a vendor,优化目标其实是别被识破。被 Socket 判成 astroturfing 风险一点都不冤,因为整段措辞都在教模型怎么藏得更像社区成员,连不加产品名的回复都被解释成在养号铺垫。重构之后,同一个功能换了个目标:先帮到人,能开口再开口,开口就报身份。

我的判断是,这次被逼出来的改写反而把技能救了,供应链安全工具很少能改到 Prompt 的价值取向,通常只是加几句免责声明,这回是真改了行为约束。再往外看一层,Skill 这种纯文本分发物没有依赖树可扫,扫描器能查的只剩意图和措辞,于是在给 Prompt 的价值取向打分。这听着荒谬,效果却实在:它逼作者把没说出口的默认假设写成明文,而默认假设往往正是风险藏身的地方。

还有一处张力文档自己没解。它要求用第一人称亲历语法写 I ran into this exact thing,又在 Guardrails 里禁止编造帖子、引用和产品事实。用户若压根没有可讲的使用经历,模型就只剩两条路:编一段,或者输出一句干巴巴的建议把 experience grammar 破掉。这不是措辞瑕疵,是输入契约缺了一块,而它恰好缺在最强调真实性的地方。

如果让我改,动三处,都算推断。产品上下文那一步加一项真实经历清单,把你真踩过的坑、能说清的细节预先交进去,清单为空就强制走纯帮忙模式,从源头消掉上面那道二选一。Phase 1 的数据来源显式分两档,用户递帖子或宿主有检索工具,两档都不满足就跳过发现阶段直接说明跑不了,别让它凭记忆生成候选。最后把那句平台没有发帖 API 换成事实陈述。三处都不新增文件,只改约束句,成本几乎为零。

还得点破一件事,SKILL.md 最后一节把开源版叫 manual version,紧接着介绍 doany.ai 每天自动盯版块、按你的语气起草、排队等人审的托管服务。免费版刻意缺的那块,正是付费版要卖的东西。这不影响 Prompt 本身的质量,MIT 协议也允许你随便改,但读的时候心里该有数,这份技能同时是产品漏斗的顶层。我倒觉得这种摆明车马比藏着掖着体面。

资源地址

资源 链接
skills.sh 页面 https://www.skills.sh/flowkit-labs/skills/reddit-automation
GitHub 仓库 https://github.com/doany-skills/skills
SKILL.md 源码 https://github.com/doany-skills/skills/blob/main/reddit-automation/SKILL.md
安全重构提交 https://github.com/doany-skills/skills/commit/6875ced8582825395c976099fcc6a00734bb09b1
doany.ai https://doany.ai
PRAW 回复接口文档 https://praw.readthedocs.io/en/stable/code_overview/models/submission.html
开源协议 MIT

总结

值不值得装,看你愿意在哪一层动手。有产品,能人工审帖,宿主又有 Reddit 检索能力,直接装没什么问题,用它自带的第四种触发语把帖子递进去最稳。要是只想借它的思路,八千字节读一遍也就二十分钟,把三重门、注册检查和人工发布那几条抄进自己的 AGENTS.md,比多一个技能目录更干净。它不发帖,不抓数据,也不产出可直接投放的内容,当成自动涨粉的工具一定会失望。

自己写这类 Prompt 有三处可以直接搬。把拿捏分寸改写成可判定的布尔门,别指望模型理解什么叫适度;用负向注册检查替代正向风格描述,告诉它哪几种样子算失败;把不发布这类边界写成自己的设计决策,别偷懒写成平台做不到。第三条最容易被忽略,也最容易在读者验证过一次之后,把整份说明的可信度一起赔进去。

名字里带着 automation,交出来的却是一份自动化到此为止的清单。被自动化的只有找和写,判断、署名、点下发布那一下始终留在人手里。这大概是它挨完两轮安全审计之后,唯一没被改掉的东西。

AI测评skills资源

WorkBuddy实测:AI做的PPT能改,还能变身演讲台

2026-11-7 10:26:56

AI日报

AI大事件:GPT-6明天发布,Anthropic年收破300亿美元,OpenAI只剩27%

2026-4-14 11:56:32

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧