Codex, fix my home server. I want to watch a film.
Asking Codex from my MacBook to import an SSD, update an endpoint and repair storage, with visible results and verification limits.
I plugged a USB SSD into my home server and asked Codex to get the Star Wars editions on it into my 4K Plex library. Copy them, import them through Radarr, and make sure we could use subtitles.
Then I went back to sit with my boyfriend. We waited for the work to finish, and we could watch the movie.
The request covered 4K77, 4K80 and 4K83. The copies passed checksum verification, and the available English subtitle tracks were selected. I also asked whether Radarr would replace them with something it considered better. All three entries were left unmonitored to avoid automatic upgrades replacing those editions. Codex finished with the SSD unchanged and unmounted.

Three crops from the same current Plex item, captured on 6 October 2026. The edition label and English subtitle field show the resulting library entry at capture time.
That current Plex view shows one resulting entry. The copying checks come from the completed job record; the waiting and watching are my experience of using it.
Asking from the computer I actually use
My server now runs in a Proxmox setup, following the OpenMediaVault server I had built over time. The computer I sit down with is a MacBook, and Codex runs there too.
It has private SSH and API access over the LAN or Tailscale. home-infra, a local repository, holds the inventory, operating rules, runbooks and non-secret infrastructure definitions. Komodo and Compose handle stack operations; Proxmox and host work have their own SSH/API route.

The documented control path runs from my MacBook over the LAN or Tailscale. The local repository supplies the inventory, operating rules and non-secret definitions.
One email about a permanent Usenet domain change became a request through Wispr Flow. I could dictate what I wanted, rather than spend time on the change myself. Codex checked the provider announcement, updated Prowlarr, passed the connection test with the existing key and confirmed the change synced across all four Sonarr and Radarr instances. No services needed restarting for that job.
It was easy, and I could get on with something else.
The request that needed storage investigation
The longer example was a set of downloads that would not import. I wanted to watch a film. I could have diagnosed the problem and done the balancing myself; I preferred asking Codex to fix it.
The mergerfs pool reported roughly 24 TB free. Yet the branch receiving library files had around 99 GiB available, below a 100 GiB reserve. The placement policy required the relevant directory to exist on a branch. Two spare drives had no such tree, so they were not helping those imports.

A schematic of the recorded September repair. Changing new-file placement and moving existing files were separate jobs; selecting a different policy did not rebalance the data by itself.
Correcting that placement changed where new files could go. Moving existing data was another job: Codex rebalanced 24 older films, checked destination checksums before removing the originals, and read the moved files through the normal network-storage path.
The repair also required recovery from a disconnected mount whose exact cause was not established. When the VM's control agent restarted later, the rebalance paused. Codex checked the state and resumed it. The final record confirmed completion instead of leaving a started transfer to stand in for a result.
Having that control has been really useful to me. I'm using AI heavily and have moved away from spending so much time in the terminal. A MacBook, AI and an AI desktop app are my ideal workflow now. The server still needs work; on these jobs, I could ask Codex for the result and let it deal with the details.
Want to talk about something I’ve written or built? Get in touch.
This Hashnode edition was adapted from the original article on billiem.uk, which remains the canonical and most complete version.

