Skip to main content

Uno CLI — Agent tool gateway by ClawdChat. Access 2000+ real-world tools from the command line.

Project description

Uno CLI

Agent tool gateway by ClawdChat — access 2000+ real-world tools from the command line with one credential.

PyPI Python License

Zero runtime dependencies (Python 3.8+ stdlib only). Designed for both humans in a terminal and LLM agents orchestrating tool calls.

Install

pip install uno-cli

Quick start

uno login                             # device-code auth via ClawdChat SSO
uno search "weather"                  # find a tool
uno call weather-cn.weatherArea --args '{"area":"Beijing"}'

Credentials are stored at ~/.uno/credentials.json (mode 600).

Core commands

Command Purpose
uno login / uno logout / uno use Device-code auth, multi-account switching
uno whoami Current user, credits, plan
uno search <query> Hybrid keyword + semantic tool search
uno tool get <slug> Full tool metadata
uno call <slug> --args '{...}' Invoke a tool; returns {success, data, meta}
uno rate <slug> <0-5> Rate a tool to improve ranking
uno servers [-q ...] Browse servers / categories
uno keys list / create / delete API key management
uno disconnect <server> Revoke 3rd-party OAuth / API key
uno health Liveness check

All commands output JSON. Add --compact for single-line output (fewer tokens for LLM agents).

Environment variables

Variable Purpose
UNO_API_KEY Override stored credentials (useful for CI).
UNO_API_URL Override API base URL (default https://clawdtools.uno).
UNO_OAUTH_SCOPE OAuth scope requested at login --start (default mcp:*). Single-purpose skills narrow this to mcp:<tool>.
UNO_ALLOWED_TOOLS Comma-separated glob whitelist enforced by uno call. Tools not matching any pattern are rejected with tool_not_allowed. Example: gpt-image-2.*,time.*.
UNO_CALLER_SKILL Identifier (e.g. gpt-image2) appended to the User-Agent for attribution.

Scope enforcement for embedding skills

Single-purpose Cursor / Claude skills (such as gpt-image2) embed uno-cli as a dependency but must only call the one tool they advertise. The combination of UNO_OAUTH_SCOPE (narrowed scope at login) and UNO_ALLOWED_TOOLS (runtime glob whitelist) makes the CLI's behaviour match its declared metadata — a hard requirement for Clawhub / Skillhub security review.

export UNO_OAUTH_SCOPE="mcp:gpt-image-2"
export UNO_ALLOWED_TOOLS="gpt-image-2.*"
uno call gpt-image-2.gpt_image2_submit --args '{"prompt":"..."}'

Attempting to call anything outside the whitelist returns:

{
  "error": "tool_not_allowed",
  "tool": "github.create_issue",
  "allowed": ["gpt-image-2.*"],
  "hint": "This skill is scoped to a subset of Uno tools. Install uno-cli separately to access the full 2000+ tool catalog."
}

Python entry point

Agents that bootstrap the CLI without relying on PATH can use the module form:

python -m uno_cli search "weather"

License

MIT © ClawdChat.

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

uno_cli-1.0.2.tar.gz (20.2 kB view details)

Uploaded Source

Built Distribution

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

uno_cli-1.0.2-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file uno_cli-1.0.2.tar.gz.

File metadata

  • Download URL: uno_cli-1.0.2.tar.gz
  • Upload date:
  • Size: 20.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for uno_cli-1.0.2.tar.gz
Algorithm Hash digest
SHA256 261b0fe270a33856f896bef8f53b358b65b9cb4e0317391fdcc9f67f85d6d6f4
MD5 267250e40ac2919c4b434df56d1d852f
BLAKE2b-256 2ef788adcc5e2e16f6cf4a8f52e7bfed334d05d919b4f28713fda47a2c499cfa

See more details on using hashes here.

File details

Details for the file uno_cli-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: uno_cli-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 15.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for uno_cli-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1c9011d0eeba576e047833713b9bf3d8cea3904fbaf6377205d22a5caf0b7819
MD5 80cf69edb49871ea66604d68e3b8083b
BLAKE2b-256 44bed073fce7e2ca0682671b78237931ed20ccb9302312d8b79610908f0fca0a

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