Build-in-public dies the same way for almost every indie hacker: you ship for three weeks straight, post nothing because you were heads-down shipping, then feel like posting is performative catch-up. The audience you were building goes cold exactly when you have the most to show.
The problem is not motivation. It is that build-in-public content has a raw-material pipeline — commits, changelog entries, revenue and usage numbers, screenshots — that you are converting to posts by hand, at the end of your energy budget.
That conversion is exactly what an AI agent is good at. You keep the decisions (what ships, what numbers you share, what you actually think); the agent turns the week's raw material into an X thread and a LinkedIn post, validates them, and schedules them. Here is the full workflow.
Nardi Braho - July 4, 2026
TL;DR — the system
- Raw material in: git log, changelog entries, one metrics line, screenshots.
- Weekly 20-minute session: one batch prompt turns the week into 3–5 X posts + 1 LinkedIn post; you edit for voice; the agent validates and schedules.
- Infrastructure: Claude Code + the SocialClaw MCP server (
validate_schedule→apply_schedule→run_status), accounts connected once.
- Authenticity rule: the agent drafts from your facts and your take — it never invents numbers, lessons, or enthusiasm.
What does a build-in-public pipeline look like?
Three stages, and only the middle one is new:
| Stage | What happens | Who does it |
|---|---|---|
| Collect | Git commits, changelog entries, a metrics snapshot, screenshots pile up during the week | Automatic (you're already doing it) |
| Convert | Raw material → platform-shaped drafts in your voice | AI agent, from one batch prompt |
| Publish | Validate payloads, schedule across the week, verify delivery | Agent via MCP; you approve the batch |
The collect stage is free — your repo and your product already produce it. The publish stage is solved infrastructure: connect X and LinkedIn once at getsocialclaw.com/dashboard, add the SocialClaw MCP server to Claude Code, and the agent gets upload_asset, validate_schedule, apply_schedule, and run_status as tools:
claude mcp add --transport http socialclaw https://getsocialclaw.com/mcp \
--header "Authorization: Bearer sc_live_your_key"
The API key stays in MCP config — never paste it into a prompt.
How do you turn commits and metrics into posts?
Run one weekly session. Start by pulling the raw material into the conversation:
git log --since="7 days ago" --oneline
Add your changelog entries and one honest metrics line ("MRR $412 → $431, 14 new signups, churn 1"). Then give the agent a batch prompt like this:
Here is this week's raw material: [git log, changelog, metrics, my notes].
Draft, for my review:
1. 3–5 standalone X posts — one per meaningful ship or lesson.
Casual, specific, first person. No hashtags, no "excited to announce".
2. One X thread (4–6 posts) if the week has a story arc; otherwise skip it.
3. One LinkedIn post: the week's biggest lesson, 120–180 words,
written for founders, not recruiters.
Rules: use ONLY facts I gave you. Never invent numbers, users, or feelings.
Flag anything you think is too thin to post instead of padding it.
After I approve: upload the screenshots, validate the schedule, and
spread posts Tue–Sat at varied times. Show me run status when applied.
The agent drafts; you spend your 20 minutes editing for voice and killing anything that smells generated. Then it runs the real pipeline: upload_asset for screenshots, validate_schedule to catch format problems before they're public, apply_schedule, and run_status to confirm delivery — because platform "accepted" is not the same as published.
If you prefer chat-ops, the same workspace drives a Telegram flow — draft on your laptop, approve from your phone.
What cadence actually works for build in public?
You do not need daily posts. You need a reliable cadence that survives your worst shipping weeks:
- X: 3–5 posts/week. One per real ship or lesson. Standalone posts beat forced threads; save threads for genuine arcs (launch retros, pricing changes, a hard bug).
- LinkedIn: 1 post/week. One lesson, written like you would tell a founder friend. LinkedIn punishes volume without substance and rewards consistency.
- Metrics posts: when the number moves, not on a schedule. A flat-MRR week is a lesson post, not a chart post.
Batch-scheduling the week up front is what makes the cadence survive: your Thursday energy crash no longer decides whether Thursday's post exists.
How do you keep automated posting authentic?
This is the objection that matters, so make it structural rather than aspirational:
- The agent never generates facts. It only reshapes material you gave it. No invented user counts, no synthetic enthusiasm, no "lessons" you didn't actually learn.
- You write the take, the agent writes the packaging. A one-line note like "shipped webhooks, hated every minute of Meta's docs" is enough — that opinion is the authentic part; the agent formats around it.
- Ship the bad weeks too. Instruct the agent to draft the "nothing worked, here's what I tried" post. Failure posts are the most credible build-in-public content, and a pipeline that only publishes wins reads as marketing.
- Edit pass is mandatory. If a draft doesn't sound like you, rewrite the first line yourself — the rest usually follows. Your edit rate will drop week over week as the brief improves; that is the system learning your voice.
Can you trigger posts from CI instead?
Yes — the event-driven variant. If your changelog lives in your repo, a GitHub Actions workflow can draft and schedule a post automatically on release, using the same validate-then-apply pipeline via the socialclaw CLI. That pattern is covered step by step in post your changelog to social media from GitHub Actions, and the deeper changelog-to-social pipeline — per-platform summaries, before/after examples — in turn your SaaS changelog into social posts automatically.
The weekly batch session and the CI trigger compose well: CI handles "we shipped v2.3" announcements the moment they happen; the weekly session handles narrative, lessons, and metrics — the part that builds the audience.
FAQ
How do I automate build-in-public posts without sounding like a bot?
Feed the agent only your real facts and your real opinions, make it draft rather than publish, and edit every batch. The tell of bot content is invented enthusiasm and padded lessons — ban both in the prompt and flag thin weeks instead of padding them.
What should I post when I didn't ship anything?
The struggle. "Spent all week fighting OAuth and lost" outperforms silence and fake wins. Instruct your agent to draft failure posts from your notes with the same care as launch posts — they're the highest-trust content in the genre.
Which platforms are best for build in public?
X is the home of the genre — indie hackers, founders, and buyers are all there. LinkedIn compounds slower but reaches people who pay for software. Start with those two; add more once the weekly habit is solid, since the same validated schedule can fan out to any of the 11 platforms SocialClaw connects.
How much time does this workflow take per week?
About 20 minutes: 5 collecting material (mostly copy-paste), 10 editing drafts, 5 approving the schedule. The agent handles conversion, validation, scheduling, and delivery verification. Compare that to the 2+ hours of ad-hoc posting it replaces.
Do I need to code to set this up?
Minimal terminal comfort helps — one claude mcp add command and connecting accounts in a dashboard. No API integration work: the MCP server exposes publishing as tools the agent calls itself. See the wider tool landscape in best social media MCP servers.