fibers.dev
Join the waitlist

Install the plugin

The plugin-only path, for Linux, for cloud-only people, and for anyone who declines the desktop app.

The plugin installs the hooks that register a session on the board, deterministically and for zero agent tokens. There are two ways to start: on one machine with no account, or signed in to the shared board.

Try it without an account

Four commands, all inside Claude Code. The ! runs a shell command from the Claude Code prompt, where the plugin has already put fibers on the path.

/plugin marketplace add https://fibers.dev/fibers-marketplace.json   # in Claude Code
/plugin install fibers@fibers
! fibers mode local   # still in Claude Code: no account, nothing leaves this machine
! fibers ls   # the board, from any session

Start or resume a Claude Code session and it appears in fibers ls with its machine and worktree, grouped into needs you, active, blocked and idle. Every session on this machine shows there, whichever repo it is in. Nothing is sent anywhere: local mode keeps the board in a log under ~/.fibers/presence/.

The work lane, messages and the web board need an account. To move to one later, run fibers mode hosted and follow the steps below.

With an account

Three commands, all in a terminal.

curl -fsSL https://fibers.dev/install.sh | sh   # in a terminal: the CLI, and the Claude Code plugin
fibers login   # in the same terminal: sign in, once per machine
fibers init --workspace <slug>   # in each repo: bind it to your workspace

What each one does

  1. Run the installer. It puts the fibers CLI at ~/.local/bin/fibers, so fibers works in any terminal, and when claude is on your PATH it adds the marketplace (a plain JSON file at https://fibers.dev/fibers-marketplace.json) and installs the plugin at user scope. Read the script before you pipe it to a shell. If it says ~/.local/bin is not on your PATH, add it, or run the full path it prints. Re-running it updates the CLI.
  2. Sign in. fibers login opens a page in your browser, waits for you to approve it, and writes a credential for this machine. Once per machine. It needs a terminal, which is why the installer comes first: inside Claude Code the plugin puts fibers on the path for its own sessions only.
  3. Bind a repo. fibers init --workspace <slug> writes .fibers.json in the checkout so sessions started there land on that workspace’s board. Once per repo.

Prefer to add the plugin from Claude Code yourself? /plugin marketplace add with the URL above, then /plugin install fibers@fibers. That route puts fibers on the path inside Claude Code sessions only, and once the plugin is there the installer leaves the machine alone, so run the installer first if you want fibers login in a terminal.

Then

Start a Claude Code session in the bound repo. Within a minute it appears on the board with the machine name and worktree. fibers ls shows the same board in the terminal.

Updating is one command: /plugin install fibers@fibers again. The plugin does not update itself; the changelog says what changed.

Working in Claude Code on the web? See cloud sessions.

OpenAI Codex CLI

Codex sessions can land on the same board. Codex 0.155 or later runs fibers from its own hooks file, so there is nothing to install inside Codex. Install the plugin in Claude Code first, as above, and run fibers login once on the machine: the Codex hooks run the plugin’s own copy of fibers.

  1. Add the hooks. fibers init --codex adds the fibers entries to ~/.codex/hooks.json. It shows you the change and asks before writing, keeps a backup of the old file, and leaves any hooks you already have alone. Running it again changes nothing. It also writes a small script, ~/.fibers/bin/fibers-codex-hook, which the hooks call. That script finds the newest installed copy of the plugin each time it runs, so a plugin update needs no second init. If ~/.codex does not exist yet, run Codex once first.
  2. Trust them in Codex. Codex skips a hook until you have trusted it. Open Codex, run /hooks, and trust the fibers entries. You do this once, and again only if the hooks change; fibers init --codex says so when it changes them.

fibers doctor tells you whether the hooks are installed, current and trusted, and whether the script they call is there with a plugin to run. If ~/.codex/config.toml turns hooks off with [features] hooks = false (or the same switch in a profile), remove that line.

A Codex session shows its starts, turns, compactions and sub-agents, and it moves to “needs you” while a permission prompt is open. Messages sent to a Codex session are not shown inside it yet; that comes once Codex has been checked to pass hook output to the model.