I had been using OpenAI through the Codex CLI in aidd. Codex handled communication with OpenAI while aidd managed the process. Today, I added another option: aidd can now call the OpenAI API directly. It can run its own agent loop without needing the CLI. It uses API tokens, so it can be more expensive, but it is useful when the Codex CLI is unavailable or cannot be installed, or when I need API-backed configuration and billing instead of CLI-managed access.

From the outside, it still looks like any other backend. OpenAI shows up in settings and launch controls. The runs go through the same history, result handling, and live console as other providers. Those were the integration points: selecting the backend, starting its agent loop, recording the run, and returning its result through the existing orchestration contract. Sending the request was only one part of adding a backend.

The first version uses non-streaming Chat Completions and passes through reasoning for compatible models. I tried it on a live run, but these were very early days. The automated tests cover successful responses, malformed replies, and rate limits.

That live run and those automated cases were the extent of the evidence I had for the first version. I hadn’t established parity with every behavior of the CLI-backed provider.