Metadata-Version: 2.4
Name: apheris-foundry-cli
Version: 0.1.0rc1
Summary: Command-line interface for Apheris Foundry workflows.
Author: Apheris
License-Expression: LicenseRef-Apheris-Foundry-Software-License
Project-URL: Homepage, https://github.com/apheris/apheris-foundry-cli
Project-URL: License, https://www.apheris.com/docs/hub/hub-license.html
Project-URL: Repository, https://github.com/apheris/apheris-foundry-cli
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: jsonschema<5,>=4
Requires-Dist: rich>=13
Requires-Dist: truststore<1,>=0.10
Requires-Dist: typer<1,>=0.12
Provides-Extra: dev
Requires-Dist: build<2,>=1; extra == "dev"
Requires-Dist: pytest<10,>=9; extra == "dev"
Requires-Dist: ruff<1,>=0.9; extra == "dev"
Requires-Dist: wheel<1,>=0.45; extra == "dev"
Dynamic: license-file

# Apheris Foundry CLI

Command-line interface for submitting and managing Foundry workflow runs on an Apheris Hub instance.

## Requirements

- Python 3.10 or later
- Access to an Apheris Hub instance

## Installation

### conda

Recommended if you already use conda for scientific Python work. A dedicated environment avoids dependency conflicts.

#### Linux / macOS

```bash
conda create -n apherisfold python=3.11 -y
conda activate apherisfold
pip install apherisfold-cli
```

#### Windows (Anaconda Prompt or PowerShell)

```powershell
conda create -n apherisfold python=3.11 -y
conda activate apherisfold
pip install apherisfold-cli
```

Activate the environment at the start of each session with `conda activate apherisfold`.

### venv (standard Python)

#### Linux / macOS (venv)

```bash
python3 -m venv ~/.venvs/apherisfold
source ~/.venvs/apherisfold/bin/activate
pip install apherisfold-cli
```

#### Windows (PowerShell, venv)

```powershell
python -m venv $env:USERPROFILE\.venvs\apherisfold
& $env:USERPROFILE\.venvs\apherisfold\Scripts\Activate.ps1
pip install apherisfold-cli
```

Activate the environment at the start of each session with the `activate` command above.

### Verify

```bash
apheris-foundry --version
apheris-foundry --help
```

### Upgrade

```bash
pip install --upgrade apherisfold-cli
```

## Quick start

```bash
# Log in with your Apheris Hub URL
apheris-foundry login --url https://hub.example.com

# See available workflow definitions
apheris-foundry workflows list

# Submit a run
apheris-foundry workflows run --workflow predict --input ./request.json

# List submitted runs
apheris-foundry runs list

# Filter by workflow
apheris-foundry runs list --workflow predict

# Inspect a run
apheris-foundry runs get --id <run-id>

# Stream logs
apheris-foundry runs logs --id <run-id>

# Download results
apheris-foundry runs download --id <run-id>

# Print the error for a failed run
apheris-foundry runs error --id <run-id>
```

## Command reference

### Authentication

| Command | Description |
| ------- | ----------- |
| `apheris-foundry login` | Log in to a Hub instance |
| `apheris-foundry logout` | Log out of the current session |

### Workflow definitions (`workflows`)

| Command | Description |
| ------- | ----------- |
| `apheris-foundry workflows list` | List workflow definitions exposed by Hub |
| `apheris-foundry workflows get --workflow <id>` | Inspect one workflow definition |
| `apheris-foundry workflows graph --workflow <id>` | Show the workflow DAG |
| `apheris-foundry workflows run --workflow <id>` | Submit a workflow run |

### Run instances (`runs`)

| Command | Description |
| ------- | ----------- |
| `apheris-foundry runs list [--workflow <id>]` | List submitted runs |
| `apheris-foundry runs get --id <run-id>` | Inspect a run and its artifacts |
| `apheris-foundry runs logs --id <run-id>` | Print logs for a run |
| `apheris-foundry runs error --id <run-id>` | Print the saved error for a failed run |
| `apheris-foundry runs download --id <run-id>` | Download results for a completed run |

Use `--help` on any command for the full option reference and examples:

```bash
apheris-foundry workflows run --help
apheris-foundry runs get --help
```

## License

This package is licensed under the [Apheris Foundry Software License](https://www.apheris.com/docs/hub/hub-license.html). The full license text is also included in every published wheel as `LICENSE`.

## Support

Contact [support@apheris.com](mailto:support@apheris.com) for access and deployment assistance.
