top of page

Third time's a charm: Building a Daily Chief-of-Staff Brief with Codex, Telegram, and Scheduled Automation

  • Ken Munson
  • 4 days ago
  • 2 min read


Executive Summary

In this mini-project, I rebuilt a personal “Daily Brief” system that sends me a Chief-of-Staff-style summary each morning through Telegram.

This was my third attempt at this idea. The first version, built with OpenClaw, took roughly 40 hours and ultimately proved too brittle. The second version, built with Claude Code, took closer to 15 hours but still did not become the stable, enduring system I wanted. This Codex-based build took about two hours and resulted in a working local automation that now runs from Windows Task Scheduler.

The finished system includes:

  • A Telegram-delivered daily brief

  • Scheduled weekday/weekend run times

  • Stock market index closes for DJIA, Nasdaq, and S&P 500

  • A five-day weather forecast

  • Google Calendar events for the next five days

  • U.S. federal holiday awareness

  • OpenAI-generated Chief-of-Staff summary text

  • Local logging, archive files, dry-run mode, health checks, and test coverage


Phase 1: Getting Telegram Delivery Working

The first milestone was getting a simple message delivered through Telegram. This involved creating a Telegram bot through BotFather, storing the bot token locally, discovering the correct chat ID, and sending a test message.

This phase exposed one of those small but very real automation problems: the BotFather token looked correct, but Telegram rejected it. After some careful debugging, we narrowed it down to a bad token entry, eventually resolved the issue, and verified that the bot could send messages successfully.


Phase 2: Making It Durable

Once Telegram delivery worked, Codex helped turn the project from “a script that sends a text” into something closer to personal infrastructure.

The system now has a health check, retry logic, logging, archived brief output, local status commands, token redaction helpers, dry-run modes, and a Windows Scheduled Task. I also adjusted the schedule to better match my real-life machine availability: 9:00 AM on weekdays and 10:00 AM on weekends.

This was an important realization: the brief is currently running locally from my Windows computer. That means the machine needs to be on and online. The scheduling choice matters.


Phase 3: Adding Real Daily Context

After the basic system was stable, we added the useful content that makes it feel like a real Chief-of-Staff brief:

  • Market closes for DJIA, Nasdaq, and S&P 500

  • Five-day weather forecast

  • Google Calendar events for the next five days

  • U.S. federal holidays, including Juneteenth

The final output is not just a checklist. It synthesizes local calendar context, weather, market data, holidays, and recurring personal reminders into a concise morning briefing.


Summary and Lessons Learned

The most striking part of this project was the difference in development experience. Earlier attempts took 40 hours and 15 hours. This one took roughly two, and the result is more robust.

The biggest lesson was that autonomy matters, but verification matters just as much. Codex did not merely write code. It iterated through failures, checked assumptions, inspected logs, added tests, improved scripts, and kept tightening the system until it worked. I could not believe the advance the AI has made in the last year, even the last six months.

This project also reinforced an important point about personal AI tooling: the value is not just in generating text. The value is in building small, dependable systems that make daily life easier. This Daily Brief is now one of those systems.

Comments


bottom of page