Important
Experimental & unstable! I'm exploring the problem space. Everything might change.
Pick your next Jira task & manage it from the terminal.
Right now do-next is intended for internal use in my teams.
v0.0.0-yyyy.mm.dd is the versioning scheme before the release.
Polished experience and documentation are coming closer to the first public release.
The main way before the release is to build from source.
The following solutions are supported on a best-effort basis:
Download a compiled binary from GitHub Releases
Pre-release versions have to be provided explicitly:
cargo install do-next@0.0.0-yyyy.mm.ddThis repo provides a flake. I guess, you know how to configure it on your own ^.~
nix run github:ejiektpobehuk/do-nextmacOS and Windows have no extra dependencies.
Linux depends on:
xdg-utilsto open Issues in a browserdbus& secret service provider for optional keyring secret management
do-next has a built-in onboarding.
do-next auth to reconfigure authentication only.
Besides Jira sources, a team config can list Confluence inline tasks (the checkbox action items on pages) as a source:
{
sources: [
{
id: "confluence-actions",
kind: "confluence",
display_name: "Action items",
// All filters optional; the default is "my incomplete tasks".
confluence: {
spaces: ["ENG"], // space keys
pages: ["123456"], // numeric page IDs
assignee: "me", // "me" (default) | "any" | an account id
status: "incomplete", // "incomplete" (default) | "complete" | "any"
due_before: "2026-08-01", // YYYY-MM-DD, inclusive
due_after: "2026-07-01",
label: "both", // list label: "task" (content) | "page" | "both" (default)
},
indication: { symbol: "☐", color: "cyan" },
},
],
}Pressing t on a Confluence task marks it complete (ticks the checkbox on
the page); o opens the page in the browser.
Authentication reuses the Jira connection by default — the same Atlassian
site, email and API token work for Confluence. To point at a different site
or credentials, add a confluence block (same optional fields at the user
config or team config level):
confluence: { base_url: "https://other.atlassian.net", credential_key: "other" }The DO_NEXT_CONFLUENCE_API_TOKEN env var overrides the token. With
auth_method: "oauth", re-run do-next auth after adding a confluence
source so the token is granted the Confluence scopes; if Atlassian rejects
the combined Jira + Confluence consent, use an API token (basic) for
Confluence instead.
Dependencies:
just— optional command runnercargo— the Rust package manager- msrv —
1.88.0 dbus— Linux specific dependency
just acts as a cargo wrapper that overrides some defaults and provides a wrapper for NixOS dev shell.
Run just to list all available commands:
just
Available recipes:
build
check
default
lint
lint-fix
run
shell
test
libdbus is a runtime and a build dependency.
You'll need the dev shell to handle it properly.
just handles calling the dev shell if it detects that it's running in a NixOS environment.
The sync-secret-service keyring backend requires the dbus development headers:
Arch Linux
sudo pacman -S dbus pkgconfDebian/Ubuntu
sudo apt install libdbus-1-dev pkg-configFedora
sudo dnf install dbus-devel pkgconf-pkg-configjust buildor
cargo buildNo extra system dependencies required.
Licensed under either of MIT or Apache-2.0 at your option.