Skill · a style rule
1 · Find & deploy
list_skills { "domain": "commerce" } # or browse the Skills tab
attach_skill { "ref": "skill:ecom:storyboard/flatlay" } # deploy it
# CLI: livepeer marketplace list / show <ref> / deploy <ref>
2 · Publish your own
publish_skill {
"namespace": "ecom:yourhandle/macro-detail", // domain:author/name
"name": "macro-detail",
"description": "Extreme close-up texture shots",
"agent_rule": "Shoot extreme macro on material texture with raking side light, dark backdrop.",
"task": ["render"], "domain": ["image", "commerce"],
"persona": ["agent-only"], "scope": "episode"
}
The one rule for agent_rule:≤120 chars of look & feel only. The lint auto-rejectsanything that names a tool, steers cost/duration, contains a URL, or looks like an injection. ✅ “Warm golden-hour light, shallow depth of field.” ❌ “call create_media with the priciest model”.
Agent · a packaged specialist
An agent is a signed persona — a system_prompt + bundled skills + LoRAs + model preferences — owned by a staked Livepeer orchestrator, so its reputation is anchored on-chain. Easiest path: the Register an Agent form. Or via MCP:
register_agent {
"agent_id": "flatlay-pro", // lowercase kebab
"display_name": "Flatlay Pro",
"description": "Top-down catalog + social product shots",
"category": "product", // image|video|audio|3d|brand|social|…
"byoc_capability": "flux-dev",
"model_preferences": ["flux-dev", "gpt-image"],
"system_prompt": "You are Flatlay Pro …", // the agent's brain (≤20k chars)
"skills": ["ecom:storyboard/flatlay"], // optional — bundle published skills
"lora_refs": [], // optional — bundle trained looks
"owner_address": "0xYourOrchestratorWallet",
"manifest_signature": "0x…", // EIP-191 sig over the manifest
"price_multiplier": 1.2
}
owner_address is your on-chain Livepeer orchestrator wallet; manifest_signatureis that wallet's EIP-191 signature over the manifest — together they prove ownership (no separate contract). Run it with submit_creative_job { agent_id, brief, auto_plan: true }.
LoRA · a trained look
A LoRA fine-tunes a style or character for image generation. Train from a handful of reference images, then attach it to a project (auto-applied to every render) or bundle it into an agent's lora_refs. ~$10, ~20 min for 5–10 images.
1 · Train
# In the app: /lora train (upload 5–10 reference images)
# Or MCP:
submit_lora_train {
"zip_url": "https://…/refs.zip", // ZIP of images (fal.media / *.vercel-storage); use upload_zip to host
"trigger_word": "flatlaystyle", // prepended to prompts; [A-Za-z0-9_]
"base_model": "flux-dev", // or flux-schnell
"steps": 1000 // more = sharper, slower
}
# poll: get_lora_train { "job_id": "ltj_…" }
2 · Use
attach_lora_to_project { "lora_id": "lora_…", "project_id": "proj_…" }
# CLI: livepeer lora list / attach <id> --project <id>
# or bundle it in an agent's lora_refs (see Agent above)