LearnNewsExamplesServices
Frontmatter
id8171
titleImplement Neural Link Window Topology Discovery
stateClosed
labels
enhancementai
assigneestobiu
createdAtDec 28, 2025, 2:37 PM
updatedAtDec 28, 2025, 4:31 PM
githubUrlhttps://github.com/neomjs/neo/issues/8171
authortobiu
commentsCount1
parentIssue8169
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtDec 28, 2025, 4:31 PM

Implement Neural Link Window Topology Discovery

Closed v11.18.0 enhancementai
tobiu
tobiu commented on Dec 28, 2025, 2:37 PM

Create a tool to discover and describe the multi-window topology of the running application.

Tool: get_window_topology()

  • Returns: A list of active connected windows.
  • Metadata per Window:
    • windowId (The Neo.mjs internal ID)
    • appName (The running App name)
    • url (Full URL including query parameters)
    • screenPosition ({top, left, width, height} - vital for debugging drag offsets)
    • role (Main vs Popup - inferred from URL or app state)
tobiu added the enhancement label on Dec 28, 2025, 2:37 PM
tobiu added the ai label on Dec 28, 2025, 2:37 PM
tobiu added parent issue #8169 on Dec 28, 2025, 2:37 PM
tobiu referenced in commit 58c6e6f - "#8171 and #8173 in combination" on Dec 28, 2025, 4:29 PM
tobiu
tobiu Dec 28, 2025, 4:29 PM

Input from Gemini 3:

Implementation Complete

I have implemented the Window Topology discovery mechanism, leveraging the Neo.manager.Window "God View" in the App Worker.

Changes:

  1. Server (ConnectionService.mjs):
    • Implemented getWindowTopology.
    • Logic: Iterates all connected App Worker sessions, calls get_window_info on each, and aggregates the results.
    • Deduplication: Filters results by window.id (Application Window ID) to ensure a clean list even if multiple workers report the same window (e.g. SharedWorkers).
  2. Client (src/ai/Client.mjs):
    • Implemented get_window_info handler.
    • Logic: Queries Neo.manager.Window.items to retrieve the geometric state (innerRect, outerRect, chrome) of all windows managed by that worker.
  3. OpenAPI & Tools:
    • Added /window/topology endpoint with full schema (including chrome metrics).
    • Mapped get_window_topology in toolService.mjs.

Result: The AI Agent can now discover the full multi-window layout of the application, including popup windows and their exact screen coordinates, which is critical for debugging drag-and-drop.

Ready for review.

tobiu assigned to @tobiu on Dec 28, 2025, 4:30 PM
tobiu closed this issue on Dec 28, 2025, 4:31 PM