RH Execute AI App
RH Execute AI App runs a packaged RunningHub app, not a raw workflow
- api_config
- node_info_list
- images
- text
- audio
- task_id
RunningHub has two flavors of "run something on their cloud." The first is a raw workflow, which RH Execute Workflow handles. The second is an AI App - a packaged, polished version of a workflow that RunningHub wraps with a friendly interface (an ID like webapp_id, a nice frontend, usually simplified inputs). If you found a cool AI App on RunningHub's site and want to drive it from inside your local ComfyUI graph, this is the node.
Think of it as the API for an app you'd otherwise click around in a browser. Instead of submitting a workflowId, you submit a webapp_id (the AI App ID from RunningHub), and instead of api_config only, this node needs both that and the config from RH Settings.
What you set
api_config- the STRUCT output of RH Settings (your API key, base URL, workflow ID). Connect RH Settings here.webapp_id- the AI App ID from RunningHub. This is the one input that's unique to this node, and it's the one you'll forget to fill in. Leave it empty and the node returns a "No AI App ID configured" message in itstextoutput.node_info_list- optional, from chained RH Node Info nodes, to override the app's parameters.run_timeout(600s),poll_interval(3s),use_rtx4090(false) - same knobs as RH Execute Workflow: how long to wait, how often to poll, and whether to pay for the faster GPU tier.
Outputs
Four of them: images (IMAGE), text (STRING), audio (AUDIO), and task_id (STRING).
Mechanically it's the same dance as Execute Workflow - it hits /task/openapi/ai-app/run, gets a taskId, polls until done, then downloads results and converts them. Images become a batched IMAGE tensor, audio gets loaded into ComfyUI's AUDIO dict, and anything else lands as text. Note what's missing compared to the workflow node: no per-output URL sockets, no video frames. If your AI App produces video, it'll come back as a URL inside text (the code just appends URLs that aren't images or audio), so plan to grab it from there and hand it to RH Download Video.
Gotchas worth knowing
- The AI App ID gets cast to an integer (
int(webapp_id)), so a non-numeric ID will throw before it ever reaches the API. Double-check you copied the right field from RunningHub. - An empty
api_keyfails with the "No API key configured" message rather than a crash - checktextoutput when nothing comes back. - Same shared-pool caveat as every RunningHub node: it's a paid cloud platform, results cost credits, and your inputs leave the machine. Fine for offloading heavy work, not something to leave running on loop accidentally.
Install
cd ComfyUI/custom_nodes/
git clone https://github.com/liangzheng1128/ComfyUI-RunningHub
cd ComfyUI-RunningHub
pip install -r requirements.txt
or search "RunningHub" in ComfyUI Manager and restart. The pack's dependencies are light - requests, websocket-client, Pillow, numpy.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| api_config | STRUCT | Connect RH_Settings output here | |
| webapp_id | STRING | AI App ID from RunningHub | |
| node_info_listopt | ARRAY | Connect RH_NodeInfo output(s) here | |
| run_timeoutopt | INT | 6001–9999999 | — |
| poll_intervalopt | INT | 31–60 | — |
| use_rtx4090opt | BOOLEAN | false | — |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| text | STRING | — |
| audio | AUDIO | — |
| task_id | STRING | — |