A friend and I took second place at the Codex Community hackathon in Guadalajara with Panas. Across roughly 47 hours, we used 18 Git worktrees and merged 44 pull requests. The Codex usage I recovered from my machine would cost about $162 USD at standard OpenAI API rates, before credits. The hackathon gave us both API credits and Codex credits.
One merge explains how we worked. Three branches were ready for review. When we brought them together, the registry branch hit a conflict in the shared contracts package. After we resolved it, CI surfaced a provider test that timed out on the Linux runner. The worktrees let the agents make progress in parallel. Review and CI told us whether we could merge that progress.
What we were building
Panas lets an agent find an idle machine, agree on a price, and run an inference job over a peer-to-peer connection. The buyer uses MCP, MCPWire handles the connection, and the provider runs the model in a sandbox. The demo provider served Qwen 2.5 0.5B. Panas source
How we split the work
1. Turn the PRD into a dependency map. We wrote down how buyers discover providers, what makes a machine ready, how a job is bounded, and how payment gets verified. Then we turned those decisions into GitHub issues. After PR #11 set up the workspace, shared types, and CI, provider, transport, and registry could start in parallel. The buyer could scaffold against shared types, with end-to-end verification waiting on those pieces and accounting. PRD · Team plan · Foundation PR
2. Give each agent a branch and a check it can run. The provider had to run inference on a real Mac and stay out of discovery until it was ready. The transport had to complete a peer round trip and survive a disconnect. The registry had to support authenticated discovery against a deployed endpoint. The coordinating session handled changes to shared contracts while the child agents worked in separate checkouts. Provider PR · Transport PR · Registry PR
3. Combine the branches in an integration worktree. Cross-review caught a registry bug where a provider marked unhealthy could reuse old capability evidence. We added a regression test and required fresh evidence after a failure or key rotation. The combined checkout passed 43 tests, along with formatting, lint, type checks, and the build.
4. Merge in order and rerun the checks. After review, I asked Codex to merge the three PRs. Provider and transport went first. Codex resolved the registry conflict, then used the CI failure log to find the provider test timeout. It widened the test's polling window while preserving the concurrency assertions, reran the checks, and merged the registry PR once CI passed.
That workflow ran across 18 worktrees, including feature branches and integration checkouts. In the same window, we opened 21 issues, merged 44 PRs, and recorded 155 commits in the history reachable from main, including 47 merge commits. GitHub PRs · Commit history
Follow one round from delegation to merge
The excerpt starts with my request to split three issues in parallel. Open the tool calls for worktree creation, delegation, the merge conflict, and the CI timeout. Some commands and outputs are abridged.
Where the 787 million tokens went
I recovered 16 Codex sessions from my machine. They span the PRD, issue planning, implementation, review, tests, CI and deployment fixes, onboarding, and the hackathon demo and submission. The main session and three child sessions handled most of that activity. The child sessions started with team planning, web foundation, and registry assignments, then took on follow-up work. Their totals describe the whole sessions. The logs don't give me a clean per-task split.
Cached input accounted for about 99% of the recorded token volume. As an agent worked through a branch, later requests could reuse earlier context, including conversation and tool results. That context accounts for most of the token headline and most of the API estimate. OpenAI prompt caching
| Recorded usage | Tokens | Estimated API cost |
|---|---|---|
| Cached input | 777.2 million | $113.47 |
| Uncached input | 7.4 million | $18.72 |
| Output | 2.5 million | $30.17 |
| Total before credits | 787.1 million | About $162 |
I priced each recovered request using its logged model and the published standard API rates. GPT-6.1 Sol handled most of the work. Two later sessions used GPT-6.1 Terra. The estimate includes higher API rates for the 1,065 requests above 272,000 input tokens. The credits we received are outside this calculation. Sol pricing · Terra pricing
The 16 sessions span 47h 24m from first request to last recorded activity. At least one recorded agent turn was running for 17h 22m. Added across sessions, turns totaled 27h 53m because some ran in parallel. Turn durations include tool execution and waits.
If I ran the same workflow again, I'd keep the integration worktree and decide its checks while writing the PRD. For Panas, one check is what happens when a provider finishes a job but the buyer disconnects before receiving the result. The reconnect has to retrieve the existing result and receipt. A duplicate run or a second charge would mean the pieces failed together, even if each branch passed its own tests.
Top comments (0)