Created by agents · for agents to create

Tell your agent: install image-skill.com.

Image Skill is the image tool for agents. It picks the model, writes the prompt, creates the image, and gives the work back as an owned URL. No provider keys. No model shopping.

Copy this, or just tell your agent: install image-skill.com
no provider keys · owned media · budgeted credits
No provider API key
Picks the model
Returns an owned URL
Stable JSON contract
Editorial portrait, soft window light, 85mm lens, shallow depth of field, magazine cover quality
PORTRAIT
xai.grok-imagine-image-quality · $0.12
A single sneaker on a seamless studio backdrop, dramatic rim light, glossy hero product shot
PRODUCT
fal.flux-2-pro · $0.05
Macro, dew drops on a spiderweb at golden hour, soft bokeh, jewel tones
MACRO
fal.flux-1-dev · $0.05
Architectural render, brutalist concrete atrium at dawn, volumetric light beams, fine detail
RENDER
fal.imagen4-preview-ultra · $0.10
Reading this as an agent?

You can sign yourself up and create. No human required. Run npx skills add https://github.com/danielgwilson/image-skill-cli --skill image-skill, then read the full contract at image-skill.com/skill.md. For no-spend planning after install, start with image-skill create --guide --prompt "..." --json, read data.next_command, and follow the guide. Manual escape hatches are not prerequisites.

Zero setup

From cold start to owned media in one command.

No keys to fetch, no billing consoles to wire, no SDK to learn. The agent discovers the tool, runs it, and gets work it can keep.

image-skill · agent session
codex · runtime
01

Discover

Your agent points at image-skill.com and reads the skill contract. No API key, no OAuth, no provider account, no MCP server to stand up.

$ npx -y image-skill@latest create --guide → reads skill.md · no signup · no provider call
02

Create

One command. The guide checks reachability, picks a runnable model, caps spend, then generates or edits, and tells the agent the exact next command.

$ image-skill create --prompt "…" → job succeeded · $0.04
03

Own

The result comes back as durable work, not a disappearing preview: a hosted URL, a recoverable job, a cost receipt, and stable JSON the next agent can cite.

→ asset image_97ef66808924 media.image-skill.com/a/image_97ef66808924.jpg

The chat forgets. image-skill keeps the work.
Models, money, media, memory, the whole loop.

creative work that survives the conversation
Durable owned media

Generation is the easy part. Keeping it is the product.

Every create and edit returns the same thing: a hosted URL the agent owns, a job it can recover, a receipt it can cite, and one predictable JSON shape, so the output is already work, not a screenshot in a transcript.

stable response envelope

Every call returns the same shape.

job_id, trace_id, assets[].url, cost.credit_pricing, safety. No provider keys leaking up. Recoverable failures carry error.recovery with the exact flag and command to fix them, not a prose error string.

{
"job_id": "job_da95d041c167",
"trace_id": "trace_c56a4b2e6634c5c1",
"status": "succeeded",
"assets": [{ "id": "image_97ef66808924",
"url": "media.image-skill.com/a/…" }],
"cost": { "credit_pricing": { "credits_required": 4 } },
"safety": { "status": "passed" }
}
capability preserved, never flattened

Model parameters are first-class.

Pass executable, model-native controls through --model-parameters-json. image-skill validates against the model's published schema and rejects unknown keys instead of silently dropping them.

fal.flux-1-dev
seedimage_sizeguidance_scale
openai.gpt-image-2
sizebackgroundqualitymoderation
fal.seedream-v4
image_sizeseed
fal.flux-pro-kontext-max
image_urlguidance_scale
Provider-neutral catalog

One contract. Every model worth using.

FLUX, GPT Image, Imagen, Seedream, Grok, Nano Banana and 219 models — image, edit, video, audio and 3D — behind one command. Your agent discovers capabilities at runtime and swaps providers per call. When a model is missing, it files feedback, and it stops being missing.

219
models you can run today
3
providers · one ledger
4
live media types
$0.01
per credit · quoted first
Trending with agents this week
showing 12 of 219
Browse the full catalog
219 shown · of 219
Model
Task
I / O
~ / call
fal/bagel
text→image
text → image
$0.17
fal/bagel-edit
image→image
image+text → image
$0.17
fal/ben-v2-image
utility
image+text → image
$0.25
fal/bitdance
text→image
text → image
$0.02
fal/bria-background-remove
utility
image+text → image
$0.03
fal/bria-background-replace
image→image
image+text → image
$0.07
fal/bria-eraser
utility
image+text → image
$0.07
fal/bria-expand
utility
image+text → image
$0.07
fal/bria-fibo-bbq-preview-generate
text→image
text → image
$0.07
fal/bria-fibo-edit-add-object-by-text
utility
image+text → image
$0.07
fal/bria-fibo-edit-blend
utility
image+text → image
$0.07
fal/bria-fibo-edit-colorize
utility
image+text → image
$0.07
fal/bria-fibo-edit-edit
utility
image+text → image
$0.07
fal/bria-fibo-edit-erase-by-text
utility
image+text → image
$0.07
fal/bria-fibo-edit-relight
utility
image+text → image
$0.07
fal/bria-fibo-edit-replace-object-by-text
utility
image+text → image
$0.07
fal/bria-fibo-edit-reseason
utility
image+text → image
$0.07
fal/bria-fibo-edit-restore
utility
image+text → image
$0.07
fal/bria-fibo-edit-restyle
utility
image+text → image
$0.07
fal/bria-fibo-edit-rewrite-text
utility
image+text → image
$0.07
fal/bria-fibo-edit-sketch-to-colored-image
utility
image+text → image
$0.07
fal/bria-fibo-generate
text→image
text → image
$0.07
fal/bria-fibo-lite-generate
text→image
text → image
$0.06
fal/bria-genfill
image→image
image+text → image
$0.07
fal/bria-reimagine
image→image
image+text → image
$0.07
fal/bria-text-to-image-base
text→image
text → image
$0.07
fal/bria-text-to-image-fast
text→image
text → image
$0.05
fal/bria-text-to-image-hd
text→image
text → image
$0.07
fal/bria-upscale-creative
upscale
image+text → image
$0.07
fal/bytedance-dreamina-v3-1-text-to-image
text→image
text → image
$0.05
fal/bytedance-seedance-2-0-fast-image-to-video
text→image
image+text → video
$0.25
fal/bytedance-seedance-2-0-fast-text-to-video
text→image
text → video
$0.25
fal/bytedance-seedream-v3-text-to-image
text→image
text → image
$0.05
fal/bytedance-seedream-v4-5-edit
image→image
image+text → image
$0.07
fal/bytedance-seedream-v4-5-text-to-image
text→image
text → image
$0.07
fal/bytedance-seedream-v4-edit
image→image
image+text → image
$0.05
fal/bytedance-seedream-v4-text-to-image
text→image
text → image
$0.05
fal/bytedance-seedream-v5-lite-edit
image→image
image+text → image
$0.06
fal/bytedance-seedream-v5-lite-text-to-image
text→image
text → image
$0.06
fal/cartoonify
utility
image+text → image
$0.17
fal/chain-of-zoom
utility
image+text → image
$0.21
fal/chrono-edit
image→image
image+text → image
$0.02
fal/chrono-edit-lora
image→image
image+text → image
$0.04
fal/chrono-edit-lora-gallery-paintbrush
image→image
image+text → image
$0.04
fal/chrono-edit-lora-gallery-upscaler
upscale
image+text → image
$0.05
fal/clarity-upscaler
upscale
image+text → image
$0.25
fal/clarityai-crystal-upscaler
upscale
image+text → image
$0.25
fal/codeformer
utility
image+text → image
$0.25
fal/cogview4
text→image
text → image
$0.14
fal/ddcolor
utility
image+text → image
$0.25
fal/docres
utility
image+text → image
$0.25
fal/docres-dewarp
utility
image+text → image
$0.25
fal/drct-super-resolution
utility
image+text → image
$0.25
fal/dreamo
text→image
text → image
$0.09
fal/dreamomni2-edit
utility
image+text → image
$0.09
fal/ernie-image
text→image
text → image
$0.06
fal/ernie-image-lora
text→image
text → image
$0.07
fal/ernie-image-lora-turbo
text→image
text → image
$0.03
fal/ernie-image-turbo
text→image
text → image
$0.02
fal/f-lite-standard
text→image
text → image
$0.04
fal/f-lite-texture
text→image
text → image
$0.04
fal/flux-1-dev
text→image
text → image
$0.04
fal/flux-1-dev-image-to-image
image→image
image+text → image
$0.25
fal/flux-1-krea
text→image
text → image
$0.04
fal/flux-1-krea-image-to-image
image→image
image+text → image
$0.25
fal/flux-1-schnell
text→image
text → image
$0.01
fal/flux-1-srpo
text→image
text → image
$0.04
fal/flux-1-srpo-image-to-image
image→image
image+text → image
$0.25
fal/flux-2
text→image
text → image
$0.25
fal/flux-2-edit
image→image
image+text → image
$0.25
fal/flux-2-flash
text→image
text → image
$0.25
fal/flux-2-flash-edit
image→image
image+text → image
$0.25
fal/flux-2-flex
text→image
text → image
$0.25
fal/flux-2-flex-edit
image→image
image+text → image
$0.25
fal/flux-2-klein-4b
text→image
text → image
$0.25
fal/flux-2-klein-4b-base
text→image
text → image
$0.25
fal/flux-2-klein-4b-base-edit
image→image
image+text → image
$0.25
fal/flux-2-klein-4b-base-edit-lora
image→image
image+text → image
$0.25
fal/flux-2-klein-4b-base-lora
text→image
text → image
$0.25
fal/flux-2-klein-4b-edit
image→image
image+text → image
$0.25
fal/flux-2-klein-4b-edit-lora
image→image
image+text → image
$0.25
fal/flux-2-klein-4b-lora
text→image
text → image
$0.25
fal/flux-2-klein-9b
text→image
text → image
$0.25
fal/flux-2-klein-9b-base
text→image
text → image
$0.25
fal/flux-2-klein-9b-base-edit
image→image
image+text → image
$0.25
fal/flux-2-klein-9b-base-edit-lora
image→image
image+text → image
$0.25
fal/flux-2-klein-9b-base-lora
text→image
text → image
$0.25
fal/flux-2-klein-9b-edit
image→image
image+text → image
$0.25
fal/flux-2-klein-9b-edit-lora
image→image
image+text → image
$0.25
fal/flux-2-klein-9b-lora
text→image
text → image
$0.25
fal/flux-2-lora
text→image
text → image
$0.25
fal/flux-2-lora-edit
image→image
image+text → image
$0.25
fal/flux-2-max
text→image
text → image
$0.25
fal/flux-2-max-edit
image→image
image+text → image
$0.25
fal/flux-2-pro
text→image
text → image
$0.25
fal/flux-2-pro-edit
image→image
image+text → image
$0.25
fal/flux-2-pro-outpaint
utility
image+text → image
$0.25
fal/flux-2-turbo
text→image
text → image
$0.25
fal/flux-2-turbo-edit
image→image
image+text → image
$0.25
fal/flux-control-lora-canny
text→image
text → image
$0.06
fal/flux-control-lora-canny-image-to-image
image→image
image+text → image
$0.25
fal/flux-dev
text→image
text → image
$0.25
fal/flux-dev-image-to-image
image→image
image+text → image
$0.25
fal/flux-dev-redux
variation
image+text → image
$0.05
fal/flux-krea
text→image
text → image
$0.25
fal/flux-krea-image-to-image
image→image
image+text → image
$0.25
fal/flux-krea-redux
variation
image+text → image
$0.05
fal/flux-lora
text→image
text → image
$0.25
fal/flux-lora-image-to-image
image→image
image+text → image
$0.25
fal/flux-lora-inpainting
image→image
image+text → image
$0.25
fal/flux-lora-stream
text→image
text → image
$0.25
fal/flux-pro-kontext
image→image
image+text → image
$0.07
fal/flux-pro-kontext-max
image→image
image+text → image
$0.14
fal/flux-pro-kontext-max-multi
image→image
image+text → image
$0.14
fal/flux-pro-kontext-max-text-to-image
text→image
text → image
$0.14
fal/flux-pro-kontext-text-to-image
text→image
text → image
$0.07
fal/flux-pro-v1-1
text→image
text → image
$0.25
fal/flux-pro-v1-1-redux
variation
image+text → image
$0.09
fal/flux-pro-v1-1-ultra
text→image
text → image
$0.10
fal/flux-pro-v1-1-ultra-finetuned
text→image
text → image
$0.12
fal/flux-pro-v1-1-ultra-redux
variation
image+text → image
$0.25
fal/flux-pro-v1-fill
image→image
image+text → image
$0.25
fal/flux-pro-v1-fill-finetuned
image→image
image+text → image
$0.25
fal/flux-schnell
text→image
text → image
$0.25
fal/flux-schnell-redux
variation
image+text → image
$0.05
fal/flux-srpo
text→image
text → image
$0.25
fal/flux-srpo-image-to-image
image→image
image+text → image
$0.25
fal/gemini-25-flash-image
text→image
text → image
$0.07
fal/gemini-25-flash-image-edit
image→image
image+text → image
$0.07
fal/gemini-3-1-flash-image-preview
text→image
text → image
$0.14
fal/gemini-3-1-flash-image-preview-edit
image→image
image+text → image
$0.14
fal/gemini-3-pro-image-preview
text→image
text → image
$0.25
fal/gemini-3-pro-image-preview-edit
image→image
image+text → image
$0.25
fal/ideogram-upscale
upscale
image+text → image
$0.10
fal/ideogram-v2
text→image
text → image
$0.14
fal/ideogram-v2-edit
image→image
image+text → image
$0.14
fal/ideogram-v2-remix
variation
image+text → image
$0.14
fal/ideogram-v2a
text→image
text → image
$0.07
fal/ideogram-v2a-remix
variation
image+text → image
$0.07
fal/ideogram-v2a-turbo
text→image
text → image
$0.05
fal/ideogram-v2a-turbo-remix
variation
image+text → image
$0.05
fal/ideogram-v3-layerize-text
utility
image+text → image
$0.15
fal/imagen3
text→image
text → image
$0.09
fal/imagen4-preview
text→image
text → image
$0.07
fal/imagen4-preview-fast
text→image
text → image
$0.04
fal/imagen4-preview-ultra
text→image
text → image
$0.10
fal/instant-character
image→image
image+text → image
$0.25
fal/kling-image-o1
image→image
image+text → image
$0.05
fal/kling-image-o3-image-to-image
image→image
image+text → image
$0.05
fal/kling-image-o3-text-to-image
text→image
text → image
$0.05
fal/kling-image-v3-image-to-image
image→image
image+text → image
$0.05
fal/kling-image-v3-text-to-image
text→image
text → image
$0.05
fal/kling-video-v3-standard-image-to-video
text→image
image+text → video
$1.29
fal/kling-video-v3-standard-text-to-video
text→image
text → video
$1.29
fal/longcat-image
text→image
text → image
$0.18
fal/longcat-image-edit
image→image
image+text → image
$0.25
fal/ltx-2-3-image-to-video-fast
text→image
image+text → video
$0.60
fal/ltx-2-3-text-to-video-fast
text→image
text → video
$0.60
fal/ltx-video-13b-distilled
text→image
text → video
$0.07
fal/luma-agent-ray-v3-2-text-to-video
text→image
text → video
$0.84
fal/minimax-hailuo-02-standard-image-to-video
text→image
image+text → video
$0.45
fal/minimax-hailuo-02-standard-text-to-video
text→image
text → video
$0.45
fal/nano-banana
text→image
text → image
$0.07
fal/nano-banana-2
text→image
text → image
$0.14
fal/nano-banana-2-edit
image→image
image+text → image
$0.14
fal/nano-banana-edit
image→image
image+text → image
$0.07
fal/nano-banana-pro
text→image
text → image
$0.25
fal/nano-banana-pro-edit
image→image
image+text → image
$0.25
fal/pixverse-v6-image-to-video
text→image
image+text → video
$0.38
fal/pixverse-v6-text-to-video
text→image
text → video
$0.38
fal/qwen-image
text→image
text → image
$0.25
fal/qwen-image-2-edit
image→image
image+text → image
$0.06
fal/qwen-image-2-pro-edit
image→image
image+text → image
$0.13
fal/qwen-image-2-pro-text-to-image
text→image
text → image
$0.13
fal/qwen-image-2-text-to-image
text→image
text → image
$0.06
fal/qwen-image-2512-lora
text→image
text → image
$0.25
fal/qwen-image-edit-2511
image→image
image+text → image
$0.25
fal/qwen-image-edit-plus
image→image
image+text → image
$0.06
fal/qwen-image-image-to-image
image→image
image+text → image
$0.25
fal/qwen-image-max-edit
image→image
image+text → image
$0.13
fal/qwen-image-max-text-to-image
text→image
text → image
$0.13
fal/recraft-v3-text-to-image
text→image
text → image
$0.07
fal/seedvr-upscale-image
upscale
image+text → image
$0.25
fal/seedvr-upscale-image-seamless
upscale
image+text → image
$0.25
fal/stable-audio-25-text-to-audio
text→image
text → audio
$0.34
fal/topaz-upscale-image
upscale
image+text → image
$0.25
fal/trellis-image-to-3d
text→image
image+text → .glb
$0.04
fal/veo3-1-fast
text→image
text → video
$2.00
fal/veo3-1-fast-image-to-video
text→image
image+text → video
$2.00
fal/veo3-1-lite
text→image
text → video
$0.67
fal/veo3-1-lite-image-to-video
text→image
image+text → video
$0.67
fal/wan-v2-7-edit
image→image
image+text → image
$0.05
fal/wan-v2-7-image-to-video
text→image
image+text → video
$1.25
fal/wan-v2-7-pro-edit
image→image
image+text → image
$0.13
fal/wan-v2-7-pro-text-to-image
text→image
text → image
$0.13
fal/wan-v2-7-text-to-image
text→image
text → image
$0.05
fal/wan-v2-7-text-to-video
text→image
text → video
$1.25
fal/z-image-base
text→image
text → image
$0.25
fal/z-image-base-lora
text→image
text → image
$0.25
fal/z-image-turbo
text→image
text → image
$0.25
fal/z-image-turbo-controlnet
image→image
image+text → image
$0.25
fal/z-image-turbo-controlnet-lora
image→image
image+text → image
$0.25
fal/z-image-turbo-image-to-image
image→image
image+text → image
$0.25
fal/z-image-turbo-image-to-image-lora
image→image
image+text → image
$0.25
fal/z-image-turbo-inpaint
image→image
image+text → image
$0.25
fal/z-image-turbo-inpaint-lora
image→image
image+text → image
$0.25
fal/z-image-turbo-lora
text→image
text → image
$0.25
fal/z-image-turbo-tiling
text→image
text → image
$0.25
fal/z-image-turbo-tiling-lora
text→image
text → image
$0.25
openai/gpt-image-1.5
text→image
text → image
$0.25
openai/gpt-image-1.5-edit
image→image
image+text → image
$0.25
openai/gpt-image-2
text→image
text → image
$0.25
openai/gpt-image-2-2026-04-21
text→image
text → image
$0.25
openai/gpt-image-2-2026-04-21-edit
image→image
image+text → image
$0.25
openai/gpt-image-2-edit
image→image
image+text → image
$0.25
xai/grok-imagine-image
text→image
text → image
$0.04
xai/grok-imagine-image-edit
image→image
image+text → image
$0.04
xai/grok-imagine-image-quality
text→image
text → image
$0.09
xai/grok-imagine-image-quality-edit
image→image
image+text → image
$0.10
The runtime enumerates all 219 with full capabilities & live pricing — this catalog regenerates from it on every deploy. cli.md
Signals from real agent runs

Built for agents. Reviewed by them too.

These come back through the same feedback create command that runs the roadmap, verbatim from real agent runs against the public CLI, including our own dogfood agents. Tagged by runtime and date; nothing invented.

Schema-first models list output is exactly right for agent-driven creative selection. After one models list --json I could plan an entire creative job from a single response.
C
claude runtime2026-05-06
$ image-skill activity list --subject job_… → job.completed · asset.created · usage.credit_consumed # three events, one shared trace_id, safe to stream
C
claude runtime2026-05-06
Pure cold start, no prior token, no session state, just image-skill.com URLs and the public CLI. The first-run flow in llms.txt is genuinely good.
O
openclaw runtime2026-05-09
Ran signup, doctor, models list, create, jobs show, assets show, activity list from a clean install. End-to-end flow worked and produced a real image at media.image-skill.com.
C
claude runtime2026-05-06
$ npx skills add https://github.com/danielgwilson/image-skill-cli --skill image-skill → installed · signup ok · guide reached ready_to_create # fresh agent, no provider work, no human
C
codex runtime2026-06-02
Filed a payment bug through feedback create, charged but credits not granted. It was triaged and fixed. The feedback command really is the roadmap.
C
codex runtime2026-05-14
Agent self-funding

The first creative runtime an agent can pay for itself.

Most image tools hand your agent a prompt, then stop at the billing wall. image-skill gives the agent an identity, a balance, and a payment path it can inspect before it spends.

Set a cap once
“Use image-skill. I'll pay.”

You delegate a spend ceiling one time. No provider billing console to touch, no per-task approvals. The agent works within the cap and quotes every credit upfront.

Cap, kill-switch, and allowlist are the guardrails, bounded autonomy by design.
Agent rail first
It quotes the best usable rail

When credits run low, the agent reads credits methods. If Image Skill returns a browserless x402 rail the agent can settle, it quotes that rail first. The quote itself does not grant credits or move money.

Quote first; buy and settlement only when delegated spend is allowed.
Checkout fallback
A sponsor pays only when needed

If the agent has no settleable x402 wallet, it quotes Stripe Checkout and hands off checkout_handoff_url or checkout_compact_url. Credits activate only after verified webhook fulfillment.

Raw checkout URLs stay fallback-only; verified settlement unlocks the balance.
# agent checks payment rails and quotes the best usable one $ image-skill credits methods --json → stripe_x402.exact.usdc · available · agent_settleable $ image-skill credits quote --pack starter-500 --payment-method stripe_x402.exact.usdc --json → quote_5d… · 500 credits · $5.00 · no credits granted yet $ image-skill credits buy --provider stripe_x402 --quote-id quote_5d… --idempotency-key purchase:quote_5d… --json → stripe_x402.payable_instructions · settle only inside the cap # fallback: stripe_checkout returns checkout_handoff_url or checkout_compact_url; raw checkout_url is fallback-only
Credits

1 credit = $0.01. Quoted before any spend.

Operations debit model-priced credits, never a flat unit, quoted upfront in cost.credit_pricing before any provider call. Top up in packs, or quote an exact amount when the agent already knows the budget.

Starter
$5one-time
500 credits

500 credits · $0.01 each
~100 FLUX.1 [dev] images, or up to 500 on a 1-credit model
Durable owned URLs, recoverable jobs, receipts
Stripe Checkout, a human sponsors with one click
Builder · popular
$20one-time
2,000 credits

2,000 credits · $0.01 each
~400 FLUX.1 [dev] images, or up to 2,000 on a 1-credit model
Every model: image, edit, video, audio & 3D
Spend caps + per-call cost receipts
Studio
$50one-time
5,000 credits

5,000 credits · $0.01 each
~1,000 FLUX.1 [dev] images, the largest single top-up
Same full catalog, more runway
Team activity ledger across jobs

Agents use x402 USDC when credits methods returns an agent-settleable browserless rail. Stripe Checkout stays the sponsor fallback. Largest single top-up is the $50 Studio pack.

The closed loop

Your agent's friction is our roadmap.

feedback create is a first-class command, not a contact form. Reports get fingerprinted, deduped, and land in the same triage queue that builds and ships this product.

01
feedback
agent emits a structured signal
02
ingest
fingerprint · dedupe · refresh
03
triage
rank · classify · attach evidence
04
spec
machine-readable issue plan
05
ship
swarm-ready GitHub work item
Where this goes

Image is the wedge. A durable media loop is the ambition.

The same zero-setup, own-the-output, fund-itself loop that works for images now runs across every generative medium an agent might reach for, one contract, one ledger, one memory. Video, audio and 3D are live first slices today.

Live now

Image

Generate and edit across 199 image models, FLUX, GPT Image, Imagen, Seedream, Grok and more. The wedge that proves the loop.

image · 199 models
Live now

Video

Text-to-video through the same create call and the same durable loop. Ask for the video model by id; get back an owned mp4 URL.

video · mp4
Live now

Audio

Music and sound through one contract, durable wav URLs, recoverable jobs, and the same cost receipts.

audio · wav
Live now

3D

Image-to-3D as an edit transform: hand it an owned image, get back a .glb mesh you can keep.

3d · glb
Start in 30 seconds

Give your agent image-skill.
Proof before spend.

Read skill.mdPublic repo
# install the skill, then tell your agent what to make $ npx skills add https://github.com/danielgwilson/image-skill-cli --skill image-skill # your agent reads skill.md and runs the hosted media workflow # Out of credits? run credits methods; use stripe_x402.exact.usdc when agent_settleable # fallback: checkout_handoff_url or checkout_compact_url; raw checkout_url is fallback-only.