Metadata-Version: 2.4
Name: pyplines-cli
Version: 2026.7.0a1
Summary: The official command-line interface for Pyplines
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: dynaconf[yaml]<4,>=3.2.7
Requires-Dist: httpx<1,>=0.28
Requires-Dist: platformdirs<5,>=4
Requires-Dist: pyyaml<7,>=6
Requires-Dist: typer<1,>=0.24

# pyplines-cli

`pyplines-cli` is the command-line interface for Pyplines. The initial command
surface supports local Function development through a running Pyplines Function
development container. Server commands will use the same CLI in later releases.

## Install

```console
pip install pyplines-cli
```

## Configuration

Configuration is YAML stored in the platform-native user configuration directory.
Find the exact path with:

```console
pyplines config path
```

Initial shape:

```yaml
mode: interactive

function_development:
  url: http://127.0.0.1:7331
  connect_timeout: 5
  operation_timeout: 1800

function:
  template:
    repository: https://github.com/pyplines/function-template.git
    ref: v1
```

Every setting can be overridden with a `PYPLINES_` environment variable. Use
double underscores for nested keys:

```console
export PYPLINES_MODE=automation
export PYPLINES_FUNCTION_DEVELOPMENT__URL=http://127.0.0.1:7331
export PYPLINES_FUNCTION_DEVELOPMENT_TOKEN="<local-container-token>"
```

The token is environment-only and is not written to the configuration file.

## Output

Table output is the interactive default. JSON is selected by either:

```console
pyplines --json function status
PYPLINES_MODE=automation pyplines function status
```

Streaming operations emit NDJSON in JSON mode.

## Function Development

Initialize from the configured, pinned Git template:

```console
pyplines function init hello-world
```

Check, invoke, and package the Function mounted into the development container:

```console
cd hello-world
pyplines function status
pyplines function check
pyplines function invoke --input name=Ada
pyplines function invoke --input-file inputs.yaml
pyplines function package
```

`function init` uses the system Git client and honors existing credential helpers,
SSH agents, proxies, and enterprise Git configuration. It does not execute template
hooks or retain the template repository's `.git` directory.
