[!WARNING] The project is still in beta. While it is designed to be non-destructive, please make sure to backup your automations before editing them with C.A.F.E.!
The "Third Way" for Home Assistant: Visual Logic with 0% Overhead.
C.A.F.E. is a visual flow editor that brings Node-RED-style power to Home Assistant without the external engine. It transpiles your visual diagrams into 100% compliant, native Home Assistant logic stored directly in the core system.
"THIS Home Assistant Automation Integration Is Absolutely INCREDIBLE!" — Byte of Geek
For years, Home Assistant users had to choose: the stability of native YAML or the clarity of Node-RED flows. C.A.F.E. eliminates the trade-off.

cafe_data.json. Visual metadata (node positions, etc.) is stored as a harmless object inside the automation's variables block.C.A.F.E. is architected with strict engineering principles to ensure your home remains reliable:
call_service responses. Call a script, capture its output, and use it in subsequent nodes via native Jinja templates.https://github.com/FezVrasta/cafe-hass as an Integration.When you call a script and set a response_variable (e.g., weather_data), those values become available to all subsequent nodes in the flow. You can access them using standard Home Assistant Jinja syntax in any text field:
The temperature is {{ weather_data.temp }} degrees.
No. Unlike Node-RED, C.A.F.E. is not an execution engine; it is a specialized compiler. Once you hit "Save," the resulting logic is pure, native Home Assistant code. It consumes zero CPU or RAM in the background because the logic runs directly within the HA Core automation engine.
Yes. C.A.F.E. and the native editor are two different "lenses" for the same data. You can open a C.A.F.E. automation in the native editor to make a quick change, and C.A.F.E. will pick up those changes (and attempt to preserve your layout) the next time you open it.
Your house keeps running. Because C.A.F.E. stores everything as native YAML, your automations are independent of the editor. You will lose the visual layout (the positions of the boxes), but the logic itself remains 100% intact and editable via YAML.
C.A.F.E. uses an Optimized Compilation strategy.
While C.A.F.E. is in Beta, we recommend keeping backups. However, because it targets the native HA engine, it is inherently more stable than external engines. If the editor has a bug, it might mess up your YAML, but it can't "crash" your automation engine or cause a background memory leak.
You can use Jinja2 templates directly in any text field within C.A.F.E. For more complex logic, the "Set Variables" node allows you to create and manipulate flow-scoped variables dynamically. This combination provides similar flexibility to Node-RED's "Function" node while staying within the native Home Assistant framework.
MIT License. Created by Federico Zivolo.
$ claude mcp add cafe-hass \
-- python -m otcore.mcp_server <graph>