CLI
ANALYTICS.
Built for CLI Builders.
Understand package adoption and how your CLI is actually used.
Local-first Open source Self-hostable
See your product from ecosystem to runtime.
Analytics are measurable traces your product leaves behind: in a registry or on a machine. Secchi collects the two families and reads them together.
■ Ecosystem
Packages · Registries · GitHub · Dependencies
adoption · health · releases · security
■ CLI runtime
CLI
usage · versions · failures · performance
Illustrative
■ Package analytics
Understand your ecosystem.
Registry metadata, downloads, releases, dependencies, security and GitHub activity in one view. Across PyPI, npm, crates.io, Homebrew, Go, and CRAN. In the terminal, in reports, or over MCP for coding agents.
- PyPI
- npm
- crates.io
- Homebrew
- Go
- CRAN
uvx --from secchi secchi dashboard duckdbuv tool install secchipip install secchi- Health score 0–100, graded A–F
- Adoption trend across 30d / 90d / 1y
- Security advisories surfaced automatically
■ CLI usage analytics
Understand how your product is actually used.
Instrument your CLI to understand feature usage, versions, failures and performance without collecting command values or application data.
It only ever records command and flag names, never the values you typed, never error messages. Anything that looks like a secret, an API key, a token, an email, is redacted before it's ever written to disk.
cargo install secchi-cli-analyticslet analytics = Analytics::builder("myctl") .cli_version(env!("CARGO_PKG_VERSION")) .allow_values(["format"]) .start(); let matches = cli::build().get_matches(); let outcome = run(&matches); analytics.record_exit(&matches, exit_code, error_class);import click from secchi_analytics.click import instrument @click.group() def cli(): ... instrument(cli, app_name="myctl")
- Local-first: useful with zero network, zero account
- Redaction runs even on values you explicitly allow through
- Off with one switch:
SECCHI_ANALYTICS=0 - Delete everything:
secchi analytics purge
A local TUI dashboard for this data ships next.
From analytics to answers.
The same analytics, wherever the decision happens: in your terminal, in a report, on a pull request, inside a coding agent, or as JSON for everything else.
$ uvx --from secchi secchi dashboard duckdb
The local TUI. Health, adoption, versions, and security in one screen. Click to enlarge.
$ secchi report duckdb --format md # duckdb Registry: pypi ## Overview | Analytics | Value | | -------------------- | ------------------------------ | | Health score | 89 / 100 (B) | | Latest version | 1.5.5 | | Downloads (30d) | 54,469,976 | | Adoption change | +8.3% vs previous 30 days | | GitHub stars | 174 | ## Health breakdown | Category | Score | | -------------- | ------- | | Maintenance | 20 / 20 | | Community | 8 / 15 | | Documentation | 11 / 15 | | Releases | 15 / 15 | | Security | 20 / 20 | | Testing | 15 / 15 |
Markdown, HTML, or JSON. Drop it in a PR, a wiki, or a stakeholder deck.
# .github/workflows/secchi.yml on: [pull_request] jobs: secchi: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - uses: kannandreams/secchi-action@v1 with: package: pypi:duckdb
Writes the report to the job summary and keeps one PR comment updated across re-runs.
// claude_desktop_config.json, .cursor/mcp.json, ... { "mcpServers": { "secchi": { "command": "secchi-mcp" } } } // tools inspect_package health, adoption, releases, dependencies, repo analytics search_packages ranked matches across supported ecosystems inspect_project a configured project, sources combined check_package health and repository CI policies compare_packages rank choices with evidence and confidence
A read-only MCP server for coding agents. Same analytics, inside the loop.
$ secchi report duckdb --format json --output - { "schema": "secchi.package-intelligence", "schema_version": 1, "package": "duckdb", "registry": "pypi", "package_info": { "latest_version": "1.5.5", "download_counts": { "today": 1394942, "week": 13604705, "month": 54469976 }, "github_stats": { "stars": 174, "forks": 102, "open_issues": 53 } } }
Schema-versioned export for automation and agent workflows.
Analytics coverage
CLI analytics, from ecosystem to execution.
■ Ecosystem analytics
- Package adoption
- Downloads
- Dependencies
- Releases
- GitHub activity
- Security
■ CLI usage analytics
- CLI usage
- Version adoption
- Errors
- Performance
- Human vs. agent
Built in the open, from the first commit.
Run Secchi locally, explore the source, or help shape what comes next.