Install the Lore CLI
June 12, 2026 · View on GitHub
lore is the CLI for the Lore version control system. It handles the full workflow — from branching, merging, and shipping your work to more advanced tasks like sparse clones and offline commits — all from a single binary.
In this guide, you'll install lore, add it to your PATH, and set up shell completions so that you can effectively drive Lore, at full speed, directly from your terminal.
Prerequisites
- If building from source:
- A Rust toolchain
- The Lore repository cloned locally
Choose an install path
The two paths are mutually exclusive, and each one below is complete on its own — follow one top to bottom, and don't jump between them.
- Install the prebuilt binary: Pick this for a normal install from a published release. You don't need a Rust toolchain or a local checkout.
- Build from source and install: Pick this to run a CLI built from your own checkout, using a Rust toolchain.
Install the prebuilt binary
Pick this path for a normal install from a published release.
-
Run the installer.
macOS / Linux
curl -fsSL https://raw.githubusercontent.com/EpicGames/lore/main/scripts/install.sh | bashWindows
irm https://raw.githubusercontent.com/EpicGames/lore/main/scripts/install.ps1 | iexThe installer downloads the binary for your platform and adds it to your PATH. Open a new terminal session for the PATH change to take effect.
Build from source and install
Pick this path to run a CLI built from your own checkout.
-
Build the binary.
From the Lore repository root:
cargo build --release -p lore-client --bin loreThe compiled binary lands at
target/release/lore(target\release\lore.exeon Windows). The first build compiles from source and may take several minutes. -
Put
loreon your PATH.Move the compiled binary into a directory on your PATH so you can run
lorefrom any directory.macOS / Linux
Using
/usr/local/bin(no PATH changes needed):sudo cp target/release/lore /usr/local/bin/loreUsing
~/bininstead (nosudorequired):mkdir -p ~/bin cp target/release/lore ~/bin/loreIf you used
~/bin, add it to your PATH. For zsh (the default on macOS):echo 'export PATH="$HOME/bin:$PATH"' >> ~/.zshrc source ~/.zshrcFor bash:
echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc source ~/.bashrcWindows (PowerShell)
Copy the executable into a directory you control, for example
%USERPROFILE%\bin:New-Item -ItemType Directory -Force "$env:USERPROFILE\bin" Copy-Item target\release\lore.exe "$env:USERPROFILE\bin\lore.exe"Add that directory to your PATH:
[Environment]::SetEnvironmentVariable( "Path", [Environment]::GetEnvironmentVariable("Path", "User") + ";$env:USERPROFILE\bin", "User" )Open a new terminal afterward. An existing terminal won't reflect the PATH change.
Install shell completions (optional)
The lore completions command generates and installs shell completions for lore. Once installed, pressing Tab completes commands or lists possible matches when the input is ambiguous. To run it, pass the shell name and an optional output directory; omit the directory to print the script to standard output instead. Lore also supports fish and elvish through the same command.
zsh
lore completions zsh ~/.zsh/completions
Make sure the target directory is on your fpath, then restart your shell.
bash
lore completions bash > ~/.local/share/bash-completion/completions/lore
Restart your shell to load the completions.
PowerShell
lore completions powershell | Out-String | Invoke-Expression
To make completions persistent, add that line to your PowerShell profile.
Result
lore --version
Running this from any directory prints a lore <version> line. A source build derives its version from the repository checkout, so the exact string depends on the source tree you built from.
See also
- Quickstart — clone a repository, stage and commit changes, and push your first revision.
- Lore CLI command reference — every
lorecommand, subcommand, and flag. - Deploy a local Lore Server — stand up a persistent server to push to and clone from.
- Lore CLI config reference — every CLI config option and its default.