Jira Release Assistant
Jira Release Assistant is a local-first VS Code extension for planning and running release cherry-picks from Jira release boards and Bitbucket-linked work.
It helps release managers collect Jira tickets, map them to development work, review what will be included, group related tickets, cherry-pick locally, handle conflicts, and generate a release summary. The extension is designed for teams that prepare release branches from an existing local Git workspace.
What It Does
- Loads one or more Jira release board URLs.
- Finds ticket-linked branches and pull request work from Jira development data.
- Supports manually added branches or specific commits.
- Builds a release scope review with tickets, manual additions, and development audit data.
- Supports grouped no-commit cherry-pick flow and legacy merge-commit cherry-pick flow.
- Lets you review and adjust release commit groups before building the cherry-pick plan.
- Runs local Git cherry-picks and tracks progress through the queue.
- Helps inspect conflicts, skipped commits, grouped commits, and release summary output.
- Stores Jira credentials in VS Code Secret Storage.
Safety Model
The extension works against your local repository only.
- It does not push to a remote.
- It does not create pull requests.
- It does not deploy code.
- It requires a trusted VS Code workspace because it runs local Git commands.
- It stores tokens in VS Code Secret Storage, not in workspace files.
You stay responsible for reviewing the final branch, running tests, pushing, and opening the pull request through your normal release process.
Typical Flow
- Open the release repository in VS Code.
- Check out the already-created release branch.
- Open Jira Release Assistant from the Activity Bar.
- Configure Jira email and API token.
- Start a new release.
- Paste one or more Jira release board URLs, or add at least one manual branch or commit.
- Select the development branch and destination branch.
- Load the release scope.
- Review development audit, Jira tickets, manual additions, and grouping.
- Build the cherry-pick plan.
- Cherry-pick the queue locally, resolving conflicts when needed.
- Generate the release summary.
Release Processes
Grouped No-Commit Flow
This is the default flow. The assistant collects non-merge commits from approved pull request anchors, applies them with no commit, and commits each release group together. You can keep each ticket separate or group related tickets into one release commit.
Legacy Merge-Commit Flow
This flow keeps the older process of cherry-picking merge commits from the development branch one by one. It is useful for teams that release by replaying approved merge anchors directly.
Requirements
- VS Code with a trusted workspace.
- A local Git repository.
- Jira Cloud API access.
- Jira issues linked to development work where possible.
- Bitbucket branch and pull request links available through Jira development data.
Extension Settings
jiraReleaseAssistant.jiraBaseUrl: Default Jira Cloud base URL.
jiraReleaseAssistant.bitbucketBaseUrl: Bitbucket API base URL.
jiraReleaseAssistant.defaultDevelopmentBranch: Default branch used to find release work.
jiraReleaseAssistant.defaultDestinationBranch: Default destination branch used for comparison.
jiraReleaseAssistant.conflictSuggestionLookbackDays: Lookback window for optional missing-work suggestions.
jiraReleaseAssistant.sessionStorageMode: Where release session files are stored.
jiraReleaseAssistant.sessionStorageDirectory: Custom session storage directory.
Privacy
- No telemetry.
- No remote push capability.
- Jira API tokens are stored with VS Code Secret Storage.
- Release sessions are stored locally according to your configured session storage mode.
- Webviews use a Content Security Policy.
Known Limitations
- Jira and Bitbucket access depends on what Jira exposes through development data.
- Manual review is still required before pushing or opening a release pull request.
- Conflict suggestions are advisory and should be reviewed by a developer.
- Marketplace screenshots will be added after the final public image set is prepared.
License
This extension is released under the MIT License.