{
  "schemaVersion": "1.0",
  "item": {
    "slug": "comfyui-painter",
    "name": "ComfyUI Painter",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/zeron-G/comfyui-painter",
    "canonicalUrl": "https://clawhub.ai/zeron-G/comfyui-painter",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/comfyui-painter",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=comfyui-painter",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "DESIGN.md",
      "SKILL.md",
      "config.json",
      "scripts/auto_shutdown.py",
      "scripts/auto_tune.py",
      "scripts/civitai.py"
    ],
    "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-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-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/comfyui-painter"
    },
    "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/comfyui-painter",
    "agentPageUrl": "https://openagent3.xyz/skills/comfyui-painter/agent",
    "manifestUrl": "https://openagent3.xyz/skills/comfyui-painter/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/comfyui-painter/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": "ComfyUI Painter v2.0",
        "body": "通过 ComfyUI API 在本地 RTX 5090 上生成图片，集成 CivitAI 模型管理。"
      },
      {
        "title": "工作流程",
        "body": "检查 ComfyUI 是否运行，未运行则自动启动\n解析用户需求：提示词、模型、参数\n自动调参：根据模型从 CivitAI 获取推荐参数（或使用 config 缓存）\n调用 generate.py 生成图片\n将图片发送到 Discord\n心跳时调用 auto_shutdown.py 检查空闲关闭"
      },
      {
        "title": "脚本路径",
        "body": "所有脚本相对于此 skill 目录：\n\nscripts/comfyui_manager.py — 启动/关闭/状态\nscripts/generate.py — 生成图片（Python API 调用）\nscripts/auto_shutdown.py — 空闲自动关闭检查\nscripts/civitai.py — CivitAI 集成（搜索/详情/下载/更新检查/推荐参数）\nscripts/auto_tune.py — 自动调参（从 CivitAI 样图元数据提取推荐设置）\nconfig.json — 配置文件（模型别名、默认参数、路径、CivitAI 关联）"
      },
      {
        "title": "启动 ComfyUI",
        "body": "import scripts.comfyui_manager as mgr\nmgr.start()  # 自动从 WSL 启动 Windows ComfyUI 进程"
      },
      {
        "title": "生成图片",
        "body": "from scripts.generate import generate\nresult = generate(\n    positive=\"your prompt here\",\n    model=\"noobv6\",        # 见下方模型别名\n    batch_size=4,\n    width=1024,\n    height=1536,\n    steps=20,\n    cfg=5,\n)\n# result = {\"ok\": True, \"images\": [\"/mnt/d/.../sdi_00201_.png\", ...]}"
      },
      {
        "title": "带自动调参生成",
        "body": "from scripts.auto_tune import get_tuned_params\nfrom scripts.generate import generate\n\nparams = get_tuned_params(\"janku\")  # 从 CivitAI 获取推荐参数\nresult = generate(\n    positive=\"your prompt\",\n    model=\"janku\",\n    steps=params[\"steps\"],\n    cfg=params[\"cfg\"],\n    width=params[\"width\"],\n    height=params[\"height\"],\n)"
      },
      {
        "title": "CivitAI 搜索模型",
        "body": "python3 scripts/civitai.py search \"anime checkpoint\" --limit 5"
      },
      {
        "title": "CivitAI 查看模型详情",
        "body": "python3 scripts/civitai.py info 140272"
      },
      {
        "title": "CivitAI 获取推荐参数",
        "body": "python3 scripts/civitai.py params 140272"
      },
      {
        "title": "CivitAI 检查本地模型更新",
        "body": "python3 scripts/civitai.py check-updates\n\n⚠️ 需要计算 SHA256，每个文件约 30 秒"
      },
      {
        "title": "CivitAI 下载模型",
        "body": "python3 scripts/civitai.py download \"https://civitai.com/api/download/models/XXXXX\" --filename model_name.safetensors"
      },
      {
        "title": "更新所有模型的推荐参数到 config",
        "body": "python3 scripts/auto_tune.py update-all"
      },
      {
        "title": "发送图片到 Discord",
        "body": "生成完成后，将图片 cp 到 workspace 临时目录，用 message tool 发送到 #🎨-画图 频道（channel:1476675131404193823）。"
      },
      {
        "title": "关闭 ComfyUI",
        "body": "import scripts.comfyui_manager as mgr\nmgr.stop()"
      },
      {
        "title": "模型别名",
        "body": "别名CheckpointCivitAI ID版本风格hassakuhassakuXLIllustrious_v34140272v3.4Illustrious 动漫noobv6pornmasterPro_noobV61045588noob-V6NoobAI 动漫（默认）noobv4pornmasterPro_noobV41045588noob-V4NoobAI 动漫（旧版）sdxlv8pornmaster_proSDXLV882543Pro-SDXL-V8SDXL 写实jankuJANKUTrainedNoobaiRouwei_v691277670v6.9NoobAI+RouWei 混合nova3dnova3DCGXL_ilV80715287IL v8.03DCG/2.5DunholyunholyDesireMixSinister_v701307857v7.0暗黑美学fluxflux1-dev-bnb-nf4-v2638187BNB NF4 v2Flux 写实"
      },
      {
        "title": "自动调参（model_params）",
        "body": "每个模型在 config.json 中有 CivitAI 推荐的最佳参数。生成时：\n\n用户指定的参数优先\n未指定则使用 config.json → model_params[alias] 的推荐值\nmodel_params 也没有则使用 defaults 全局默认\n\n模型StepsCFG采样器hassaku207euler_ajanku207euler_anoobv6207euler_asdxlv8255dpmpp_2mnova3d207euler_aunholy207euler_aflux201euler"
      },
      {
        "title": "CivitAI 配置",
        "body": "API Key 存于 ~/.openclaw/workspace/credentials/civitai.md，格式：\n\n# CivitAI API Key\nToken: your_api_key_here"
      },
      {
        "title": "提示词优化指南",
        "body": "用户给自然语言描述时，转换为专业 Stable Diffusion 提示词：\n\n质量标签在前：masterpiece, best quality, absurdres, highres\n用 BREAK 分隔不同语义段\n动作/姿势用专业标签：mating press, pov, from below, spread legs\n细节标签：detailed skin, sweat, wet skin, motion blur, dynamic angle\n负面提示词加入：censored, mosaic censoring, bar censor"
      },
      {
        "title": "心跳集成",
        "body": "每次心跳时运行 auto_shutdown.py 检查空闲时间，超过 15 分钟无使用自动关闭 ComfyUI 释放显存。"
      }
    ],
    "body": "ComfyUI Painter v2.0\n\n通过 ComfyUI API 在本地 RTX 5090 上生成图片，集成 CivitAI 模型管理。\n\n工作流程\n检查 ComfyUI 是否运行，未运行则自动启动\n解析用户需求：提示词、模型、参数\n自动调参：根据模型从 CivitAI 获取推荐参数（或使用 config 缓存）\n调用 generate.py 生成图片\n将图片发送到 Discord\n心跳时调用 auto_shutdown.py 检查空闲关闭\n脚本路径\n\n所有脚本相对于此 skill 目录：\n\nscripts/comfyui_manager.py — 启动/关闭/状态\nscripts/generate.py — 生成图片（Python API 调用）\nscripts/auto_shutdown.py — 空闲自动关闭检查\nscripts/civitai.py — CivitAI 集成（搜索/详情/下载/更新检查/推荐参数）\nscripts/auto_tune.py — 自动调参（从 CivitAI 样图元数据提取推荐设置）\nconfig.json — 配置文件（模型别名、默认参数、路径、CivitAI 关联）\n使用方式\n启动 ComfyUI\nimport scripts.comfyui_manager as mgr\nmgr.start()  # 自动从 WSL 启动 Windows ComfyUI 进程\n\n生成图片\nfrom scripts.generate import generate\nresult = generate(\n    positive=\"your prompt here\",\n    model=\"noobv6\",        # 见下方模型别名\n    batch_size=4,\n    width=1024,\n    height=1536,\n    steps=20,\n    cfg=5,\n)\n# result = {\"ok\": True, \"images\": [\"/mnt/d/.../sdi_00201_.png\", ...]}\n\n带自动调参生成\nfrom scripts.auto_tune import get_tuned_params\nfrom scripts.generate import generate\n\nparams = get_tuned_params(\"janku\")  # 从 CivitAI 获取推荐参数\nresult = generate(\n    positive=\"your prompt\",\n    model=\"janku\",\n    steps=params[\"steps\"],\n    cfg=params[\"cfg\"],\n    width=params[\"width\"],\n    height=params[\"height\"],\n)\n\nCivitAI 搜索模型\npython3 scripts/civitai.py search \"anime checkpoint\" --limit 5\n\nCivitAI 查看模型详情\npython3 scripts/civitai.py info 140272\n\nCivitAI 获取推荐参数\npython3 scripts/civitai.py params 140272\n\nCivitAI 检查本地模型更新\npython3 scripts/civitai.py check-updates\n\n\n⚠️ 需要计算 SHA256，每个文件约 30 秒\n\nCivitAI 下载模型\npython3 scripts/civitai.py download \"https://civitai.com/api/download/models/XXXXX\" --filename model_name.safetensors\n\n更新所有模型的推荐参数到 config\npython3 scripts/auto_tune.py update-all\n\n发送图片到 Discord\n\n生成完成后，将图片 cp 到 workspace 临时目录，用 message tool 发送到 #🎨-画图 频道（channel:1476675131404193823）。\n\n关闭 ComfyUI\nimport scripts.comfyui_manager as mgr\nmgr.stop()\n\n模型别名\n别名\tCheckpoint\tCivitAI ID\t版本\t风格\nhassaku\thassakuXLIllustrious_v34\t140272\tv3.4\tIllustrious 动漫\nnoobv6\tpornmasterPro_noobV6\t1045588\tnoob-V6\tNoobAI 动漫（默认）\nnoobv4\tpornmasterPro_noobV4\t1045588\tnoob-V4\tNoobAI 动漫（旧版）\nsdxlv8\tpornmaster_proSDXLV8\t82543\tPro-SDXL-V8\tSDXL 写实\njanku\tJANKUTrainedNoobaiRouwei_v69\t1277670\tv6.9\tNoobAI+RouWei 混合\nnova3d\tnova3DCGXL_ilV80\t715287\tIL v8.0\t3DCG/2.5D\nunholy\tunholyDesireMixSinister_v70\t1307857\tv7.0\t暗黑美学\nflux\tflux1-dev-bnb-nf4-v2\t638187\tBNB NF4 v2\tFlux 写实\n自动调参（model_params）\n\n每个模型在 config.json 中有 CivitAI 推荐的最佳参数。生成时：\n\n用户指定的参数优先\n未指定则使用 config.json → model_params[alias] 的推荐值\nmodel_params 也没有则使用 defaults 全局默认\n模型\tSteps\tCFG\t采样器\nhassaku\t20\t7\teuler_a\njanku\t20\t7\teuler_a\nnoobv6\t20\t7\teuler_a\nsdxlv8\t25\t5\tdpmpp_2m\nnova3d\t20\t7\teuler_a\nunholy\t20\t7\teuler_a\nflux\t20\t1\teuler\nCivitAI 配置\n\nAPI Key 存于 ~/.openclaw/workspace/credentials/civitai.md，格式：\n\n# CivitAI API Key\nToken: your_api_key_here\n\n提示词优化指南\n\n用户给自然语言描述时，转换为专业 Stable Diffusion 提示词：\n\n质量标签在前：masterpiece, best quality, absurdres, highres\n用 BREAK 分隔不同语义段\n动作/姿势用专业标签：mating press, pov, from below, spread legs\n细节标签：detailed skin, sweat, wet skin, motion blur, dynamic angle\n负面提示词加入：censored, mosaic censoring, bar censor\n心跳集成\n\n每次心跳时运行 auto_shutdown.py 检查空闲时间，超过 15 分钟无使用自动关闭 ComfyUI 释放显存。"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/zeron-G/comfyui-painter",
    "publisherUrl": "https://clawhub.ai/zeron-G/comfyui-painter",
    "owner": "zeron-G",
    "version": "2.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/comfyui-painter",
    "downloadUrl": "https://openagent3.xyz/downloads/comfyui-painter",
    "agentUrl": "https://openagent3.xyz/skills/comfyui-painter/agent",
    "manifestUrl": "https://openagent3.xyz/skills/comfyui-painter/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/comfyui-painter/agent.md"
  }
}