Skip to content

feat(sidebar): new icon-rail sidebar with workspace navigation#2831

Open
rafavalls wants to merge 3 commits intomainfrom
rafavalls/wip-sidebar
Open

feat(sidebar): new icon-rail sidebar with workspace navigation#2831
rafavalls wants to merge 3 commits intomainfrom
rafavalls/wip-sidebar

Conversation

@rafavalls
Copy link
Collaborator

@rafavalls rafavalls commented Mar 24, 2026

What is this contribution about?

Replaces the old sidebar with a new icon-rail layout. The rail shows a Studio icon (org-admin), a "+" button to navigate to a new workspace, and project icons fetched via useProjects() (virtual MCPs with subtype = \"project\"). Removes the AgentCatalogPopover in favor of a simple NewWorkspaceButton. Also adds a create-workspace-dialog, workspace tabs, new sidebar hooks, and a create-workspace-with-agent utility for guided workspace creation. Adds ORG_ADMIN_PROJECT_SLUG constant to mesh-sdk so it can be shared across the app.

Screenshots/Demonstration

UI changes — see icon rail in sidebar replacing the old nav.

How to Test

  1. Run bun run dev and log in
  2. Observe the sidebar shows a narrow icon rail with Studio + project icons
  3. Click "+" to navigate to the org-admin project
  4. Click a project icon to navigate to that project workspace
  5. Expected: navigation works correctly and icons/names render from VirtualMCPEntity data

Review Checklist

  • PR title is clear and descriptive
  • Changes are tested and working
  • Documentation is updated (if needed)
  • No breaking changes

Summary by cubic

Replaced the old sidebar with a compact icon-rail for faster workspace switching and a cleaner layout. Unified routing to /$org/$project and reserved org-admin for Studio to simplify navigation and setup.

  • New Features

    • Icon-rail sidebar: Studio icon, “+” for new workspace, project icons from useProjects(), a Settings button, and a user avatar menu.
    • CreateWorkspaceDialog: two-step flow (Slides, Website, Blank). Sets color and auto-creates/attaches an agent via create-workspace-with-agent, installing required connections and surfacing OAuth when needed.
    • WorkspaceTabs: pinned views show as top-level tabs inside a workspace.
    • Per-workspace sidebar strategies: use-slide-sidebar-items and use-website-sidebar-items selected by ProjectUI.workspaceType.
    • Projects panel groups workspaces by type, hides Studio, and adds a “Create workspace” button.
    • Account switcher updated to work with project slugs, show org → project context, and deep-link to settings.
    • Exported ORG_ADMIN_PROJECT_SLUG from mesh-sdk.
  • Migration

    • Use /$org/$project for navigation; Studio is /$org/org-admin via ORG_ADMIN_PROJECT_SLUG.
    • When deep-linking, use the project slug (from Virtual MCP metadata.projectSlug) instead of Virtual MCP ID.
    • Replace “Create project” entry points with the new “Create workspace” flow.

Written for commit 13f721b. Summary will update on new commits.

rafavalls and others added 2 commits March 23, 2026 19:39
Replaces the old nav-based sidebar with a compact two-column layout:
icon rail (workspace icons + "+") and a session/task list panel.
Includes AgentCatalogPopover for creating workspaces from agent templates,
CreateWorkspaceDialog for typed workspace creation (slides/website/blank),
WorkspaceTabs for pinned views, and per-workspace sidebar item hooks.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…o SDK

- Fix sidebar to import from use-projects (plural) instead of non-existent use-project
- Replace ProjectWithBindings with VirtualMCPEntity from mesh-sdk
- Remove stale agentIconBySlug map; use icon directly from VirtualMCPEntity
- Add ORG_ADMIN_PROJECT_SLUG constant to mesh-sdk/lib/constants and export it
- Simplify AgentCatalogPopover to a plain NewWorkspaceButton navigating to org-admin

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Contributor

🧪 Benchmark

Should we run the Virtual MCP strategy benchmark for this PR?

React with 👍 to run the benchmark.

Reaction Action
👍 Run quick benchmark (10 & 128 tools)

Benchmark will run on the next push after you react.

@github-actions
Copy link
Contributor

github-actions bot commented Mar 24, 2026

Release Options

Suggested: Minor (2.199.0) — based on feat: prefix

React with an emoji to override the release type:

Reaction Type Next Version
👍 Prerelease 2.198.1-alpha.1
🎉 Patch 2.198.1
❤️ Minor 2.199.0
🚀 Major 3.0.0

Current version: 2.198.0

Note: If multiple reactions exist, the smallest bump wins. If no reactions, the suggested bump is used (default: minor).

Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

No issues found across 11 files

Keep icon-rail sidebar design from branch, merge import additions from main.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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