SpaceOrbitals Daily Newsletter Plan — 7-Day Cadence (2026-07-12)

Advertisement · Newsletter Top

SpaceOrbitals Daily Newsletter Plan

Effective: 2026-07-12 onward. Owner: Atlas Renner (editorial). Author: Claw on Mike's behalf.

Why a plan, why now

Three reasons.

  1. Mike's directive (2026-07-12 08:35 EDT): "Update to daily newsletters. Each day should be different, original, interesting, meaningful, insightful. Consider SEO and AdSense."
  1. The 2026-07-09 / 2026-07-10 / 2026-07-11 dailies worked. But they were undifferentiated — Atlas Renner voice, launch + news synthesis, ~1,200-1,500 words. Three issues in a row used the same shape. Readership would notice by issue four.
  1. The cron is Mon-Fri only. Mike is asking for daily. We need to cover Saturday + Sunday too. Options:

*Decision: (a) extend expr, AND shift Daily Tracker to 0 7 , AND keep Saturday as a separate Orbital Originals slot at 9am (unchanged).** Sunday becomes a new "Weekly Read" cadence — lighter, more reflective. This gives 7 distinct shapes without overlapping the Saturday essay.

7-day content taxonomy (different, original, interesting)

DaySlot nameVoiceFormatLengthAngle
MonDaily TrackerAtlas RennerWeek-ahead brief1,500wWhat to watch in launches/sky this week. Atlas's editorial anchor voice.
TueDaily TrackerPriya RamanNews synthesis1,500wTop 3 space news stories of the last 24h, with sourced analysis.
WedDaily TrackerMira OkaforScience focus1,500wOne deep research topic (paper, mission update, instrument).
ThuDaily TrackerDerek ChenObservation focus1,500wSkywatching tonight — what to see, when, where. Gear mentions OK.
FriDaily TrackerAtlas RennerWeek recap + frame1,500wWhat happened this week, what next week's shape looks like.
SatOrbital Originals (existing)Atlas RennerLong-form essay1,800-2,200wSingle thesis-driven essay. No launch table. Slower, more evergreen.
SunWeekly ReadAtlas Renner (1st-person reflective)Reading roundup + commentary1,000-1,300wThe best space writing we read this week, with editor's note. Curation, not reporting.

Why this is "different, original, interesting, meaningful, insightful":

Anti-pattern guards:

SEO + AdSense integration

SEO targets (per issue)

  1. Title keyword placement: lead with the most-searchable phrase. Examples:
  1. Description field: 1-sentence meta description with the specific number / fact / hook. 140-160 chars.
  1. URL slug: keyword-rich, kebab-case, no date prefix if SEO matters more than chronology. (Current convention includes date prefix — keep for traceability; slug still gets the keyword.)
  1. Tag taxonomy: 4-6 tags per issue. Use a stable tag set + ad-hoc tags. Stable: launch-schedule, iss, moon, mars, jwst, artemis, spacex, rocket-lab, china-space, india-space. Ad-hoc per issue.
  1. Internal linking: every issue links to 2-4 site pages (articles, gear, other newsletters). Adds crawl depth + reduces orphan pages.
  1. External linking: every factual claim cites a source. Helps E-E-A-T signal.

AdSense integration

Current state: 3 newsletter ad slots configured (newsletter_top 9300000013, newsletter_mid 9300000014, newsletter_bottom 9300000015) — TODO placeholders, not live slots yet.

Plan:

Where to land in the build pipeline

Cron schedule changes (3 changes)

Change 1: Daily Tracker cron expr 0 7 1-50 7 1-5,7 (add Sunday)

Actually wait — Saturday is already Orbital Originals at 9am. Sunday should be at 7am too so morning email routines catch it. Let's keep Daily Tracker Mon-Fri + Sunday all at 7am, and Saturday stays Orbital Originals at 9am.

Cron expr: 0 7 1-5,7 (Mon-Fri + Sun) at 7am ET for Daily Tracker.

Change 2: Add new "Weekly Read" Sunday morning brief at 7am ET (same time, separate cron)

Actually simpler: extend Daily Tracker to include Sunday at 7am ET, and the cron prompt uses the new 7-day taxonomy. Saturday stays Orbital Originals at 9am.

*Decision: ONE cron (Daily Tracker), expr 0 7 1-5,7 (Mon-Fri + Sun), prompt switches tone by day-of-week. Saturday is separate (Orbital Originals).*

Change 3: Topic-bank file

Create projects/spaceorbitals/content/newsletters/_topic-bank.md with 4-week rotation of:

Cron subagent reads this on each run to avoid topic repeats. Updated weekly by a new cron (separate, optional).

Cron prompt updates

Inline-enforce (mirroring bithues 2026-07-10):

  1. Read SKILL.md first.
  2. Read PLAN-2026-07-12-daily-cadence.md (this file).
  3. Read _topic-bank.md for today's suggested angle.
  4. Detect day-of-week via python3 -c "import datetime; print(datetime.datetime.now(pytz.timezone('America/New_York')).strftime('%a'))" — DO NOT hardcode.
  5. Apply taxonomy mapping (Mon Atlas week-ahead / Tue Priya news / Wed Mira science / Thu Derek observation / Fri Atlas week-recap / Sun Atlas weekly-read).
  6. Topic-repetition check: grep last 5 newsletters for title keywords + lead-1st-sentence; skip if duplicate.
  7. SEO: keyword-rich title, 140-160 char description, 4-6 tags, internal links to 2-4 site pages.
  8. AdSense: ensure 3 slots visible in page template (newsletter_top/mid/bottom at fixed positions).
  9. Anti-patterns #33, #34 (literal asterisks in , raw pipe in

    ).

  10. 18-step proofread pass before build.py.
  11. Build → wrangler deploy → wait 30s → curl live → GSC re-submit.
  12. Output format block at end of run (mirrors dependability cron).

File layout changes


projects/spaceorbitals/content/newsletters/
├── _README.md                                # existing
├── _topic-bank.md                            # NEW: 4-week rotation
├── PLAN-2026-07-12-daily-cadence.md          # NEW: this file
├── 2026-06-27-...                            # existing originals
├── 2026-07-09-...                            # existing dailies
├── 2026-07-10-...
├── 2026-07-11-...
├── proofread_2026-07-11.log                  # existing
├── proofread_daily_2026-07-09.log
├── proofread_daily_2026-07-10.log
└── [future daily MDs]

Implementation order (this session)

  1. ✅ Plan written (this file).
  2. ⏳ Update cron expr to 0 7 1-5,7 (Mon-Fri + Sun).
  3. ⏳ Rewrite cron prompt with new taxonomy + SEO/AdSense directives (with backup).
  4. ⏳ Write _topic-bank.md with 4-week rotation.
  5. ⏳ Update SKILL.md to reference the new cadence (so future subagent sees it).
  6. ⏳ Wire AdSense slots into build.py newsletter template at 3 positions.
  7. ⏳ Test-fire today's Sun 2026-07-12 "Weekly Read" issue.
  8. ⏳ Verify live: curl, anti-pattern scan, AdSense slot check.

Open questions for Mike

  1. Should Sunday be 7am ET or 9am ET? Cron currently runs at 7am. 9am might suit "weekly read" cadence better — more reflective, less "morning briefing." My recommendation: 7am so it lands in the same email-routine slot as the weekday dailies.
  2. Should "Weekly Read" be light on ads or no ads? My recommendation: 1 ad slot max (top only) — it's a curation piece, not a money page. Mirrors bithues Sun "Short Story Sunday" pattern (no affiliate links).
  3. Should we add a daily Twitter/X thread for each issue? Out of scope for this plan. Existing X workflow handles Orbital Originals; Daily Tracker is currently silent on X. Recommend separate decision.
  4. Should the topic-bank be human-curated weekly, or auto-rotated by a cron? Recommend human-curated initially — the cron subagent can flag topic conflicts but the bank itself should be intentional. Mike's editorial judgement, not algorithm.

Sources / lessons applied

  • Bithues newsletter "Bible" (2026-07-10): topic rotation, no-book-repeats, length floors, originality test → applied here as "no-issue-repeats" + length floors per day-of-week.
  • Cron content quality gate (2026-07-10): inline-enforced gates in cron prompt → applied here.
  • Atlas Renner persona doctrine: voice rotation Mon-Fri already in skill, extended to 7 days.
  • Anti-patterns #33, #34 (literal asterisks, raw pipe text) → wired into gate.
  • 18-step proofread pass → unchanged.

Update notes

  • 2026-07-12: Initial plan written. Topic bank TBD.
Advertisement · Newsletter Mid
Advertisement · Newsletter Bottom