For agents

AI agents can autonomously rent, use, and terminate GPUs on Ukiyo.

Headless signup, fund once, then rent and manage GPUs autonomously: live offers, prepaid rental, ACTIVE status, SSH execution and termination. No Telegram or browser login required.

Canonical guides: Ukiyo documentation.

  1. 01 Create account
  2. 02 Fund once
  3. 03 Rent autonomously
ukiyo signup --json
ukiyo balance --json
ukiyo topup link --amount 5 --json
ukiyo rent --gpu RTX4090 --count 1 \
  --budget 5 --wait --json

Choose your interface

Start with CLI 0.2.2 if your agent has a shell. Signup is headless; funding is one payer handoff, not browser login. After funding, authorized rentals need no per-rental approval.

Use MCP 0.2.0 for the same compute actions through a local stdio tool host with a funded scoped token. It is not a docs-search server or a hosted compute URL. Use REST for integrations and Skill 1.0.1 to teach the workflow.

One fetch: full reference. Readable without JavaScript: Markdown guide.

Live inventory

Read directly from GET /api/v1/offers. Customer prices are cents/hour for the whole instance, not per GPU. Per-model pages: /gpu/.

loading…
GPU VRAM Count RAM Per hour
Fetching live offers…

The path, end to end

Base URL https://pay.u-kiyo.ai

  1. 1. Sign up headlessly

    ukiyo signup --json

    No email, browser or Telegram. Stores a scoped credential locally with mode 0600 without printing the secret. Install below to put ukiyo on PATH.

    Existing credentials: use ukiyo me --json, not another signup.

  2. 2. Check balance and fund once

    Share the funding URL once, then confirm credited balance. No human approval per authorized rental after funding.

    Existing owners may use ukiyo connect as a secondary path.

    ukiyo balance --json
    ukiyo topup link --amount 5 --json
  3. 3. Discover and rent from prepaid balance

    ukiyo offers --gpu RTX4090 --count 1 --json
    ukiyo rent --gpu RTX4090 --count 1 --budget 5 --idempotency-key SAVED_RENTAL_KEY --wait --timeout 600 --json

    Use live prices. Generate and save one unique SAVED_RENTAL_KEY before submitting. Save offerId, budgetMinor, rentalId and deploymentId.

    Retry with the original --offer, budget and key, not another GPU selection. Wait for ACTIVE before execution.

  4. 4. Operate — fully machine-operable

    ukiyo exec DEPLOYMENT_ID --json -- nvidia-smi
    ukiyo terminate DEPLOYMENT_ID --yes --wait --json
    ukiyo status DEPLOYMENT_ID --json
    ukiyo balance --json

    Keys stay local during exec. Termination is irreversible; --wait requires TERMINATED.

    A request or timeout is not proof of cleanup. Voluntary termination forfeits unused runtime.

Four ways in

HTTP API

Use REST for integrations. OpenAPI is the request/response schema authority.

pay.u-kiyo.ai/api/openapi.json

API guide →

CLI

Default for a shell agent. CLI 0.2.2 covers signup through confirmed termination.

node ukiyo-cli-0.2.2.mjs offers

CLI guide →

MCP server

Eight action tools over stdio: get_account, list_gpus, list_offers, rent_gpu, get_rental, list_deployments, run_command, terminate_gpu.

node ukiyo-mcp-0.2.0.mjs

MCP guide →

Agent Skill

Skill 1.0.1 teaches the same CLI-first lifecycle and failure/retry rules.

ukiyo-compute

Skill guide →

Install

From u-kiyo.ai/releases with curl. No npm, repository or GitHub access. Check the sha256 before running anything: a failed check prints FAILED. Every hash is in latest.json and SHA256SUMS.

  1. CLI

    set -eu
    mkdir -p "$HOME/.local/bin"
    curl -fsSL https://u-kiyo.ai/releases/cli/0.2.2/ukiyo-cli-0.2.2.mjs -o "$HOME/.local/bin/ukiyo-cli-0.2.2.mjs"
    (cd "$HOME/.local/bin" && printf '%s\n' 'ffbc632f19b56975057b2c997fe31e3faa96b872f2b859d9f2b663547cae8fc8  ukiyo-cli-0.2.2.mjs' | shasum -a 256 -c -)
    chmod 700 "$HOME/.local/bin/ukiyo-cli-0.2.2.mjs"
    ln -sf ukiyo-cli-0.2.2.mjs "$HOME/.local/bin/ukiyo"
    export PATH="$HOME/.local/bin:$PATH"
    ukiyo --version

    Needs Node.js 22+ and native SSH for execution.

  2. MCP server

    mkdir -p ~/.ukiyo && cd ~/.ukiyo
    curl -fsSLO https://u-kiyo.ai/releases/mcp/0.2.0/ukiyo-mcp-0.2.0.mjs
    echo "e32c8b638856c16eb8315b9d086c8c39d88f7ac89f1b0cd311bf7a7a18de81a1  ukiyo-mcp-0.2.0.mjs" | shasum -a 256 -c -
    node --version

    Needs Node.js 22+ and native SSH. Configure the MCP host with command node, args the bundle's absolute path, and the existing scoped token privately in UKIYO_API_TOKEN.

    Never paste secrets into a conversation. MCP does not automatically read CLI credentials; use CLI signup/top-up first.

  3. Agent Skill

    d=~/.claude/skills/ukiyo-compute && mkdir -p "$d" && cd "$d"
    curl -fsSLo SKILL.md https://u-kiyo.ai/releases/skill/1.0.1/ukiyo-compute/SKILL.md
    echo "719fca36ec699aecd30f391c307703a9935aa56f510f8cc8803546f06c37fddf  SKILL.md" | shasum -a 256 -c -

    Verify the downloaded Skill against latest.json before loading it. Skill 1.0.1 is compatible with CLI 0.2.2 for signup, balance, topup, rent, status, exec and terminate. Other agents: use the directory your agent loads skills from.

Funding and safety boundaries

Stated plainly, so you do not spend turns finding out.

Scripting and safe retries

Use --json: stdout is JSON; progress goes to stderr.

Exit codes: 0 success, 1 runtime/API/command failure, 2 usage, 3 wait timeout. Exec JSON has deploymentId, exitCode, stdout and stderr.

Timeout is not permission to rent again. Keep the original offer, budget, idempotency key and exact rental/deployment IDs. Inspect the same rental; terminate when work finishes, even after a command error. Verify TERMINATED and balance.

API errors preserve code, status, message and requestId in CLI JSON. Respect scopes and spending limits; never expose tokens or PEM keys.

Full scripting, error and cleanup contract.

Stable URLs for agents

Offers: data[] with exact IDs, GPU count and whole-instance pricePerHourMinor. Models: data.generatedAt, data.unit and data.models[]. Ranges can mix counts. Discovery is not a reservation; backend revalidates. CLI budgets are dollars; API/MCP budgetMinor: 500 means $5.