Skip to content

feat: add integrated terminal, project actions, session automation and git workflows - #381

Merged
chriswritescode-dev merged 49 commits into
mainfrom
beta
Oct 5, 2026
Merged

chriswritescode-dev merged 49 commits into
mainfrom
beta

Conversation

@chriswritescode-dev

Copy link
Copy Markdown
Owner

Problem

The beta integration branch has accumulated four feature workstreams plus supporting UI, docs and branding changes that are not yet on main: an in-browser terminal, per-repo project actions, session automation (permission modes, session goals, multi-run, internal session tooling), and an expanded git source-control surface (worktrees, stashes, conflicts, identities). main lacks all of these, plus the new hosted documentation site.

Changes

  • Terminal: shell-environment owner, terminal service + REST routes + WebSocket bridge, xterm client, mobile key bar, terminal auto-start, preview port menu.
  • Project actions: config schemas, personal action storage, committed repo file, run/stop with URL templates, settings dialog.
  • Sessions: per-session permission modes (ask/auto), session goals with an audit loop and recovery, ocm session tool + skill, multi-run across up to five models. Migrations 025-027.
  • Git: worktrees, integrate (merge/cherry-pick), stash management, in-progress conflict continue/abort, AI commit messages, identities. Typed GitOperationError.
  • UI: searchable BranchCombobox, mobile composer tools menu and base-branch select.
  • Schedules: read-aloud playback on run reports.
  • PWA/branding/docs: maskable icons and metadata; docs moved to opencodemanager.app; feature docs updated.

Testing

  • pnpm typecheck clean.
  • pnpm lint 0 errors (41 pre-existing warnings).
  • pnpm test: CLI 279, backend 3125, frontend 2162 - all passing.

Security:
- Reject same-site and cross-site state-changing requests on cookie-authenticated routes unless the origin is trusted
- Drop Manager and ocm_preview Set-Cookie headers from preview responses
- Show and hash the full executable content of .ocm/project.json at trust time
- Restrict action URLs to http(s) and refuse symlinked repo config paths
- Keep the preview start redirect on the gateway origin

Lifecycle:
- Stop terminals in OpenCode workspace siblings when a repo is deleted
- Report preview as unavailable instead of crashing when the gateway port cannot be bound

Performance:
- Skip branch lookups when validating terminal and project-config directories
- Stop the /proc scan once all listening sockets are mapped and pause port polling while a preview is open
- Close slow WebSocket clients with 1013 so they reconnect with replay
- Lazy-load the xterm terminal view and skip unchanged resize requests
- Request uncompressed responses from preview targets

Cleanup:
- Share one repo directory resolver, trusted-origins parser, cookie prefix, WebSocket frame forwarder, header filter, icon map and dialog-param helper
- Remove unused props, options and exports

Docs: update terminal, preview, project actions, sandboxing, internal API and environment pages
… and multi-run

Per-session permission modes: each root session runs in ask or auto.
Auto answers each permission request once from the backend, child
sessions inherit their root's mode, forks copy the source's mode, and
scheduled runs and agent-created sessions stay on ask. A lock reason
reports why a session's mode cannot change.

Session goals: arm a goal in the composer and a backend audit loop keeps
the session working until an auditor model returns done or blocked. The
loop is bounded by continuation and token limits, survives restarts, and
pushes an outcome notification. Goals cannot start on scheduled-run or
child sessions.

ocm session tool: allow-listed internal routes to list, create, follow up
on, read replies from, and fork sessions. Created and forked sessions are
pinned to ask, listing covers a repo's workspaces, and replies wait for
the session to settle with a capped response.

Multi-run: launch one prompt on up to five models, optionally each in its
own OpenCode workspace, with per-entry status and discard.

Also add the shared owners this group needed (session launcher, session
reply, workspace create/remove, multi-run storage) and update the feature
docs.
…nd identities

- Create a worktree from a new or existing branch
- Integrate a worktree branch into a target branch by merge commit or cherry-pick, with continue/abort on conflicts
- Delete a worktree with keep, delete-local, or delete-local-and-remote branch options, using safe branch deletion for unmerged branches
- Add a stash tab (list, push, apply, pop, drop) shared across a repository and its worktrees
- Rename and delete branches, optionally deleting the remote branch and updating scheduled base branches
- Detect in-progress merge, rebase, cherry-pick and revert operations and hand conflicts to an agent session
- Generate commit messages from staged changes with the default model
- Add a default git identity and saved per-repository identities written to git config
- Unify git error mapping behind a typed error and one route helper; consolidate git mutations and cache invalidation
- Update repository docs
feat(git): extend source control with worktrees, stashes, conflicts and identities
feat(sessions): add permission modes, session goals, ocm session tool and multi-run

Resolve the duplicate parseJsonBody added by both #380 and #379 into one
helper: #379's result shape and allowEmpty option, with the first
validation message as the error and the issues as details. Update the
repo-git callers, affected route tests and the internal API docs.
- Delete a remote branch only when the upstream (read from
  branch.<name>.remote and branch.<name>.merge) has the same name;
  otherwise refuse with REMOTE_BRANCH_MISMATCH before deleting anything.
- Without force, require the branch to be merged into HEAD before
  deleting its remote branch, so pushed unmerged commits are not lost.
- Cherry-pick integration selects only commits not yet applied to the
  target and skips merge commits.
- Create worktrees from a remote-only base as origin/<branch>.
- Show the upstream name in the branch delete dialog and update the
  worktree delete option text and git docs.
- Block prompt submission while an armed goal is starting.
- Launch multi-runs with mutate so a failed launch is not an
  unhandled rejection.
- Save changed session automation fields in one update so concurrent
  autosaves cannot overwrite each other.
feat: integrated terminal, project actions and dev server preview (OM-17, OM-18, OM-19)

Integration with #380 and #379:
- Adopt the git-config identity model: drop the branch's identity stubs
  (getShellEnv, getAssignedGitIdentityEnv, repo identity ids, duplicate
  createGitService and getMainCheckoutPath); terminals receive only the
  GitHub token env and take their commit identity from git config.
- Add RepoWorkspaceService as the single owner of OpenCode workspace
  side effects: worktree setup commands on create and terminal cleanup on
  remove, used by the workspace routes, the session launcher (ocm tool and
  multi-run) and multi-run discard, with one worktree-sibling matcher.
- Run repo-delete terminal cleanup inside the worktree branch deletion
  flow.
- Combine the CreateWorktreeDialog tests and update docs for the identity
  model and setup command coverage.
Bring the terminal, project actions and dev server preview merge (OM-17, OM-18, OM-19) onto beta after 4a2e695. No conflicts; the merged CreateWorktreeDialog keeps BaseBranchSelect with origin/ remote bases and the worktree setup terminal navigation.
- Correct stale UI labels, flows, endpoints, and env var docs across the docs site
- Refresh git and chat screenshots and drop unused images
- Fit source control tabs and commit rows on phone widths; fix terminal filler color
Rename BaseBranchSelect to BranchCombobox and rebuild it on the shared
Combobox with an include filter, configurable remote prefixing, and
clearing. Add a useRepoBranches hook and migrate the worktree, integrate,
multi-run, and schedule dialogs onto it. Expose id and ARIA listbox/option
roles from Combobox, and add bg-background to the form prompt panels.
Remove the in-repo MkDocs site, its deploy workflow, and the tests that
asserted its content. Repoint README, CONTRIBUTING, and .env.example links
to opencodemanager.app/docs, and update logos, favicon, PWA icons, manifest,
and image alt text to the OpenCode Manager branding.
@coderabbitai

coderabbitai Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 350 files, which is 200 over the limit of 150.

To get a review, reduce the PR to 150 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

Usage-priced reviews support at most 300 files.

⚙️ Run configuration
  • Configuration used: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: fcd1ae6e-db71-4f7b-9a85-0f901b57e35e
📥 Commits

Reviewing files that changed from the base of the PR and between 33799e0 and 33be4af.

⛔ Files ignored due to path filters (49)
  • docs/images/ai-config-providers.png is excluded by !**/*.png
  • docs/images/assistant-page.png is excluded by !**/*.png
  • docs/images/chat-conversation.png is excluded by !**/*.png
  • docs/images/chat-session-list.png is excluded by !**/*.png
  • docs/images/file-browser.png is excluded by !**/*.png
  • docs/images/git/git-branch.png is excluded by !**/*.png
  • docs/images/git/git-changes.png is excluded by !**/*.png
  • docs/images/git/git-commits.png is excluded by !**/*.png
  • docs/images/git/git-diffview.png is excluded by !**/*.png
  • docs/images/mcp-servers-list.png is excluded by !**/*.png
  • docs/images/mobile-sessions.png is excluded by !**/*.png
  • docs/images/notifications-settings.png is excluded by !**/*.png
  • docs/images/preview-chat-page.png is excluded by !**/*.png
  • docs/images/preview-files-page.png is excluded by !**/*.png
  • docs/images/preview-mcp-page.png is excluded by !**/*.png
  • docs/images/preview-notifications-page.png is excluded by !**/*.png
  • docs/images/preview-tts-page.png is excluded by !**/*.png
  • docs/images/schedule-permissions.png is excluded by !**/*.png
  • docs/images/schedule-skills-tab.png is excluded by !**/*.png
  • docs/images/schedules/01-repo-detail-entry.png is excluded by !**/*.png
  • docs/images/schedules/02-schedules-shell.png is excluded by !**/*.png
  • docs/images/schedules/03-run-history-preview.png is excluded by !**/*.png
  • docs/images/schedules/04-run-history-markdown.png is excluded by !**/*.png
  • docs/images/schedules/05-schedules-expanded-details.png is excluded by !**/*.png
  • docs/images/schedules/06-modal-general.png is excluded by !**/*.png
  • docs/images/schedules/07-modal-timing.png is excluded by !**/*.png
  • docs/images/schedules/08-modal-prompt.png is excluded by !**/*.png
  • docs/images/schedules/09-schedule-creation.png is excluded by !**/*.png
  • docs/images/schedules/10-timing-options.png is excluded by !**/*.png
  • docs/images/schedules/11-run-history-view.png is excluded by !**/*.png
  • docs/images/server-health-status.png is excluded by !**/*.png
  • docs/images/session-discovery/01-folder-discovery-dialog.png is excluded by !**/*.png
  • docs/images/session-discovery/02-discovered-repositories.png is excluded by !**/*.png
  • docs/images/session-discovery/03-imported-opencode-sessions.png is excluded by !**/*.png
  • docs/images/session-pin-dropdown.png is excluded by !**/*.png
  • docs/images/session-pins-list.png is excluded by !**/*.png
  • docs/images/skills-manager.png is excluded by !**/*.png
  • docs/images/stt-settings.png is excluded by !**/*.png
  • docs/images/tts-settings.png is excluded by !**/*.png
  • frontend/public/favicon.svg is excluded by !**/*.svg
  • frontend/public/icons/apple-touch-icon.png is excluded by !**/*.png
  • frontend/public/icons/badge-96x96.png is excluded by !**/*.png
  • frontend/public/icons/icon-192x192.png is excluded by !**/*.png
  • frontend/public/icons/icon-512x512.png is excluded by !**/*.png
  • frontend/public/icons/icon-maskable-192x192.png is excluded by !**/*.png
  • frontend/public/icons/icon-maskable-512x512.png is excluded by !**/*.png
  • frontend/public/opencode-wordmark-dark.svg is excluded by !**/*.svg
  • frontend/public/opencode-wordmark-light.svg is excluded by !**/*.svg
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (350)
  • .env.example
  • .github/workflows/deploy-docs.yml
  • CONTRIBUTING.md
  • Dockerfile
  • README.md
  • backend/package.json
  • backend/src/auth/cookies.ts
  • backend/src/auth/index.ts
  • backend/src/auth/middleware.ts
  • backend/src/db/migrations/025-session-permission-modes.ts
  • backend/src/db/migrations/026-session-goals.ts
  • backend/src/db/migrations/027-multi-runs.ts
  • backend/src/db/migrations/index.ts
  • backend/src/db/multi-runs.ts
  • backend/src/db/queries.ts
  • backend/src/db/schedules.ts
  • backend/src/db/session-goals.ts
  • backend/src/db/session-permission-modes.ts
  • backend/src/index.ts
  • backend/src/routes/internal/git-credentials.ts
  • backend/src/routes/internal/index.ts
  • backend/src/routes/internal/sessions.ts
  • backend/src/routes/multi-runs.ts
  • backend/src/routes/opencode-proxy.ts
  • backend/src/routes/preview.ts
  • backend/src/routes/repo-directory.ts
  • backend/src/routes/repo-git.ts
  • backend/src/routes/repo-project-config.ts
  • backend/src/routes/repo-terminal-socket.ts
  • backend/src/routes/repo-terminals.ts
  • backend/src/routes/repos.test.ts
  • backend/src/routes/repos.ts
  • backend/src/routes/session-goals.ts
  • backend/src/routes/session-permission-modes.ts
  • backend/src/routes/settings.ts
  • backend/src/services/assistant-mode.ts
  • backend/src/services/credential-provider.ts
  • backend/src/services/git-auth.ts
  • backend/src/services/git-identity.ts
  • backend/src/services/git/GitService.ts
  • backend/src/services/git/commit-message-prompt.ts
  • backend/src/services/multi-runs.ts
  • backend/src/services/notification.ts
  • backend/src/services/opencode-manager-tool-plugin.ts
  • backend/src/services/opencode-single-server.ts
  • backend/src/services/opencode/client.ts
  • backend/src/services/preview/gateway.ts
  • backend/src/services/preview/ports.ts
  • backend/src/services/project-config.ts
  • backend/src/services/project-id-resolver.test.ts
  • backend/src/services/repo-workspace.ts
  • backend/src/services/repo.ts
  • backend/src/services/sandbox/runtime.ts
  • backend/src/services/schedule-worktree.ts
  • backend/src/services/schedules.ts
  • backend/src/services/session-goal-audit.ts
  • backend/src/services/session-goals.ts
  • backend/src/services/session-launcher.ts
  • backend/src/services/session-permission-modes.ts
  • backend/src/services/session-reply.ts
  • backend/src/services/sse-aggregator.ts
  • backend/src/services/terminal.ts
  • backend/src/types/git.ts
  • backend/src/utils/fs-safe.ts
  • backend/src/utils/git-auth.ts
  • backend/src/utils/git-errors.ts
  • backend/src/utils/github.ts
  • backend/src/utils/process.ts
  • backend/src/utils/proxy-headers.ts
  • backend/src/utils/route-helpers.ts
  • backend/src/utils/websocket-bridge.ts
  • backend/test/auth/index.test.ts
  • backend/test/auth/middleware-same-site.test.ts
  • backend/test/db/queries.test.ts
  • backend/test/helpers/fake-session-goal-client.ts
  • backend/test/helpers/fake-session-permission-client.ts
  • backend/test/helpers/git-fixtures.ts
  • backend/test/index.test.ts
  • backend/test/integration/ssh-integration.test.ts
  • backend/test/mocks/bun-sqlite.ts
  • backend/test/routes/git.test.ts
  • backend/test/routes/internal-assistant.test.ts
  • backend/test/routes/internal-notifications.test.ts
  • backend/test/routes/internal-opencode-config.test.ts
  • backend/test/routes/internal-opencode-workspaces.test.ts
  • backend/test/routes/internal-repos.test.ts
  • backend/test/routes/internal-sandbox.test.ts
  • backend/test/routes/internal-schedules.test.ts
  • backend/test/routes/internal-sessions.test.ts
  • backend/test/routes/internal-settings.test.ts
  • backend/test/routes/internal/git-credentials.test.ts
  • backend/test/routes/multi-runs.test.ts
  • backend/test/routes/preview.test.ts
  • backend/test/routes/repo-git.test.ts
  • backend/test/routes/repo-project-config.test.ts
  • backend/test/routes/repo-terminal-socket.test.ts
  • backend/test/routes/repo-terminals.test.ts
  • backend/test/routes/repos-git-identity.test.ts
  • backend/test/routes/repos.test.ts
  • backend/test/routes/session-goals.test.ts
  • backend/test/routes/session-permission-modes.test.ts
  • backend/test/routes/settings.test.ts
  • backend/test/scripts/docker-config.test.ts
  • backend/test/services/assistant-mode.test.ts
  • backend/test/services/credential-provider.test.ts
  • backend/test/services/git-identity.test.ts
  • backend/test/services/git/GitService.real.test.ts
  • backend/test/services/git/GitService.test.ts
  • backend/test/services/git/commit-message-prompt.test.ts
  • backend/test/services/multi-runs.test.ts
  • backend/test/services/notification-format.test.ts
  • backend/test/services/notification-service.test.ts
  • backend/test/services/opencode-manager-tool-plugin.test.ts
  • backend/test/services/preview/gateway-ws.test.ts
  • backend/test/services/preview/gateway.test.ts
  • backend/test/services/preview/ports.test.ts
  • backend/test/services/project-config.test.ts
  • backend/test/services/repo-git.test.ts
  • backend/test/services/repo-working-directory.test.ts
  • backend/test/services/repo-workspace.test.ts
  • backend/test/services/repo.test.ts
  • backend/test/services/sandbox/runtime.test.ts
  • backend/test/services/schedule-worktree.test.ts
  • backend/test/services/session-goal-audit.test.ts
  • backend/test/services/session-goals.test.ts
  • backend/test/services/session-launcher.test.ts
  • backend/test/services/session-permission-modes.test.ts
  • backend/test/services/session-reply.test.ts
  • backend/test/services/sse-aggregator.test.ts
  • backend/test/services/terminal.test.ts
  • backend/test/shared/terminal-title.test.ts
  • backend/test/utils/fs-safe.test.ts
  • backend/test/utils/git-errors.test.ts
  • backend/test/utils/process.test.ts
  • backend/test/utils/route-helpers.test.ts
  • backend/test/utils/websocket-bridge.test.ts
  • backend/vitest.config.ts
  • docker-compose.yml
  • docs/configuration/authentication.md
  • docs/configuration/docker.md
  • docs/configuration/environment.md
  • docs/configuration/oauth.md
  • docs/development/contributing.md
  • docs/development/setup.md
  • docs/features/ai-config.md
  • docs/features/assistant-internal-api.md
  • docs/features/assistant-mode.md
  • docs/features/chat.md
  • docs/features/files.md
  • docs/features/git.md
  • docs/features/logs.md
  • docs/features/mcp.md
  • docs/features/mobile.md
  • docs/features/notifications.md
  • docs/features/opencode-workspaces.md
  • docs/features/overview.md
  • docs/features/sandboxing.md
  • docs/features/schedules.md
  • docs/features/server-health.md
  • docs/features/session-pins.md
  • docs/features/skills.md
  • docs/features/stt.md
  • docs/features/tts.md
  • docs/getting-started/first-run.md
  • docs/getting-started/installation.md
  • docs/getting-started/quickstart.md
  • docs/images/mobile-repo-session-sheet.webp
  • docs/images/ocmgr-main.webp
  • docs/images/ocmgr-mobile.webp
  • docs/index.md
  • docs/ocm-cli.md
  • docs/stylesheets/extra.css
  • docs/troubleshooting.md
  • frontend/index.html
  • frontend/package.json
  • frontend/public/manifest.json
  • frontend/src/api/git.ts
  • frontend/src/api/multiRuns.ts
  • frontend/src/api/opencode.test.ts
  • frontend/src/api/opencode.ts
  • frontend/src/api/preview.ts
  • frontend/src/api/projectConfig.ts
  • frontend/src/api/providers.test.ts
  • frontend/src/api/providers.ts
  • frontend/src/api/repos.ts
  • frontend/src/api/sessionGoals.ts
  • frontend/src/api/sessionPermissionModes.test.ts
  • frontend/src/api/sessionPermissionModes.ts
  • frontend/src/api/terminals.ts
  • frontend/src/api/types.ts
  • frontend/src/api/types/settings.ts
  • frontend/src/components/message/ComposerToolsMenu.test.tsx
  • frontend/src/components/message/ComposerToolsMenu.tsx
  • frontend/src/components/message/MessageThread.tsx
  • frontend/src/components/message/PromptInput.command.test.tsx
  • frontend/src/components/message/PromptInput.goal.test.tsx
  • frontend/src/components/message/PromptInput.mention.test.tsx
  • frontend/src/components/message/PromptInput.stt.test.tsx
  • frontend/src/components/message/PromptInput.tsx
  • frontend/src/components/model/ModelQuickSelect.tsx
  • frontend/src/components/navigation/moreDrawerItems.test.ts
  • frontend/src/components/navigation/moreDrawerItems.ts
  • frontend/src/components/preview/PreviewPanel.test.tsx
  • frontend/src/components/preview/PreviewPanel.tsx
  • frontend/src/components/repo/BranchCombobox.tsx
  • frontend/src/components/repo/CreateWorktreeDialog.test.tsx
  • frontend/src/components/repo/CreateWorktreeDialog.tsx
  • frontend/src/components/repo/MultiRunDialog.test.tsx
  • frontend/src/components/repo/MultiRunDialog.tsx
  • frontend/src/components/repo/ProjectActionsMenu.test.tsx
  • frontend/src/components/repo/ProjectActionsMenu.tsx
  • frontend/src/components/repo/RepoActionsDialog.test.tsx
  • frontend/src/components/repo/RepoActionsDialog.tsx
  • frontend/src/components/repo/RepoCard.test.tsx
  • frontend/src/components/repo/RepoList.tsx
  • frontend/src/components/repo/TrustExecutableList.tsx
  • frontend/src/components/repo/projectActionIcons.ts
  • frontend/src/components/repo/repo-list-state.test.ts
  • frontend/src/components/schedules/GeneralTab.tsx
  • frontend/src/components/schedules/RunDetailPanel.test.tsx
  • frontend/src/components/schedules/RunDetailPanel.tsx
  • frontend/src/components/schedules/ScheduleJobDialog.model.test.tsx
  • frontend/src/components/schedules/ScheduleJobDialog.tsx
  • frontend/src/components/session/BackgroundWorkBar.tsx
  • frontend/src/components/session/FormPrompt.tsx
  • frontend/src/components/session/MinimizedFormIndicator.tsx
  • frontend/src/components/session/PermissionModeToggle.test.tsx
  • frontend/src/components/session/PermissionModeToggle.tsx
  • frontend/src/components/session/SessionGoalBar.test.tsx
  • frontend/src/components/session/SessionGoalBar.tsx
  • frontend/src/components/settings/GeneralSettings.tsx
  • frontend/src/components/settings/GitSettings.test.tsx
  • frontend/src/components/settings/GitSettings.tsx
  • frontend/src/components/settings/NotificationSettings.test.tsx
  • frontend/src/components/settings/NotificationSettings.tsx
  • frontend/src/components/settings/OpenCodeModelsEditor.test.tsx
  • frontend/src/components/settings/SessionAutomationSettings.test.tsx
  • frontend/src/components/settings/SessionAutomationSettings.tsx
  • frontend/src/components/source-control/BranchesTab.test.tsx
  • frontend/src/components/source-control/BranchesTab.tsx
  • frontend/src/components/source-control/ChangesTab.tsx
  • frontend/src/components/source-control/CommitsTab.tsx
  • frontend/src/components/source-control/GitOperationBanner.test.tsx
  • frontend/src/components/source-control/GitOperationBanner.tsx
  • frontend/src/components/source-control/IntegrateBranchDialog.test.tsx
  • frontend/src/components/source-control/IntegrateBranchDialog.tsx
  • frontend/src/components/source-control/RepoGitIdentitySelect.test.tsx
  • frontend/src/components/source-control/RepoGitIdentitySelect.tsx
  • frontend/src/components/source-control/SourceControlPanel.tsx
  • frontend/src/components/source-control/StashTab.test.tsx
  • frontend/src/components/source-control/StashTab.tsx
  • frontend/src/components/terminal/TerminalKeyBar.tsx
  • frontend/src/components/terminal/TerminalPanel.test.tsx
  • frontend/src/components/terminal/TerminalPanel.tsx
  • frontend/src/components/terminal/TerminalView.test.tsx
  • frontend/src/components/terminal/TerminalView.tsx
  • frontend/src/components/ui/combobox.test.tsx
  • frontend/src/components/ui/combobox.tsx
  • frontend/src/components/ui/confirm-destructive-dialog.tsx
  • frontend/src/components/ui/delete-dialog.tsx
  • frontend/src/components/ui/dialog.test.tsx
  • frontend/src/components/ui/dialog.tsx
  • frontend/src/components/ui/header.tsx
  • frontend/src/components/ui/icon-toggle-button.tsx
  • frontend/src/components/ui/path-display.tsx
  • frontend/src/components/ui/radio-option-group.tsx
  • frontend/src/components/ui/settings-list.tsx
  • frontend/src/components/ui/tts-button.tsx
  • frontend/src/hooks/useDialogParam.test.tsx
  • frontend/src/hooks/useDialogParam.ts
  • frontend/src/hooks/useGit.test.tsx
  • frontend/src/hooks/useGit.ts
  • frontend/src/hooks/useModelSelection.ts
  • frontend/src/hooks/useMultiRuns.ts
  • frontend/src/hooks/useOpenPreview.ts
  • frontend/src/hooks/useOpenTerminal.test.tsx
  • frontend/src/hooks/useOpenTerminal.ts
  • frontend/src/hooks/usePermissionModeToggle.ts
  • frontend/src/hooks/useProvidersWithModels.test.tsx
  • frontend/src/hooks/useProvidersWithModels.ts
  • frontend/src/hooks/useRepoBranches.ts
  • frontend/src/hooks/useRepoSiblings.ts
  • frontend/src/hooks/useResolveConflictsWithAgent.test.tsx
  • frontend/src/hooks/useResolveConflictsWithAgent.ts
  • frontend/src/hooks/useSessionGoals.test.tsx
  • frontend/src/hooks/useSessionGoals.ts
  • frontend/src/hooks/useSessionPermissionMode.ts
  • frontend/src/hooks/useTerminalSocket.test.tsx
  • frontend/src/hooks/useTerminalSocket.ts
  • frontend/src/lib/git-conflict-prompt.test.ts
  • frontend/src/lib/git-conflict-prompt.ts
  • frontend/src/lib/git-identity.test.ts
  • frontend/src/lib/git-identity.ts
  • frontend/src/lib/navigation.test.ts
  • frontend/src/lib/navigation.ts
  • frontend/src/lib/open-url.test.ts
  • frontend/src/lib/open-url.ts
  • frontend/src/lib/preview-url.test.ts
  • frontend/src/lib/preview-url.ts
  • frontend/src/lib/queryInvalidation.test.ts
  • frontend/src/lib/queryInvalidation.ts
  • frontend/src/lib/schedules/schedule-model.ts
  • frontend/src/lib/terminal-protocol.test.ts
  • frontend/src/lib/terminal-protocol.ts
  • frontend/src/lib/terminal-theme.ts
  • frontend/src/lib/theme/colorTheme.test.ts
  • frontend/src/lib/theme/syntaxHighlight.test.ts
  • frontend/src/lib/utils.test.ts
  • frontend/src/lib/utils.ts
  • frontend/src/lib/websocket-url.test.ts
  • frontend/src/lib/websocket-url.ts
  • frontend/src/lib/worktreeSetup.ts
  • frontend/src/pages/AssistantRedirect.tsx
  • frontend/src/pages/Login.tsx
  • frontend/src/pages/Register.tsx
  • frontend/src/pages/RepoDetail.tsx
  • frontend/src/pages/SessionDetail.tsx
  • frontend/src/pages/Setup.tsx
  • frontend/src/pages/__tests__/AssistantRedirect.preview.test.tsx
  • frontend/src/pages/__tests__/RepoDetail.worktree-setup.test.tsx
  • frontend/src/pages/__tests__/SessionDetail.assistant-loading.test.tsx
  • frontend/src/pages/__tests__/SessionDetail.commands.test.tsx
  • frontend/src/pages/__tests__/SessionDetail.form-prompt.test.tsx
  • frontend/src/pages/__tests__/SessionDetail.polling.test.tsx
  • frontend/src/pages/__tests__/SessionDetail.scroll-floating.test.tsx
  • frontend/src/types/git.ts
  • frontend/vite.config.ts
  • frontend/vitest.config.ts
  • mkdocs.yml
  • shared/src/config/defaults.ts
  • shared/src/config/env.ts
  • shared/src/notifications/format.ts
  • shared/src/schemas/git.ts
  • shared/src/schemas/index.ts
  • shared/src/schemas/internal-sessions.ts
  • shared/src/schemas/limits.ts
  • shared/src/schemas/multi-runs.ts
  • shared/src/schemas/notifications.ts
  • shared/src/schemas/preview.ts
  • shared/src/schemas/project-config.ts
  • shared/src/schemas/repo.ts
  • shared/src/schemas/session-goals.ts
  • shared/src/schemas/session-permissions.ts
  • shared/src/schemas/settings.ts
  • shared/src/schemas/terminal.ts
  • shared/src/types/errors.ts
  • shared/src/types/index.ts
  • shared/src/utils/index.ts
  • shared/src/utils/repo.ts
  • shared/src/utils/terminal-title.ts

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@chriswritescode-dev
chriswritescode-dev merged commit 87636bf into main Oct 5, 2026
2 checks passed
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.

1 participant