workflow
A terminal UI for the loop a developer actually runs all day: pick up a Jira issue, start a branch for it, open the pull or merge request, and tell the team in Slack, Teams or Discord — without leaving the keyboard or rebuilding the same context across three browser tabs.
Status
The whole loop works, and is new: expect rough edges, and a configuration format that may still change before 1.0.
workflowopens the TUI. Pick up an assigned Jira issue, comment on it or change its status, branch for it, stage and commit through the repository’s own hooks — opening a failure at its line in$EDITOR— push, open the pull or merge request from the repository’s template, follow its CI, and announce it to your team.?lists the keys.workflow --dry-rundoes all of that with every write held back, saying what it would have done.workflow --webserves the same loop in a browser, on127.0.0.1alone.- A repository with hooks in
.git/hooksand no lefthook configuration is offered alefthook.ymlthat runs them. workflow doctorreports the repository, tooling and configuration in effect;workflow doctor --onlineasks Jira, your messaging service and your forge whether each credential actually works.workflow config initwrites a starting configuration file, andworkflow config showprints the one in effect, credentials masked.
Where to go next
- Install —
go install, release binaries, or build from source. - Using workflow — the panes, the keys, and the loop from issue to announcement.
- The web interface —
workflow --web: its sections, its live stream, and what it leaves to the terminal. - Configuration — every field of
.workflow.json, and how to get the Jira token and a messaging webhook or Slack bot token. - Scripting — the commands without the
interface: exit codes, streams,
--json,--yes,--dry-runand--log. - Command reference — every command and flag, generated from the code.
- Development — the toolchain, the gates, and how a release happens.
workflow is Apache 2.0 licensed, and the source lives at jacob-delgado/workflow.