Skip to content

Open Agents UI: inbox shell, sidebar polish, archive#18

Open
chloeilabs wants to merge 24 commits into
mainfrom
cursor/open-agents-ui-881d
Open

Open Agents UI: inbox shell, sidebar polish, archive#18
chloeilabs wants to merge 24 commits into
mainfrom
cursor/open-agents-ui-881d

Conversation

@chloeilabs
Copy link
Copy Markdown
Owner

@chloeilabs chloeilabs commented May 30, 2026

Summary

Aligns the signed-in experience with vercel-labs/open-agents: full-height inbox shell, repo-grouped sidebar, overview empty state, and row-level polish.

Highlights

  • Inbox shell: AgentsAppChrome, repo-grouped sidebar, /runs overview, mobile drawer
  • Sidebar: hover preview, rename / copy link / PR / archive, ⌘K search
  • Archive: archivedAt + migration; PATCH { archived }; /runs?archived=1 with unarchive
  • Chrome: breadcrumbs + toolbar on run detail; status page uses cursor-panel sections
  • Sign-in: two-column brand + OAuth panel
  • Fixes: archived runs excluded from limits & metrics; valid table row HTML; pnpm setup:dev

Database

pnpm exec prisma migrate deploy

Vercel builds run prisma migrate deploy when DATABASE_URL is configured.

Verify

pnpm lint && pnpm typecheck && pnpm test && pnpm build
pnpm setup:dev && pnpm dev
Open in Web Open in Cursor 

cursoragent and others added 16 commits May 30, 2026 18:03
Co-authored-by: Chloei <labs@chloei.ai>
Apply a default dark theme with Cursor-like tokens, left sidebar layout,
line-style status filters, shared cursor-panel surfaces, and PageHeader
across runs, status, and new-agent flows.

Co-authored-by: Chloei <labs@chloei.ai>
- Sidebar recent runs, brand mark, workspace nav labels
- Agents list layout with relative timestamps and mono repo paths
- Dark field inputs, log surface styling, thin scrollbars
- Agent stream panel and sign-in polish

Co-authored-by: Chloei <labs@chloei.ai>
- Sidebar-first agent list with status dots and compact New agent CTA
- Flat tokens, no panel shadows; text status filters; list-style agents view
- Composer-style new agent form with prompt-first layout
- Narrower content column, ghost refresh, simplified headers

Co-authored-by: Chloei <labs@chloei.ai>
- /runs shows overview placeholder; filtered lists use ?status=
- Sidebar: Overview, New agent, agent history
- New agent: full-height composer with collapsible repo options
- Run detail: flat stream section, compact header, wider content

Co-authored-by: Chloei <labs@chloei.ai>
- Search agents in sidebar (summary, repo, branch, status)
- DetailSection panels for metadata, result, prompt, artifacts
- Ghost action buttons; single-query runs list filter
- Flatter status metrics and run detail two-column layout

Co-authored-by: Chloei <labs@chloei.ai>
- Pull request panel uses DetailSection with ghost refresh/open actions
- Status page uses flat cursor-panel sections instead of Cards
- Sign-in uses cursor-panel; sidebar Status link highlights active route
- Filtered runs list shows status label only (no duplicate badge)
- Remove unused app-nav-links; add SidebarStatusLink component

Co-authored-by: Chloei <labs@chloei.ai>
Co-authored-by: Chloei <labs@chloei.ai>
- Add docs/cursor-cookbook.md mapping cookbook examples to this app
- Document cookbook in README and AGENTS.md (agent-kanban as primary reference)
- Cache Cursor.repositories.list() ~55s per cookbook agent-kanban
- Inline image/video artifact previews via cookbook media-style responses
- Add artifact-preview helpers and tests

Co-authored-by: Chloei <labs@chloei.ai>
- Cache Cursor.models.list() ~55s (cookbook agent-kanban pattern)
- Add repository/model cache tests
- Search on status-filtered runs list (FilteredRunsView)
- Run header: status dot + label only (no duplicate badge)
- Extend cursor-cookbook.md with implemented/next patterns

Co-authored-by: Chloei <labs@chloei.ai>
- AgentsAppChrome: h-dvh frame, mobile drawer, top header with panel toggle
- AppSidebar + repo-grouped agent list with open-agents row styling
- sidebar-active tokens, scrollbar-fade, status icons per run state
- AgentsHome empty state aligned with open-agents sessions index
- docs/open-agents-ui.md mapping reference implementation

Co-authored-by: Chloei <labs@chloei.ai>
Co-authored-by: Chloei <labs@chloei.ai>
@vercel
Copy link
Copy Markdown

vercel Bot commented May 30, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
chloeicode Ready Ready Preview, Comment May 30, 2026 10:17pm

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 30, 2026

Warning

Review limit reached

@cursor[bot], we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 48 minutes and 33 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: e1852534-bc19-471e-a423-b551c5c6ebe9

📥 Commits

Reviewing files that changed from the base of the PR and between 250a95f and 5f58da3.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (89)
  • AGENTS.md
  • README.md
  • __tests__/agent-runs/list-runs-options.test.ts
  • __tests__/cursor/events.test.ts
  • __tests__/cursor/results.test.ts
  • __tests__/validation/agent-run.test.ts
  • docs/cursor-cookbook.md
  • docs/open-agents-ui.md
  • package.json
  • prisma/migrations/20260530121500_agent_run_archived/migration.sql
  • prisma/schema.prisma
  • scripts/setup-dev-environment.sh
  • src/app/api/agent-runs/[id]/artifacts/[...artifactPath]/route.ts
  • src/app/api/agent-runs/[id]/route.ts
  • src/app/api/agent-runs/route.ts
  • src/app/globals.css
  • src/app/layout.tsx
  • src/app/runs/[id]/page.tsx
  • src/app/runs/new/page.tsx
  • src/app/runs/page.tsx
  • src/app/status/page.tsx
  • src/components/agent-runs/agent-run-actions.tsx
  • src/components/agent-runs/agent-run-artifacts-panel.tsx
  • src/components/agent-runs/agent-run-event-log.tsx
  • src/components/agent-runs/agent-run-filters.tsx
  • src/components/agent-runs/agent-run-header.tsx
  • src/components/agent-runs/agent-run-metadata-panel.tsx
  • src/components/agent-runs/agent-run-prompt-panel.tsx
  • src/components/agent-runs/agent-run-pull-request-panel.tsx
  • src/components/agent-runs/agent-run-result-panel.tsx
  • src/components/agent-runs/agent-run-status-badge.tsx
  • src/components/agent-runs/agent-runs-table.tsx
  • src/components/agent-runs/agents-app-chrome.tsx
  • src/components/agent-runs/agents-home.tsx
  • src/components/agent-runs/agents-shell-context.tsx
  • src/components/agent-runs/app-shell.tsx
  • src/components/agent-runs/app-sidebar.tsx
  • src/components/agent-runs/detail-section.tsx
  • src/components/agent-runs/filtered-runs-view.tsx
  • src/components/agent-runs/new-agent-run-form.tsx
  • src/components/agent-runs/refresh-button.tsx
  • src/components/agent-runs/run-breadcrumbs.tsx
  • src/components/agent-runs/run-chrome-toolbar.tsx
  • src/components/agent-runs/run-sidebar-icon.tsx
  • src/components/agent-runs/run-sidebar-preview.tsx
  • src/components/agent-runs/sidebar-archived-link.tsx
  • src/components/agent-runs/sidebar-recent-runs.tsx
  • src/components/agent-runs/sidebar-run-row.tsx
  • src/components/agent-runs/sidebar-status-link.tsx
  • src/components/agent-runs/status-breadcrumbs.tsx
  • src/components/agent-runs/unarchive-run-button.tsx
  • src/components/agent-runs/user-menu.tsx
  • src/components/auth/auth-buttons.tsx
  • src/components/auth/sign-in-panel.tsx
  • src/components/auth/sign-out-menu-item.tsx
  • src/components/brand/cursor-brand-mark.tsx
  • src/components/providers/app-providers.tsx
  • src/components/ui/avatar.tsx
  • src/components/ui/breadcrumb.tsx
  • src/components/ui/button.tsx
  • src/components/ui/card.tsx
  • src/components/ui/collapsible.tsx
  • src/components/ui/input.tsx
  • src/components/ui/navigation-menu.tsx
  • src/components/ui/page-header.tsx
  • src/components/ui/progress.tsx
  • src/components/ui/scroll-area.tsx
  • src/components/ui/sonner.tsx
  • src/components/ui/textarea.tsx
  • src/hooks/use-media-query.ts
  • src/lib/__tests__/artifact-preview.test.ts
  • src/lib/__tests__/cursor/models-cache.test.ts
  • src/lib/__tests__/cursor/repositories.test.ts
  • src/lib/__tests__/format.test.ts
  • src/lib/__tests__/sidebar-groups.test.ts
  • src/lib/agent-runs/client-patch.ts
  • src/lib/agent-runs/limits.ts
  • src/lib/agent-runs/list-runs-options.ts
  • src/lib/agent-runs/repository.ts
  • src/lib/agent-runs/sidebar-groups.ts
  • src/lib/agent-runs/sidebar-search.ts
  • src/lib/agent-runs/task-summary.ts
  • src/lib/cursor/artifact-preview.ts
  • src/lib/cursor/events.ts
  • src/lib/cursor/models.ts
  • src/lib/cursor/repositories.ts
  • src/lib/cursor/results.ts
  • src/lib/format.ts
  • src/lib/validation/agent-run.ts
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cursor/open-agents-ui-881d

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

- SidebarRunRow: delayed hover preview (desktop) like inbox popover
- Auto-expand repo groups for active run, search, or few groups
- Close mobile drawer on sidebar navigation
- Filtered runs: refresh + new agent in chrome header

Co-authored-by: Chloei <labs@chloei.ai>
Add PATCH /api/agent-runs/:id to update taskSummary, with client-safe
rename helpers and open-agents-style hover actions (rename, copy link, open PR).

Co-authored-by: Chloei <labs@chloei.ai>
@cursor cursor Bot changed the title feat(ui): Open Agents–style inbox shell and sidebar Open Agents UI: inbox shell, sidebar polish, rename API May 30, 2026
- Two-column sign-in inspired by open-agents get-started
- Global Cmd/Ctrl+K focuses sidebar agent search
- Run detail header uses status icon + single metadata line

Co-authored-by: Chloei <labs@chloei.ai>
- Add archivedAt with migration; PATCH supports archived flag
- Hide archived runs from sidebar; browse at /runs?archived=1
- Sidebar archive action; run page toolbar with refresh/copy/PR/archive
- Breadcrumbs in app chrome header for run detail and new agent

Co-authored-by: Chloei <labs@chloei.ai>
- Unarchive from archived list; Archived link in status filters
- Status page breadcrumbs and icon refresh; health stats exclude archived
- Agents home links to archived when sidebar is empty
- API list runs returns active agents only

Co-authored-by: Chloei <labs@chloei.ai>
- Exclude archived agents from active/daily limits and background refresh
- Move unarchive/PR actions outside row links (valid HTML, reliable clicks)
- Add setup:dev and db:migrate:deploy scripts; clean status badge classes

Co-authored-by: Chloei <labs@chloei.ai>
@cursor cursor Bot changed the title Open Agents UI: inbox shell, sidebar polish, rename API Open Agents UI: inbox shell, sidebar polish, archive May 30, 2026
@cursor cursor Bot marked this pull request as ready for review May 30, 2026 22:05
- Extract list-runs-options with unit tests for archived filtering
- Show status icon on AgentsHome latest-run card
- Run prisma migrate deploy before Vercel build

Co-authored-by: Chloei <labs@chloei.ai>
- Re-add next-themes and sonner (still used by AppProviders and Toaster)
- Update pnpm-lock.yaml for frozen-lockfile CI installs
- Remove brittle prisma migrate from Vercel buildCommand (use deploy hook or manual migrate)

Co-authored-by: Chloei <labs@chloei.ai>
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