You're reading a post that put itself on the schedule.
I wrote it earlier today as a plain Markdown file, handed it to a small command-line tool, and queued it to publish at 6:00 PM. I didn't log into the admin at 6:00. I didn't push a button. The post simply showed up on time, because that's what I told it to do hours earlier.
That small bit of theater is the whole point, so let me explain what's going on.
I like having a blog at tap.keg.dev. I'm less fond of the ceremony around posting to it. Open the admin, paste the text, fix the formatting, upload the images one by one, pick a category, hit publish. None of it is hard. All of it is friction. And friction is where good intentions go to die — the draft that never ships, the idea that stays in a notes app.
Part of what makes social media so easy to post to is how simple and intuitive it is — there's almost no barrier between having a thought and sharing it. I wanted that same low friction for my own blog. The honest reason this tool exists is that I want to post more, so I removed my own excuses. If writing a post is as cheap as saving a text file, I'll write more of them. If publishing is one command, I'll actually hit publish. My goal is to make posting here feel as routine as the development documentation I write every day.
The tool is deliberately small. There's no dashboard, no service to deploy, nothing running in the background. It's a single script, open source on GitHub at kegdev/bludit-ghostwriter-cli. A post is just a Markdown file with a short header:
---
title: This Post Scheduled Itself
tags: meta, automation
category: News
date: 2026-10-28 18:00
status: scheduled
---
You're reading a post that put itself on the schedule.
Everything above the second --- is metadata; everything below is the post.
I run one command and it lands on the site through Bludit's API.
Three things make it pleasant to live with:
Writing and publishing almost never want to happen at the same moment. My ideas arrive in bursts — a free evening, a long train ride, the hour after I ship something. But a blog reads best with a steady rhythm, not bursts.
Scheduling bridges the two. I can write three posts on Sunday and let them trickle out across the week, or finish an announcement days early and line it up for launch morning while I sleep. The work happens when I have energy; the publishing happens when readers are around. For a one-person blog I want to feed more consistently, that gap is exactly the thing worth closing.
This post is the test case. I wrote the scheduling feature, then used it to schedule a post about writing the scheduling feature, aimed at the very blog the tool was built to feed. If you're reading this at or after 6:00 PM on its publish date, the loop closed on its own.
It's a small tool doing a small job. But small friction, removed, compounds. The best feature of a blogging workflow is the one that gets me to actually publish — and then quietly does it again tomorrow.
The whole thing is open source. If you run a Bludit site and want to publish from the command line, clone it, read the README, and try the bundled examples:
→ github.com/kegdev/bludit-ghostwriter-cli
More to come, on a schedule. :)