Skip to main content
  1. posts/

Vibe Coding a Vibe Manager

·4 mins

As I mentioned before, I’ve been experimenting with “vibe coding.” Instead of writing code myself, I’ve been using the “vibe coding” tool Codex to do a couple of things with my Obsidian vault:

  1. An agentic vault organizer that sorts any new file in my inbox into the appropriate subfolder, adding tags and wiki links to other files as needed.
  2. A weekly email newsletter generator that scans my vault (including draft posts and recently saved bookmarks) to create my weekly newsletter. I tried this last week as an experiment and may try again.

This worked well enough by syncing my vault files to my Raspberry Pi 5, SSHing into it, and running Codex there with prompts that let it process the vault files according to my instructions. The only problem: I had to babysit it with an open terminal session. That didn’t work when I wanted to kick the process off from my phone or walk away and let my laptop sleep (closing the terminal session stops Codex by default)

Initially, I tried scheduling CRON jobs on the Pi to pull the latest Obsidian files (from my always-on Mac Mini where Obsidian syncs), run the prompt job, and push changes back. It was a bit complicated and finicky. I had to wait (sometimes until the middle of the night) to see if everything ran successfully. In the mornings the jobs sometimes failed to pull files, sometimes didn’t run Codex, and sometimes didn’t push changes back. I needed more control.

Vibe Coding for Real #

I decided I needed a small web interface to manage all of this: pull changes from the Mac Mini, kick off the Codex jobs I wanted, and push changes back. That way I could review changes before pushing and avoid damaging my primary Obsidian vault. One problem: I ’m not a web developer. So I tried “vibe coding” for real and had Codex build the web interface.

After about two hours of back and forth, Codex produced a working solution. The initial version was an MVP to manage sync jobs— functional but ugly (I forgot to grab a screenshot ). I asked Codex to “jazz it up” and it produced something that looked fairly decent and responsive:

Next I wanted to manage the actual Codex jobs. From experience, I often tweak prompts based on results and want room to add new prompt types. Rather than bake prompts into the interface, I asked Codex to make the UI look in a Prompts folder and create an editable box for each prompt file it found, with save capability. That way I can add a new prompt by dropping a file in the directory and tweak prompts right in the interface. Codex implemented this quickly:

A quick test confirmed it worked: I can update prompts, run them, and get status updates (including whether the last run errored ). I’m thinking of adding the ability to create a new prompt file directly from the web UI. Well, except…

Hitting the Limits #

Codex limits how many hours you can use per day and per week, and standing up this initial version used up my cap for the day (the prompts themselves also consume quota). You get more time at the ChatGPT Pro level (I’m on Plus), but I’m not ready to drop $200 USD/month yet. The limits are a decent reminder to take breaks and get some fresh air 😅.

That said, I might add a Codex quota meter to the web interface so I can monitor usage. I may also add support for Claude Code so I can switch models when I hit quota.

As someone who’s dabbled in programming my whole life and is obsessed with software, it feels immensely satisfying to build this. There’s a lot of hype around AI— and it’s hard not to believe when I can make something like this in a couple of hours.