gemini-cli-wakatime
Track your AI-assisted coding activity, time spent prompting AI, and lines of code generated using the WakaTime/Wakapi extension for Gemini
Open source Open in the app JSON README (API)
About
Track your AI-assisted coding activity, time spent prompting AI, and lines of code generated using the WakaTime/Wakapi extension for Gemini CLI.
Details
- Kind
- Plugins
- Topic
- AI, RAG & memory
- Publisher
- estebanforge
- Origin
- gemini
- Category
- ferramentas
- Version
- 1.0.0
- Stars
- 6
- Last push
- 2026-03-20T17:11:43Z
- Repository state
- ativo
- Language
- TypeScript
- License
- MIT
- Added
- 2026-08-30 14:13:39
- Updated
- 2026-08-30 14:13:39
- Origin id
estebanforge/gemini-cli-wakatime
README
# WakaTime for Gemini CLI Track your AI-assisted coding activity, time spent prompting AI, and lines of code generated using the WakaTime extension for Gemini CLI. [WakaTime](https://wakatime.com/) is an open source plugin for metrics, insights, and time tracking automatically generated from your programming activity. ## Installation ### 1. Install the Extension ```bash gemini extensions install https://github.com/EstebanForge/gemini-cli-wakatime.git ``` ### 2. Configure WakaTime Add your [WakaTime API key](https://wakatime.com/api-key) to `~/.wakatime.cfg`: ```ini [settings] api_key = your_api_key_here ``` **That's it!** The extension will automatically download and install the WakaTime CLI on first use. No manual CLI installation required. ### What happens on first run 1. Extension detects missing WakaTime CLI 2. Downloads platform-specific binary from GitHub 3. Installs to `~/.wakatime/` 4. Starts tracking your activity automatically ## Usage The extension runs automatically in the background, tracking your AI-assisted coding activity. It: - Monitors file operations (read, write, edit) during Gemini CLI sessions - Tracks time spent on AI coding - Records line changes generated by AI - Sends heartbeats to WakaTime every 60 seconds Visit [https://wakatime.com](https://wakatime.com) to see your coding activity dashboard.  ## How It Works The extension includes an MCP (Model Context Protocol) server that integrates with Gemini CLI: 1. **Auto-Installation**: Automatically downloads and installs the WakaTime CLI on first run 2. **File Monitoring**: Tracks which files are read, written, or edited during sessions 3. **Line Change Calculation**: Measures the lines of code added/modified by AI 4. **Heartbeat Sending**: Sends data to WakaTime with: - File paths - Line changes count - Category: "AI coding" - Plugin: "gemini-cli-wakatime" ## Development ### Setup ```bash git clone https://github.com/EstebanForge/gemini-cli-wakatime.git cd gemini-cli-wakatime npm install npm run build ``` ### Development Workflow ```bash # Build the extension npm run build # Link for development (no need to reinstall after changes) gemini extensions link . # Test changes gemini extensions list # Uninstall when done gemini extensions uninstall gemini-cli-wakatime ``` **Important for Development:** - After making changes, run `npm run build` and `git add dist/ && git commit -m "Update built files"` - The `dist/` directory must be committed as it contains the bundled MCP server - Always test after linking with `gemini extensions list` to ensure no connection errors ### Packaging for Release ```bash # Create platform-specific archives npm run package -- --platform=darwin --arch=arm64 npm run package -- --platform=linux --arch=x64 npm run package -- --platform=win32 --arch=x64 # Archives will be in release/ directory ``` ## Extension Management ### List installed extensions ```bash gemini extensions list ``` ### Update extension ```bash gemini extensions update gemini-cli-wakatime ``` ### Uninstall extension ```bash gemini extensions uninstall gemini-cli-wakatime ``` ## Troubleshooting ### Extension not working 1. **Check API key configuration**: ```bash cat ~/.wakatime.cfg ``` 2. **Enable debug mode**: Edit `~/.wakatime.cfg`: ```ini [settings] debug = true ``` Then check logs at `~/.wakatime/gemini-cli.log` 3. **Verify WakaTime CLI auto-installation**: ```bash ls -la ~/.wakatime/wakatime-cli* ``` 4. **Restart Gemini CLI**: Close and reopen your terminal ### No data on dashboard - Activity may take a few minutes to appear (check https://wakatime.com/dashboard) - Verify internet connection - Check API key is correct - Look for errors in WakaTime logs ### Check extension status ```bash gemini extensions list ``` ## Configuration ### WakaTime Settings Edit `~/.wakatime.cfg`: ```ini [settings] api_key = your_api_key_here debug = false proxy = http://proxy:8080 no_ssl_verify = false ``` See all WakaTime settings: https://github.com/wakatime/wakatime-cli#configuration-file ## License MIT License - see [LICENSE](LICENSE.md) file for details ## Contributing Contributions are welcome! Please: 1. Open an issue to discuss changes 2. Fork the repository 3. Create a feature branch 4. Submit a pull request ## Support - [GitHub Issues](https://github.com/EstebanForge/gemini-cli-wakatime/issues) - [WakaTime Website](https://wakatime.com) - [Gemini CLI Documentation](https://geminicli.com/docs/extensions) ## Features - **Zero Configuration**: Auto-downloads and installs WakaTime CLI - **Automatic Tracking**: Monitors all file operations during AI sessions - **Line Change Metrics**: Tracks AI-generated code changes - **Background Operation**: Runs silently without interrupting workflow - **Cross-Platform**: Works on macOS, Linux, and Windows - **Auto-Updates**: CLI updates automatically every 4 hours ## Release History ### v1.0.0 - Initial release - Automatic WakaTime CLI installation - File operation tracking - WakaTime heartbeat integration - MCP server implementation - Cross-platform support