If you’ve used Apple Shortcuts, you’ve experienced magic variables. You tap a field, and iOS shows you every piece of data available from previous actions. No documentation needed. No property path guessing. Just pick what you want.
Professional workflow tools rarely work this way.
The Property Path Problem
In Node-RED, accessing message data means knowing the exact property path. Want the filename from an uploaded PDF? You need to know it’s at msg.req.files[0].originalname. Not msg.filename. Not msg.file.name. The exact path.
We watched an automation technician spend 15 minutes trying different variations:
msg.filename— undefinedmsg.file— undefinedmsg.files— undefinedmsg.req.file— close, but wrong
Eventually they opened the documentation, found an example, and copied the correct path. Then they needed another property and started the process again.
Why Can’t It Just Tell Me?
Apple Shortcuts solved this in 2018. As your workflow runs, it learns what data each action produces. Need a variable? Tap the field. See everything available. Pick one. Done.
Node-RED messages flow constantly. The system knows what properties exist. It just doesn’t expose that information where you need it.
Message Learner changes this.
How It Works
Message Learner sits on your canvas like a debug node. As messages flow through your workflow, it:
- Captures each message structure
- Extracts all property paths
- Organizes them by source node
- Displays them in a clean, searchable list
Click any property path to copy it to your clipboard. Paste it into your function node, switch condition, or template. No guessing. No documentation diving. Just direct access to what’s actually in your messages.
Beyond Property Discovery
The interface shows more than paths:
- Type information: String, number, object, array
- Example values: See actual data, not just paths
- Frequency: How often each property appears
- Source nodes: Where each property originated
This turns Message Learner into documentation that writes itself. Your flow becomes self-explaining.
Design Philosophy
We believe professional tools should respect user time as much as consumer apps do. Message Learner exists because:
- Guessing property paths wastes time
- Documentation shouldn’t be required for basic operations
- The system knows what’s possible; users shouldn’t have to figure it out
If Apple can make variable selection feel natural, professional workflow tools can too.
Try It Yourself
Message Learner is available in our NPM registry. Add it to your flow, let it observe a few messages, and see what it discovers.
We’re curious: what other “magic variable” moments could Node-RED use? Let us know what you think.