Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Just Another Time TrackerNew to Visual Studio Code? Get it now.
Just Another Time Tracker

Just Another Time Tracker

VOSS Solutions

|
2 installs
| (0) | Free
Tracks time spent on JIRA tickets based on branch name, with idle timeout and JIRA integration.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Track your time with JATT

This VS Code extension tracks time spent on JIRA tickets based on the current branch name, with idle timeout, per-ticket timers, and JIRA integration.

Features

  • Configurable regex pattern to match a JIRA ticket number from the current branch name.
  • Tracks active editing time while the branch is checked out, with per-ticket timers (switching branches preserves time).
  • Real activity-based idle detection: the timer pauses after the configured idle timeout of no edits, selection changes, saves, or focus, and resumes on activity. Optionally keep counting while the window is unfocused.
  • Works with any JIRA flavor: HTTP Basic (username + API token/password) or Bearer (Personal Access Token for Server/Data Center), selectable via jatt.authMethod.
  • Secure credential storage using VS Code Secret Storage (never visible in settings).
  • Manual, scheduled (auto), and on-branch-switch submission, with configurable schedule, time-zone offset, and worklog comment prompt. Auto-submit fires exactly once per day.
  • Robust submission: time is sent as timeSpentSeconds with a proper started timestamp, and only the submitted amount is deducted (time tracked during the network call is preserved). Failures are surfaced and logged to the JATT output channel.
  • Status bar showing the current ticket and timer (with a pause icon when idle), clickable to submit. Time is shown in "1h 23m" format, omitting hours if zero.
  • Commands to open the ticket in the browser, clear the timer, manually adjust tracked time, and view the output log.

Requirements

  • Git must be installed and the workspace must be a git repository.
  • JIRA server accessible from your environment.

Extension Settings

This extension contributes the following settings:

  • jatt.jiraUrl: JIRA server URL (e.g., https://jira.example.com)
  • jatt.jiraUsername: JIRA username (basic auth only; on Cloud this is your account email). Ignored for bearer.
  • jatt.authMethod: basic (username + API token/password) or bearer (Personal Access Token, Server/DC 8.14+). Default: basic.
  • jatt.branchRegex: Regex pattern to extract JIRA ticket from branch name (default: [A-Z]+-\d+)
  • jatt.idleTimeout: Idle timeout in seconds before timer pauses (default: 300)
  • jatt.countWhenUnfocused: Keep counting while the window is unfocused, until the idle timeout (default: false)
  • jatt.autoSubmitEnabled: Enable automatic JIRA time submission at a scheduled time (default: false)
  • jatt.autoSubmitSchedule: Auto-submit schedule in the format 'hh:mm' (24h). Leave empty to disable.
  • jatt.autoSubmitTimezone: Fixed UTC offset (e.g., '+02:00', '-0500') for auto-submit (for container/remote support).

Note: Your JIRA credential (API token, PAT, or password) is stored securely using VS Code Secret Storage. You will be prompted for it the first time it is needed.

  • JIRA Cloud (*.atlassian.net): set authMethod to basic, jiraUsername to your email, and use an API token as the credential.
  • JIRA Server/Data Center: use bearer with a Personal Access Token, or basic with your username + password.

Usage

  1. Configure your JIRA settings in VS Code settings under Just Another Time Tracker.
  2. Ensure your branch name contains a JIRA ticket number matching your regex.
  3. The extension will track your active time on the ticket. Timers are per-ticket and persist when switching branches.
  4. Use the Jatt: Submit Time to JIRA command from the Command Palette to submit your time. You will be prompted for a worklog comment (optional).
  5. If auto-submit is enabled, time will be submitted automatically at the scheduled time each day.
  6. Use the Jatt: Open JIRA Ticket in Browser command to quickly open the current ticket in your browser.
  7. Use the Jatt: Clear Current Ticket Timer command to reset the timer for the current ticket (with confirmation).
  8. Use the Jatt: Adjust Current Ticket Time command to manually set the tracked time (e.g. "1h 30m").

Known Issues

  • JIRA API integration assumes the standard JIRA REST API v2 (/rest/api/2). Custom setups may require changes.
  • By default time only accrues while the VS Code window is focused (toggle with jatt.countWhenUnfocused).
  • Auto-submit supports a single time per day (no day-of-week selection).

Release Notes

0.1.0

  • Fixed spurious repeated "1m" auto-submissions (auto-submit now fires once per day).
  • Fixed silent failures and wrong-ticket resets on branch switch (switch is now awaited and serialized).
  • Idle detection now tracks real activity (edits, selection, saves, focus) instead of only window focus.
  • Added support for all JIRA auth methods (basic and bearer/PAT) via jatt.authMethod.
  • Time is tracked in seconds and submitted via timeSpentSeconds with a started timestamp; time tracked during a submit is preserved. Added an output log, a "Show Output Log" command, and a "Adjust Current Ticket Time" command.

0.0.10

  • All time submissions to JIRA now use the full number of minutes and are formatted as "Xh Ym" (e.g., "7h 20m") for both the API and notifications.
  • Fixed a bug where only the hour portion or incorrect minutes were submitted to JIRA on branch switch, auto-submit, or manual submit.
  • Code and documentation now consistently use minutes for all time calculations and display.

0.0.9

  • Status bar and pop-up notifications now show time in "1h 23m" format, omitting hours if zero.
  • Status bar updates immediately after time is submitted.
  • Added commands to open JIRA ticket in browser and clear current ticket timer.
  • Improved timer logic, branch watcher, and auto-submit configuration.
  • Secure password storage and migration guidance.

0.0.8 and earlier

  • See CHANGELOG.md for full history.

Following extension guidelines

Ensure that you've read through the extensions guidelines and follow the best practices for creating your extension.

  • Extension Guidelines

For more information

  • Visual Studio Code's Markdown Support
  • Markdown Syntax Reference

Enjoy!

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft