Skip to main content

Python SDK for the ACLI (Agent-friendly CLI) specification

Project description

acli-spec

Python SDK for the ACLI (Agent-friendly CLI) specification.

Build CLI tools that AI agents can discover, learn, and use autonomously.

Installation

pip install acli-spec

Quick Start

from pathlib import Path
from acli import ACLIApp, acli_command, OutputFormat
import typer

app = ACLIApp(name="myapp", version="1.0.0")

@app.command()
@acli_command(
    examples=[
        ("Run a task", "myapp run --file task.yaml"),
        ("Dry-run a task", "myapp run --file task.yaml --dry-run"),
    ],
    idempotent=False,
)
def run(
    file: Path = typer.Option(..., help="Path to task file. type:path"),
    dry_run: bool = typer.Option(False, help="Preview without executing."),
    output: OutputFormat = typer.Option(OutputFormat.text, help="Output format."),
) -> None:
    """Execute a task from a YAML file."""
    ...

if __name__ == "__main__":
    app.run()

What you get automatically

  • introspect command with full command tree as JSON
  • .cli/ folder generation (README, examples, schemas)
  • JSON error envelope on --output json
  • Semantic exit codes (0-9)
  • --version with semver output

License

EUPL-1.2

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

acli_spec-0.2.0.tar.gz (23.1 kB view details)

Uploaded Source

Built Distribution

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

acli_spec-0.2.0-py3-none-any.whl (19.0 kB view details)

Uploaded Python 3

File details

Details for the file acli_spec-0.2.0.tar.gz.

File metadata

  • Download URL: acli_spec-0.2.0.tar.gz
  • Upload date:
  • Size: 23.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for acli_spec-0.2.0.tar.gz
Algorithm Hash digest
SHA256 8e8600bffd9e1b65e2cb896a82d3c70e1c4ef727b78d3210bfd019acc47d961a
MD5 6bae34aceaa3fb4ab0d24303563f8088
BLAKE2b-256 1cc6386dcb3a7ef8a4d3a177ff3bd1be4cd8abbf87b7afef3ead76efacda5d0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for acli_spec-0.2.0.tar.gz:

Publisher: release.yml on alpibrusl/acli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file acli_spec-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: acli_spec-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 19.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for acli_spec-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1bf8f6de87eec291e3ad8bfbced7ae2cbbb52fc8792967a50ae9fdcc4036f774
MD5 e6a81e59b66f7b61d81108cbf4767511
BLAKE2b-256 72f7eaffcfe95481100845af600b5d48758718fbd5f16d8aa89a7ddcd2635f71

See more details on using hashes here.

Provenance

The following attestation bundles were made for acli_spec-0.2.0-py3-none-any.whl:

Publisher: release.yml on alpibrusl/acli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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