Skip to main content

One-click launch of Hermes Agent on PPIO Agent Sandbox

Project description

PPHermes

One-click launch of Hermes Agent on PPIO Agent Sandbox.

Install

pip install pphermes

macOS / Linux:

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

Windows (PowerShell):

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

Quick Start

# 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>

On-demand mode (auto-pause / auto-resume)

# Auto-pause after 10 minutes of inactivity (default), resume on demand
pphermes launch --type on-demand

# Custom idle threshold (seconds, min 60)
pphermes launch --type on-demand --idle-timeout 1800

on-demand sandboxes hibernate when idle and only bill for active time. Idle is detected by combining hermes' state.db last-message timestamp, WAL mtime, running background processes, and upcoming cron jobs — long tool calls and scheduled jobs are NOT misclassified as idle. The sandbox auto-resumes on incoming HTTP traffic or shortly before a cron fires.

If your workflow runs tool calls that exceed 10 minutes (training, long builds, large pulls), bump --idle-timeout accordingly or use --type always-on.

Pair a Feishu / Lark channel

# WebSocket mode (recommended — no public callback URL needed)
pphermes pair feishu <sandbox_id> --app-id cli_xxx --app-secret xxx

# Webhook mode — response surfaces the exact callback URL to paste into
# Feishu Open Platform → Event Subscription → Request URL.
pphermes pair feishu <sandbox_id> --app-id cli_xxx --app-secret xxx \
  --mode webhook --verification-token tok_xxx --json | jq -r .feishu_webhook_url

The Hermes Agent's webhook adapter binds port 8765 + path /feishu/webhook — different from the OpenClaw convention (3000 + /feishu/events). Always copy the URL from the pair command's response rather than hand-constructing it.

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.

# 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 for details.

Documentation

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

pphermes-1.1.2.tar.gz (20.9 kB view details)

Uploaded Source

Built Distribution

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

pphermes-1.1.2-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

Details for the file pphermes-1.1.2.tar.gz.

File metadata

  • Download URL: pphermes-1.1.2.tar.gz
  • Upload date:
  • Size: 20.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for pphermes-1.1.2.tar.gz
Algorithm Hash digest
SHA256 851c61d197df1535b24c441ec39ecf603454fc1f11f376f54c23e7fdc27958e8
MD5 14d2aead7423fa1971a424dcc13e1945
BLAKE2b-256 b142a9361d53001486e735ec27fe124298d534ea1d166b45c8615abd432d78a8

See more details on using hashes here.

File details

Details for the file pphermes-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: pphermes-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 22.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for pphermes-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1a1fdbba444c60dd21b0ff69219195bd5954dd5d4d2be5539c1fd23283cc177a
MD5 1c4f28953fb587d6423f6f4d8f344002
BLAKE2b-256 41d0a2f47f2a3dca6e0b7066f5eb2786fac135c324d55a39d2e266c5ce91efe4

See more details on using hashes here.

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