From Topic Approval to Publish: The Astro + OpenClaw Content Pipeline
In a healthy content pipeline, "topic approved" should be the point where the system takes over. This article walks through how OpenClaw and Astro work together so that once a topic is greenlit, the rest of the process — drafting, wiring, QA, and deployment — can run with minimal human friction.
Why automate the content pipeline?
Manual content workflows break down exactly where things start to get interesting: multiple posts, multiple contributors, and multiple tools. Without a clear pipeline, you end up with drafts trapped in DMs, stale branches, and blog posts that almost shipped.
OpenClaw turns this into a repeatable system. Once a topic is approved, the assistant can:
- Draft the article with the right structure and SEO framing.
- Promote the draft into an Astro page with a clean layout.
- Wire the post into the blog index and sitemap.
- Run the build, commit, and push to trigger Vercel deployment.
Step 1: Topic approval in chat
Everything starts where you already work: chat. A topic might be proposed in Discord as a simple message. Once you reply with something like "topic 2 is good" or "let's ship this one," that becomes the approval signal for the assistant.
The key is that the approval is unambiguous. For example:
- The topic has a short working title.
- You confirm it's in scope for the blog.
- You signal that the assistant is allowed to move forward end-to-end.
Step 2: Drafting the article
Once a topic is approved, the assistant drafts the article in a
workspace-friendly format. In this setup, drafts live under
content-drafts/ as Markdown files. Each draft captures:
- The proposed slug and title.
- A clear outline of sections and subsections.
- Key phrases and internal links based on the growth packet.
- Any visual ideas, like diagrams or infoboxes, as textual notes.
This keeps early iterations lightweight while still living alongside the codebase instead of being lost in a chat thread.
Step 3: Promoting to an Astro blog post
When the draft is ready, it's promoted into an Astro page under
src/pages/blog/<slug>.astro. The post uses the same layout
as other articles on the site:
BaseLayoutfor global styles and metadata.NavBarfor navigation consistency.<main class="container">to center the content.<article class="content-shell">for the bordered article body.
Within that shell, the article uses standard HTML headings, paragraphs, lists, and callout boxes, so it looks and feels like the rest of the blog.
Step 4: Wiring into the blog index and sitemap
A blog post isn't really live until it's discoverable. The assistant updates two key places:
- Blog index — adds a card in
src/pages/blog/index.astropointing to the new post, with a short description. - Sitemap — adds a
<url>entry inpublic/sitemap.xmlso search engines can find the route.
These updates follow the conventions in
article-publishing-guide.md and the
growth-publish-packet.md, so each new article strengthens the
internal linking mesh instead of becoming an orphan page.
Step 5: Build, commit, and deploy
With the content wired up, the assistant runs the Astro build and ships the changes:
npm run buildto validate that the site compiles.git addfor the new post, index, and sitemap updates.git commitwith a descriptive message.git push origin mainto trigger the Vercel deployment.
Vercel picks up the push, builds the site, and publishes the updated blog. Once the deployment is live, the assistant can also follow your geo/SEO checklists and indexing workflows.
Step 6: Generalizing the pipeline for future topics
The real power of this setup is that the same pipeline can be reused for future topics. Once the pattern is established, "approve this topic" becomes the only input you need for the assistant to run the full create → optimize → publish loop.
Over time, you can add more structure around this process, like topic templates, per-department STATE files, and automated QA checks that run as part of the build. But the core loop stays the same: approve a topic, let the system carry it to production, and iterate from there.
Final thoughts
If you're tired of half-finished drafts and posts that almost shipped, connect your chat approvals directly to your Astro site. With OpenClaw in the loop, "topic approved" can mean "this will be a live article soon," not "someone should remember to write that."