Skip to content

Add in-app Organization browser so new pages stay as tabs - #50

Merged
XYAIStudio merged 2 commits into
mainfrom
cursor/org-in-app-browser-281e
Sep 17, 2026
Merged

XYAIStudio merged 2 commits into
mainfrom
cursor/org-in-app-browser-281e

Conversation

@XYAIStudio

@XYAIStudio XYAIStudio commented Sep 17, 2026 •

Copy link
Copy Markdown
Owner

Summary

Organization now hosts a mini-browser (tabs + address bar + iframe) instead of handing pages to the OS.

  • Default tab is local openXYOS at http://127.0.0.1:3780/
  • Entering Organization still auto-starts / recovers the sidecar via the existing startSidecar / ensure_sidecar paths
  • target=_blank and window.open are trapped into in-app tabs (openXYOS embed postMessage + click capture + desktop __FREEOS_ORG_OPEN_TAB__ hook)
  • Removed 「在新窗口打开」
  • Kept CORS self-origin probe, iframe layout heal, and download-source on the top bar
  • Rebased onto latest main (includes Add Organization top-bar button to download latest openXYOS source #49 download-source top-bar). Conflicts resolved; in-app multi-tab browser behavior kept.

Target branch

  • Base is develop (feature / fix — default)
  • Base is main (requested for this change; do not merge)

Type of change

  • New feature

Test plan

  • cd dashboard && npm test -- src/pages/Organization src/utils/orgBrowserHost.test.ts — 28 passed
  • cd dashboard && npx tsc --noEmit
  • uv run pytest tests/unit/desktop/test_nsis_uninstall.py tests/unit/test_org_module.py tests/unit/test_sidecar_launch.py — 54 passed
  • Full make all (pre-commit / CI)

Checklist

  • Updated CHANGELOG.md (if user-facing)
  • README / docs updated (if needed)
Open in Web Open in Cursor 

cursoragent and others added 2 commits September 17, 2026 22:25
Embed a tabbed iframe browser with an address bar on Organization, open local openXYOS on enter, and trap target=_blank / window.open into in-app tabs via openXYOS embed postMessage plus desktop host hooks. Remove the system new-window action and keep sidecar recover, CORS self-origin, layout heal, and download-source on the top bar.

Co-authored-by: XYAI Labs <haoboy8@gmail.com>
…owser.

Keep setState out of the tab updater so new windows actually become tabs, assert the default openXYOS URL from the browser helper, and cover host/window.open trapping without relying on jsdom tab labels.

Co-authored-by: XYAI Labs <haoboy8@gmail.com>
@cursor
cursor Bot force-pushed the cursor/org-in-app-browser-281e branch from 142e9c0 to a4bbc0f Compare September 17, 2026 22:26
@XYAIStudio
XYAIStudio marked this pull request as ready for review September 17, 2026 22:44
@XYAIStudio
XYAIStudio merged commit f3ecd50 into main Sep 17, 2026
11 checks passed
@XYAIStudio
XYAIStudio deleted the cursor/org-in-app-browser-281e branch September 17, 2026 22:45
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