Skip to content

v0.2.3

Choose a tag to compare

@github-actions github-actions released this 17 Jun 03:09
· 14 commits to main since this release

dsx v0.2.3: analytics cross-tabs and scoped TUI stats

This release turns dsx stats from mostly one-dimensional totals into a proper usage analysis surface. It is especially useful for answering questions like “which model drove that spike?”, “which project is burning credits this week?”, and “which tools are failing most often in this window?”

Highlights

  • Added multi-axis stats views:
    • day-model and day-project for daily usage split by model or project.
    • project-model for model mix inside each project.
    • day-tool, project-tool, and model-tool for tool call/error analysis.
    • segment to compare main, subagent, and droid-exec sessions.
    • dist for percentile and histogram views.
  • Added stats --model, stats --metric, and stats --all.
  • Updated the Stats TUI with filter controls:
    • w window, v metric, a main/all scope, p project, m model, tab dimension.
  • Corrected stats scoping so subagent and droid-exec sessions are excluded by default, matching dsx list/dsx insights semantics. Use --all when you want the full raw picture.
  • Split the dsx skill references into focused docs for usage semantics, stats analytics, and insights interpretation.

Examples

dsx stats --by day-model --metric totalTokens --since 30d
dsx stats --by day-project --metric credits --since 7d
dsx stats --by day-tool --since 7d
dsx stats --by project-model --project droid-session-explorer
dsx stats --by segment --json
dsx stats --by dist --metric tokens

Interpretation notes

Daily token/credit cross-tabs use the same assistant-message pro-rating as stats --by day: session-level totals are split across active days by assistant-message count, then grouped by model or project. This is good for trend attribution, not exact per-message billing.

Tool cross-tabs use actual tool-use timestamps and joined tool results, so their call and error rates are more direct.

Forked sessions can still inherit cumulative usage from their parent chain. Before attributing an expensive fork, inspect dsx tree <id>.

Verification

Validated locally with:

bun test
bunx tsc --noEmit
bun run build
bun run compile
./dist/dsx-linux-x64 --no-refresh list -n 2

The Stats TUI was also exercised with droid-control/tctl, including dimension cycling, metric cycling, scope toggling, and project/model filter input.