claire vo
← back to the notebook

A podcast light that listens to my Mac

Between ChatPRD review work and How I AI production, I asked Codex to connect to a Bluetooth bulb near my desk. That became a local lighting console, followed by the much more familiar job of getting the video of the experiment ready.

Build a Bluetooth podcast-light controller and Mac app with Codex

A studio light controlled from a Mac
build-a-bluetooth-podcast-light-controller-and-mac-app-with-codex.png
A studio light controlled from a Mac
Codex + Bluetooth Low Energy + Nordic Bluetooth Mesh + SwiftUI

I had a Bluetooth light bulb nearby and asked Codex to connect to it. It first tried macOS Bluetooth settings, then scanned for Bluetooth Low Energy devices directly when the bulb did not appear. That found a Bluetooth Mesh device the normal settings screen could not pair.

Codex used Nordic’s Bluetooth Mesh tooling, wrote a local controller, and worked through a compatibility issue in the bulb’s responses. It provisioned the bulb and sent real color commands. I then asked for a podcast lighting console, and it built scenes, brightness and color sliders, a looping palette, and stop controls around the working connection.

I later asked to take it out of the browser. Codex packaged the Bluetooth helper inside a native SwiftUI menu-bar app with startup and reconnect behavior. After working through the app’s connection setup, it confirmed the bulb was responding from the menu-bar version.

This went from a device I could not see in Bluetooth settings to a control panel I could use while recording. Codex handled the protocol research, controller code, interface, and Mac packaging in the same conversation. I supplied the physical device and kept asking for the next useful version.

Assemble a recorded demo and handle its CapCut export with Codex

Finishing a recorded video
assemble-a-recorded-demo-and-handle-its-capcut-export-with-codex.png
Finishing a recorded video
Codex + CapCut + Video-processing tools + TikTok Studio

I recorded the light-bulb experiment in several clips and asked Codex to help finish the video. I wanted the full recorded sequence preserved. Once that was clear, it assembled the clips in order, kept every spoken word and the full frame, and made a vertical export with clean joins.

We also worked in the open CapCut project using computer use. Codex inspected the HDR settings and the voice-enhancement processing around the switch between camera and screen footage. The color pass still needed my correction. I made that adjustment and had it leave my grade alone for the export.

Codex then operated the export controls, checked the resulting file’s dimensions, frame rate, color space, and audio, and uploaded it to the TikTok Studio composer without posting. The useful division of work was having the agent assemble, inspect, export, and stage the video while I made the final visual call.

Promptfinish-and-verify-video.md
# Finish and verify an existing video

Adapted from this workflow; not the original transcript.

Inspect the video clips or open editor project I provide. Preserve the recorded order, spoken content, and framing unless I explicitly ask for cuts. Identify any HDR/SDR mismatch and audio processing that may affect the result. Show me a representative section before applying changes throughout the timeline.

Preserve any corrections I have made. Once the edit is approved, export for the destination I specify and inspect the actual file: dimensions, duration, frame rate, color space, video codec, and audio. Report what the file contains, not only the settings you selected.

Leave publishing to me. If I authorize an upload, stop in the destination composer before posting.