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.5.0.tar.gz (26.0 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.5.0-py3-none-any.whl (20.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for acli_spec-0.5.0.tar.gz
Algorithm Hash digest
SHA256 222cb45c51517cdaa19a626c2d0ac08bc69eb9f59f54a62bddd62623aa88c466
MD5 f92d3353cd998883b6a7651b0f8f41ff
BLAKE2b-256 27219721d39725d5e8872014987e870ee52fa50f223de242a6011d130fab1759

See more details on using hashes here.

Provenance

The following attestation bundles were made for acli_spec-0.5.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.5.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for acli_spec-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 512515f65f29577773198bac20fc85e1332b102cb37422f842eb242a4bbd9c77
MD5 16845ad93135d5aee82958d335a71a1e
BLAKE2b-256 3db488fee8521c6e0cfcf08aeff48b1d3396505802d5aac0759f4ce2e79f91b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for acli_spec-0.5.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