Nodes/ComfyUI CrewAI/📎CrewAI Agent List
ComfyUI Node

📎CrewAI Agent List

Pack a whole cast of agents into one wire

By luandev·Created 2 years ago·Updated 2 years ago· 63
📎CrewAI Agent List
  • agent-1
  • agent

The single-agent version of a ComfyUI-CrewAI workflow is fine - one 📎CrewAI Agent, one task, done. But the whole point of CrewAI is collaboration, and the moment you want a creative director arguing with a critic and a prompt engineer, you need to hand the 📎CrewAI Crew node a list of agents, not one. That's the only job of this node: collect several CREWAI_AGENT objects onto a single output wire.

How it works

It's a create_list pass-through. The node starts with one input, agent-1, and grows more as you connect them. The pack ships a small JS extension that watches for connections: plug an agent into agent-2? It adds agent-3. Disconnect one? It prunes the empty input and renumbers the rest. So you don't configure anything - you just keep dragging Agent nodes in and the list builds itself.

The output is agent, a list of CREWAI_AGENT, which feeds the Crew node's agents input. That's the whole data flow:

CrewAI Agent ×3  →  CrewAI Agent List  →  CrewAI Crew

Under the hood it's the shared base-node helper: every non-null agent you connected gets appended to a Python list in input order, and that list is what the Crew receives. The complex_crew.json example in the repo shows the pattern - three agents (Creative Director, Creative Manager, Prompt Creator) through one list into a crew.

When to reach for it (and when not to)

Reach for it when your crew genuinely has more than one agent - that's the case the pack's hierarchical mode is built for. Don't bother for a single agent; the Crew node accepts one agent on its agents input directly, and a list of one is just extra clicks.

A couple of small notes from the source:

  • This node doesn't have OUTPUT_NODE set, and it does nothing until the Crew runs - it's pure plumbing, no LLM calls, no cost.
  • The list you get is just a Python list on the wire. If you're scripting, the ordering is the order you connected the inputs, so a manager agent that should run last still sits in the same list as everyone else - the Crew decides who does what, not the list order.

Installing

It ships with the ComfyUI-CrewAI pack. Install via ComfyUI Manager (search "ComfyUI-CrewAI") or:

cd ComfyUI/custom_nodes
git clone https://github.com/luandev/ComfyUI-CrewAI
cd ComfyUI-CrewAI
pip install -r requirements.txt

Restart ComfyUI and the list nodes appear in the 📎CrewAI category. No models, no keys - this node just organizes the agents you already made.

Category📎CrewAI

Inputs (1)

NameTypeDefaultDescription
agent-1CREWAI_AGENT—

Outputs (1)

NameTypeDescription
agentCREWAI_AGENT—