Skip to content

Latest commit

Β 

History

History
130 lines (97 loc) Β· 6.84 KB

reporting.md

File metadata and controls

130 lines (97 loc) Β· 6.84 KB

Usage reporting

Part of the TeamAI CLI Usage Guide.


teamai pull commits session and usage counts into the team repo, and teamai workflow commits run records. Turn that off with:

# teamai.yaml
usageReport: false

One machine overrides it in ~/.teamai/config.yaml, and one workspace in its own config.yaml (see Member settings):

usageReportEnabled: false

teamai doctor says whether reporting is on and where that comes from.

If an automatic report is not confirmed, the data stays local. teamai status shows auto-report: pending since <time> and suggests teamai pull --verbose to retry and see why. Repeated failures keep the first timestamp. A successful report, or a pull after reporting is disabled, clears the notice. Disabling reporting keeps the local data. A retained usage file alone does not mean reporting failed.

See the team's week:

teamai digest
╔════════════════════════════════════════════════════╗
β•‘           πŸ“Š Team AI Weekly Digest                β•‘
β•‘  2026-10-05 β†’ 2026-10-12                        β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

πŸ‘₯ Active members: 4

πŸ“ˆ Session trends (7d vs prior 7d):
  Session success: 71% β†’ 80% Β· 18 ended
  Avg prompts/session: 6.2 β†’ 5.4
  Avg active duration: 12m β†’ 9m
  Avg LLM request cost (est.): $0.042 β†’ $0.031
  Cache read share: 40% β†’ 55%
  Correction rate: 18% β†’ 11%

πŸ† Most Used Skills:
  β˜…β˜…β˜…β˜…β˜…  deploy-helper (42 uses)
  β˜…β˜…β˜…β˜…β˜†  code-review (17 uses)

πŸ“ˆ Total skill invocations: 59
πŸ”§ Unique skills used: 2

πŸ“ Session Highlights:
  Fix duplicate project-level Hook injection...

πŸ“š New Learnings This Week: 1
  β€’ Port conflict on local preview

πŸ€– Session Autonomy (Human Intervention):
  Team avg: 1.20 interventions/session (18 sessions, 22 interventions)
  Breakdown: interrupt 8 Β· reject 6 Β· correction 8
  By run mode: attended 15 Β· unattended 1 Β· not recorded 2 sessions

πŸ“¦ Session Outcomes (finished sessions):
  runMode       outcome    sessions   tokens/session   interventions/session
  attended      pr         12         410.0K           6.1
  attended      learning   5          220.0K           3.0
  attended      none       31         95.0K            2.2
  unattended    pr         20         380.0K           0.4
  not recorded  none       7          120.0K           1.9
  A session with a pull request and a learning is in both rows, so rows do not add up.

πŸ’¬ Lifetime Conversation & Token Usage:
  Lifetime human prompts: 320
  By run mode: attended 280 Β· unattended 8 Β· not recorded 32 prompts
  Lifetime tokens: 1.2M (input 400.0K Β· output 80.0K Β· cache read 700.0K Β· cache write 20.0K)
  By run mode: attended 1.1M Β· unattended 30.0K Β· not recorded 70.0K tokens

────────────────────────────────────────────────────
Generated by teamai digest

With no reported data yet, the command prints No team usage data available yet.

Your sessions, by run mode

The counts cover only your own sessions. A session teamai launched itself, such as a workflow step or a judge, counts in none of them, and a session of yours that a step continued counts only up to that step. A session your tool started for a skill-driven run, such as a subagent or a worktree task, still counts as yours: only its worktree or its teamai/<run>/… branch shows where it came from.

Each session records its run mode, and stats/<member>.yaml splits the counts by it:

prompts: 430          # every prompt of your own sessions
attended:
  prompts: 395        # recorded as attended
unattended:
  prompts: 3          # recorded as unattended, such as your hooks in CI

interventions, prompts, tokens, and daily work the same way. What neither mode holds, here 32 prompts, was recorded without a mode: counts reported before teamai recorded modes, and sessions that recorded nothing after teamai was upgraded. The turns a session added since the last report count in the mode of its latest event. teamai digest and the dashboard show it as not recorded.

What your sessions delivered

A session of yours is added to outcomes, by its run mode and by what it delivered, by the next report once it has been idle for 6 hours. An unattended session is also added by the teamai score --drain that ends its job, so an ephemeral runner reports its sessions:

outcomes:
  attended:
    pr:       { sessions: 12, tokens: { input: …, output: … }, interventions: 73 }
    learning: { sessions: 5, tokens: { input: …, output: … }, interventions: 15 }
    none:     { sessions: 31, tokens: { input: …, output: … }, interventions: 68 }
  unattended:
    pr:       { sessions: 20, tokens: { input: …, output: … }, interventions: 8 }
  notRecorded:
    none:     { sessions: 7, tokens: { input: …, output: … }, interventions: 13 }
Outcome What the session delivered
commit Commits made with your git identity in the session's checkout, between its start and its last Stop
pr The pull request of the last branch the session stopped on that holds one of those commits, open when a report looked it up. A Stop on a detached HEAD, as in a rebase, keeps the branch before it. Each report looks until it finds one, so one merged before the session is finished still counts. It uses the credentials deliver: pr uses; a lookup that fails leaves it out
learning A learning teamai contribute recorded for the session (--session-id, else the agent's session)
none Nothing of the above

A session with a pull request and a learning is in both rows, so rows do not add up. Each session is added once: reported-outcomes.json, beside the other report baselines, flags it. Your first report on a release with outcomes adds none of the sessions already finished, since the release that recorded them kept no commit or learning of theirs. The report publishes counts only; the session id, commit shas, pull request URLs and learning ids stay in this machine's dashboard events.

A skill use is counted when the agent calls its skill tool, reads a skill's SKILL.md, or the prompt names the skill: /code-review at the start of the prompt, $code-review in Codex, /skill:code-review in Pi, @command://code-review in CodeBuddy. Only skills installed for the tool count, and each skill counts once per prompt. Paths such as /Volumes/External/project and URL components are not skill invocations. Previously recorded usage stays.