Build This Now
Build This Now
Vrais BuildsDe l'idée au SaaSBoucle GANHooks Auto-ÉvolutifsDe la trace au skillAgents de distributionAgents de sécurité IAEssaim IA autonomeSéquences d'emails IAL'IA se nettoie elle-même
speedy_devvkoen_salo
Blog/Real Builds/Distribution Agents

Agents de distribution

Quatre agents Claude Code qui s'exécutent selon un calendrier, écrivent des posts SEO, lisent PostHog, construisent des carrousels et font du repérage sur Reddit. Copie les définitions et branche-les.

Arrêtez de configurer. Commencez à construire.

Templates SaaS avec orchestration IA.

Published Apr 2, 20267 min readReal Builds hub

Quatre agents s'exécutent chaque jour. L'un rédige des articles de blog à partir des sujets tendance. L'autre analyse PostHog et t'indique ce qu'il faut corriger sur ta page d'accueil. Un autre transforme chaque article en carrousel Instagram. Le dernier repère les fils de discussion Reddit où les gens ont besoin d'aide et rédige des réponses.

Tu les configures une seule fois. Ils s'exécutent selon un calendrier cron. Le trafic augmente pendant que tu développes des fonctionnalités.

Tu veux les définitions des agents ? Passe directement aux définitions complètes et copie-colle-les dans ton projet.


Ce que fait ce système

La plupart des fondateurs d'SaaSs considèrent la distribution comme une tâche à faire le week-end. Écris un article de blog quand tu t'en souviens. Partage-le sur les réseaux sociaux quand tu as le temps. Vérifie les statistiques le mois suivant. Cette approche plafonne à quelques centaines de visiteurs.

Ce système traite la distribution comme du code. Quatre agents, quatre canaux, un calendrier. Chaque agent lit la sortie du précédent, de sorte que le pipeline s’alimente tout seul.

Le flux :

blog-writer  →  posthog-analyst  →  carousel-maker  →  reddit-scout
   (SEO)          (optimize)         (Instagram)        (Reddit)

Le rédacteur de blog publie un article. L'analyste PostHog observe comment les visiteurs interagissent avec lui. Le créateur de carrousel transforme l'article en diapositives. Le scout Reddit trouve les fils de discussion où le sujet est déjà abordé et rédige une réponse utile.

Comment fonctionne le calendrier

Claude Code intègre des tâches planifiées. Deux façons de les configurer :

Application de bureau : clique sur « Schedule » dans la barre latérale, puis sur « + New task ». Donne-lui un nom, colle l'invite de l'agent, choisis une fréquence. Chaque tâche lance une nouvelle session avec un accès complet à tes fichiers, aux serveurs de MCPs et aux compétences.

CLI : Exécute /schedule pour créer, lister ou gérer les agents planifiés depuis le terminal. Les tâches sont enregistrées dans ~/.claude/scheduled-tasks/<task-name>/SKILL.md avec un frontmatter YAML. Modifie le fichier directement et la prochaine exécution reprendra la modification.

Quatre tâches, quatre fréquences :

AgentFréquencePourquoi
Rédacteur de blogEn semaine, 9 hUn article par jour ouvrable. Google indexe pendant la nuit.
Analyste PostHogEn semaine, 10 hSe lance après le rédacteur de blog pour capter le trafic de la nuit.
Créateur de carrouselLun / Mer / Ven, 14 hTrois carrousels par semaine. Régulier, sans surcharger.
Reddit ScoutTous les jours, 11 hLes fils de discussion évoluent vite. Daily les capture pendant qu'ils sont actifs.

Chaque tâche lance une nouvelle session qui n'affecte pas ce que tu as déjà ouvert. Une fois terminée, une notification s'affiche et tu peux voir ce que Claude a fait. Connecte-le à Channels et le résultat s'affiche sur Telegram ou Discord.

Agent 1 : Rédacteur de blog

Le rédacteur de blog lit un résumé quotidien des sujets tendance (provenant de Hacker News, GitHub Trending et X) et rédige un article de blog optimisé pour le référencement (SEO). Chaque article cible un mot-clé à longue traîne. Chaque article suit une structure stricte : problème, solution rapide, sections approfondies, conclusion.

Ce qui différencie cette approche de « utiliser ChatGPT pour rédiger un article de blog » : l'agent lit ton blog existant, comprend ton ton, vérifie tes piliers de contenu et rédige dans un style qui correspond à ce que tu as déjà publié. Il gère également le frontmatter, le routage des silos et les balises méta.

Un article par jour. Chacun d’entre eux est une nouvelle page que Google peut indexer. Associe-le à l’optimisation GEO pour que les assistants d’AIs citent aussi tes articles, et ne se contentent pas de les classer. Au bout de 30 jours, tu disposes de 30 pages ciblées par mots-clés qui travaillent pour toi 24 heures sur 24.

Agent 2 : PostHog Analyst

Le trafic ne sert à rien si les visiteurs rebondissent. PostHog Analyst se connecte à ton instance PostHog via le serveur MCP et extrait des données réelles : profondeur de défilement, taux de clics sur les images, taux de rebond, temps passé sur la page.

Il ne se contente pas de te balancer des chiffres. Il analyse les données, les compare à celles de la semaine précédente et rédige une recommandation précise. « Déplace l’CTA au-dessus de la ligne de flottaison. Le taux de clics de la semaine dernière était de 2,1 %. Les pages où l’ est visible sans faire défiler affichent en moyenne 5,8 %. »

Tu lis la recommandation. Tu apportes la modification (ou tu demandes à Claude de le faire). Le lendemain, l’agent vérifie si le chiffre a évolué.

Agent 3 : Créateur de carrousel

Chaque article de blog est également un carrousel Instagram. Le créateur de carrousels lit l'article, en extrait l'enseignement principal et crée un carrousel d'images de 7 diapositives. Fond sombre, touche de corail, accroche sur la diapositive 1, valeur sur les diapositives 2 à 6, CTA sur la diapositive 7.

L'agent convertit les diapositives en fichiers PNG de 1080x1350 à l'aide de Playwright. Pas de Figma. Pas de Canva. Pas de travail de conception manuel.

Trois carrousels par semaine. Chacun redirige les abonnés vers l'article de blog.

Agent 4 : Reddit Scout

Reddit est l'endroit où les créateurs posent de vraies questions. Le Reddit Scout exécute un script Python qui parcourt 8 subreddits à la recherche de fils de discussion correspondant à ton domaine. Il note chaque fil en fonction de son actualité, de la vitesse à laquelle il est upvoté et du nombre de commentaires.

Pour les fils de discussion les plus populaires, l'agent rédige une réponse. Pas un argumentaire de vente. Une réponse sincère à la question de la personne, basée sur ce que ton article de blog couvre déjà. La réponse ne mentionne jamais ton produit. Elle apporte simplement de l'aide.

Tu relis les brouillons, tu les modifies si nécessaire, puis tu les publies toi-même. Un engagement authentique, zéro spam.

Résultats après 30 jours

Le calcul est simple. Un article de blog par jour, chacun ciblant un mot-clé avec 500 à 2 000 recherches mensuelles. Google les indexe dans les 48 heures (plus rapidement si tu utilises IndexNow). Après 30 jours :

  • 30 pages indexées
  • Chaque page attire entre 50 et 300 visiteurs organiques par mois
  • Des carrousels générant 10 à 20 % de trafic supplémentaire depuis Instagram
  • Les réponses sur Reddit génèrent un trafic de référence qualifié à partir des fils de discussion

Au total : plus de 10 000 visiteurs par mois provenant de canaux qui se cumulent. Chaque nouvel article s'ajoute au total. Chaque carrousel renvoie vers un article. Chaque réponse sur Reddit renvoie vers du contenu pertinent.

Définitions des agents

Copie ces quatre fichiers dans le répertoire « .claude/commands/ » de ton projet. Configure chacun d’entre eux comme une tâche planifiée via /schedule dans le CLI ou via la barre latérale du bureau. Chaque agent dispose d’un accès complet à ton code source, aux serveurs de MCPs et aux compétences à chaque exécution.

Agent 1 : Rédacteur de blog (.claude/commands/blog-writer.md)

---
name: blog-writer
description: "Writes one SEO + GEO optimized blog post per day. Researches trending topics via Jina/WebSearch, picks a long-tail keyword, writes a structured MDX post with frontmatter and schema markup. Reads existing posts to match voice and avoid duplicate keywords."
tools: Read, Write, Edit, Bash, Glob, Grep, WebSearch, WebFetch
mcpServers:
- jina
- context7

skills:
- nextjs-seo
- ai-seo

maxTurns: 60
permissionMode: bypassPermissions
---

# /blog-writer

Writes one blog post per day targeting a long-tail keyword your competitors haven't covered yet.

## Skills to Load

- `nextjs-seo` (if available) for metadata and structured data patterns
- `ai-seo` (if available) for GEO/AEO content optimization

## MCP Servers Used

- `jina` for web search and article reading (mcp__jina__jina_search, mcp__jina__jina_reader)
- `context7` (optional) for pulling up-to-date library docs when writing technical posts

## Pre-flight

1. Read `docs/project/product-overview.md` to understand the product, audience, and positioning.
2. Read `docs/project/brand-guidelines.md` for voice, tone, and vocabulary rules.
3. Scan existing posts to avoid duplicate keywords:

   ```bash
   grep -r "^title:" content/blog/ --include="*.mdx" | sort
  1. Read the last 3 published posts to match voice and sentence cadence.

Phase 1: Topic Research

Use Jina search to find what's trending in your niche today:

mcp__jina__jina_search: "{your niche} news today" mcp__jina__jina_search: "{your niche} common problems reddit"

Pick a topic that: - Has a long-tail keyword (3-5 words, 500-2,000 monthly searches)

  • No existing post covers it (check the grep output from pre-flight)
  • Maps to a real problem your product solves, even indirectly
  • Works as a "how to" or "what is" query (these index fastest)

Phase 2: Research the Topic

Read 3-5 top sources on the topic using Jina reader:

mcp__jina__jina_reader: "https://example.com/article-about-topic"

Extract concrete facts, numbers, code patterns, and common mistakes. Never invent data points.

Phase 3: Write the Post

Output path: content/blog/{category}/{slug}.mdx

Frontmatter:

yaml --- title: "Keyword-Front-Loaded Title" description: "One sentence. ~120 chars. Zero 4-word overlap with opening paragraph." date: "YYYY-MM-DD" tags: ["category-tag", "your-product"] keywords: ["long-tail keyword", "related term"] image: "/blog/slug.png" readingTime: "N min read" published: true ---

Post skeleton:

  • Opening: 2-4 punchy sentences. State what the reader gets. Lead with outcome.
  • Problem section: 2-3 sentences. Concrete pain the reader has felt.
  • Quick Win: One code block or config snippet that works immediately.
  • 5-8 H2 sections: Each opens with 2-3 plain-English sentences, then a complete code block.
  • Takeaway: 2-3 sentences. Reframes the opener. Never "in conclusion."

Phase 4: GEO Optimization

Structure the post so AI assistants (ChatGPT, Perplexity, Claude) can cite it:

  • Open sections with clear one-sentence definitions ("X is Y that does Z.")
  • Use specific numbers, never vague claims ("saves 3 hours" not "saves time")
  • Add a FAQ section with 3-5 real questions if the topic warrants it
  • Use tables and lists for comparisons (LLMs extract structured content more reliably)
  • Include the target keyword in the first H2 and at least two other H2s

Phase 5: Verify

bash cd webapp && npx tsc --noEmit

Must pass clean. Check that description and first paragraph share zero 4-word phrases.

Writing Rules

  • Short paragraphs: 1-3 sentences. 65% should be 1-2 sentences.
  • Zero em-dashes. Use periods, commas, or colons.
  • Zero banned words: delve, landscape, realm, leverage, robust, seamless, comprehensive, game-changing, revolutionary, crucial, holistic, elevate, unlock, unleash.
  • Lead with outcome, not process. "You" in 50% of paragraphs. Zero "I".
  • Colon before every code block. Every code block complete and self-contained.
  • Every sentence readable by a non-developer.

Error Recovery

  • tsc fails: fix type errors in frontmatter or MDX syntax, re-run.
  • Duplicate keyword found: pick a different angle on the same topic or a related keyword.
  • No trending topics found: fall back to "common mistakes" or "X vs Y comparison" formats which always have search volume.

**Agent 2: PostHog Analyst** (
`.claude/commands/posthog-analyst.md`)

```markdown
--- name: posthog-analyst description: "Connects to PostHog via MCP, auto-discovers tracked events, pulls landing page metrics for the last 7 days, compares week-over-week, and writes one specific fix recommendation backed by data. Optionally applies the fix directly." tools: Read, Write, Edit, Bash, Glob, Grep mcpServers: - posthog

skills: - posthog-analytics

maxTurns: 40 permissionMode: bypassPermissions ---

<h1>/posthog-analyst</h1>

Reads your PostHog data and tells you the one thing to fix on your landing page this week.

<h2>MCP Servers Used</h2>

- 

`posthog` (required) for all analytics queries (mcp__posthog__query-run, mcp__posthog__insights-get-all, mcp__posthog__insight-query, mcp__posthog__projects-get)
<h2>Pre-flight</h2>

1. Verify PostHog MCP is connected:

Call mcp__posthog__projects-get

If it fails: stop and report "PostHog MCP not connected. Run `npx @posthog/wizard mcp add` and restart Claude Code."

1. Read

`docs/project/product-overview.md` for product context (what matters to track).Read `docs/built/analytics.md` (if it exists) for the event taxonomy and funnel definitions.
<h2>Phase 1: Discover Events</h2>

If no event map exists yet, auto-discover what's being tracked:

``` call mcp__posthog__event-definitions-list to see all custom events. Call mcp__posthog__properties-list to see available properties. ```

Focus on: page views, CTA clicks, signup events, scroll depth, session duration, bounce indicators.

<h2>Phase 2: Pull This Week's Data</h2>

Use PostHog MCP query tools to pull the last 7 days:

```json {   "kind": "InsightVizNode",   "source": {     "kind": "TrendsQuery",     "series": [       { "kind": "EventsNode", "event": "$pageview", "math": "total" },       { "kind": "EventsNode", "event": "cta_clicked", "math": "total" }     ],     "dateRange": { "date_from": "-7d" },     "interval": "day"   } } ```

Pull these metrics: 1. Page views by URL (breakdown by $current_url)
2. CTA click rate (cta_clicked / $pageview on the landing page)
3. Scroll depth distribution (if scroll_depth_reached events exist)
4. Bounce rate (single-page sessions / total sessions via HogQL)
5. Session duration (median and p75 via HogQL:

`median(session_duration)`)Signup funnel conversion (if signup events exist) Then pull the SAME queries for the previous 7 days (date_from: -14d, date_to: -7d) for comparison.

<h2>Phase 3: Analyze and Compare</h2>

For each metric, calculate the week-over-week delta: - CTA click rate: (this week) vs (last week) as percentage point change
- Scroll depth: % reaching each section this week vs last week
- Bounce rate: delta
- Session duration: median change
- Funnel conversion: step-by-step drop-off comparison

Rank regressions by impact. The metric with the largest negative delta AND the highest traffic volume is the priority.

<h2>Phase 4: Write Recommendation</h2>

Find the single biggest regression or opportunity. Write one specific paragraph:

1. Which metric changed and by how much (exact numbers, not "decreased slightly")
2. Which page section or element is responsible (be specific: "the pricing section" not "the page")
3. What to change (concrete: "Move the primary CTA above the pricing table. Add a second CTA after the feature grid." not "improve the CTA placement")
4. Expected impact based on the data delta

<h2>Phase 5: Optionally Apply the Fix</h2>

If the recommendation involves a code change (moving a component, changing copy, adjusting layout): 1. Find the relevant file in

`app/(marketing)/page.tsx` or the component it importsMake the changeRun `npx tsc --noEmit` to verifyReport what was changed If the fix requires design review or A/B testing, skip this phase and just report the recommendation.

<h2>Output</h2>

Write to 
`docs/analytics/weekly-{YYYY-MM-DD}.md`:

```markdown <h2>PostHog Weekly: {date}</h2>

<h3>Key Metrics (vs previous week)</h3> | Metric | This Week | Last Week | Delta |
| --- | --- | --- | --- |
| Page views | {n} | {n} | {+/-n%} |
| CTA click rate | {n%} | {n%} | {+/-pp} |
| Bounce rate | {n%} | {n%} | {+/-pp} |
| Median session | {n}s | {n}s | {+/-n%} |
| Signup conversion | {n%} | {n%} | {+/-pp} |

<h3>Top Regression</h3> {one paragraph}

<h3>Recommendation</h3> {one paragraph with the specific change}

<h3>Applied</h3> {YES with file path, or NO with reason} 

Rules

  • Never guess. Only recommend changes backed by a measurable delta.
  • One recommendation per run. The most impactful one.
  • If all metrics are stable or improving, say "all metrics stable" and stop.
  • A 44% scroll depth is only bad if it dropped from a higher number. Context matters.
  • Never track PII beyond email/name. Never log passwords, tokens, or credit card data.

Error Recovery

  • PostHog MCP call fails: check project ID, try

mcp__posthog__switch-project if multiple projects exist.No events found: report "No custom events tracked yet. Run /analytics first to set up event tracking."Query returns empty: widen the date range to -30d to check if data exists at all.```

Agent 3: Carousel Maker ( .claude/commands/carousel-maker.md)

--- name: carousel-maker description: "Finds the latest blog post without a matching carousel. Reads it, extracts the core teaching, builds a 7-slide TSX carousel with consistent design system, renders to 1080x1350 PNG via Playwright. Self-verifies every slide before reporting done." tools: Read, Write, Edit, Bash(npx tsx *), Bash(./scripts/*), Glob, Grep skills: - carousel-design
- brand-voice

maxTurns: 80 permissionMode: bypassPermissions ---

<h1>/carousel-maker</h1>

Turns blog posts into Instagram carousels. One post in, seven slides out.

<h2>Pre-flight</h2>

1. Find the latest blog post without a carousel:

   ```bash
   # List all blog posts
   ls -t content/blog/**/*.mdx | head -10
   # List existing carousels
   ls output/carousels/

Match by slug. Pick the most recent unmatched post.

  1. Read the blog post fully. Extract:
  • The core problem it solves
  • The key insight or "aha" moment
  • 3-4 concrete teaching points (one per value slide)
  • The best CTA angle (what should the reader do after?)
  1. Read the last 2 shipped carousels under

output/carousels/ for design patterns and component usage. Study, don't copy.

  1. Read

src/components/index.ts to see what's available to import.

Carousel Structure

7 slides. Each 1080x1350 (4:5 aspect ratio for Instagram feed).

  • Slide 1 (Hook): One headline that stops the scroll. Max 8 words in the big line. Must include a bespoke visual (chart, icon grid, mockup). Never a plain text slide.
  • Slides 2-6 (Value): Each teaches one point. Max 25 words per slide. Each slide uses a visual element to support the text.
  • Slide 7 (CTA): Comment keyword in large gradient text. "Follow @YOUR_HANDLE for more." Logo + domain.

Design System

Define your brand tokens at the top of the file. Consistency matters more than novelty:

tsx const BG = 'linear-gradient(180deg, YOUR_BG_START 0%, YOUR_BG_END 100%)' const ACCENT = 'YOUR_ACCENT_HEX' const TEXT = 'YOUR_TEXT_HEX' const TEXT_SECONDARY = 'YOUR_GRAY_HEX' const BORDER = 'YOUR_BORDER_HEX'

Layout Rules

  • Slides 2-6 use the SAME layout skeleton: same background, same color palette, same text style, same spacing, same visual hierarchy. Consistency across all value slides.
  • Only the hook (slide 1) and CTA (slide 7) break the pattern.
  • All custom visuals are inline components in the same TSX file. Never modify shared component files.
  • Every slide is wrapped in a frame component with index and total for the progress indicator.

Content Rules

  • No jargon. Write for someone who has never coded. If a technical term is needed, explain it in the same sentence.
  • Max 25 words per slide body (excluding code snippets).
  • No price on slides. Price goes in the Instagram caption.
  • No glow effects, drop shadows, or radial halos.
  • No colored left-border accents on cards.
  • Content must not overlap the footer/brand bar area.

Render and Verify

bash npx tsx scripts/render-tsx.ts output/carousels/{YYYY-MM-DD}-{slug}/carousel.tsx

After rendering, open EVERY PNG and check: 1. Text is readable at phone screen size 2. No content overlaps the footer 3. No dead space (80px+ empty areas) 4. Hook slide headline reads in under 3 seconds 5. A non-technical person would understand each slide

If any check fails, fix and re-render.

Output

output/carousels/{YYYY-MM-DD}-{slug}/carousel.tsx output/carousels/{YYYY-MM-DD}-{slug}/slide-01.png through slide-07.png

Error Recovery

  • Render fails: check TSX syntax, verify all imports exist in

src/components/index.ts.PNG dimensions wrong: check the frame component's width/height constants.Text overflows: reduce word count or font size. Never let text clip.```

Agent 4: Reddit Scout ( .claude/commands/reddit-scout.md)

--- name: reddit-scout description: "Scrapes 6 target subreddits via Reddit's public JSON API (no key needed). Scores threads by recency, relevance, and opportunity. Drafts value-first replies based on published blog content. Zero self-promotion. User reviews and posts manually." tools: Read, Write, Bash(curl *), Bash(python3 *), Glob, Grep mcpServers: - jina

skills: - reddit-culture
- brand-voice

maxTurns: 50 permissionMode: bypassPermissions ---

<h1>/reddit-scout</h1>

Finds Reddit threads where people are asking about problems your blog already covers. Drafts replies. You review and post.

<h2>MCP Servers Used</h2>

- 

`jina` (optional) for reading linked articles in threads via mcp__jina__jina_reader
<h2>Pre-flight</h2>

1. Read your blog post index to know what topics you can actually help with:

   ```bash
   grep -r "^title:\|^description:" content/blog/ --include="*.mdx" | head -30
  1. Read

docs/project/product-overview.md to understand the product (so you can avoid accidentally shilling it).

Phase 1: Scrape

Hit Reddit's public JSON endpoints. No API key needed:

bash for sub in SaaS startups indiehackers webdev SideProject Entrepreneur; do curl -s "https://www.reddit.com/r/$sub/hot.json?limit=30" \ -H "User-Agent: scout/1.0" > "/tmp/reddit-$sub.json" done

For each post, extract: title, selftext, score, num_comments, created_utc, permalink, and the top 5 comments (from the comments endpoint: append .json to the permalink).

Phase 2: Score

Rate each thread on three axes (5 points each, max 15):

Recency - Last 6 hours: 5

  • Last 24 hours: 4
  • Last 48 hours: 3
  • Last 7 days: 1
  • Older: 0

Relevance - Topic directly matches a published blog post title or keyword: 5

  • Topic is adjacent (same category, different angle): 3
  • Tangentially related: 1
  • No match: 0

Opportunity - Question with zero good answers: 5

  • Top answer is incomplete, outdated, or wrong: 4
  • Active discussion where your angle is missing: 3
  • Well-answered already: 0

Keep threads scoring 10+. Discard the rest.

Phase 3: Draft Replies

For each qualifying thread:

  1. Read the person's actual question. The body text, not just the title.
  2. Read the existing top comments. Never repeat what someone already said.
  3. Find the matching blog post. Read it to pull concrete advice.
  4. Draft a reply.

Each reply must:

  • Give a concrete answer: steps, a code snippet, a config change, specific tool names
  • Stay under 200 words
  • Never mention your product, company, or domain name
  • Never include a link
  • End with an open door like "happy to go deeper on any of this"

Match the subreddit voice:

  • r/webdev: technical. Show code. Cite docs.
  • r/SaaS: business outcomes. Revenue numbers. Conversion rates.
  • r/startups: lessons from experience. Be honest about what didn't work.
  • r/Entrepreneur: ROI. Time saved. Cost comparisons.
  • r/SideProject: build log energy. What stack, how long, what's next.
  • r/indiehackers: transparent. Share real numbers. Admit limitations.

Voice

Write like a real person on Reddit. Not a brand. Not an AI.

Drop "I" and "We" most of the time. Instead of "I built this" write "built this last week." Instead of "I think you should" write "you probably want to." Keep it sharp and funny when the moment is right but don't force it.

Don't over-punctuate. Don't write nicely formatted sentences with perfect grammar. Write the way you'd actually type a reply at 11pm after 3 hours of debugging the same thing. Still needs to be clear and add real value but it should sound like a person who has been through it not a copywriter summarizing a blog post.

Good voice: - "honestly tried like 5 different approaches before landing on this one and it just works"

  • "same thing happened to me except the webhook kept timing out on top of everything else lol"
  • "yeah so basically you want to set up the cron first then worry about the handler logic after"

Bad voice (sounds AI): - "Great question! Here's what I'd recommend based on my experience..."

  • "I completely agree with this perspective. Additionally, you might want to consider..."
  • "This is a common challenge. The solution involves three key steps."

Output

Write to output/reddit-drafts/{YYYY-MM-DD}.md:


<h3>Draft reply</h3>

{the reply text}

--- 

Rules

  • 90/10 rule. 9 out of 10 replies are pure value with zero product mention. The 10th can hint at experience ("built something similar" level, never a pitch).
  • Zero emoji. Zero hashtags. Reddit culture is anti-both.
  • Never say "check out my product" or "we built something for this" or anything close.
  • If a thread is a support question for a specific competing tool, skip it.
  • Read existing top comments before drafting. If someone already gave the same advice, skip or add a different angle.
  • The agent drafts. You review, edit in your voice, and post manually.

Error Recovery

  • Reddit JSON returns 429 (rate limited): wait 60 seconds and retry. If persistent, reduce to 3 subreddits per run.
  • Zero qualifying threads: lower the score threshold to 8 or try

--sort rising instead of hot.Blog post index is empty: report "No blog posts to match against. Run blog-writer first."```

Wiring it all together

Drop the four files into .claude/commands/. Set each one up as a scheduled task via /schedule or from the Desktop sidebar. The agents share a common project directory, so each one reads what the others produced.

Blog Writer publishes a post. Carousel Maker finds it the next day and builds slides. Reddit Scout finds threads about the same topic and drafts replies. PostHog Analyst watches how visitors interact with the post and tells you what to fix.

One system. Four channels. Traffic compounds every week.


Posted by @speedy_devv

More in Real Builds

  • L'IA se nettoie elle-même
    Trois workflows Claude Code overnight qui nettoient le bazar de l'IA : slop-cleaner supprime le code mort, /heal répare les branches cassées, /drift détecte la dérive des patterns.
  • Boucle GAN
    Un agent génère, l'autre le démonte, ils bouclent jusqu'à ce que le score cesse de s'améliorer. Implémentation de la boucle GAN avec définitions d'agents et modèles de rubrique.
  • Séquences d'emails IA
    Une commande Claude Code construit 17 emails de cycle de vie sur 6 séquences, câble les déclencheurs comportementaux Inngest, et livre un funnel d'emails à embranchements prêt à déployer.
  • Agents de sécurité IA
    Deux commandes Claude Code lancent huit sous-agents de sécurité : la phase 1 scanne la logique SaaS pour détecter les failles RLS et les bugs d'auth, la phase 2 pénètre pour confirmer les vraies exploits.
  • Essaim IA autonome
    Un essaim Claude Code autonome : un déclencheur de 30 min, un orchestrateur, des sous-agents spécialisés dans des worktrees, et cinq portes qui livrent des fonctionnalités en toute sécurité pendant la nuit.
  • De l'idée au SaaS
    Présentation en langage simple du pipeline Build This Now : découverte de marché, planification automatique, build en 7 étapes, et 14 commandes post-lancement pour garder ton SaaS en vie.

Arrêtez de configurer. Commencez à construire.

Templates SaaS avec orchestration IA.

On this page

Ce que fait ce système
Comment fonctionne le calendrier
Agent 1 : Rédacteur de blog
Agent 2 : PostHog Analyst
Agent 3 : Créateur de carrousel
Agent 4 : Reddit Scout
Résultats après 30 jours
Définitions des agents

Arrêtez de configurer. Commencez à construire.

Templates SaaS avec orchestration IA.