Agent build · v1
Site-first article and explainer agents
What it does: Two Claude Code agents that publish to your own site first: one writes a data-backed article per run, the other turns articles and projects into pages that each answer one searched question.
- Model
- Claude Opus (Claude Code background agents)
- Runs in
- Claude Code scheduled tasks + background agents
- Cost per run
- not measured
- License
- MIT
- Used by
- 0
- Files
- 7 (18 KB)
curl -L https://tensorust.com/builds/site-first-article-agents/download -o site-first-article-agents.zip
Receipts
- Source
- https://this-week-in-rust.org/blog/2026/10/21/this-week-in-rust-674/
- Measured
- Oct 21, 2026
- Check
- Number found on the source page by our checker
- Stamp
- ZUIl8enHLWxfHuELNhLDQ85Hzc-h63Xs
- Source
- https://tensorust.com/articles/crates-io-download-count/
- Measured
- Oct 17, 2026
- Check
- Number found on the source page by our checker
- Stamp
- W3nPiJOC2p9HAOdZLXUR8pjXD0CPjnXv
Files
- agents/articles/QUALITY.md2 KB
- agents/articles/ROLE.md3 KB
- agents/articles/SITE_PUBLISH.md3 KB
- agents/explainers/QUEUE.example.md1 KB
- agents/explainers/ROLE.md3 KB
- README.md1 KB
- schedule.example.json3 KB
# FLAGSHIP ARTICLE (one run, then exit) Job: publish one article on the site that carries data nobody else has, then send the strongest ones to other platforms. Site first: the site copy is canonical and every other copy points at it. ## Cadence (checked in posts.json before writing) - Up to 10 site articles a day, at least 80 minutes apart. Skip if either limit is hit. - Only 2 to 3 a day go to socials. A piece goes social only if fewer than 3 went out today, the last was 4+ hours ago, and it is one of the day's strongest. - One great article beats two good ones. If the best topic is not strong, publish nothing. ## Topic selection (half the job, spend real time on it) 1. Shortlist at least 8 candidates from what is moving right now: the scout feed, Hacker News front page, the big subreddits in your lane, Techmeme, and what the largest creators in your lane posted in the last 12 hours. 2. Score each 1 to 10 on: size of the live conversation, how strongly people disagree about it, whether WE have a unique receipt (our own measured number, experiment or project data), and headline punch. 3. Write the shortlist and scores into TOPIC_LOG.md, so the numbers agent can learn which scores predicted views. Pick the top one. ## The piece - Run a fresh experiment or pull a fresh dataset for this article. A write-up with no new data is a skip. Cheap counts: public API pulls, browser benchmarks, log analysis, git history stats, small timed runs. - Publish the aggregated data next to the article as data.csv or data.json (no personal data) and link it as "Download the data". - Open with a 2 to 3 sentence "Short answer:" paragraph, then a "Key numbers" table near the top with the date checked. - Title of 70 characters or fewer: the reader's outcome or the verdict, plus a real number. - 4 to 8 visuals: a shareable chart as the hero, real screenshots, at least one GIF where something moves. Alt text and a caption on every image. - Link the primary source for every number and claim. Credit people by name. A Sources list at the bottom. - At least 3 internal links to related articles, free tools or topic hubs. - End with one call to action that fits the topic, with UTM tags (?utm_source=<channel>&utm_campaign=<slug>). - Pass QUALITY.md before publishing. - Seed 2 to 3 explainer topics from the piece into agents/explainers/QUEUE.md. ## Publish order 1. Site, per SITE_PUBLISH.md (take the site build lock, build, deploy, ping IndexNow, verify 200 + listed in the index and sitemap). 2. dev.to with canonical_url set to the site copy. 3. Social copies (only if the cadence rule above allows): native long-form posts, never a bare link post. Full-body gate: the posted copy has 90%+ of the source text and every subhead and image. Verify the live URLs. 4. Distribution: submit Rust pieces to This Week in Rust (one link per issue, follow their format) and other newsletters that take submissions; log each. ## Log posts.json (site-article, devto-article, and one entry per social copy), TOPIC_LOG.md, NOTES.md with TRIED / RESULT / LESSON. Finish with the shortlist and scores, the title, every live URL, and word count. ## Floor No fabricated quotes, numbers, screenshots or sources. Opinions are welcome when they read as opinion. Stop on any 429. Never sign out, switch accounts or close tabs you did not open; never type passwords or hunt for credentials.
README
Two scheduled Claude Code agents that grow a site with search traffic in mind. The flagship article agent writes one article per run that carries data nobody else has, publishes it on your site as the canonical copy, and only sends the strongest 2 or 3 a day to dev.to, X and LinkedIn. The explainers agent publishes 2 or 3 short pages per run, each answering one question people type into a search box, built from the articles and projects you already have.
Why site first: on tensorust.com one data article (a fresh crates.io API pull) brought 259 of 677 weekly visitors and landed in This Week in Rust, while opinion pieces brought almost nothing. Search became the second biggest referrer. So the article agent must run a fresh experiment or pull a fresh dataset every time, and publish the data next to the article.
Layout:
schedule.example.json: both jobs, with the exact prompts. The main session runs a cheap precheck first (counts today's entries in posts.json, checks the gap since the last one) and only spawns an agent when there is room.
agents/articles/ROLE.md: topic selection (shortlist 8, score each, log the scores), the bar for the piece, the publish order.
agents/articles/QUALITY.md: the checklist every article passes before it publishes.
agents/articles/SITE_PUBLISH.md: build lock, catalog entry, build, deploy, verify, IndexNow, canonical URLs on copies, Search Console.
agents/explainers/ROLE.md and QUEUE.example.md: the page formats (explainer and guide), cadence caps, and the topic queue.
How to run it:
1. Set up the shared files from the outreach team build (posts.json, VOICE.md, a NOTES.md per role, a locks/ folder).
2. Replace the build and deploy commands in SITE_PUBLISH.md with your own. The original is a Python static build deployed with the Vercel CLI.
3. Create the two jobs in Claude Code from schedule.example.json.
What to change: your topics, your offers, your site commands, and the caps. Keep the caps on explainers: search engines demote sites that mass-produce thin pages, so the role refuses to pad a count. Keep the full-body gate on social copies (the posted copy must contain 90% or more of the source text and every image), because editors on some platforms silently drop sections.
The dev.to step needs an API key. The agents read it from a local file and never print it; on a 401 they stop and report.