Metadata-Version: 2.4
Name: pphermes
Version: 1.1.1
Summary: One-click launch of Hermes Agent on PPIO Agent Sandbox
Author-email: PPIO <hello@ppio.com>
License-Expression: MIT
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: click>=8.1
Requires-Dist: httpx>=0.25
Requires-Dist: python-dotenv>=1.0
Requires-Dist: rich>=13.0

# PPHermes

One-click launch of [Hermes Agent](https://github.com/anthropics/hermes) on [PPIO Agent Sandbox](https://ppio.com/docs/sandbox/overview.md).

## Install

```bash
pip install pphermes
```

**macOS / Linux:**

```bash
curl -fsSL https://pphermes.ppio.com/install.sh | bash
```

**Windows (PowerShell):**

```powershell
irm https://pphermes.ppio.com/install.ps1 | iex
```

## Quick Start

```bash
# Set your API key
export PPIO_API_KEY="your-key"

# Launch a Hermes sandbox
pphermes launch

# List sandboxes
pphermes list

# Check status
pphermes status <sandbox_id>

# Stop a sandbox
pphermes stop <sandbox_id>
```

## Migrating from OpenClaw

If you already run an OpenClaw sandbox and want to switch to Hermes, copy
the full `~/.openclaw` agent state in a single command. Under the hood
PPHermes tars the source directory, uploads it **directly** to the target
sandbox's File Manager, then invokes Hermes's native `hermes claw migrate`
command — so SOUL.md, memories, skills, command allowlist, messaging
settings, secrets, TTS audio, and AGENTS.md all come along. The archive
never crosses our API server.

```bash
# Preview the migration (no writes on the target)
pphermes migrate <hermes_id> --from <openclaw_id> --dry-run

# Apply (default preset=full migrates everything, including secrets)
pphermes migrate <hermes_id> --from <openclaw_id> -y

# Skip secrets — keep the target Hermes .env as-is
pphermes migrate <hermes_id> --from <openclaw_id> --preset user-data -y

# Replace existing Hermes files on conflict (otherwise Hermes reports them)
pphermes migrate <hermes_id> --from <openclaw_id> --overwrite -y

# Drop bulky TTS audio from the tarball
pphermes migrate <hermes_id> --from <openclaw_id> --exclude-tts -y

# Also print step-by-step instructions for copying workspace files manually
pphermes migrate <hermes_id> --from <openclaw_id> --print-workspace-guide -y
```

Workspace files (`~/workspace/`, local repos) are NOT transferred
automatically — both products ship File Manager on port 7682 so you can
download from the source and upload to the target manually. See
[docs/design/migration.md](../../docs/design/migration.md) for details.

## Documentation

- [CLI Skill Reference](https://pphermes.ppio.com/skill.md)
- [API Key Guide](https://ppio.com/docs/support/api-key)
