Harvest Time Tracker for Azure DevOps
Track time directly from Azure DevOps work items using Harvest's powerful time tracking platform.
Features
- Seamless Integration: Embeds the Harvest timer directly in work item details pages
- Automatic Context: Automatically populates work item details into your Harvest timesheet
- Real-time Tracking: Start and stop timers without leaving Azure DevOps
- All Work Item Types: Works with User Stories, Bugs, Tasks, Features, and all custom work item types
How It Works
When you open any work item in Azure DevOps, you'll see a "Harvest Time Tracker" section on the form. This section contains an embedded Harvest timer that:
- Automatically includes the work item ID, title, and type in the timer notes
- Links back to the Azure DevOps work item in your Harvest timesheet
- Organizes time entries by project (mapped to Azure DevOps project names)
- Allows you to start, stop, and manage timers in real-time
Prerequisites
- An active Harvest account
- Harvest Platform Access (available on Harvest paid plans)
- Azure DevOps organization (cloud or server)
Installation
- Install the extension from the Visual Studio Marketplace
- Navigate to any work item in Azure DevOps
- Look for the "Harvest Time Tracker" section on the work item form
- If this is your first time, you may need to authenticate with Harvest
Configuration
By default, the extension works out of the box with sensible defaults. The following information is automatically sent to Harvest:
- Work Item ID: Used as the external item identifier
- Work Item Title: Added to timer notes
- Work Item Type: Included in the description (Bug, User Story, Task, etc.)
- Project Name: Used to organize and optionally create Harvest projects
Extension Settings
Organization-wide settings are available under Organization Settings > Extensions > Harvest Time Tracker. Here you can:
- Choose to enable the widget for all projects or only selected ones
- Select which work item types show the Harvest timer
- Enable chromeless mode for a minimal timer UI
- Set a default Harvest project code
If you want to completely remove the Harvest Time Tracker group (including the header) from specific work item types, use Azure DevOps Process customization:
- Go to Organization Settings > Boards > Process
- Select the process used by your project (e.g., Agile, Scrum, or your custom process). If using a system process, you must first create an inherited process.
- Click on the work item type you want to configure (e.g., Bug, Task, User Story)
- Go to the Layout tab
- Find the Harvest Time Tracker group on the form layout
- Click the ⋯ (more options) menu on the group and select Remove or Hide
- The change applies to all work items of that type in projects using this process
This gives you full control over which work item types display the Harvest timer, without any visible placeholder or collapsed section.
Note: Process customization requires Project Collection Administrator permissions. For inherited processes, changes apply to all projects using that process.
Privacy & Security
This extension:
- Does not store any credentials
- Does not collect or transmit work item data outside of the direct Harvest integration
- Uses secure HTTPS connections to Harvest's platform
- Only accesses work item data you have permission to view
Support
For issues, feature requests, or questions:
Version History
1.3.1 - 2026-02-11
- Corrected privacy policy link property name to 'privacypolicy' in manifest
1.3.0 - 2026-02-11
- Added formal PRIVACY.md document for Top Publisher program compliance
- Updated LICENSE with proper copyright holder (VIU AG)
- Added privacy and license links to extension manifest
- Meets Azure DevOps Top Publisher requirements
1.2.4 - 2026-02-10
- Stable release with all fixes applied
- Widget and settings page working correctly
- Configuration persists across admin and widget contexts
1.2.3 - 2026-02-10
- Fixed CommonServiceIds import in config-helper
- Widget now properly loads saved configuration settings
- Settings changes now apply to the widget correctly
1.2.2 - 2026-02-10
- Added vso.project scope to enable reading organization projects
- Settings page can now properly load project list
1.2.1 - 2026-02-10
- Added 10-second timeout to API requests to prevent hanging
- Better error handling for project loading failures
1.2.0 - 2026-02-10
- Added comprehensive debug logging to settings page
- Helps diagnose initialization issues
- Logs each step of project loading and settings initialization
1.1.9 - 2026-02-10
- Fixed CommonServiceIds import from correct package (azure-devops-extension-api)
- Settings page now properly initializes ExtensionDataService
- All configuration features now work correctly
1.1.8 - 2026-02-10
- Fixed SDK loading by following Microsoft's sample pattern
- Both widget and settings now bundle SDK consistently
- Removed webpack externals configuration that was causing issues
- Settings page now works correctly
1.1.7 - 2026-02-10
- Fixed "SDK already loaded" error by externalizing SDK only for settings bundle
- Settings bundle now references globally loaded SDK from Azure DevOps admin pages
- Widget bundle continues to include SDK for standalone operation
1.1.6 - 2026-02-10
- Fixed CommonServiceIds import to resolve ExtensionDataService error
- Settings page now properly initializes and loads configuration
1.1.5 - 2026-02-10
- Reverted to bundling SDK in both widget and settings files
- Removed external SDK loading approach for better compatibility
- Settings page now works correctly without "SDK is not defined" errors
1.1.4 - 2026-02-10
- Fixed SDK loading in settings page by adding CDN script tag
- Work item URLs now use edit mode for direct editing from Harvest
1.1.3 - 2026-02-10
- Fixed SDK double-loading error in settings page
- Settings bundle now uses externals configuration for Azure DevOps SDK
- Widget bundle continues to include SDK for standalone operation
1.1.2 - 2026-02-10
- Updated documentation structure
- Simplified README.md to focus on build and installation instructions
- Improved overview.md for marketplace listing
1.1.1 - 2026-02-10
- Fixed settings page SDK loading error
- Fixed work item URLs in Harvest time logs (added dev.azure.com and changed to read URL)
- Renamed settings hub for consistency
1.1.0 - 2026-02-09
- Added configuration page in Organization Settings
- Control which projects and work item types display the widget
- Chromeless mode and default Harvest project options
- Per-user configuration storage
1.0.1 - 2026-02-09
- Fixed race condition in extension initialization
- Improved error messages and logging
- Added troubleshooting documentation
1.0.0 - 2026-02-09
- Initial release
- Work item form group integration
- Automatic work item context passing to Harvest
- Dynamic iframe resizing