Assistencia Dev Tracker
Turn technical help into proof: track support, mentoring, debugging, incidents, and code-review assistance directly from VS Code.
By Ciro Cesar Maciel - one of a series of small, sharp VS Code tools.
Assistencia Dev Tracker is a local-first VS Code extension for people whose best work usually disappears into calls, Slack threads, pair-programming sessions, emergency fixes, and "can you take a quick look?" moments.
Start a session, choose the client/project/ticket/category, add notes as you investigate, finish with an outcome, and export the data when you need to prove what happened.
It is not a time tracker for surveillance. It is a technical assistance log for people who need receipts.
The problem
Technical help is valuable, but it is usually invisible:
- A senior dev unblocks a teammate in 18 minutes.
- A consultant finds the missing environment variable that killed a deploy.
- A software house resolves five client issues in one afternoon.
- A support engineer prevents a bug from becoming an incident.
- A maintainer explains the architecture decision that saves a rewrite.
None of that shows up in Git history cleanly. None of it fits nicely into a commit. Most of it never becomes a useful metric.
Assistencia Dev Tracker makes that work measurable.
What it does
- Starts an assistance session from the Activity Bar, Command Palette, or status bar.
- Captures the business context: client, project, ticket/reference, category, and priority.
- Tracks duration from start to finish.
- Stores notes while you investigate, explain, review, or fix.
- Detects workspace and Git branch when available.
- Captures changed files at the end of the session.
- Records the outcome: resolved, partial, blocked, or escalated.
- Generates local metrics: completed sessions, tracked time, estimated saved time, active sessions.
- Shows a dashboard inside VS Code.
- Exports JSON or CSV for reports, invoices, retrospectives, SLA reviews, and client updates.
Who it is for
| You are |
This helps you |
| Consultant or freelancer |
Prove what you did beyond commits and meetings |
| Software house |
Report assistance volume per client/project |
| Tech lead |
Understand where the team gets blocked |
| Senior developer |
Make mentoring and unblocking visible |
| Support engineer |
Keep technical support evidence close to the code |
| SRE / DevOps |
Track incident help, deploy fixes, and operational follow-up |
| Agency or managed service team |
Build monthly client reports without reconstructing history |
What you can measure
| Metric |
Why it matters |
| Completed assistance sessions |
Shows delivered support volume |
| Time tracked per client |
Supports billing, retainers, and account health |
| Time tracked per project |
Reveals which codebases require the most help |
| Categories of work |
Separates setup, bugs, incidents, mentoring, deploys, security, and reviews |
| Outcomes |
Makes blocked/escalated work visible |
| Notes and summaries |
Preserves the technical reasoning behind the assistance |
| Changed files |
Connects help sessions to real code movement |
| Estimated saved time |
Turns technical help into a simple ROI signal |
How it works
Start Assistance
-> Client
-> Project
-> Ticket/reference
-> Category
-> Priority
-> Notes while you work
-> Finish with outcome + summary
-> Dashboard / JSON / CSV
Example session:
Client: Acme Finance
Project: Billing API
Ticket: JIRA-1842
Category: Incident
Priority: Critical
Outcome: Resolved
Duration: 42m
Summary: Restored charge creation after identifying a missing production env var.
Changed files: src/config/billing.ts, .env.example
Example monthly report:
Completed sessions: 38
Tracked time: 27h 20m
Estimated saved time: 68h 20m
Most common category: Setup
Most assisted project: Billing API
Blocked sessions: 3
Core workflow
- Open the Assistencias icon in the Activity Bar.
- Click Start Assistance.
- Fill in client, project, ticket/reference, category, and priority.
- Add notes while you investigate or guide someone.
- Click Finish Assistance.
- Choose the outcome and write a short summary.
- Open the dashboard or export JSON/CSV.
Categories
The default categories are intentionally practical:
| Category |
Use it for |
| Setup |
Helping someone run, configure, or bootstrap a project |
| Bug |
Investigating or fixing broken behavior |
| Code review |
Reviewing a PR, patch, or implementation idea |
| Architecture |
Technical direction, modeling, tradeoffs, design help |
| Incident |
Production issue, outage, emergency support |
| Deploy |
Build, CI/CD, release, infrastructure, environment problems |
| Security |
Secrets, access, permissions, vulnerabilities, risky config |
| Mentoring |
Teaching, pairing, explaining concepts or code paths |
| Other |
Anything that still deserves a receipt |
Commands
| Command |
What it does |
Assistencia Dev Tracker: Start Assistance |
Starts a new assistance session |
Assistencia Dev Tracker: Finish Assistance |
Ends the active session and records outcome, summary, duration, and changed files |
Assistencia Dev Tracker: Add Assistance Note |
Adds an observation to the active session |
Assistencia Dev Tracker: Open Dashboard |
Opens the local metrics dashboard |
Assistencia Dev Tracker: Export JSON |
Exports every session as structured JSON |
Assistencia Dev Tracker: Export CSV |
Exports every session as spreadsheet-friendly CSV |
Assistencia Dev Tracker: Refresh |
Refreshes the Activity Bar view and status bar |
Settings
| Setting |
Default |
Description |
assistenciaDevTracker.defaultClient |
empty |
Client name suggested when starting a session |
assistenciaDevTracker.estimatedSavingsMultiplier |
2.5 |
Multiplier used to estimate saved time from tracked duration |
Dashboard
The built-in dashboard shows:
- completed sessions;
- active sessions;
- tracked time;
- estimated saved time;
- recent sessions with client, project, category, outcome, and duration.
Everything is generated from local VS Code storage. No account required.
The CSV export includes:
| Field |
Description |
id |
Unique session ID |
client |
Client/account name |
project |
Project or workspace |
ticket |
Ticket, issue, task, or free-form reference |
category |
Session category |
priority |
Low, Medium, High, Critical |
status |
Active or completed |
outcome |
Resolved, Partial, Blocked, Escalated |
startedAt / endedAt |
ISO timestamps |
durationMinutes |
Rounded session duration |
workspaceName |
VS Code workspace name |
branchName |
Current Git branch when detected |
changedFiles |
Git-changed files captured at finish |
notes |
Timestamped notes |
summary |
Human-written impact summary |
Privacy
Assistencia Dev Tracker is local-first.
- No telemetry.
- No cloud account.
- No source code upload.
- No AI call.
- No remote API.
- No background syncing.
Sessions are stored in VS Code global storage for your local profile. Exports only happen when you explicitly choose JSON or CSV.
Current status
This is the first MVP:
- local storage;
- Activity Bar view;
- status bar shortcut;
- dashboard;
- JSON export;
- CSV export;
- Git branch and changed-file capture.
Planned ideas:
- monthly report generator;
- client/project filters;
- Markdown report export;
- Jira/GitHub/Linear links;
- optional SaaS sync;
- team dashboard;
- AI-generated session summaries;
- SLA and retainer insights.
Development
From the repository root:
npm install
npm run build -w apps/assistencia-dev-tracker
Debug from VS Code:
Run and Debug -> Debug: assistencia-dev-tracker -> F5
Package locally:
npm run package -w apps/assistencia-dev-tracker
Build every extension in the monorepo:
npm run build
npm run package:all
| Field |
Value |
| Extension ID |
ciro-maciel.ciro-maciel-assistencia-dev-tracker |
| Package name |
ciro-maciel-assistencia-dev-tracker |
| Publisher |
ciro-maciel |
| Categories |
Other, Visualization, SCM Providers |
| License |
Proprietary |
| Runtime |
VS Code ^1.90.0 |
License
See LICENSE.
Built by Ciro Cesar Maciel. Sibling extensions: AI TODO Hunter, Env Var Detective, AI Error Message Humanizer, Regex Whisperer, Stack Trace Triage, AI Commit Message Generator.
| |