{
  "schemaVersion": "1.0",
  "item": {
    "slug": "seiso",
    "name": "Seisoai",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Legendarylibr/seiso",
    "canonicalUrl": "https://clawhub.ai/Legendarylibr/seiso",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/seiso",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=seiso",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/seiso"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/seiso",
    "agentPageUrl": "https://openagent3.xyz/skills/seiso/agent",
    "manifestUrl": "https://openagent3.xyz/skills/seiso/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/seiso/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Seisoai",
        "body": "Base URL: https://seisoai.com\nPrimary endpoint: POST /api/gateway/invoke/{toolId} or POST /api/gateway/invoke with toolId in body.\nAuth: X-API-Key or x402 payment (USDC on Base)."
      },
      {
        "title": "Agent-First Workflow (Do This Every Session)",
        "body": "Discover live tools:\n\nGET /api/gateway/tools\n\n\nFor selected tools, fetch exact schema:\n\nGET /api/gateway/tools/{toolId}\n\n\nOptionally pre-price inputs:\n\nGET /api/gateway/price/{toolId}\n\n\nInvoke with API key or x402.\nIf queue tool, poll job status/result URLs from response.\n\nDo not rely on static tool lists when a live registry is available."
      },
      {
        "title": "Auth Strategy",
        "body": "Use this decision order:\n\nIf you have a project API key, use X-API-Key.\nIf you do not have a key, use x402 pay-per-request.\nDo not send browser CSRF tokens for machine clients."
      },
      {
        "title": "API Key Example",
        "body": "POST /api/gateway/invoke/image.generate.flux-2\nX-API-Key: sk_live_xxx\nContent-Type: application/json\n\n{\"prompt\":\"a sunset over mountains\"}"
      },
      {
        "title": "x402 Example (2-step)",
        "body": "Call without payment header.\nReceive 402 with payment requirements.\nSign/pay on Base.\nRetry same request with one of:\n\npayment-signature\nx-payment\npayment"
      },
      {
        "title": "High-Value Endpoints",
        "body": "Discovery:\n\nGET /api/gateway/tools\nGET /api/gateway/tools/{toolId}\nGET /api/gateway/price/{toolId}\nGET /api/gateway/mcp-manifest\n\n\nInvoke:\n\nPOST /api/gateway/invoke/{toolId}\nPOST /api/gateway/invoke\n\n\nJobs:\n\nGET /api/gateway/jobs/{jobId}?model=...\nGET /api/gateway/jobs/{jobId}/result?model=...\n\n\nAgent-scoped:\n\nGET /api/gateway/agents\nGET /api/gateway/agent/{agentId}\nPOST /api/gateway/agent/{agentId}/invoke/{toolId?}\nPOST /api/gateway/agent/{agentId}/orchestrate"
      },
      {
        "title": "Agent-Scoped Safety Controls (Mandatory)",
        "body": "For normal media generation (images, video, audio, 3D), use /api/gateway/invoke and the discovery endpoints above; no extra checks. The rules below apply only when the user explicitly asks to run or orchestrate a specific agent (e.g. a named bot or workflow).\n\nDefault posture: deny by default for agent-scoped routes (/api/gateway/agent/*). Use agent-scoped endpoints only when all checks pass:\n\nExplicit task requirement\n\nDo not call /agent/* routes unless the current task explicitly requires operating a specific agent.\n\n\nExact agent binding\n\nResolve agentId from a trusted source (GET /api/gateway/agents or user-provided exact ID).\nNever infer or guess agent IDs from names/prompts.\n\n\nAuthorization boundary\n\nUse only the current caller credentials.\nNever attempt to reuse, escalate, or proxy credentials to access other tenants/owners.\n\n\nSingle-agent scope\n\nFor one task, operate on one approved agentId unless the user explicitly requests multi-agent execution.\n\n\nTool allowlist enforcement\n\nBefore invoke/orchestrate, fetch GET /api/gateway/agent/{agentId} and only use tool IDs declared for that agent.\nReject tool IDs not listed in that agent definition.\n\n\nNo recursive orchestration\n\nDo not create self-referential orchestrations, orchestration loops, or fan-out patterns across unknown agents.\n\n\nNo broad discovery exfiltration\n\nDo not enumerate all agents unless needed for user task; prefer direct lookup when agentId is known.\n\n\nAudit trail requirement\n\nLog agentId, route, tool ID, and reason for each agent-scoped call in agent run notes.\n\n\nOn mismatch or ambiguity: stop\n\nIf ownership/scope/tool authorization is ambiguous, do not call /agent/*; fall back to /api/gateway/invoke."
      },
      {
        "title": "Images",
        "body": "Fast text->image: image.generate.flux-2\nPremium cinematic: image.generate.kling-image-v3\nPremium consistency: image.generate.kling-image-o3\n360/panorama: image.generate.nano-banana-pro\nPrompted edit: image.generate.flux-pro-kontext-edit\nFace swap: image.face-swap\nInpaint/outpaint: image.inpaint, image.outpaint\nBackground removal/layer: image.extract-layer\nUpscale: image.upscale"
      },
      {
        "title": "Video",
        "body": "Text->video (Veo): video.generate.veo3\nImage->video (Veo): video.generate.veo3-image-to-video\nFirst/last frame: video.generate.veo3-first-last-frame\nKling text: video.generate.kling-3-pro-text, video.generate.kling-3-std-text\nKling image: video.generate.kling-3-pro-image, video.generate.kling-3-std-image\nMotion transfer: video.generate.dreamactor-v2"
      },
      {
        "title": "Audio / Speech / Music",
        "body": "Voice clone TTS: audio.tts\nTTS quality tiers: audio.tts.minimax-hd, audio.tts.minimax-turbo\nLip sync: audio.lip-sync\nTranscription: audio.transcribe\nMusic: music.generate\nSound FX: audio.sfx\nStem separation: audio.stem-separation"
      },
      {
        "title": "3D",
        "body": "Image->3D standard: 3d.image-to-3d\nImage->3D pro: 3d.image-to-3d.hunyuan-pro\nText->3D pro: 3d.text-to-3d.hunyuan-pro\nFast image->3D: 3d.image-to-3d.hunyuan-rapid\nMesh post-processing: 3d.smart-topology, 3d.part-splitter"
      },
      {
        "title": "Minimal Payload Patterns",
        "body": "Text->image:\n\n{\"prompt\":\"...\"}\n\nImage edit:\n\n{\"prompt\":\"...\",\"image_url\":\"https://...\"}\n\nText->video:\n\n{\"prompt\":\"...\",\"duration\":\"6s\"}\n\nDreamActor motion transfer:\n\n{\"source_image_url\":\"https://...\",\"driving_video_url\":\"https://...\"}\n\nVoice clone TTS:\n\n{\"text\":\"...\",\"audio_url\":\"https://...\"}\n\n3D image->mesh:\n\n{\"image_url\":\"https://...\",\"output_format\":\"glb\"}"
      },
      {
        "title": "Queue Handling Contract",
        "body": "If executionMode is queue, response includes job metadata. Use:\n\nstatusUrl until completed/failed.\nresultUrl when completed.\n\nTreat queue submit success as billable success (x402 settlement/API-key credit deduction already handled server-side)."
      },
      {
        "title": "Error Policy",
        "body": "400: Schema/input mismatch. Re-fetch tool schema and correct fields.\n402: Missing/invalid payment or insufficient API key credits.\n404: Tool/agent not found. Refresh registry.\n503: Tool disabled. Select fallback in same category.\n500: Retry with backoff; then switch model/tool."
      },
      {
        "title": "Reliability Rules for Agents",
        "body": "Always discover live tools before planning multi-step flows.\nUse exact schema from GET /tools/{toolId} for required fields.\nKeep one tool call per request; chain in your agent.\nPrefer explicit model/tool IDs over natural-language routing assumptions.\nFor retries, do not reuse stale x402 signatures.\nTreat /api/gateway/agent/* as privileged routes and apply the mandatory safety controls above."
      },
      {
        "title": "Self-Maintenance",
        "body": "When this file is updated:\n\nKeep IDs aligned with backend/services/toolRegistry.ts.\nUpdate last_synced and version.\nKeep examples minimal and executable."
      },
      {
        "title": "Changelog",
        "body": "[2026-02-09] v1.1.1 - Added mandatory safety controls for agent-scoped endpoints (deny-by-default, agent/tool scoping, anti-recursion, and audit requirements).\n[2026-02-09] v1.1.0 - Rewrote for agent discovery-first flow, corrected stale tool IDs/params, tightened auth/x402 guidance, and added queue/error reliability policy.\n[2026-02-08] v1.0.0 - Initial self-improvement protocol added."
      }
    ],
    "body": "Seisoai\n\nBase URL: https://seisoai.com Primary endpoint: POST /api/gateway/invoke/{toolId} or POST /api/gateway/invoke with toolId in body. Auth: X-API-Key or x402 payment (USDC on Base).\n\nAgent-First Workflow (Do This Every Session)\nDiscover live tools:\nGET /api/gateway/tools\nFor selected tools, fetch exact schema:\nGET /api/gateway/tools/{toolId}\nOptionally pre-price inputs:\nGET /api/gateway/price/{toolId}\nInvoke with API key or x402.\nIf queue tool, poll job status/result URLs from response.\n\nDo not rely on static tool lists when a live registry is available.\n\nAuth Strategy\n\nUse this decision order:\n\nIf you have a project API key, use X-API-Key.\nIf you do not have a key, use x402 pay-per-request.\nDo not send browser CSRF tokens for machine clients.\nAPI Key Example\nPOST /api/gateway/invoke/image.generate.flux-2\nX-API-Key: sk_live_xxx\nContent-Type: application/json\n\n{\"prompt\":\"a sunset over mountains\"}\n\nx402 Example (2-step)\nCall without payment header.\nReceive 402 with payment requirements.\nSign/pay on Base.\nRetry same request with one of:\npayment-signature\nx-payment\npayment\nHigh-Value Endpoints\nDiscovery:\nGET /api/gateway/tools\nGET /api/gateway/tools/{toolId}\nGET /api/gateway/price/{toolId}\nGET /api/gateway/mcp-manifest\nInvoke:\nPOST /api/gateway/invoke/{toolId}\nPOST /api/gateway/invoke\nJobs:\nGET /api/gateway/jobs/{jobId}?model=...\nGET /api/gateway/jobs/{jobId}/result?model=...\nAgent-scoped:\nGET /api/gateway/agents\nGET /api/gateway/agent/{agentId}\nPOST /api/gateway/agent/{agentId}/invoke/{toolId?}\nPOST /api/gateway/agent/{agentId}/orchestrate\nAgent-Scoped Safety Controls (Mandatory)\n\nFor normal media generation (images, video, audio, 3D), use /api/gateway/invoke and the discovery endpoints above; no extra checks. The rules below apply only when the user explicitly asks to run or orchestrate a specific agent (e.g. a named bot or workflow).\n\nDefault posture: deny by default for agent-scoped routes (/api/gateway/agent/*). Use agent-scoped endpoints only when all checks pass:\n\nExplicit task requirement\nDo not call /agent/* routes unless the current task explicitly requires operating a specific agent.\nExact agent binding\nResolve agentId from a trusted source (GET /api/gateway/agents or user-provided exact ID).\nNever infer or guess agent IDs from names/prompts.\nAuthorization boundary\nUse only the current caller credentials.\nNever attempt to reuse, escalate, or proxy credentials to access other tenants/owners.\nSingle-agent scope\nFor one task, operate on one approved agentId unless the user explicitly requests multi-agent execution.\nTool allowlist enforcement\nBefore invoke/orchestrate, fetch GET /api/gateway/agent/{agentId} and only use tool IDs declared for that agent.\nReject tool IDs not listed in that agent definition.\nNo recursive orchestration\nDo not create self-referential orchestrations, orchestration loops, or fan-out patterns across unknown agents.\nNo broad discovery exfiltration\nDo not enumerate all agents unless needed for user task; prefer direct lookup when agentId is known.\nAudit trail requirement\nLog agentId, route, tool ID, and reason for each agent-scoped call in agent run notes.\nOn mismatch or ambiguity: stop\nIf ownership/scope/tool authorization is ambiguous, do not call /agent/*; fall back to /api/gateway/invoke.\nTool Selection Cheatsheet (Verified IDs)\nImages\nFast text->image: image.generate.flux-2\nPremium cinematic: image.generate.kling-image-v3\nPremium consistency: image.generate.kling-image-o3\n360/panorama: image.generate.nano-banana-pro\nPrompted edit: image.generate.flux-pro-kontext-edit\nFace swap: image.face-swap\nInpaint/outpaint: image.inpaint, image.outpaint\nBackground removal/layer: image.extract-layer\nUpscale: image.upscale\nVideo\nText->video (Veo): video.generate.veo3\nImage->video (Veo): video.generate.veo3-image-to-video\nFirst/last frame: video.generate.veo3-first-last-frame\nKling text: video.generate.kling-3-pro-text, video.generate.kling-3-std-text\nKling image: video.generate.kling-3-pro-image, video.generate.kling-3-std-image\nMotion transfer: video.generate.dreamactor-v2\nAudio / Speech / Music\nVoice clone TTS: audio.tts\nTTS quality tiers: audio.tts.minimax-hd, audio.tts.minimax-turbo\nLip sync: audio.lip-sync\nTranscription: audio.transcribe\nMusic: music.generate\nSound FX: audio.sfx\nStem separation: audio.stem-separation\n3D\nImage->3D standard: 3d.image-to-3d\nImage->3D pro: 3d.image-to-3d.hunyuan-pro\nText->3D pro: 3d.text-to-3d.hunyuan-pro\nFast image->3D: 3d.image-to-3d.hunyuan-rapid\nMesh post-processing: 3d.smart-topology, 3d.part-splitter\nMinimal Payload Patterns\n\nText->image:\n\n{\"prompt\":\"...\"}\n\n\nImage edit:\n\n{\"prompt\":\"...\",\"image_url\":\"https://...\"}\n\n\nText->video:\n\n{\"prompt\":\"...\",\"duration\":\"6s\"}\n\n\nDreamActor motion transfer:\n\n{\"source_image_url\":\"https://...\",\"driving_video_url\":\"https://...\"}\n\n\nVoice clone TTS:\n\n{\"text\":\"...\",\"audio_url\":\"https://...\"}\n\n\n3D image->mesh:\n\n{\"image_url\":\"https://...\",\"output_format\":\"glb\"}\n\nQueue Handling Contract\n\nIf executionMode is queue, response includes job metadata. Use:\n\nstatusUrl until completed/failed.\nresultUrl when completed.\n\nTreat queue submit success as billable success (x402 settlement/API-key credit deduction already handled server-side).\n\nError Policy\n400: Schema/input mismatch. Re-fetch tool schema and correct fields.\n402: Missing/invalid payment or insufficient API key credits.\n404: Tool/agent not found. Refresh registry.\n503: Tool disabled. Select fallback in same category.\n500: Retry with backoff; then switch model/tool.\nReliability Rules for Agents\nAlways discover live tools before planning multi-step flows.\nUse exact schema from GET /tools/{toolId} for required fields.\nKeep one tool call per request; chain in your agent.\nPrefer explicit model/tool IDs over natural-language routing assumptions.\nFor retries, do not reuse stale x402 signatures.\nTreat /api/gateway/agent/* as privileged routes and apply the mandatory safety controls above.\nSelf-Maintenance\n\nWhen this file is updated:\n\nKeep IDs aligned with backend/services/toolRegistry.ts.\nUpdate last_synced and version.\nKeep examples minimal and executable.\nChangelog\n[2026-02-09] v1.1.1 - Added mandatory safety controls for agent-scoped endpoints (deny-by-default, agent/tool scoping, anti-recursion, and audit requirements).\n[2026-02-09] v1.1.0 - Rewrote for agent discovery-first flow, corrected stale tool IDs/params, tightened auth/x402 guidance, and added queue/error reliability policy.\n[2026-02-08] v1.0.0 - Initial self-improvement protocol added."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Legendarylibr/seiso",
    "publisherUrl": "https://clawhub.ai/Legendarylibr/seiso",
    "owner": "Legendarylibr",
    "version": "1.1.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/seiso",
    "downloadUrl": "https://openagent3.xyz/downloads/seiso",
    "agentUrl": "https://openagent3.xyz/skills/seiso/agent",
    "manifestUrl": "https://openagent3.xyz/skills/seiso/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/seiso/agent.md"
  }
}