Skip to main content

Agent-first CLI for botu — embeddable AI agent for any website

Project description

botu (Python CLI)

Agent-first CLI for botu — the embeddable AI agent for any website.

Register a site, get an embed key, verify your domain, and inject the <script> snippet — all from the command line, no web console needed.

Install

pip install botu-cli
# or, run once without installing:
uvx botu --help
pipx run botu --help

Quickstart

botu login                                          # OAuth device-flow, opens browser
botu sites create --name acme --domain acme.com     # create a site + first embed key
botu embed --site <site-id> --new-key --write index.html   # inject the <script>
botu sites verify <site-id> --domain acme.com       # start domain verification
botu sites verify <site-id> --domain acme.com --check   # confirm it
botu test --site <site-id>                          # check the embed key works

All commands accept --json (or env BOTU_JSON=1) for machine-parseable output that's friendly to agents and CI.

Commands

Command Purpose
botu login / logout / whoami OAuth device-flow session
botu sites create|list|get|delete Manage sites
botu sites verify <id> --domain <d> [--check] Domain ownership (DNS TXT)
botu keys create|list|revoke --site <id> Manage embed API keys
botu embed --site <id> Print / write the <script> embed snippet
botu usage [--site <id>] Per-site quota and usage
botu test --site <id> Verify an embed key via the loader auth exchange

About embed keys

The plaintext of an API key is shown once — at creation. botu embed therefore can't retrieve the key of an existing site. Either pass --key pk_live_..., or use --new-key to mint a fresh one and drop it straight into the snippet.

Configuration

Env var Default Purpose
BOTU_API_URL https://botu.io Target deployment (set to https://qa.botu.io for QA)
BOTU_JSON 1 forces JSON output globally

Credentials are stored in ~/.paradigx/auth.json, shared with other Paradigx product CLIs (e.g. tokenroute) — they authenticate against the same Logto, so logging in once is reused across them.

Exit codes

0 ok · 1 user error (4xx) · 2 network error · 3 server error (5xx)


© 2026 Paradigx. All Rights Reserved.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

botu_cli-0.1.0.tar.gz (15.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

botu_cli-0.1.0-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

Details for the file botu_cli-0.1.0.tar.gz.

File metadata

  • Download URL: botu_cli-0.1.0.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for botu_cli-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4b38e054866c38d0649a954b04a1e79a64a667f5e6b243c6da54f3a10af586f6
MD5 f030495633a8ecefda24f91c342c2be5
BLAKE2b-256 90e8d32e016bdc5c19a0a9931228874934a739fa5a0771bf25dcbe8037772ebb

See more details on using hashes here.

File details

Details for the file botu_cli-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: botu_cli-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for botu_cli-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 014e890dd50fcafc35766737d127aa4287bd571454208b0b03edb2bcdaefdbc5
MD5 45f96da6b7f2a3c35c51e5ed923c0535
BLAKE2b-256 c6babd23d8f255eaa8e50f03d437b206126a7c9c54911335957a413e7d7d92ac

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page