feat(opencode): add modelBreakdowns to JSON output #816
+236
−24
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Add
modelBreakdownsfield to@ccusage/opencodeJSON output for feature parity withccusage(Claude Code).Currently
@ccusage/opencodeonly providesmodelsUsed(model name array), whileccusageprovides detailedmodelBreakdownswith per-model token counts and costs.Changes
modelBreakdownsarray to JSON output in daily, weekly, monthly, and session reportsmodelName,inputTokens,outputTokens,cacheCreationTokens,cacheReadTokens,costmodelsUsedarray is preservedBefore/After
Before
{ "daily": [{ "date": "2026-01-20", "inputTokens": 228, "outputTokens": 346277, "totalCost": 95.38, "modelsUsed": ["claude-opus-4-5", "gpt-5.2-codex"] }] }After
{ "daily": [{ "date": "2026-01-20", "inputTokens": 228, "outputTokens": 346277, "totalCost": 95.38, "modelsUsed": ["claude-opus-4-5", "gpt-5.2-codex"], "modelBreakdowns": [ { "modelName": "claude-opus-4-5", "inputTokens": 200, "outputTokens": 340000, "cacheCreationTokens": 7268400, "cacheReadTokens": 82593000, "cost": 94.50 }, { "modelName": "gpt-5.2-codex", "inputTokens": 28, "outputTokens": 6277, "cacheCreationTokens": 0, "cacheReadTokens": 0, "cost": 0.88 } ] }] }Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.