Open Time Tracker ⏱️
⏱️ Auto tracking · 📊 Dashboard completo · 🤖 Detecção de IA · 🏆 Gamificação
Open Time Tracker contabiliza automaticamente quanto tempo você passa com o VS Code aberto — sem apertar Start, sem cronômetros manuais.
⚡ Começa a contar assim que o VS Code abre. Acumula mesmo fechando e abrindo várias vezes no mesmo dia.
✨ Features
⏱️ Tracking
|
Funcionalidade |
Status |
| ⏱️ |
Auto Tracking — zero configuração |
✅ |
| 💾 |
Persistência — dados no globalState, sobrevivem a crash |
✅ |
| ⏸️ |
Pause/Resume — pause quando necessário |
✅ |
| ⏰ |
Acumula sessões — mesmo fechando/abrindo VS Code |
✅ |
| 🖥️ |
Workspaces — tempo separado por projeto + % de uso |
✅ |
📊 Dashboard
|
Funcionalidade |
Status |
| 📊 |
Cards interativos — hoje, semana, mês, médias, streak |
✅ |
| 📈 |
Gráfico 30 dias (Chart.js) |
✅ |
| 📅 |
Distribuição semanal — média por dia da semana |
✅ |
| 📆 |
Gráfico mensal — visão agregada por mês |
✅ |
| 🍩 |
IA × Manual — gráfico doughnut |
✅ |
| 🗺️ |
Calendário estilo GitHub — 5 níveis de atividade |
✅ |
| 📋 |
Timeline de sessões — com badges de IA |
✅ |
| 🔥 |
Heatmap de produtividade — horário × dia da semana |
✅ |
| 🏆 |
Top 5 dias — recordes |
✅ |
| 🎨 |
Tema independente — claro/escuro/VS Code |
✅ |
|
Funcionalidade |
Status |
| 🎯 |
Meta diária configurável com barra de progresso |
✅ |
| 📅 |
Meta semanal configurável |
✅ |
| 📆 |
Meta mensal configurável |
✅ |
| 🔔 |
Notificação ao atingir qualquer meta |
✅ |
🏆 Gamificação
|
Funcionalidade |
Status |
| ⭐ |
8 níveis de progresso (Iniciante → Imortal) |
✅ |
| 🏅 |
Badges visuais estilo pill |
✅ |
| 🎖️ |
Conquistas — marcos de tempo, streak, dias ativos |
✅ |
| 🔥 |
Streak — dias consecutivos + recorde |
✅ |
🤖 IA
|
Funcionalidade |
Status |
| 🔍 |
Detecção automática — Claude Code, Codex, Aider, Gemini, Cursor, Copilot |
✅ |
| 📊 |
Comparação IA × manual — cards + gráfico + breakdown por ferramenta |
✅ |
| 📋 |
Timeline com badge 🤖 nas sessões com IA |
✅ |
| 🔄 |
Multi-terminal — detecção em todos os terminais do VS Code |
✅ |
| 🪟 |
Multi-workspace — detecção entre workspaces |
✅ |
📋 Revisões
|
Funcionalidade |
Status |
| 📅 |
Review diária — notificação no horário configurável |
✅ |
| 📅 |
Review semanal — domingo/segunda |
✅ |
| 📅 |
Review mensal — 1º dia do mês |
✅ |
| 📤 |
Exportar relatório da review (HTML/Markdown) |
✅ |
📂 Exportação
|
Funcionalidade |
Status |
| 📄 |
JSON |
✅ |
| 📄 |
CSV |
✅ |
| 📄 |
Markdown |
✅ |
| 📄 |
HTML/PDF — relatório pronto para imprimir |
✅ |
⚙️ Configurações
|
Funcionalidade |
Status |
| 🎯 |
Metas (diária, semanal, mensal) |
✅ |
| ⏱️ |
Intervalo de salvamento |
✅ |
| 📍 |
Lado da Status Bar |
✅ |
| 👁️ |
Mostrar/ocultar Status Bar |
✅ |
| 📚 |
Dias do histórico (90-730) |
✅ |
| 🕐 |
Horário da review diária |
✅ |
| 🎨 |
Tema do dashboard |
✅ |
| 💾 |
Backup automático |
✅ |
| ☁️ |
Cloud Sync via GitHub Gist |
✅ |
📸 Preview
🖼️ Screenshots detalhadas em breve. Abra o dashboard via comando Open Time Tracker: Mostrar dashboard e veja seus dados em tempo real.
🚀 Instalação
Via VS Code Marketplace
- Abra o VS Code
Ctrl+P → ext install SantanaLabs.open-time-tracker
- Pronto! O contador começa automaticamente.
OU pressione Ctrl+Shift+X, pesquise por Open Time Tracker e clique em Instalar.
Via VSIX (desenvolvimento)
npm install
npm run compile
npm run package
code --install-extension open-time-tracker-*.vsix --force
⌨️ Comandos
| Comando |
Descrição |
Mostrar dashboard |
Abre o dashboard completo |
Mostrar tempo de hoje |
Abre o dashboard |
Pausar contador |
Pausa o temporizador |
Retomar contador |
Retoma o temporizador |
Resetar tempo de hoje |
Zera os dados do dia |
Definir meta diária |
Ajusta a meta (0.5-24h) |
Definir meta semanal |
Ajusta a meta semanal (1-168h) |
Definir meta mensal |
Ajusta a meta mensal (1-744h) |
Mostrar resumo do dia |
Exibe notificação com resumo |
Mostrar resumo semanal |
Exibe notificação com resumo semanal |
Mostrar resumo mensal |
Exibe notificação com resumo mensal |
Exportar JSON |
Salva histórico em JSON |
Exportar CSV |
Salva histórico em CSV |
Exportar Markdown |
Salva relatório em Markdown |
Exportar HTML/PDF |
Salva relatório em HTML |
Mostrar/ocultar barra de status |
Toggle da status bar |
⚙️ Configurações
| Propriedade |
Default |
Descrição |
openTimeTracker.dailyGoalHours |
8 |
Meta diária (0.5-24h) |
openTimeTracker.weeklyGoalHours |
40 |
Meta semanal (1-168h) |
openTimeTracker.monthlyGoalHours |
160 |
Meta mensal (1-744h) |
openTimeTracker.saveIntervalSeconds |
60 |
Intervalo de salvamento (10-600s) |
openTimeTracker.statusBarAlignment |
left |
Lado da barra de status |
Todas as configurações também podem ser ajustadas visualmente no painel de Configurações dentro do dashboard (botão ⚙️).
🧱 Dados armazenados
Por padrão, a extensão salva apenas localmente no globalState do VS Code:
openTimeTracker.records — Histórico de até 730 dias
openTimeTracker.settings — Configurações do usuário
openTimeTracker.currentSession — Sessão ativa (crash recovery)
🔒 Privacidade primeiro. Seus dados ficam apenas no seu computador. O Cloud Sync (GitHub Gist) é opcional e só é ativado quando você configura um token pessoal e habilita nas Configurações do dashboard.
🧪 Testes
npm test # Executa testes uma vez
npm run test:watch # Modo watch
📦 Tecnologias
- Runtime: VS Code Extension API
- Charts: Chart.js 4 (CDN)
- Linguagem: TypeScript
- Testes: Vitest
- Build:
tsc
🤝 Contribuindo
Issues e PRs são bem-vindos!
- Fork o projeto
npm install
npm run compile
- Pressione
F5 no VS Code para testar
📄 Licença
MIT © 2026 Railan Santana — veja LICENSE.