Skip to main content

Installing a release binary

Download the archive for your system from the Releases page (under Assets, on the latest release). Not sure which file you need? See the FAQ. Each archive contains two binaries directly: obsidianlog (the CLI) and obsidianlog-ingest (the standalone ingest server). There’s no installer and no dependencies to install separately. Whether extracting it lands those two files in their own folder depends on how you extract it. Double-clicking the archive (or Extract All on Windows) creates a new folder named after it automatically. Extracting from a raw tar command doesn’t, it dumps the files into whatever directory you’re already in. The commands below account for both, so you end up in a tidy folder either way.
Double-click the downloaded .tar.gz file in Finder. It extracts into a new folder named after the archive. Open that folder, open a terminal there, and run:
Prefer to do the extraction from a terminal too?
The exact filename depends on which release and target you downloaded, matching what you got from the Releases page. The chmod step on macOS/Linux is needed because the executable bit isn’t always preserved inside the archive.
obsidianlog is a command-line tool, not a GUI app. The commands above need an actual terminal (Terminal on macOS, PowerShell or Windows Terminal on Windows, your terminal app on Linux). Double-clicking the binary itself does not start setup: it has no command to run, so it prints the help screen and exits. Open a terminal, change into the extracted folder, then run ./obsidianlog init (or .\obsidianlog.exe init on Windows).
On macOS, the quickest way to open the right folder in Terminal is to open Terminal, type cd (including the space), then drag the extracted folder from Finder into the Terminal window and press Enter. Then run:
obsidianlog (the CLI) ships with the sia Cargo feature built in. The Sia backend works out of the box, no source build needed. obsidianlog init still defaults to the local backend regardless. Sia only gets used if you choose it. obsidianlog-ingest (the standalone, minimal ingest-only binary) stays local-only by design. The first time you run it, your OS may flag it as unsigned, since these binaries aren’t code-signed today:
Gatekeeper blocks it. Right-click obsidianlog in Finder and choose Open once, or run xattr -d com.apple.quarantine obsidianlog in a terminal.

The init → serve → query → verify loop

The CLI wraps setup, ingestion, retrieval, and integrity checking: The commands below assume you are still in the folder you extracted and use ./obsidianlog on macOS/Linux. On Windows, use ./obsidianlog as .\obsidianlog.exe instead. Leave serve running, then open a second terminal in that same folder for the curl, query, and verify commands.
See the full CLI reference for every command’s flags.
On macOS, init will prompt at most once for your login-keychain password. This is the OS asking permission for obsidianlog to store the credentials it just generated, not an ObsidianLog password. Click Always Allow rather than just Allow, so later serve/query/verify runs read them without prompting again.
Re-running obsidianlog init is idempotent: it detects an existing config/key and reuses them. Pass --force to rotate the key (this makes previously archived data undecryptable with the new key, so it asks for confirmation unless you’re also non-interactive).

What’s next