Skip to content

feat(automation): rename to arrange-selection and add distribution#353

Closed
andypalmi wants to merge 0 commit into
feat/leveled-connectionsfrom
feat/distribute-nodes
Closed

feat(automation): rename to arrange-selection and add distribution#353
andypalmi wants to merge 0 commit into
feat/leveled-connectionsfrom
feat/distribute-nodes

Conversation

@andypalmi
Copy link
Copy Markdown
Contributor

Summary

  • Rename automation/align-selection action to automation/arrange-selection to support both alignment and distribution
  • Add horizontally and vertically distribution directions that invoke core:distribute-selection-horizontally/vertically
  • Distribution requires at least 3 non-config nodes (Node-RED core requirement)
  • Improved error message for invalid directions now lists valid options

This renames the action introduced in #347 (not yet released).

Test plan

  • Verify horizontal distribution invokes the correct core action with 3+ nodes
  • Verify vertical distribution invokes the correct core action with 3+ nodes
  • Verify distribution with fewer than 3 nodes is rejected
  • Verify all existing alignment directions still work under the new action name
  • Verify invalid directions produce a descriptive error message

Closes #352

Comment thread resources/expertAutomations.js Outdated
* |OPEN_PALETTE_MANAGER
* |MANAGE_GROUPS
* |ALIGN_SELECTION} ExpertAutomationsActionsEnum
* |ARRANGE_SELECTION} ExpertAutomationsActionsEnum
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ARRANGE_SELECTION infers it will operate on the selection however the schema expects the array of ids - this is unclear and confusing (to humans and AI). A better name might be simply arrange_nodes coupled with a parameter UseCurrentSelection? or the omittance of ids means work on the selection?

Do we want to split MCP tools into arrange_selection and arrange_nodes ?

Consider the conversation:
→ Select all the debug nodes
← Selected 3 debug nodes
→ Align them left and space vertically
← align ids 1,2,3 left
← vertically space ids 1,2,3

The AI will need to maintain the array of nodes to operate on & send them every time.


Consider the conversation:
user selects things to modify
→ Align the selection left and space vertically
← gets selected ids 1,2,3
← align ids 1,2,3 left
← vertically space ids 1,2,3

The AI still needs to maintain the array of nodes to operate on & send them every time.


By supporting arrange_selection this changes

Consider the conversation:
user selects things to modify
→ Align the selection left and space vertically
← align selection left
← vertically space selection

The AI simply issues the automation to perform the operations without maintaing a list of IDs or acidentally selecting wrong things

@andypalmi andypalmi requested a review from Steve-Mcl May 22, 2026 16:15
@andypalmi andypalmi closed this May 22, 2026
@andypalmi andypalmi force-pushed the feat/distribute-nodes branch from 2ea8741 to 7dcf1d8 Compare May 22, 2026 16:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants