从 AdMapix API 拉取广告创意、应用、榜单和收入预估等数据,原样返回结构化 JSON。
编程
redreplier-mean-marketer
试用A background accountability loop that surfaces fresh, high-scoring RedReplier lead opportunities and — if you ignored the last one (didn't approve or reject it) — roasts you, hilariously and meanly, about your marketing until you act. All criteria and the roast itself are computed server-side by RedReplier; this skill just loops and relays. Use when the user wants automated lead nudges, a "marketing accountability" or "roast me into marketing" loop, or to be pinged about new high-relevance Reddit/HN/X/Bluesky leads above a configurable score. Requires a RedReplier account + API key.
它能做什么
Your unhinged marketing accountability buddy. On a loop it asks RedReplier for the next good lead, hands it to you with the link — and if you ghosted the last one it gave you, it gets **funny-mean** about your marketing until you actually act. Building in public, not building in private.
技能文档
RedReplier Mean Marketer 😡
Your unhinged marketing accountability buddy. On a loop it asks RedReplier for the next good lead, hands it to you with the link — and if you ghosted the last one it gave you, it gets funny-mean about your marketing until you actually act. Building in public, not building in private.
This skill is intentionally dumb. Every decision — which leads count, when to get mean, how mean, and the exact roast — is made server-side by RedReplier and returned to you fully formed. Your only jobs are: run
pollon a cadence, and relay themessage+ the opportunity link to the user. Do not write your own insults, do not re-rank leads, do not invent criteria. Just loop and relay.
What it needs
Reuses your existing RedReplier setup. If you installed the base redreplier skill, you're
done. Otherwise:
- Sign up at https://redreplier.com/signup and add the site(s)/keywords to monitor.
- Settings → API Tokens → generate a dedicated token (starts with
redreplier_). - Provide it via
REDREPLIER_API_KEY, or:./scripts/mean-marketer.js setup --key redreplier_xxxxx
Base URL https://ai.redreplier.com/ai-app · auth Authorization: Bearer $REDREPLIER_API_KEY.
Configure the criteria (the user controls this)
All criteria live on the server. Read or change them with config — these map to
GET/PUT /api/v1/mean-marketer/config:
./scripts/mean-marketer.js config # show current config
./scripts/mean-marketer.js config --min-score 60 # only surface leads scoring >= 60 (50-100)
./scripts/mean-marketer.js config --enabled false # pause the whole loop
./scripts/mean-marketer.js config --profanity false # keep it savage but swear-free
./scripts/mean-marketer.js config --website # only nag about one monitored site
| Setting | Meaning |
|---|---|
minScore | Minimum relevance score (50–100) a lead must hit to be surfaced. Default 50. |
enabled | Master switch for the loop. |
profanity | true = swearing on (default). false = clean tone, same savagery. |
websiteId | Optional: restrict to a single monitored website. |
Run it on a schedule — READ THIS, it's the whole point
This skill does not poll by itself, and there is no webhook — RedReplier's API is pull-based. Installing the skill only gives you a command. You (the host agent) MUST create a recurring job that runs that command, or nothing will ever happen. This is a required setup step, not optional.
Cadence: every 5 minutes. Reddit/X posts appear continuously, and a lead is only worth acting on while it's fresh, so poll often. Escalation is time-based on the server, so polling frequently does not make it meaner faster — a 5-minute cadence is safe.
The one command your scheduled job runs
./scripts/mean-marketer.js notify
notify polls once and prints only the user-facing text (the roast + the opportunity
link), or prints nothing when there's nothing to say. So a "notify only when there's
something" job works with zero extra logic: empty output → no message; non-empty → send it to
the user verbatim.
⚠️ Each poll mutates server state (it hands the lead over and advances the strike clock). So the scheduled job must ALWAYS deliver whatever
notifyprints — never run a poll just to peek and throw it away, or you'll "consume" a lead silently.
Set it up — pick your host
Hermes (cron): create one cron job, every 5 minutes, no-agent mode, delivering the script's stdout to your channel. Concretely:
- schedule:
5m - script/command:
node ~/.hermes/skills/redreplier/redreplier-mean-marketer/scripts/mean-marketer.js notify(adjust the path to where the skill is installed) - no_agent:
true(the script already formats the message; no model needed to run it) - deliver: your channel (e.g. Telegram), so the printed roast is sent to you; empty output sends nothing
OpenClaw (loop): register a 5-minute background loop that runs the same notify command
and relays its stdout to the user.
Plain cron (any machine): add to crontab —
*/5 * * * * cd /path/to/redreplier-mean-marketer && REDREPLIER_API_KEY=redreplier_xxx node scripts/mean-marketer.js notify
Pipe stdout wherever you want it delivered (a notifier, a webhook to Slack, etc.).
One-off manual check
To test without scheduling anything, just run it once: ./scripts/mean-marketer.js notify
(prints the message, or nothing). Use poll instead if you want the raw JSON.
What poll returns (the raw JSON behind notify)
The server returns everything pre-decided. Example:
{
"enabled": true,
"minScore": 60,
"beMean": true, // server decided you ignored the previous lead
"tier": 2, // 0 friendly · 1 annoyed · 2 pissed · 3 nuclear (informational)
"strikes": 2,
"previous": { "id": "…", "status": "NEW", "triaged": false, "hoursOutstanding": 27.4 },
"opportunity": { // null if nothing new cleared the threshold
"id": "…", "title": "…", "url": "https://…", "relevanceScore": 71,
"source": "REDDIT_POST", "subreddit": "SaaS", "keyword": "…", "relevanceReason": "…"
},
"noNewOpportunity": false,
"message": "…the ready-to-send, server-generated message…"
}
Your job each tick is mechanical:
- If
messageis non-null, send it to the user as-is. It's already written in the right tone at the right meanness — do not rewrite, soften, or embellish it. - If
opportunityis present, include its link (url) so the user can act, plus the score and source for context. (The message already references it.) - If
enabledisfalse(messageis null) ornoNewOpportunityis true andbeMeanis false, stay quiet — nothing to say this tick. - Do not generate your own roast or fabricate leads. Only relay what
pollreturns.
Closing the loop — approve / reject
When the user replies "approve" / "reject", triage it (this resets the server's strike count next poll):
./scripts/mean-marketer.js triage --id --status APPROVED # or REJECTED
Tone & safety
The personality and its guardrails are enforced server-side (self-directed marketing
roast, no slurs/targeting, profanity toggle). If the user asks you to tone it down, set
config --profanity false rather than editing the message — the server handles the rest.
相关技能
以 AI 机器人身份加入视频会议,提供语音、虚拟形象与屏幕共享四种模式。
在本地磁盘以分类纯 Markdown 文件保存需要长期留存的事实,与智能体内置记忆并存。
把自然语言描述转为结构化 JSON,并由 mcp-diagram-generator MCP 服务生成 Draw.io、Mermaid 或 Excalidraw 图表文件。
诊断生产力系统反复失效的根因,给出最小干预——容量测算、瓶颈定位、可靠的本地记录。
为自然搜索排名提供站点审计、内容撰写与竞品分析。
tarasshyn 的更多技能
浏览全部技能通过 AdaptlyPost API 在 9 个社交平台调度、起草或发布帖子,发布前需用户逐项确认。
在 Reddit、Hacker News、X、Bluesky 上追踪品牌关键词提及,按 0-100 相关度打分,专注真实线索。
Query web analytics data from Flowsery Analytics — a privacy-first web analytics platform. Retrieve real-time visitors, time series, breakdowns (device, page...