comfyui

Generate images, video, and audio via diffusion workflows.

  • comfyui
  • image-generation
  • stable-diffusion
  • flux
  • sd3
  • wan-video
  • hunyuan-video
  • creative
  • generative-ai
  • video-generation

Declared platforms: macos · linux · windows

Install
npx skills add 'https://github.com/NousResearch/hermes-agent/tree/main/optional-skills/creative/comfyui'
Download bundle ↓
main · 24fd22bScanned 2026-09-15

Contributors

GitHub-linked commit authors for this SKILL.md at the saved revision. Co-authors and history before file renames are not included.

File history ↗
View on GitHub
← Back to SKILL.md
"""Pytest configuration for the comfyui skill test suite. Adds `scripts/` to sys.path so tests can `from _common import ...`, andprovides a few common fixtures.""" from __future__ import annotations import jsonimport osimport sysfrom pathlib import Path import pytest ROOT = Path(__file__).resolve().parent.parentSCRIPTS = ROOT / "scripts"WORKFLOWS = ROOT / "workflows" sys.path.insert(0, str(SCRIPTS))  @pytest.fixturedef sd15_workflow() -> dict:    return json.loads((WORKFLOWS / "sd15_txt2img.json").read_text(encoding="utf-8"))  @pytest.fixturedef flux_workflow() -> dict:    return json.loads((WORKFLOWS / "flux_dev_txt2img.json").read_text(encoding="utf-8"))  @pytest.fixturedef video_workflow() -> dict:    return json.loads((WORKFLOWS / "wan_video_t2v.json").read_text(encoding="utf-8"))  @pytest.fixturedef workflows_dir() -> Path:    return WORKFLOWS  @pytest.fixturedef scripts_dir() -> Path:    return SCRIPTS  @pytest.fixturedef cloud_key() -> str | None:    """Cloud API key if set, otherwise None.     Tests that need cloud connectivity should skip when this is None.    """    return os.environ.get("COMFY_CLOUD_API_KEY")  def pytest_collection_modifyitems(config, items):    """Auto-skip cloud tests when no API key is set."""    if os.environ.get("COMFY_CLOUD_API_KEY"):        return    skip_cloud = pytest.mark.skip(reason="Set COMFY_CLOUD_API_KEY to run cloud tests")    for item in items:        if "cloud" in item.keywords:            item.add_marker(skip_cloud)