Skip to main content

CLI for Ploston - Deterministic Agent Execution Layer

Project description

Ploston CLI

Command-line interface for Ploston - Deterministic Agent Execution Layer

Overview

The Ploston CLI provides a powerful command-line interface for interacting with Ploston servers. It works with both the open-source community tier and enterprise tier.

Installation

From PyPI

pip install ploston-cli

From Source

git clone https://github.com/ostanlabs/ploston-cli.git
cd ploston-cli
make install

Verify Installation

ploston version

Quick Start

# Start the MCP server
ploston serve

# List available workflows
ploston workflows list

# Run a workflow
ploston run my-workflow -i key=value

# Validate a workflow file
ploston validate workflow.yaml

Commands

Global Options

Option Description
-c, --config PATH Config file path
-v, --verbose Increase verbosity (can be repeated)
-q, --quiet Suppress output
--json Output as JSON

ploston serve

Start the MCP server.

# Start with default settings (stdio transport)
ploston serve

# Start with HTTP transport
ploston serve --transport http --port 8080

# Start with REST API enabled
ploston serve --transport http --with-api --api-docs

# Force configuration mode
ploston serve --mode configuration
Option Default Description
--transport stdio Transport type (stdio or http)
--host 0.0.0.0 HTTP host
--port 8080 HTTP port
--no-watch false Disable config hot-reload
--mode auto Force mode (configuration or running)
--with-api false Enable REST API (HTTP only)
--api-prefix /api/v1 REST API URL prefix
--api-docs false Enable OpenAPI docs at /docs

ploston run

Execute a workflow.

# Run with inline inputs
ploston run my-workflow -i name=John -i age=30

# Run with input file
ploston run my-workflow --input-file inputs.yaml

# Run with timeout
ploston run my-workflow -t 60

# Get JSON output
ploston --json run my-workflow
Option Description
-i, --input KEY=VALUE Input parameter (can be repeated)
--input-file PATH YAML/JSON file with inputs
-t, --timeout SECONDS Execution timeout

ploston validate

Validate a workflow YAML file.

# Basic validation
ploston validate workflow.yaml

# Strict mode (warnings as errors)
ploston validate --strict workflow.yaml

# Check that tools exist (requires MCP connection)
ploston validate --check-tools workflow.yaml
Option Description
--strict Treat warnings as errors
--check-tools Verify tools exist

ploston workflows

Manage workflows.

# List all workflows
ploston workflows list

# Show workflow details
ploston workflows show my-workflow

# JSON output
ploston --json workflows list

ploston tools

Manage tools.

# List all tools
ploston tools list

# Filter by source
ploston tools list --source mcp

# Filter by server
ploston tools list --server native-tools

# Show tool details
ploston tools show read_file

# Refresh tool schemas
ploston tools refresh
ploston tools refresh --server native-tools
Option Description
--source Filter by source (mcp or system)
--server Filter by MCP server name
--status Filter by status (available or unavailable)

ploston config

Manage configuration.

# Show full config
ploston config show

# Show specific section
ploston config show --section mcp

# JSON output
ploston --json config show

Valid sections: server, mcp, tools, workflows, execution, python_exec, logging, plugins, security, telemetry

ploston api

Start standalone REST API server.

# Start API server
ploston api --port 8080

# With authentication required
ploston api --require-auth

# With rate limiting
ploston api --rate-limit 100

# With SQLite execution store
ploston api --db ./executions.db
Option Default Description
--host 0.0.0.0 Host to bind to
--port 8080 Port to bind to
--prefix /api/v1 API prefix
--no-docs false Disable OpenAPI docs
--require-auth false Require API key
--rate-limit 0 Requests per minute (0=disabled)
--db - SQLite database path

ploston version

Show version information.

ploston version

Configuration

The CLI looks for configuration in the following order:

  1. Path specified with -c/--config
  2. ./ael-config.yaml (current directory)
  3. ~/.ael/config.yaml (home directory)

If no config is found, the server starts in configuration mode where you can use MCP tools to set up the configuration.

Example Config

# ael-config.yaml
server:
  host: 0.0.0.0
  port: 8080

mcp:
  servers:
    native-tools:
      command: python
      args: ["-m", "native_tools"]

workflows:
  paths:
    - ./workflows/

logging:
  level: INFO

JSON Output

All commands support --json for machine-readable output:

# List workflows as JSON
ploston --json workflows list

# Run workflow with JSON output
ploston --json run my-workflow -i key=value

# Validate with JSON output
ploston --json validate workflow.yaml

Development

Prerequisites

  • Python 3.12+
  • uv package manager

Setup

make install

Commands

make help       # Show all commands
make test       # Run all tests
make test-unit  # Run unit tests only
make lint       # Run linter
make format     # Format code
make check      # Run lint + tests
make build      # Build package

Features

  • HTTP-only client: No server dependencies, works with any Ploston server
  • Tier detection: Automatically detects community vs enterprise features
  • Rich output: Beautiful terminal output with colors and formatting
  • JSON mode: Machine-readable output for scripting
  • Config hot-reload: Automatically reloads config changes
  • Dual-mode server: Run MCP and REST API simultaneously

License

Apache-2.0

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

ploston_cli-1.0.0.tar.gz (90.1 kB view details)

Uploaded Source

Built Distribution

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

ploston_cli-1.0.0-py3-none-any.whl (17.9 kB view details)

Uploaded Python 3

File details

Details for the file ploston_cli-1.0.0.tar.gz.

File metadata

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

File hashes

Hashes for ploston_cli-1.0.0.tar.gz
Algorithm Hash digest
SHA256 0443b136b005ca20cb02a2251a36a63b8fd7516e72358f9247a01a37c95de119
MD5 a81fa02a23d47445341399535e34c83a
BLAKE2b-256 b21bdba86c9bb7f46b2df6cfb058608954e3f120986e575d06644b192f704429

See more details on using hashes here.

Provenance

The following attestation bundles were made for ploston_cli-1.0.0.tar.gz:

Publisher: publish.yml on ostanlabs/ploston-cli

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

File details

Details for the file ploston_cli-1.0.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for ploston_cli-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c6198a8d23b0c61f889154f148b82a4c051f951af29d327d726656c3eeccbb85
MD5 4227eaa7585541354273adac658cabb7
BLAKE2b-256 711319e5c45e1813d6b8297ec5c0f37478971971c866a586a0b072680ac844da

See more details on using hashes here.

Provenance

The following attestation bundles were made for ploston_cli-1.0.0-py3-none-any.whl:

Publisher: publish.yml on ostanlabs/ploston-cli

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