SuperAPI AI Directory

Uni-CLI

Uni-CLI is an open-source command-line tool that provides a unified command interface for humans and AI agents to search, run, and inspect various real software interfaces such as websites, browsers, desktop applications, local tools, and MCP. Users can describe a task, view the contract of a selected operation (which parameters it accepts, where it runs, and what it can change), and then execute it to obtain structured data or actionable error information. The project provides a generated command catalog containing registered commands and commands discovered at runtime, supports multiple output formats such as Markdown, JSON, YAML, and CSV, and features exit code differentiation, adapter self-repair, evolution validation, and permission boundary control. Node.js 22.19 or later is required for use.

Open website

About this tool

Purpose

The core goal of Uni-CLI is to provide a unified command interface for human users and AI agents, covering multiple interfaces such as websites, browsers, desktop applications, local tools, and MCP (Model Context Protocol). It allows users to obtain structured data or actionable error information by describing a task, viewing the contract of a selected operation, and then executing the operation.

Main Capabilities

  • Unified Interface: A single command can search, run, and inspect real software across APIs, browsers, desktops, local tools, and MCP.
  • Operation Contract: Each operation describes the parameters it accepts, where it runs, and what it can change. The contract can be inspected before sending parameters or granting approval.
  • Command Catalog: Fixed core commands and host-discovered commands are merged at runtime, and the generated operations are the authoritative list. The materials mention that it includes 1,893 registered commands and 113 pipeline operations.
  • Structured Output: Pipeline output uses Markdown by default, and stable machine formats can also be obtained via -f json、yaml、csv or compact .
  • Errors and Exit Codes: Exit codes distinguish success, empty results, unavailable dependencies, temporary failures, authentication, and configuration issues.
  • Self-Repair Mechanism:repair will rerun the original command in a bounded subprocess, and succeeds only when the target returns ok: true and the exit code is 0. The local override is located at ~/.unicli/adapters/and can be retained after npm updates.
  • Adapter Evolution:evolve adapter handles proposal evidence, validation, and holdout cases separately; the agent provides isolated YAML candidates and falsifiable predictions, Uni-CLI runs paired baseline/candidate evaluations, records prediction misses and regressions, and installs user overrides only after the promotion gate passes.
  • MCP Support: The default profile exposes four meta-tools; the delayed and extended profiles project adapter operations when the host requires tool-level discovery. The live projection can be viewed via unicli mcp health -f json .

Usage

  • After installation, it is used via the command line. Non-interactive installation by an Agent updates by default in a detached worker process, and structured output reports progress via meta.update.automatic_update . Interactive terminals retain Y/N choices, andunicli upgrade --no-auto-update can switch back to explicit approval.
  • When used from an agent, output can be piped, with Markdown by default.
  • Desktop operations preferentially use accessibility references; visual routing requires explicitly selecting a backend and never appears as a hidden fallback.
  • Browser automation uses a Uni-CLI-owned profile located under ~/.unicli/ ; Chrome 136+ does not support remote debugging on the default user data directory.
  • unicli browser doctor --json Report available delivery paths and exact repair commands without launching a browser provider.

Applicable Scenarios

Suitable for scenarios where an AI agent or user needs to uniformly operate multiple interfaces (websites, browsers, desktop, local tools, MCP); scenarios requiring structured, programmable output to integrate into automated workflows; and development and operations scenarios that require diagnosis, repair, and adapter evolution for failed operations.

Limitations

  • Requires Node.js 22.19 or newer.
  • Permission rules are authorized before browser, file, clipboard, subprocess, or desktop side effects; explicitly malformed policies fail safely.
  • Visual routing requires a genuinely configured backend; when a provider is missing, a structured error is returned.
  • Invocation diagnostics exclude parameters, content, URLs, credentials, and raw errors; users can disable new events via UNICLI_NO_LOG=1 .
  • The scope of the first evolution keeps operation identity, input/output contracts, pipeline operation topology, request method and headers, and existing subprocess invocations fixed; same-origin endpoints and extraction fixes are editable. Replacing network sources must be explicitly declared when creating a session --allow-origin <origin>.
  • Browser cookies remain in process memory unless the user explicitly runs auth import or browser cookies.

License and Background

Materials indicate the repository contains a code of conduct and security policy, and points to CONTRIBUTING.md for adapter and engine conventions. Version v1.3.0 is codenamed Artemis · Rubins.