⏱️ 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 | ✅ |
🎯 Metas
| 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 dashboarde 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 diasopenTimeTracker.settings— Configurações do usuárioopenTimeTracker.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 installnpm run compile- Pressione
F5no VS Code para testar
📄 Licença
MIT © 2026 Railan Santana — veja LICENSE.