The most precise measure of coding-agent cost and performance.
“Exclusive coupons apply before stackable ones so the discount base is right.”
Agent Sorted by exclusivity before reduce; kept dedupe; added a mixed-case test.
Line-level attribution, session-level cost, and the context behind every change, from the first prompt to the merged pull request.
Every API request is priced and charged to the agent that made it, then followed through the commit to the pull request. You see cost per PR, cost per merged PR, and what each model's lines cost to keep. Discarded attempts are counted, and labelled.
How cost is computed →Select any chunk of code and see the exact prompt, reasoning, and tool calls that produced it, one message, not a transcript. Ask the session why it made a decision and get an answer grounded in what it actually read.
What stays on your machine →Joyride finds the sessions that ship the most durable code per dollar, then promotes the instruction files, skills, and harness settings behind them so every engineer starts where your best one already is.
See it for teams →Retained means the line is still present on main. Unknown usage is never counted as zero.
"Exclusive coupons should always apply before stackable ones so the discount base is right. Keep the existing dedupe."
Sorted by exclusivity before reduce so exclusive codes set the base price; kept dedupe as requested and added a test for the mixed case.
Promotions are suggestions with the evidence attached. Nothing changes a repo without a reviewed pull request.
One command per clone. Joyride hooks into Claude Code and Codex and prices every request. Nothing leaves your machine until you push.
Use your agents and commit as usual. Each edit is captured around the tool call that made it, and each commit gets a note.
Push, and the PR carries the agents, the cost, and a link to the full report with line-level attribution.
Four views, one source of truth. The same numbers appear in the PR footer, the terminal, and the hosted report, and unknown values are shown as unknown.
Every committed line is owned by the session that wrote it.
Matched from real request usage, summed per task. Discarded attempts included and labelled.
| Source | Sessions | Tokens | Cost | Share |
|---|---|---|---|---|
| Opus 5 / Claude Code | 2 | 1.9M | $34.60 | 72% |
| GPT-5.6 Sol / Codex | 1 | 640k | $8.70 | 18% |
| Explore subagents ×3 | 3 | 410k | $4.80 | 10% |
| Manual | 1 | — | Unknown | — |
Landed means the commit reached main. Retained means the line is still there.
Who orchestrated, which subagents ran, and what each cost.
Provenance tools show you who wrote a line. Engineering-intelligence platforms show you spend by seat. Joyride is the only one that connects the two, in the pull request.
| Capability | Joyride | Git-notes provenance tools | Engineering-intelligence platforms |
|---|---|---|---|
| Line-level attribution to agent and model | Yes | Yes | No, PR-level trailers |
| Cost per session, matched from real usage | Yes, per request | Tokens only, or dashboard-only | Estimated from seat and admin APIs |
| Cost per merged PR in the pull request itself | Yes | No | No |
| Retained lines and model-to-model rework | Yes, re-measured over time | Snapshot at commit | Rework rate, not per model |
| Subagent tree and what each agent loaded | Yes | Subagent tokens | No |
| Prompt and trajectory behind a chunk of code | Opt-in, stays local, chat with it | Stored in the repo | No |
| Promotes the workflows that ship durable code | Yes | No | No |