Releases: Basekick-Labs/arcli
Release list
v26.09.3
arcli 26.09.3 makes the token optional for Arc servers that run without authentication.
Changed
- A connection no longer needs a token.
arcli config create --name lab --endpoint http://lab:8000(no--token),--endpoint URLalone, andARC_ENDPOINTalone are all accepted; arcli then sends noAuthorizationheader, which is what an Arc withauth.enabled = falseexpects.config createandconfig update --token ""print a note that such a profile only works against a server without authentication, andconfig list/config currentshow the token as(none). - A token without an endpoint (
--tokenalone,ARC_TOKENalone) is still an error: it names no server. arcli pingagainst a server that does require a token, from a connection that has none, now says so (server requires a token but this connection has none) instead of quoting a bare 401.
Changelog
Install
| Homebrew | brew install basekick-labs/tap/arcli |
| Debian / Ubuntu | sudo dpkg -i arcli_26.09.3_amd64.deb (or _arm64.deb) |
| RHEL / Fedora | sudo rpm -i arcli-26.09.3-1.x86_64.rpm (or .aarch64.rpm) |
| Arch | sudo pacman -U arcli-26.09.3-1-x86_64.pkg.tar.zst (or -aarch64) |
| Docker | docker run --rm ghcr.io/basekick-labs/arcli:26.09.3 --version |
| Go | go install github.com/basekick-labs/arcli/cmd/arcli@latest (builds main; Go does not accept CalVer tags for this module path) |
Every archive carries a SPDX SBOM (*.sbom.json); checksums.txt covers all archives, packages and SBOMs and is signed keylessly with cosign:
cosign verify-blob --bundle checksums.txt.sigstore.json \
--certificate-identity-regexp '^https://github.com/Basekick-Labs/arcli/\.github/workflows/release\.yml@refs/tags/v' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com checksums.txt
v26.09.2
arcli 26.09.2 is a small correctness release.
Fixed
arcli db dropandarcli config deletenow behave like every other destructive command: a declined confirmation ends withError: aborted, and a stdin that is not a terminal is refused withError: confirmation required but stdin is not a terminal; pass --yes; both exit 1 and nothing is deleted. Previously they printedAborted.and exited 0, so a script could not tell a refused drop from a successful one. Pass--yesto skip the prompt, as before. (arcli#23)
Changelog
- 440913c: fix(db,config): declined or non-terminal prompt on db drop / config delete exits 1 (#23) (@xe-nvdk)
Install
| Homebrew | brew install basekick-labs/tap/arcli |
| Debian / Ubuntu | sudo dpkg -i arcli_26.09.2_amd64.deb (or _arm64.deb) |
| RHEL / Fedora | sudo rpm -i arcli-26.09.2-1.x86_64.rpm (or .aarch64.rpm) |
| Arch | sudo pacman -U arcli-26.09.2-1-x86_64.pkg.tar.zst (or -aarch64) |
| Docker | docker run --rm ghcr.io/basekick-labs/arcli:26.09.2 --version |
| Go | go install github.com/basekick-labs/arcli/cmd/arcli@latest (builds main; Go does not accept CalVer tags for this module path) |
Every archive carries a SPDX SBOM (*.sbom.json); checksums.txt covers all archives, packages and SBOMs and is signed keylessly with cosign:
cosign verify-blob --bundle checksums.txt.sigstore.json \
--certificate-identity-regexp '^https://github.com/Basekick-Labs/arcli/\.github/workflows/release\.yml@refs/tags/v' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com checksums.txt
v26.09.1
arcli 26.09.1 is the first release of the Arc command-line client: one binary that replaces the curl calls operators used to hand-craft against Arc's HTTP API.
Versioning follows Arc's CalVer (YY.0M.PATCH, tagged v26.09.1; the deb / rpm / Arch packagers normalise their version field to 26.9.1). arcli 26.x talks to Arc 26.06 and later. Go's module rules do not accept a CalVer tag for this module path, so go install …@latest builds main; the packages, Homebrew and Docker are the release channels.
What's in the box
- Connections: named profiles in
~/.arcli/config.toml(mode 0600), one active, overridable per command with-c,--endpoint/--token, orARC_*env vars.--token-stdinkeeps tokens out of shell history. - Query and write:
arcli query(table / json / csv / arrow,--estimate),arcli write(line protocol, MessagePack pass-through, validated JSON → MessagePack),arcli import csv|lp|parquet|tle. - Admin: databases, measurements, API tokens (
auth token create|rotate|revoke|…,auth whoami), retention policies, continuous queries, scheduler, predicatedelete,backup create|restore|…,cluster,compaction,logs,ping. - Operator ergonomics: shell completion that knows your connection names, man pages,
y/Nprompts with--yeson destructive commands, ctrl-C cancels the request and exits 130 (SIGTERM: 143) with a reminder that the server keeps going, tokens are redacted everywhere except the two commands whose job is to print a new one. - arcli never contacts Basekick or any third party. Every request goes to the Arc server you configured. Requests carry the arcli version and OS/architecture and, once a config file exists, a random installation id (
Arcli-Installation-Id, minted by the firstconfig create). Arc's own opt-out telemetry may report that id with its instance id, so Basekick can count how many CLI installations talk to how many Arc servers; the same id is sent to every server you use, so it links them. Opt out withDO_NOT_TRACK=1orsend_installation_id = false. Nothing else is stored or sent.
Install
See the table at the bottom of these notes. Packages and the Homebrew formula install completions and man pages for you.
Re-cut
v26.09.1 was re-cut on 2026-09-07 UTC, before anyone had installed it, to add the installation id described above. The tag moved and every asset, image and the Homebrew formula were replaced; two checksums.txt files therefore carry valid signatures for this tag, and the one on this page is the current one.
What's Changed
- feat(query,write): HTTP wire adapter + query/write commands + 4 output formats (PR2) by @xe-nvdk in #1
- feat(db,measurement): db admin + measurement listing (PR3) by @xe-nvdk in #2
- feat(import): bulk file imports for csv / lp / parquet / tle (PR4) by @xe-nvdk in #3
- chore: rename arcctl to arcli by @xe-nvdk in #4
- feat(auth): token admin, whoami, ping, config update (PR5) by @xe-nvdk in #5
- feat(cluster,compaction): cluster inspection + node removal, compaction observe/trigger (PR6) by @xe-nvdk in #6
- feat(retention,cq): retention policies, continuous queries, scheduler status (PR7) by @xe-nvdk in #7
- feat(delete,backup): predicate delete, full backup and restore (PR8) by @xe-nvdk in #8
- feat(write,query,logs): msgpack/json writes, query --estimate, logs, import stats, signal-aware root (PR9) by @xe-nvdk in #9
- feat(release): shell completion, build metadata in --version, gendocs, distroless image (PR10a) by @xe-nvdk in #10
- feat(release): GoReleaser pipeline with deb/rpm/Arch packages, Homebrew tap, GHCR image, cosign (PR10b) by @xe-nvdk in #11
- chore(ci): bump actions/checkout from 5 to 7 by @dependabot[bot] in #14
- chore(ci): bump docker/setup-buildx-action from 3.12.0 to 4.3.0 by @dependabot[bot] in #13
- chore(ci): bump docker/login-action from 3.7.0 to 4.6.0 by @dependabot[bot] in #15
- chore(ci): bump anchore/sbom-action/download-syft from 0.24.0 to 0.24.2 by @dependabot[bot] in #16
- chore(ci): bump sigstore/cosign-installer from 3.9.1 to 4.1.2 by @dependabot[bot] in #12
- fix(release): token probe must not fail on a PAT without an expiration header by @xe-nvdk in #17
- fix(release): brew token via .Env; version wording by @xe-nvdk in #18
- feat(config): installation id header for Arc-side telemetry correlation by @xe-nvdk in #19
Install
| Homebrew | brew install basekick-labs/tap/arcli |
| Debian / Ubuntu | sudo dpkg -i arcli_26.09.1_amd64.deb (or _arm64.deb) |
| RHEL / Fedora | sudo rpm -i arcli-26.09.1-1.x86_64.rpm (or .aarch64.rpm) |
| Arch | sudo pacman -U arcli-26.09.1-1-x86_64.pkg.tar.zst (or -aarch64) |
| Docker | docker run --rm ghcr.io/basekick-labs/arcli:26.09.1 --version |
| Go | go install github.com/basekick-labs/arcli/cmd/arcli@latest (builds main; Go does not accept CalVer tags for this module path) |
Every archive carries a SPDX SBOM (*.sbom.json); checksums.txt covers all archives, packages and SBOMs and is signed keylessly with cosign:
cosign verify-blob --bundle checksums.txt.sigstore.json \
--certificate-identity-regexp '^https://github.com/Basekick-Labs/arcli/\.github/workflows/release\.yml@refs/tags/v' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com checksums.txt
New Contributors
- @xe-nvdk made their first contribution in #1
- @dependabot[bot] made their first contribution in #14
Full Changelog: https://github.com/Basekick-Labs/arcli/commits/v26.09.1