Message Learner

Stop guessing message properties

Automatically discovers available msg properties as messages flow. Inspired by Apple Shortcuts' magic variables.

The Problem We Discovered

"I have to debug, inspect, guess, repeat... for every single message property. Half my time is spent figuring out what data I already have."

The current Node-RED workflow: Deploy. Trigger. Debug node. Dig through JSON. Find property. Copy path. Update node. Repeat. Repeat. Repeat.

We watched users spend more time discovering properties than building flows. Complex API responses required archaeological expeditions through debug panels. Teams couldn't remember their own message structures from last week. Meanwhile, Apple Shortcuts users just see their available data. No hunting. No guessing.

Learn Once, Reference Forever

What It Does:

  • Learns as Messages Flow: Captures structure automatically
  • Deep Inspection: Finds nested properties (payload.data.user.id)
  • Property Inspector Sidebar: See all discovered properties at a glance
  • One-Click Copy: Click any property path to copy
  • Rich Metadata: Type, frequency, source node, sample values

How It Works:

  • Enable Learn Mode (toolbar button)
  • Send test messages through your flow
  • Open Property Inspector sidebar
  • See every available property instantly
  • Click to copy any path

See It In Action

Scenario 1: API Response Learning

  • Call external API once
  • Message Learner discovers all response properties
  • See payload.data.user.id, payload.data.user.email, etc.
  • Click to copy any path for use in nodes

Scenario 2: Complex Data Structures

  • Nested arrays and objects automatically discovered
  • Type information shows arrays vs objects vs primitives
  • Sample values preview actual data
  • Frequency counts show which properties are always present

Scenario 3: Team Collaboration

  • New team member opens flow
  • Enables Learn Mode and triggers flow once
  • Instantly sees all available message properties
  • No need to read documentation or ask questions

Get Started in 30 Seconds

# Quick install
cd ~/.node-red
npm install --registry https://npm.fierylab.io @fiery-lab/fiery-contrib-msg-learner
node-red-restart

# Or add our registry permanently
echo "@fiery-lab:registry=https://npm.fierylab.io" >> ~/.npmrc
npm install @fiery-lab/fiery-contrib-msg-learner

First Use:

  • Click "Learn" button in toolbar
  • Button turns blue showing "Learn: ON"
  • Trigger your flows with test data
  • Open Message Properties sidebar (right panel)
  • Click any property to copy its path

Fine-tune If Needed

Most users never need to change these defaults:

Setting Default Purpose
Max Depth 10 levels How deep to inspect objects
Max Properties 1000/flow Storage limit per flow
Exclude _msgid, req, res Skip internal properties
Sort By Frequency Most-used properties first