I’ve been building a software factory and personal automation stack over the last month. In this post, I’ll dive deep into my process, and everything I’ve cooked up.
Harnessing tokens
When you set out to produce a lot of code, token efficiency is key. The best open-source models still lag closed models, and relative to subsidized costs, I believe closed models are still the better deal [0]. I prefer optimizing for quality over cost or speed, because I’ve found that when I use cheaper & dumber models, I end up spending more tokens (and human time) on cleanup.
When you operate a software factory, human time is the most constrained resource, so it’s critical to seek out forms of leverage on your time. The simplest source of leverage is to always use the ~best available model on the pareto frontier. After a bake-off between Fable and Sol, I decided to lean into Codex and use GPT 5.6 Sol (Max or Ultra) for every prompt in my factory [1].
I currently have 15 Codex Pro 20x subscriptions. I fully utilize all 15 subscriptions – I run out of my weekly usage in less than a day. If we estimate a 10x subsidy, that means I’m using $30k/month of premium inference productively, for only $3k/month.
Managing 15 subs is somewhat painful, so I built a simple CLI over the Codex App Server to track all my accounts. I’m working on a metaharness for Codex, Hra, which lets me unify all my subs and experiment with optimizations for my particular workflow.
[0] I track the pareto frontier of model capability on aicharts.io
[1] This is especially important when your agents are writing code. For non-coding tasks, I use cheaper models.
Harnessing writing
Early on, I decided to build a custom knowledge base (kb) for coding agents. kb autonomously percolates a knowledge graph, and gives agents tools to search efficiently: from simple fulltext search, to semantic search (using qmd and a local embedding model), to traversing the knowledge graph, to cross-referencing git history. Agents track plans and decisions in kb, which helps them coordinate and stay on track. I believe codebases have an intelligence of their own. The nature of code is that it encodes a belief system – and the best codebases also encode a clear picture of where they want to grow.
<writing style links, place model in smart codebase training distribution>
Harnessing autonomy
I set out to create a system that lets me do as little babysitting of my agents as possible. My agents run for hours at a time (sometimes days) from a single prompt. I check on them in a few focused sessions throughout the day: when I wake up, around lunchtime, and before bed.
First, I chose a simple tech stack that I know well: bun, NextJS, Vercel (domains, hosting, AI gateway, AI SDK), Convex, Turso, and PostHog. I established coding conventions, like enhanced type safety and property based testing. I built shared infrastructure for project boilerplate: UI, accounts, payments, observability, etc.
After I had a solid foundation for code quality and code reuse, I focused on the next highest leverage way to improve autonomy, which is to provide agents with tools to verify work themselves – this lets them cook for longer stretches without human intervention.
I decided to create a custom UI testing framework (direct), which lets agents simulate and verify app states & transitions quickly. direct sits at the seam between your app and the internet, and encodes an opinionated way to record UI flows and present them to agents efficiently.
Inspired by the success of direct in my factory, I decided to build a tool for programmatic browser automation (wrench). wrench is inspired by agent-browser’s derive-client skill – it lets agents grow an SDK for any target website. I use this primarily for personal automations, but it’s also useful for dev workflows where an official API path isn’t available.
Harnessing personal automation
After the foundation was in place, I decided to point my factory at personal infrastructure projects. I made the personal website of my dreams, with a living reading list that summarizes all the interesting links I encounter. The full contents of every article, video, or PDF get stored in my kb (so my agents have context on what I’m interested in), and published to my website, and it’s all automatic – I just send links to Grok Bot.
As the creator of Zo Computer – the first personal agent with a cloud computer – I’m deeply familiar with the space. I’ve long respected Benji Taylor and the Cursor team, so I was excited to try Bot. The computer use is slick, the agent is fast, and the interface is simple and delightful. It’s missing some things I appreciated about Zo, but after plugging in my homegrown tools, I’ve decided Bot is a worthy successor.
https://x.com/hraness/status/2090507003969917033 (TODO EMBED)
I’ve set up a handful of useful bots:
News – I made an aggregator for the news I’m interested in at rough.day. News Bot sends me a summary each day.
Wrench – In Bot’s browser, I signed into X, Substack, Bluesky, Instagram, Threads, Facebook, Reddit, YouTube, and Hacker News. I ask Wrench Bot to browse, summarize, and post to social media platforms, saving myself from brainrot.
Read – I connected my
kbwith some guidance. Now I just send links to Read Bot, and it automatically updates mykb, summarizes the content for me to peruse, and publishes to my public reading list.Invest – I connected my Public account, asked Invest Bot to research and plan a portfolio strategy (saved to
kb), and iterate 3 times a day. Fingers crossed.act60 – I’m building a suite of tools and resources for Puerto Rico Act 60. I generated a CLI, and hooked it up act60 bot, which now manages a lot of the administrivia for me.
SEO – I hooked up PostHog, and now SEO Bot iteratively improves SEO across all my web properties.
Stripe – I’m a big Stripe nerd, so I built stripehistory.com to catalog Stripe news since its inception. Stripe Bot notifies me when anything newsworthy happens.
Atet – I’m building a tool for agentic media creation, atet.sh, named after the solar barque Ra sails on through the underworld. It iteratively creates images, diagrams, and videos, using a mix of generative and programmatic approaches. I chat with Atet to transmute raw assets and the seed of an idea into gold.
People – I’m building an agentic rolodex, peopleblade.com. I ingested all my contacts (with useful data like how often I’ve interacted with a person) across iMessages, Apple Contacts, Gmail, LinkedIn, Telegram, WhatsApp, Instagram, and Facebook, and I’ve been progressively enriching thousands of contacts across my entire life. I chat with People Bot to manage my rolodex.


I'm def going to diversify into Codex and see how I can integrate your flow. Fascinating!
This is really cool stuff. Where do you host it all ?