🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

x402 Compute

by @ivaavimusic

This skill should be used when the user asks to "provision GPU instance", "spin up a cloud server", "list compute plans", "browse GPU pricing", "extend compu...

Versionv1.4.1
Downloads2,108
Stars⭐ 4
TERMINAL
clawhub install x402-compute

πŸ“– About This Skill


name: x402-compute version: 1.2.0 description: | This skill should be used when the user asks to "provision GPU instance", "spin up a cloud server", "list compute plans", "browse GPU pricing", "extend compute instance", "destroy server instance", "check instance status", "list my instances", or manage x402 Singularity Compute / x402Compute infrastructure. Handles GPU and VPS provisioning with USDC payment on Base or Solana networks via x402, and optional MPP/Mppx payment flows for agents that can pay with Tempo or Stripe/card methods. Includes optional OWS-backed auth and management flows. homepage: https://studio.x402layer.cc/docs/agentic-access/x402-compute metadata: clawdbot: emoji: "πŸ–₯️" homepage: https://compute.x402layer.cc os: - linux - darwin requires: bins: - python3 allowed-tools: - Read - Write - Edit - Bash - WebFetch

x402 Singularity Compute

Provision and manage GPU/VPS instances paid with x402 or MPP.

Base URL: https://compute.x402layer.cc x402 Networks: Base (EVM) β€’ Solana x402 Currency: USDC MPP Methods: Tempo β€’ Stripe/card when enabled by the service Protocol: HTTP 402 Payment Required (X-Payment for x402, Authorization: Payment for MPP)

Access Note: Preferred access is SSH public key. If no SSH key is provided, a one-time password fallback can be fetched once via API.


Quick Start

1. Install Dependencies

pip install -r {baseDir}/requirements.txt

2. Choose Wallet Mode

#### Option A: Direct signing keys (Base or Solana)

# Base (EVM)
export PRIVATE_KEY="0x..."
export WALLET_ADDRESS="0x..."

Solana

export SOLANA_SECRET_KEY="base58-or-json-array" export SOLANA_WALLET_ADDRESS="YourSolanaAddress" export COMPUTE_AUTH_CHAIN="solana"

#### Option B: OpenWallet / OWS (optional-first)

npm install -g @open-wallet-standard/core
export OWS_WALLET="compute-wallet"
export COMPUTE_AUTH_MODE="ows"

Create COMPUTE_API_KEY (optional) for management endpoints:

python {baseDir}/scripts/create_api_key.py --label "my-agent"

OWS is best for compute auth and routine management flows. Direct x402 provision and extend still use local payment-signing paths. MPP provision/extend should use mppx or Tempo Wallet.


⚠️ Security Notice

> IMPORTANT: This skill handles private keys for signing blockchain transactions. > > - Never use your primary custody wallet - Create a dedicated wallet with limited funds > - Private keys are used locally only - They sign transactions locally and are never transmitted > - For testing: Use a throwaway wallet with minimal USDC


Scripts Overview

| Script | Purpose | |--------|---------| | browse_plans.py | List available GPU/VPS plans with pricing | | browse_regions.py | List deployment regions | | provision.py | Provision a new instance (x402 payment, --months or --days) | | create_api_key.py | Create an API key for agent access (optional) | | list_instances.py | List your active instances | | instance_details.py | Get details for a specific instance | | get_one_time_password.py | Retrieve one-time root password fallback | | extend_instance.py | Extend instance lifetime (x402 payment) | | destroy_instance.py | Destroy an instance | | ows_cli.py | Run OpenWallet / OWS wallet, sign-message, and key commands | | solana_signing.py | Internal helper for Solana x402 payment signing |


Instance Lifecycle

Browse Plans β†’ Provision (pay USDC) β†’ Active β†’ Extend / Destroy β†’ Expired

Instances expire after their prepaid duration. Extend before expiry to keep them running.


Workflows

A. Browse and Provision

# List GPU plans
python {baseDir}/scripts/browse_plans.py

Filter by type (gpu/vps/high-performance)

python {baseDir}/scripts/browse_plans.py --type vcg

Check available regions

python {baseDir}/scripts/browse_regions.py

Generate a dedicated SSH key once (recommended for agents)

ssh-keygen -t ed25519 -N "" -f ~/.ssh/x402_compute

Provision an instance for 1 month (triggers x402 payment)

python {baseDir}/scripts/provision.py vcg-a100-1c-2g-6gb lax --months 1 --label "my-gpu" --ssh-key-file ~/.ssh/x402_compute.pub

Provision a daily instance (cheaper, use-and-throw)

python {baseDir}/scripts/provision.py vc2-1c-1gb ewr --days 1 --label "test-daily" --ssh-key-file ~/.ssh/x402_compute.pub

Provision for 3 days

python {baseDir}/scripts/provision.py vc2-1c-1gb ewr --days 3 --label "short-task" --ssh-key-file ~/.ssh/x402_compute.pub

Provision on Solana

python {baseDir}/scripts/provision.py vc2-1c-1gb ewr --months 1 --label "my-sol-vps" --network solana --ssh-key-file ~/.ssh/x402_compute.pub

Provision via MPP / mppx (Tempo by default; Stripe/card if your mppx config supports it)

npx mppx https://compute.x402layer.cc/compute/provision \ -X POST \ -J '{"plan":"vc2-1c-1gb","region":"ewr","os_id":2284,"label":"mpp-vps","prepaid_hours":24,"ssh_public_key":"ssh-ed25519 AAAA... agent"}'

If the response includes management_api_key, store it for later instance management:

export COMPUTE_API_KEY="x402c_..."

⚠️ After provisioning, wait 2-3 minutes for Vultr to complete setup

Then fetch your instance details (IP, status):

python {baseDir}/scripts/instance_details.py

B. Manage Instances

# Optional: create a reusable API key (avoids message signing each request)
python {baseDir}/scripts/create_api_key.py --label "my-agent"

List all your instances

python {baseDir}/scripts/list_instances.py

Get details for one instance

python {baseDir}/scripts/instance_details.py

Optional fallback if no SSH key was provided during provisioning

python {baseDir}/scripts/get_one_time_password.py

Extend by 1 day

python {baseDir}/scripts/extend_instance.py --hours 24

Extend by 1 month

python {baseDir}/scripts/extend_instance.py --hours 720

Extend on Solana

python {baseDir}/scripts/extend_instance.py --hours 720 --network solana

Extend via MPP. MPP extension requires compute auth; use the management API key

returned from MPP provisioning or normal wallet signature auth.

npx mppx https://compute.x402layer.cc/compute/instances//extend \ -X POST \ -H "X-API-Key: $COMPUTE_API_KEY" \ -J '{"extend_hours":720}'

Destroy

python {baseDir}/scripts/destroy_instance.py

C. OpenWallet / OWS

# List local OWS wallets
python {baseDir}/scripts/ows_cli.py wallet-list

Sign a Base-compatible compute auth message

python {baseDir}/scripts/ows_cli.py sign-message --chain eip155:8453 --wallet compute-wallet --message "hello"

Sign a Solana-compatible compute auth message

python {baseDir}/scripts/ows_cli.py sign-message --chain solana --wallet compute-wallet --message "hello"

Create an OWS agent key

python {baseDir}/scripts/ows_cli.py key-create --name codex-compute --wallet compute-wallet


x402 Payment Flow

1. Request provision/extend β†’ server returns HTTP 402 with payment requirements 2. Script signs payment locally: - Base: USDC TransferWithAuthorization (EIP-712) - Solana: signed SPL transfer transaction payload 3. Script resends request with X-Payment header containing signed payload 4. Server verifies payment, settles on-chain, provisions/extends instance

For Solana, transient facilitator failures can happen. Retry once or twice if you get a temporary 5xx verify error.

MPP Payment Flow

MPP is available side-by-side with x402 on the same paid endpoints.

1. Request provision/extend -> server returns HTTP 402 with WWW-Authenticate: Payment 2. mppx or Tempo Wallet creates an MPP credential 3. Client retries with Authorization: Payment ... 4. Server verifies the MPP payment, provisions/extends the instance, and returns Payment-Receipt

Notes:

  • POST /compute/provision can be paid via MPP without wallet auth. In that case the response includes management_api_key; store it because it is shown once and is required for later management.
  • POST /compute/instances/:id/extend via MPP requires compute auth, usually X-API-Key: $COMPUTE_API_KEY.
  • x402 remains fully supported through the Python scripts and X-Payment header flow.
  • MPP methods are service-configured. Tempo is used by default by mppx; Stripe/card requires a Stripe-capable MPP client/config.

  • Plan Types

    | Type | Plan Prefix | Description | |------|-------------|-------------| | GPU | vcg-* | GPU-accelerated (A100, H100, etc.) | | VPS | vc2-* | Standard cloud compute | | High-Perf | vhp-* | High-performance dedicated | | Dedicated | vdc-* | Dedicated bare-metal |


    Environment Reference

    | Variable | Required For | Description | |----------|--------------|-------------| | PRIVATE_KEY | Base payment signing | EVM private key (0x...) | | WALLET_ADDRESS | Base direct-signing mode | Base wallet address (0x...) | | SOLANA_SECRET_KEY | Solana direct-signing mode | Solana signer key (base58 or JSON byte array) | | SOLANA_WALLET_ADDRESS | Solana direct-signing mode | Solana wallet address (optional if derivable from secret) | | COMPUTE_AUTH_CHAIN | Solana/base auth override | base or solana | | COMPUTE_API_KEY | Optional | Reusable API key for compute management endpoints | | COMPUTE_AUTH_MODE | Optional | auto, private-key, or ows | | OWS_WALLET | OWS auth mode | OWS wallet name or ID | | OWS_BIN | OWS auth mode | Optional explicit path to the ows executable | | COMPUTE_API_KEY | MPP/no-wallet management | API key returned once after an MPP provision without wallet auth |


    API Reference

    For full endpoint details, see:

  • references/api-reference.md
  • references/openwallet-ows.md

  • Resources

  • πŸ“– Documentation: studio.x402layer.cc/docs/agentic-access/x402-compute
  • πŸ–₯️ Compute Dashboard: compute.x402layer.cc
  • 🌐 x402 Studio: studio.x402layer.cc

  • OWS scope note

    OWS support is optional-first in this release:

  • use it for compute auth and management/API-key flows
  • keep direct Base or Solana signing keys for the paid provision and extend flows
  • πŸ’‘ Examples

    1. Install Dependencies

    pip install -r {baseDir}/requirements.txt
    

    2. Choose Wallet Mode

    #### Option A: Direct signing keys (Base or Solana)

    # Base (EVM)
    export PRIVATE_KEY="0x..."
    export WALLET_ADDRESS="0x..."

    Solana

    export SOLANA_SECRET_KEY="base58-or-json-array" export SOLANA_WALLET_ADDRESS="YourSolanaAddress" export COMPUTE_AUTH_CHAIN="solana"

    #### Option B: OpenWallet / OWS (optional-first)

    npm install -g @open-wallet-standard/core
    export OWS_WALLET="compute-wallet"
    export COMPUTE_AUTH_MODE="ows"
    

    Create COMPUTE_API_KEY (optional) for management endpoints:

    python {baseDir}/scripts/create_api_key.py --label "my-agent"
    

    OWS is best for compute auth and routine management flows. Direct x402 provision and extend still use local payment-signing paths. MPP provision/extend should use mppx or Tempo Wallet.