# Usage tracking implementation Implemented deterministic local telemetry. ## Added - `bin/tool-usage-log` - append-only JSONL event writer - `bin/tool-usage-report` - aggregates counts, success rate, avg duration, recent failures - `extensions/_shared/tool-usage.ts` - TS helper for extension-side event logging ## Instrumented - `extensions/questionnaire.ts` - `extensions/subagent/index.ts` - `extensions/session-memory-dispatcher.ts` (`remember-session`) - `extensions/session-switch/index.ts` (`switch-session`, `resum`) - `bin/pi-job-start` - `bin/pi-job-runner` - `bin/pi-loop` ## Event file - default: `/home/sebas/runtime/tool-usage/events.jsonl` - override: `PI_TOOL_USAGE_FILE` ## Status model - `started` - `succeeded` - `failed` - `cancelled` ## Validation - shell syntax checks passed for modified bash scripts - python compile passed for report script - smoke test passed for log -> report flow ## Known limit - no full TypeScript typecheck run here because `bun` is not installed on this machine path right now (`bun: command not found`) - extension telemetry is best-effort and never blocks the main flow