Link Call To context menu item

Hi There,

Recently I was adding link call nodes and became aware of how nice it would be to have this option in the context IFF the highlighted node is a link in node:

The alternative was searching for the right node in this list of 385 link nodes:

Screenshot 2026-09-02 at 14.26.15

Instead I created a script for doing this for me:

(RED.view.selection().nodes || []).filter(nde => nde.type == "link in").forEach( (nde) => {
    let linkCallNode = {
            "id": RED.nodes.id(),
            "type": "link call",
            "z": nde.z,
            "links": [nde.id],
            "linkType": "static",
            "timeout": "30",
            "x": nde.x + 0,
            "y": nde.y + 100,
            "name": "",
            "wires": [[]]
    }

    RED.nodes.import([linkCallNode], {
        generateIds: false,
        addFlow: false,
        markChanged: false,
        reimport: true,
        importMap: ((zz) => { let h = {}; h[zz] = "import"; return h })(nde.z),
        applyNodeDefaults: false,
        eventContext: null
    })

     RED.view.redraw(true)    
})

I can then trigger that in the console window.

There is an open issue and pending PR that allows nodes to contribute custom items to the context menu. I think that would fit in well here.

that one probably?

But wait, this is an inbuilt node - I can't add an action for the link-in node's context menu from my own plugin right?

Won't the link-in node provide this is in its definition?

The goal of that PR is to allow a node to add elements to its context menu.

Another PR (#5333) proposes a way to quickly navigate to the "Link In" target of a "Link Call" node.

So, you can add another action to the node definition to do what you want. Into the core or third party node.

A plugin can always override a node definition, even if it isn't supposed to :speak_no_evil_monkey:

Ok, understand #5332 (PR above) enables the "contextMenu" property for any node, and #5333 uses that property to add a "jump to target" for the link call node.

So the next PR will add the "create link call node" for the link-in node context menu by adding the "contextMenu" property to the link-in node definition :wink:

Really? Surely I can't modify the static definition for a link-in node. I can definitely interact with existing instances of the nodes but its static definition.... Ok, I can define a custom node that happens to have the same type "link in" and then break my NR installation!

:face_blowing_a_kiss:

It's not a great idea to go into the details of the "how" on a public forum, but you've clearly figured it out :wink:

Security through obscurity? I think anyone with a decent AI and enough nefarious energy will figure it out - the rest will be left in obs(e)curity ...

That's the unfortunate new reality of Fable.

EDIT:

At this point, I could point out that my NodeDev package includes a import functionality that allows inspection of third party packages before installing them. It can also import itself but for that you need to install it first :wink:

So I'm not being a dick for the sack of it, rather to make folks aware and then also try to provide tools to improve the situation.