open-swe/ui
Johannes du Plessis 911c835c2a
feat: chat with your PR on the review page (#1534)
* feat: chat with your PR on the review page

Add a sandbox-less `chat` graph that answers questions about a single PR
from its diff, the published review findings, and read-only GitHub access.

- agent/chat.py: deepagents graph, no sandbox (default StateBackend, file
  mutation + execute tools excluded). PR context is seeded as virtual files
  under /pr/; a repo-scoped App token is resolved in-graph.
- tools: read_repo_file, search_repo_code, list_review_findings.
- dashboard/review_chat_api.py + routes: per-user chat thread, LangGraph
  stream/commands/state/history proxy pinned to the chat assistant, seeds
  diff/findings/overview on first run. Gated by repo access.
- UI: Chat tab wired to a chat-scoped StreamProvider (replaces Coming Soon).

* feat: admin setting for review-chat default model

Add a 'Open SWE Review Chat' default to team settings (default_chat_model /
default_chat_reasoning_effort). get_team_default_model("chat") inherits the
Agent default when unset; the chat graph resolves through it. Admin RolePicker
gains an 'Agent default' inherit option that clears the override.

* feat: multi-conversation review chat (tabs, new chat, history)

Replace the single per-PR chat thread with multiple per-user conversations:
- threads minted client-side; first message persists with a title derived
  from the prompt.
- list + delete endpoints; chat panel gets a tab strip (history), new-chat
  (+), close (x), refresh, an intro greeting, and suggested prompts.
- get_review_chat now returns availability only (ids are client-minted).

* ui fixes

* ui: review-chat history dropdown, full-width AI replies, resizable side panel

* fix(review-chat): enforce per-user thread ownership on proxy endpoints; reseed PR context on head change

---------

Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
2026-06-15 17:17:30 -07:00
..
assets feat: restructure Open SWE Review tab + wire create_prs (#1319) 2026-05-21 09:17:07 -07:00
public feat: PR review page (#1495) 2026-06-11 16:11:10 -07:00
src feat: chat with your PR on the review page (#1534) 2026-06-15 17:17:30 -07:00
.cta.json feat: open-swe dashboard for per-user profile config (#1302) 2026-05-15 11:23:53 -07:00
.gitignore feat: add right-click open trace context menu for threads (#1490) 2026-06-10 15:40:43 -07:00
.prettierignore feat: open-swe dashboard for per-user profile config (#1302) 2026-05-15 11:23:53 -07:00
.prettierrc feat: open-swe dashboard for per-user profile config (#1302) 2026-05-15 11:23:53 -07:00
bun.lock feat(open-swe): stream agent chat via @langchain/react v2 protocol (#1475) 2026-06-11 09:54:35 -07:00
components.json feat: open-swe dashboard for per-user profile config (#1302) 2026-05-15 11:23:53 -07:00
eslint.config.js feat: open-swe dashboard for per-user profile config (#1302) 2026-05-15 11:23:53 -07:00
package.json feat(open-swe): stream agent chat via @langchain/react v2 protocol (#1475) 2026-06-11 09:54:35 -07:00
README.md feat: open-swe dashboard for per-user profile config (#1302) 2026-05-15 11:23:53 -07:00
tsconfig.json feat(open-swe): stream agent chat via @langchain/react v2 protocol (#1475) 2026-06-11 09:54:35 -07:00
vercel.json chore(ui): deploy dashboard as a static SPA instead of SSR (#1395) 2026-06-03 19:56:46 +00:00
vite.config.ts feat: live reviewer eval logs on a dedicated admin page (#1527) 2026-06-15 11:29:16 -07:00
yarn.lock feat: add pierre file tree to full-screen git panel (#1487) 2026-06-10 15:13:12 -07:00

TanStack Start + shadcn/ui

This is a template for a new TanStack Start project with React, TypeScript, and shadcn/ui.

Adding components

To add components to your app, run the following command:

npx shadcn@latest add button

This will place the ui components in the components directory.

Using components

To use the components in your app, import them as follows:

import { Button } from "@/components/ui/button";