A Rust-native command-line interface that surfaces the Plausible Analytics APIs with a workflow tailored for humans and automation agents.
📝 Primary documentation lives in
docs/llms-full.txt. It is authored in GitHub Flavored Markdown for LLMs and humans alike, and covers setup, command schemas, prompt snippets, and safety guidance.
- A Plausible Analytics API key with access to the desired sites.
- Rust 1.90+ only if building from source.
brew tap vicentereig/tap
brew install plausiblecargo install plausible-cli --git https://github.com/vicentereig/plausible-cli.git --lockedDownload pre-compiled binaries for macOS (arm64/amd64) and Linux (arm64/amd64) from GitHub Releases.
Add your Plausible API key and friendly metadata with the accounts command:
plausible accounts add \
--alias personal \
--api-key PLAUSIBLE_API_KEY_HERE \
--label "Personal Dashboard" \
--email [email protected]
# Optionally set a different default account later
plausible accounts use --alias personalAccounts are stored under ~/.config/plausible-cli/ with secrets held in a
per-account key file when the OS keyring is unavailable. On macOS/Linux the CLI
attempts to store credentials in the system keychain by default; you can opt out
via PLAUSIBLE_CLI_DISABLE_KEYRING=1 for ephemeral or CI environments.
List every site visible to the current account:
plausible sites listFetch aggregate visitors and pageviews for the last 7 days, returning JSON:
plausible stats aggregate \
--site example.com \
--metric visitors \
--metric pageviews \
--period 7d \
--output jsonRequest a daily timeseries of visitors for the same site:
plausible stats timeseries \
--site example.com \
--metric visitors \
--period 7d \
--output jsonSlice traffic by referrer with sorting and pagination:
plausible stats breakdown \
--site example.com \
--property visit:source \
--metric visitors \
--sort visitors:desc \
--output jsonCheck realtime visitors currently online:
plausible stats realtime --site example.com --output jsonInspect the remaining API budget and next reset windows:
plausible status
plausible status --output jsonGenerate a sample custom event payload:
plausible events template
plausible events template --output jsonInspect the background queue (helpful when scripting bursts of API calls):
plausible queue inspect --output json
plausible queue drain # block until all jobs finishplausible accounts list– show all configured aliases (with default marker).plausible accounts export– print non-secret metadata (table) or--jsonfor machine consumption.plausible accounts budget --alias <alias> [--daily <limit>|--clear]– set or clear a per-account daily request ceiling (defaults to hourly quota).- Use
--account <alias>on any command to override the default.
Every command accepts --output json so that automation agents can parse a
stable structure. See docs/llms-full.txt for tips on driving the CLI from an
LLM.
docs/architeture.md– architecture overview and diagrams.docs/000-v1-plan.md– roadmap, milestones, and testing strategy.docs/llms-full.txt– LLM-oriented reference and prompt snippets.
Pre-compiled binaries are available for macOS (arm64/amd64) and Linux (arm64/amd64). See Installation for all options. The Homebrew formula at vicentereig/homebrew-tap is updated automatically on each release.
Run the suite (includes unit, async integration, and HTTP mocks):
cargo fmt
cargo clippy --all-targets --all-features -- -D warnings
cargo testIssues and PRs are welcome. Please run the commands in the Testing section before submitting changes. For new features, add coverage via unit/async tests and update the documentation when behavior changes.