Skip to content
branchfirst_

Terminal / 5 MIN READ

A terminal task manager for the same projects you use in your browser

Install the BranchFirst terminal client on Windows, macOS, or Linux, sign in through your browser, and manage task trees with a practical CLI workflow.

If you already work in a shell, a terminal task manager gives your project plan a place beside that work. BranchFirst has an interactive terminal client that opens the projects associated with your account. You can edit task trees, star next steps, and complete work with familiar keyboard commands, then return to the same account in the browser. Here is how to get started and what to expect.

Install the terminal client

BranchFirst distributes a self-contained binary, so the installed terminal app does not require a separate Node.js runtime. The installer selects a release for your supported platform, downloads it, verifies its checksum, and adds the installation directory to your user PATH. The available builds cover Windows x64, macOS Intel and Apple Silicon, and Linux x64 and ARM64 with glibc.

On Windows, run the installation command in PowerShell:

irm https://branchfirst.com/install.ps1 | iex

On macOS or Linux, run:

curl -fsSL https://branchfirst.com/install.sh | sh

These commands download and execute the installation script. You can open the script URL first to review what it does. Installation uses your user directories and does not need an administrator or sudo. Open a new terminal window if your current shell does not recognize the command after installation. Git Bash on Windows uses the same installed executable through PATH.

Connect it to your BranchFirst account

branchfirst
branchfirst --help

The first run starts browser-based sign-in. The terminal shows a confirmation code and opens the BranchFirst authorization page in your browser. Approve the request there to connect the client to your account. You can also run ‘branchfirst login’ explicitly; ‘branchfirst login --paste’ provides a fallback when opening the browser automatically is inconvenient.

The client stores an authentication token in its settings directory. Treat that directory as account data when sharing a computer or copying configuration files. Run ‘branchfirst logout’ to forget the local token. The terminal client needs an account for this workflow; the browser app also has a local mode that can be used without creating one. Check the pricing page for current Sync availability and access terms.

Run a small project session

Suppose you are working on a release. Choose its project with the corresponding number key, select ‘Check installation instructions,’ and press Enter if its name needs more detail. Add a follow-up with n when you discover a missing step. Use Tab and Shift+Tab to put the follow-up at the right level in the tree. You are editing the project itself, so there is no separate terminal checklist to reconcile afterward.

  • Press ? to open the shortcut menu when you need a reminder.
  • Use s to star a next action, then 0 to open the cross-project MINS view.
  • Use / to fold a branch when you want to reduce the visible detail.
  • Press Space to complete a task; Ctrl+Z can undo an action.
  • Press q to quit the interactive client.

The terminal receives the keys your terminal application passes through. Some combinations have their own shell or terminal behavior. If branch movement is intercepted, consult ? for alternatives rather than assuming the app received the shortcut. Begin with simple navigation and editing, then expand the routine once it fits your terminal setup.

Understand how changes reach the browser

The client sends edits to the account's state API shortly after a change and checks for remote changes while idle. If the server has a newer revision, the client replays its pending edits against that newer copy before trying to save again. This supports moving between the browser and terminal without manually exporting a task list. It still needs a working connection for account synchronization; do not treat an interrupted connection as confirmation that an edit has reached another device.

Keep the client current

branchfirst update

The installed app checks for a newer release in the background at most once a day and shows an update notice when one is available. It does not update itself automatically. Run the update command when you are ready, or run the installation command again. Set BRANCHFIRST_NO_UPDATE_CHECK=1 if you want to disable the background check. Your first goal can stay small: open one real project, finish one next step, and confirm the result in your browser.

A clearer plan starts with one useful next step.

FROM READING TO DOING

Give your next step a home.

Build your task tree and keep the whole project in view.

try BranchFirst
← all articles