A terminal UI for Ceph.

Stop memorizing long ceph commands. Browse your cluster, inspect resources, and run everyday operations through a fast, keyboard-driven interface — with every action showing the exact command it runs.

  • LicenseApache 2.0
  • Built withGo 1.26+
  • PlatformLinux
  • CephReef · Squid · Tentacle
spolat@ceph-admin: ~ — argonaut
Animated recording of Argonaut: navigating the dashboard, OSDs, and pools inside a terminal.

Why it exists

Ceph's CLI is powerful. The workflow around it isn't.

Everyday operations mean long command sequences, exact flags to remember, and several terminal windows at once. Argonaut keeps the CLI's transparency while removing the friction — it never hides what it does.

The usual way
# Which OSDs are near full, and by how much?
$ ceph osd df tree
$ ceph osd df tree | awk '$17 > 80'
# Now reweight osd.42 — what was the flag again?
$ ceph osd reweight 42 0.9
# Re-check, in another window...
$ watch -n2 ceph -s
With Argonaut
2  jump to the OSDs view — sorted, colour-coded
/  filter live: near-full
w  reweight the selected OSD
   → preview: ceph osd reweight 42 0.9
y  confirm — health & recovery update live

Why Argonaut

Built for the way operators actually work

Fast keyboard navigation

Number keys and a : command prompt jump between every resource. No mouse, no context switching, no re-typing.

Safe destructive actions

Destroy, purge, delete — every dangerous action is confirmed and previews the exact command first. Nothing happens by surprise.

Real-time visibility

Health, capacity, client IO and recovery refresh live on the dashboard — the whole cluster's state at a glance, without polling by hand.

Transparent execution

Argonaut is a front-end to the same commands you'd run by hand. Every action shows its ceph equivalent — learn as you go, audit as you operate.

Features

Everything you reach for, one keystroke away

Seven resource views and a consistent set of interactions across all of them.

Dashboard

Cluster health with full ceph health detail, capacity, client IO and recovery — refreshed live.

OSDs

Mark in/out, reweight, destroy, purge or remove. Inspect metadata and utilisation at a glance.

Pools

Create, edit and delete pools — size, min_size, PG count, autoscale mode and CRUSH rule.

CRUSH

Interactive hierarchy tree. Move buckets between nodes and read the rules that place your data.

Cluster flags

View and toggle flags with plain-language descriptions — the rationale for each, and the risk of changing it.

Services

cephadm services and daemons in one place — start, stop and restart, without leaving the terminal.

Placement groups

Cluster-wide PG listing with a live filter. Trigger scrub, deep-scrub or repair on the ones that need it.

Consistent UX

/ filters any table, : opens the command prompt, and y/n confirmations always preview the equivalent ceph command.

Terminal-first

Muscle memory, not man pages

Argonaut is driven entirely from the keyboard. Learn a handful of keys once; the same navigation and filtering work across every view, so operating a cluster becomes muscle memory rather than a lookup.

  • 17Switch between resource views
  • :Command prompt — jump straight to :osd, :pool
  • /Filter the current table, live as you type
  • EnterDetails for the selected resource
  • y nConfirm or cancel — always after a command preview
  • qQuit
argonaut — dashboard
⬡ Argonaut  1:Dashboard  2:OSDs  3:Pools  4:CRUSH  5:Flags  6:Services  7:PGs

╭─ Health ───────────────────────────────╮
 status   HEALTH_OK                      
 mons     3 in quorum  osds 36 up / 36 in 
╰────────────────────────────────────────╯
╭─ Capacity ─────────────────────────────╮
 used     142 TiB / 480 TiB   29.6%     
 client   rd 1.2 GiB/s   wr 340 MiB/s  
╰────────────────────────────────────────╯
/ filter   : command   enter details   q quit

Installation

Up and running in a couple of commands

Argonaut talks to a real cluster through librados (via go-ceph + cgo), so it runs on Linux. Prefer to look first? The mock client runs anywhere, no Ceph required.

Recommended. Install the Ceph client runtime libraries, then download and verify the release binary (linux/amd64).

# 1. Install the Ceph client runtime libraries
$ sudo apt-get install -y librados2 librbd1      # Debian/Ubuntu
$ sudo dnf install -y librados2 librbd1          # RHEL/Rocky/Alma/Fedora

# 2. Download, verify and install (replace with the latest release)
$ VERSION=v0.1.0
$ BASE="https://github.com/cinpol/argonaut/releases/download/$VERSION"
$ curl -LO "$BASE/argonaut_${VERSION#v}_linux_amd64.tar.gz"
$ curl -LO "$BASE/checksums.txt"
$ sha256sum --ignore-missing -c checksums.txt
$ tar xzf "argonaut_${VERSION#v}_linux_amd64.tar.gz"
$ sudo install -m 0755 argonaut /usr/local/bin/argonaut

# 3. Run it (auto-detects the native go-ceph client)
$ sudo argonaut
Platforms Linux amd64 (prebuilt, primary target). arm64 builds from source. macOS/Windows run the mock only.
Ceph releases Reef (18), Squid (19) and Tentacle (20) — the currently maintained releases.
Cluster access If ceph -s works from the host, Argonaut connects too — same ceph.conf and keyring.

Open source

Argonaut is built in the open

Licensed under Apache 2.0 and developed on GitHub. Bug reports, feature requests and pull requests are all welcome — Argonaut is under active development, and there's plenty still to build.

  • Small, focused pull requests, reviewed before merge
  • Develop entirely against the in-memory mock — no cluster needed
  • CI runs gofmt, vet, tests and a native compile-check on every PR
  • Conventional Commits, Apache-2.0 for every contribution