Dragging Tools onto Assistants isn't working
>>> [!note] Migrated issue
<!-- Drupal.org comment -->
<!-- Migrated from issue #3573955. -->
Reported by: [yautja_cetanu](https://www.drupal.org/user/626050)
Related to !17
>>>
<h3 id="summary-problem-motivation">Problem/Motivation</h3>
<p>Tools attach nicely to agents but not assistants.</p>
<p>- Assistants should be able to have tools directly on them even if their UI doesn't currently support it.<br>
(There is an issue for this, need to keep track of, to make sure that saving assistants doesn't override the tools of the agent that is connected to assistants).</p>
<p>- Dragging an Agent onto the assistant doesn't connect it.</p>
<p>- Dragging Chatbots onto the Assistant doesn't connect it.</p>
<p>- Also Chatbots can be attached to agents directly as a "Tool" but Chatbots should only go on the Triggers of assistants</p>
<h4 id="important-context">Important Context</h4>
<p>We should make use of the features here:</p>
<p>5. Proximity Connect System (replacing custom auto-attach)<br>
Replaced the custom setupAutoAttach/setupDragOverHighlight/calculateToolPosition logic with FlowDrop's native proximity connect.<br>
Fixed sidebar agent definitions to include the tools output port so proximity connect can detect tool-compatible connections.<br>
Added a /api/flowdrop-agents/categories endpoint for sidebar grouping, with category icon mapping.<br>
6. Layout & Spacing Refinements<br>
Increased auto-layout spacing (vertical gap 180→260, column width 300→350, agent-to-tool offset 350→500, agent gap 80→100).<br>
Added staggered column layout — odd columns offset by half the vertical spacing to prevent accidental port alignment between adjacent tools.<br>
Reduced proximity connect distance from 200px to 50px to prevent accidental connections during small repositioning.<br>
Fixed tool position swaps during magnetic drag by sorting tools by stable ID index and adding a movement threshold (>2px).</p>
<h3 id="summary-proposed-resolution">Proposed resolution</h3>
<h3 id="summary-remaining-tasks">Remaining tasks</h3>
<h3 id="summary-ui-changes">User interface changes</h3>
<h3 id="summary-api-changes">API changes</h3>
<h3 id="summary-data-model-changes">Data model changes</h3>
issue