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.3.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.3.0-py3-none-any.whl (19.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: acli_spec-0.3.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.3.0.tar.gz
Algorithm Hash digest
SHA256 f15ec4047b5abd364e9ac1ca987a04218b7dde2d51f3ca077b8a56e8c77117c2
MD5 9833ab60b63d4d1ee6c8514f724cd802
BLAKE2b-256 fef316371d1cd98f9e1ea5d9d7af2cc9343d033ee80d6688ba293f844b152e0e

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: acli_spec-0.3.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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4069021993a211791cce0ef889974e987959302d2e98908810de320170d1ae3b
MD5 174f3fa4b3b6bb27a106ceaf3fb7d45b
BLAKE2b-256 0375c4b253eaebae2c697dda6c3fe6d66f085f149941898f5a1279518cf0980c

See more details on using hashes here.

Provenance

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