Skip to content

Installation CLI

Refact edited this page Jun 14, 2026 · 2 revisions

Installation — Standalone CLI & Daemon

Install the refact binary directly. No IDE and no Node.js required.

Refact is a single native binary that runs a resident daemon, an interactive TUI, an in-browser GUI, a per-project worker supervisor, and CLI controls. IDE plugins are optional clients of the same daemon — not the only way to run Refact.

Install

Unix / macOS:

curl -fsSL https://raw.githubusercontent.com/JegernOUTT/refact/main/install.sh | sh

Windows (PowerShell):

irm https://raw.githubusercontent.com/JegernOUTT/refact/main/install.ps1 | iex

The installer detects your OS/architecture, downloads the matching binary from GitHub Releases, verifies its checksum, installs it to ~/.refact/bin/refact, and adds that directory to your PATH (bash, zsh, and fish; user PATH on Windows).

Installer flags:

  • --version <v> — install a specific release instead of the latest.
  • --binary <path> — install from a local binary instead of downloading.
  • --no-modify-path — do not edit shell rc files (you manage PATH yourself).

Manual binaries for every supported platform are available on the GitHub Releases page (refact-<version>-<target>.tar.gz / .zip, each with a .sha256).

First run

refact

This launches the interactive TUI and starts (or reuses) the local daemon. Configure at least one model source with BYOK — a hosted provider key/OAuth, a local runtime (Ollama, LM Studio, vLLM), or a custom OpenAI-compatible endpoint — then pick default models.

The daemon model

One daemon supervises a warm worker per project, so opening a session is instant. Every surface — the TUI, the in-browser GUI, and the VS Code / JetBrains plugins — is a thin client that attaches to the same daemon over /daemon/v1/* (control) and /p/{project_id}/v1/* (per-project sessions).

Common commands:

refact                       # interactive TUI (starts/reuses the daemon)
refact projects open .       # register the current workspace as a project
refact status                # daemon + worker + project status
refact ps                    # list running workers
refact logs --daemon         # tail daemon logs
refact events                # stream daemon events
refact doctor                # diagnose the install/daemon
refact daemon --foreground   # run the daemon in the foreground (debug/supervise)

Updating

refact self-update           # check GitHub Releases and update in place
refact self-update --check   # report current vs latest without updating

self-update downloads the matching release, verifies its checksum, and atomically replaces the running binary.

Uninstall

Remove ~/.refact/bin from your PATH (revert the installer's shell-rc edit) and delete ~/.refact/bin/refact. Per-project state lives under each project's .refact/.

Next steps

Clone this wiki locally