
Arc has had a browser experience for a while. Launchpad covers SQL, logs, tokens, retention, and alerts. Today, Arc gets its command line.
arcli is an open source CLI for querying, writing to, and operating Arc from a terminal. It replaces hand-built HTTP requests with commands designed for daily use, whether you are exploring data locally or automating a production workflow.
Install it with Homebrew:
brew install basekick-labs/tap/arcliPackages for Debian, RPM-based distributions, and Arch Linux are available alongside binaries for Linux, macOS, and Windows. There is also a multi-architecture image on GHCR. See the arcli documentation for every installation option.
From endpoint to query
Before arcli, working with Arc from a shell meant assembling curl commands: bearer tokens, database headers, JSON request bodies, and response parsing. The API remains available, but routine work should not require rebuilding its wire format every time.
With arcli, save a connection once and use it across commands:
arcli config create \
--name local \
--endpoint http://localhost:8000 \
--token YOUR-TOKEN
arcli ping
arcli query --database metrics \
"SELECT host, avg(usage) AS usage FROM cpu GROUP BY 1 ORDER BY 2 DESC"Query results print as a table by default. Add -o json for jq, -o csv for an export, or -o arrow to stream Arrow IPC into pandas, Polars, or DuckDB.
Named profiles make it easy to move between environments without juggling shell variables:
pass show arc/prod | arcli config create \
--name prod \
--endpoint https://arc.example.net \
--token-stdin
arcli query -c prod "SELECT count(*) FROM cpu"
arcli config set-active prodIn CI, ARC_ENDPOINT and ARC_TOKEN work without a config file. Tokens are optional for Arc servers running with authentication disabled.
Start with a million real rows
Writing one synthetic point confirms that a database is reachable. A real dataset shows what it can do.
arcli sample load citibikeThat command loads a month of New York City Citi Bike trips: 1,003,770 rows across 31 Parquet files, about 39 MiB in total. arcli creates the target database when needed, downloads and verifies the files, imports them, and prints two queries to explore what landed.
Verified 31 files against the published checksums.
Imported 31 files, 1003770 rows into nyc.citibike_tripsOne query finds the busiest stations. The other runs a window function across the month to show hourly departures and a moving average—the shape of New York's commute appears immediately.
Downloads resume when verified files are already present, and arcli checks before adding data to a measurement that already contains rows. You can also inspect the catalog or download without importing:
arcli sample list
arcli sample show citibike
arcli sample load citibike --download-only --download-dir ./dataOne interface for Arc operations
arcli covers the workflows around the data path, not only queries:
- Write line protocol, validated JSON, or MessagePack.
- Import CSV, line protocol, Parquet, and TLE files.
- Create and inspect databases and measurements.
- Create, rotate, revoke, and delete API tokens.
- Manage retention policies and continuous queries.
- Preview and run predicate deletes.
- Create, inspect, restore, and delete backups.
- Inspect clusters, compaction, schedulers, and server logs.
Each area is a discoverable command tree with its own help:
arcli --help
arcli backup --help
arcli compaction trigger --helpMade for operators and scripts
arcli keeps structured results on stdout and progress, warnings, and prompts on stderr. That makes commands readable in a terminal and predictable in a pipeline.
Destructive operations ask for confirmation and require --yes when unattended. Token creation and rotation print the new secret alone on stdout so it can be captured cleanly. Interrupting a request returns the conventional exit code while making clear that work already accepted by the server may continue there.
Shell completion is available for bash, zsh, fish, and PowerShell. It understands connection names and valid flag values without contacting a server. Packages and the Homebrew formula also install man pages.
Available now
arcli 26.09.4 supports Arc 26.06 and newer. Releases include signed checksums and SPDX SBOMs.
Arc is an open source, SQL-native time-series database: one Go binary, with Parquet storage on infrastructure you own. Get started with Arc.