big-emotion

ferry: Turn Jira Ticket Moves Into Draft Pull Requests

Ferry uses Jira ticket transitions to start an agent pipeline in GitHub Actions, from refinement through review and merging. It suits teams seeking an automated development workflow, but requires Jira Cloud, GitHub Actions setup, and an LLM provider.

Stars
3
Forks
1
Stars, last 16 days
+0

Our take

Health score

51/100

How it is scored
Activity
70
Community
47
Issues
21
Pull requests
64

+0 stars in the last 16 days

  • Releases more often than 83% of the projects we track

Overview

Ferry connects Jira ticket status changes to an agent-driven development workflow. Moving a ticket into a configured column can trigger agents that refine the task, develop a change, review it, iterate, and merge through CI workflows.

It is intended for teams that want Jira to initiate repository work without running a dedicated Ferry server or daemon. The primary execution path is GitHub Actions; GitLab CI support is described as experimental.

Key Features

  • Starts workflows from Jira column transitions using repository_dispatch and GitHub Actions.
  • Separates work into Refiner, Developer, Reviewer, Iterator, and Merger agent phases.
  • Includes CLI commands for setup, diagnostics, updates, and uninstalling.
  • Offers a local runner with per-ticket worktrees.
  • Documents configuration and execution options, including script, claude-code-action, and codex-cli paths.
  • Provides MCP server, cost governance, and operational runbook documentation.

Use Cases

  • A development team wants Jira tickets in a refinement column to initiate automated implementation work in GitHub.
  • A team wants agent-generated changes to pass through review and CI workflows before merging.
  • An operator wants to run ticket work locally with isolated worktrees rather than relying solely on the hosted workflow path.
  • A team evaluating Jira-driven automation wants to try GitLab CI support, while accounting for its experimental status.

Getting Started

Requires Node.js 20 or newer and a Jira Cloud project. Start setup with:

npx -p @big-emotion/ferry ferry-init

See the repository README and install guide for setup details and execution paths.

Alternatives

  • aidevops: aidevops coordinates delivery through an OpenCode plugin and shell framework, rather than starting a GitHub Actions pipeline from Jira transitions.
  • gh-aw: gh-aw defines AI-powered repository automations in Markdown for GitHub Actions, rather than providing Ferry’s Jira-triggered development lifecycle.
ProjectLanguageLicenseStarsStatus
ferryTypeScriptMIT3Not checked yet
aidevopsShellMIT410Active
gh-awGoMIT5.4kActive

Considerations

  • Ferry sends Jira and repository content to the configured LLM provider. Review the privacy documentation before using it with confidential material.
  • The documented primary path requires GitHub Actions, and the project also requires Jira Cloud and Node.js 20 or newer.
  • GitLab CI support is explicitly experimental.
  • Autonomous changes and merges depend on the configured workflows, branch-protection settings, and CI gate; review the configuration reference before enabling them.

Found this useful?

Share it with someone who would like ferry.

Comparisons