GitLab Issue TimeTracker is a lightweight userscript that adds a Start/Stop timer directly into the GitLab issue sidebar (Time Tracking section).
It automatically logs "Spent Time" via the GitLab API and works seamlessly with both the classic issue view and the new GitLab Quick View panel.
- Start/Stop Timer per issue
- Session tracking persists across navigation
- Automatically logs spent time using GitLab’s
add_spent_timeAPI - Supports:
- Issue detail pages
- Quick View panel (
?show=...)
- Compatible with:
- Tampermonkey
- Violentmonkey
- Auto-update ready for GitHub hosting
- Local token storage via Tampermonkey
- UI blends perfectly with GitLab's sidebar
- Tampermonkey
https://www.tampermonkey.net/ - Violentmonkey
https://violentmonkey.github.io/
https://raw.githubusercontent.com/Tyroonis/GitLab-Issue-TimeTracker/main/gitlab-issue-timer.user.js
On first run, the script will prompt for a Personal Access Token with:
- Scope:
api
The token is saved securely in Tampermonkey's storage.
- The script detects the current issue (page or Quick View).
- Injects a timer UI into the Time Tracking sidebar section.
- Start Timer:
- Begins a session
- Saves state per issue
- Stop Timer:
- Ends the session
- Calculates time spent
- Automatically sends it to GitLab
- Works seamlessly even when GitLab dynamically updates the sidebar (SPA).
Editable directly in the script:
- GitLab instance URL (
https://gitlab.example.com) - Minimum time before logging (default: 30 seconds)
- Text labels or styling
- Your GitLab token never leaves your machine
- Stored via Tampermonkey secure storage
- Script only matches GitLab issue URLs: https://gitlab.example.com/*/-/issues
No external scripts or third-party dependencies are used.
Tested with:
- GitLab 16–18 (Self-Managed EE/CE)
- GitLab Cloud
- Chrome, Firefox, Edge
- Tampermonkey 5.x
- Violentmonkey 2.x
@downloadURL https://raw.githubusercontent.com/Tyroonis/GitLab-Issue-TimeTracker/main/gitlab-issue-timer.user.js
@updateURL https://raw.githubusercontent.com/Tyroonis/GitLab-Issue-TimeTracker/main/gitlab-issue-timer.user.js
This project is open-source and licensed under the MIT License.