Commit graph

120 commits

Author SHA1 Message Date
RussellZager
618aa6652b
Inline terminal rendering parity with the VSCode Terminal (#11361)
* fix: render ANSI escape codes in inline terminal output

Fixes #10699

## Problem
The inline terminal output displayed raw ANSI bracket codes ([1m, [32m, etc.)
instead of rendering colors and formatting. This was caused by:
1. Backend: strip-ansi removing the ESC byte but leaving bracket remnants
2. Frontend: CodeBlock/Shiki having no ANSI rendering capability

## Solution
1. Backend: Replace strip-ansi with targeted removal of only VSCode shell
   integration sequences (OSC 633/133), preserving standard ANSI SGR codes
2. Frontend: Add new TerminalOutput component using ansi-to-html library
   that converts ANSI sequences to styled HTML spans
3. Map ANSI colors to VSCode terminal theme CSS variables for consistent
   theming across light/dark themes

## Testing
- Verified XSS prevention (escapeXML: true)
- Verified theme compatibility
- Added unit tests for both backend and frontend changes
- Updated existing tests to expect ANSI codes in output

Bundle size impact: ~3KB gzipped (ansi-to-html library)

Co-authored-by: Zman771 <605281+Zman771@users.noreply.github.com>

* fix: add eslint-disable for intentional ANSI control regex

---------

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: Zman771 <605281+Zman771@users.noreply.github.com>
Co-authored-by: Russell Zager <rzager@google.com>
2026-02-20 00:19:56 -07:00
roomote[bot]
d00f1a2bb8
feat: remove Roomote Control from extension (#11271)
* feat: remove Roomote Control from extension

Remove all Roomote Control (remote control) functionality:

- Remove BridgeOrchestrator and entire bridge directory from @roo-code/cloud
- Remove remoteControlEnabled, featureRoomoteControlEnabled from extension state
- Remove extensionBridgeEnabled from CloudUserInfo and user settings
- Remove roomoteControlEnabled from organization/user feature schemas
- Remove enableBridge from Task and ClineProvider
- Remove remote control toggle from CloudView UI
- Remove remoteControlEnabled message handler
- Remove extension bridge disconnect on logout/deactivate
- Update CloudTaskButton to show for all logged-in users
- Remove remote control translation strings from all locales
- Update all related tests

CLO-765

* fix: remove dead getOrganizationMetadata and unused socket.io-client dep

* Readmes

* Readmes

* Types

* fix: remove leftover Roomote Control references from locale READMEs and stale BridgeOrchestrator mock

* Removes cloudtaskbutton

* fix: remove orphaned qrcode packages and dead openInCloud translation keys

* pnpmlock

* Revert these

* Revert these

* Revert these

* Remove socket.io

---------

Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Bruno Bergher <bruno@roocode.com>
Co-authored-by: cte <cestreich@gmail.com>
2026-02-19 16:33:39 -08:00
Alik Aslanyan
31bed9cebe
Add React Compiler integration to webview-ui (#9565) 2026-01-29 01:32:27 -05:00
Chris Estreich
04256be956
Git worktree management (#10458)
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Hannes Rudolph <hrudolph@gmail.com>
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2026-01-20 13:39:24 -08:00
Chris Estreich
3171ffc809
Move more types to @roo-code/types (for the cli) (#10583) 2026-01-09 11:59:06 -08:00
Hannes Rudolph
e142906e7d
feat: add announcement support CTA and social icons (#9945) 2025-12-09 11:09:15 -08:00
Hannes Rudolph
0fd7023ea7
feat(chat): Improve diff appearance in main chat view (#8932)
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2025-11-06 16:18:01 -05:00
renovate[bot]
7b4f074b9e
chore(deps): update dependency vite to v6.3.6 [security] (#7838)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-03 10:00:33 -04:00
dependabot[bot]
68c5be8030
chore(deps): bump axios from 1.9.0 to 1.12.0 (#7963)
Bumps [axios](https://github.com/axios/axios) from 1.9.0 to 1.12.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.9.0...v1.12.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.12.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-15 15:48:36 -07:00
roomote[bot]
ad8551868e
feat: Add cloud task button for opening tasks in Roo Code Cloud (#7572)
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Bruno Bergher <bruno@roocode.com>
Co-authored-by: Bruno Bergher <me@brunobergher.com>
2025-09-11 15:08:14 -04:00
Chris Estreich
962df868bd
Fix webview in dev mode (#7044) 2025-08-13 01:40:00 -07:00
Chris Estreich
9ffc2b0a36
Move cloud types from @roo-code/types to @roo-code/cloud (#7038) 2025-08-13 00:10:29 -07:00
KJ7LNW
3e89b06f25
debug: Add ErrorBoundary component for better error handling (#5085)
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-07-23 08:45:35 -04:00
KJ7LNW
c58b9638c5
fix: eliminate XSS vulnerability in CodeBlock component (#5157)
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-06-27 10:20:59 -04:00
renovate[bot]
d049634263
fix(deps): update dependency tailwind-merge to v3 (#4834)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-06-20 23:14:57 -04:00
renovate[bot]
15d5af6919
fix(deps): update dependency pretty-bytes to v7 (#4806)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-06-20 23:14:01 -04:00
Hannes Rudolph
85d73af334
feat: add LaTeX math equation rendering in chat window (#4258) (#4786)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-06-20 15:45:18 -04:00
renovate[bot]
5c7cae0c48
fix(deps): update dependency lucide-react to ^0.518.0 (#4820)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-19 00:52:01 -07:00
renovate[bot]
8d61bfb16f
fix(deps): update dependency lucide-react to ^0.516.0 (#4612)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-17 15:33:47 -07:00
Chris Estreich
44f3a8418b
Convert all webview-ui tests: jest -> vitest (#4771) 2025-06-17 15:29:17 -07:00
Chris Estreich
62c3914034
Farewell jest (#4607)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-06-16 21:39:45 -07:00
Chris Estreich
bad9b0e163
Bump @roo-code/types to v1.26.0 (#4584)
* Bump @roo-code/types to v1.26.0

* Add instructions for NPM publish
2025-06-12 11:05:53 -04:00
Chris Estreich
ab01fb3bdb
Move to Postgres for evals on roocode.com (#4520) 2025-06-11 14:17:53 -07:00
Chris Estreich
c03869bf1e
Remove Storybook + unused components (#4517) 2025-06-10 14:29:39 -07:00
renovate[bot]
12982f1bc5
fix(deps): update dependency i18next to v25 (#4359)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-10 13:47:42 -07:00
renovate[bot]
385b5429a7
chore(deps): update storybook monorepo to v9 (major) (#4353)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-10 13:47:24 -07:00
renovate[bot]
fe26c05dc9
fix(deps): update dependency lucide-react to ^0.513.0 (#4345)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-04 16:56:35 -04:00
Chris Estreich
73f39616c3
Improve turbo task dependency declarations (#4323) 2025-06-04 09:32:27 -07:00
renovate[bot]
935a7c935b
chore(deps): update dependency @types/jest to v29 (#4184)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-06-03 15:50:48 -07:00
Chris Estreich
01eef2be99
Bring back #4128 (#4292) 2025-06-03 14:03:19 -07:00
renovate[bot]
ff422b12f7
fix(deps): update dependency lucide-react to ^0.511.0 (#4182)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-31 16:04:43 -04:00
Sam Hoang Van
acd51c5120
fix(webview): resolve memory leak in ChatView by stabilizing callback props (#3926)
* fix(webview): resolve memory leak in ChatView by stabilizing callback props

- Stabilize handleSendMessage using clineAskRef to prevent frequent re-creation
- Stabilize toggleRowExpansion by extracting handleSetExpandedRow and managing dependencies
- Re-integrate scrolling logic into useEffect hook to avoid destabilizing callbacks
- Add everVisibleMessagesTsRef to reduce unnecessary ChatRow remounts by Virtuoso
- Update onToggleExpand signature to accept timestamp parameter for better stability
- Remove diagnostic console.log statements used for debugging callback changes

These changes address detached DOM elements memory leak caused by frequent
callback re-creation triggering unnecessary component re-renders and preventing
proper garbage collection of chat message DOM nodes.

* comment correct TTL

---------

Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>
2025-05-28 13:11:38 -04:00
Chris Estreich
e66136f1aa
Add a new @roo-code/types package and use it everywhere (#3912) 2025-05-26 12:06:45 -07:00
Chris Estreich
39cd50b989
Fix linter errors (#3821) 2025-05-21 23:16:43 -07:00
Chris Estreich
c6851976fa
Fix vite server (#3816) 2025-05-21 21:39:41 -07:00
Chris Estreich
d5484b52fa
Upgrade to ESLint 9 + share eslint config across workspaces (#3815) 2025-05-21 21:30:21 -07:00
Chris Estreich
57249a0881
PNPM + Turbo monorepo + Nightly releases (#3407) 2025-05-21 21:01:20 -07:00
மனோஜ்குமார் பழனிச்சாமி
628661c5c5
feat: move play audio to webview to ensure cross-platform (#3659)
Co-authored-by: sam hoang <samhv.ict@gmail.com>
2025-05-20 01:15:05 -04:00
KJ7LNW
afc82b851d
build: enable source maps for improved debugging (#3596)
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-05-14 13:46:53 -04:00
Chris Estreich
cd07b7faeb
Fix linter warning + run prettier on everything (#3581) 2025-05-13 15:16:24 -07:00
renovate[bot]
dd9ccfedc5
fix(deps): update dependency lucide-react to ^0.510.0 (#3402)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-12 10:39:34 -07:00
renovate[bot]
2249efc244
chore(deps): update dependency vite to v6.3.5 (#3334)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-08 09:49:49 -07:00
renovate[bot]
8eb65853c6
chore(deps): update dependency eslint-plugin-storybook to ^0.12.0 (#3287)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-07 21:24:37 -07:00
robertheadley
78b2083467
feat: Add error console to MCP servers - Edited with Roo Code and Anthropic Claude 3.5 (#2722)
Co-authored-by: cte <cestreich@gmail.com>
2025-05-06 00:17:20 -07:00
Chris Estreich
65958d81b9
Overhaul CodeBlock rendering (#3019) 2025-04-28 17:10:57 -07:00
Chris Estreich
1924e10e72
Fix all linter errors (and fix the lint scripts too) (#2958) 2025-04-26 09:45:26 -07:00
KJ7LNW
da2ab6e388
test: limit Jest worker count to 40% per suite (#2658)
- Each test suite (extension/webview) limited to 40% CPU usage
- Total CPU utilization capped at 80% (40% x 2 suites)
- Reserves 20% CPU for system and user tasks
- Prevents memory thrashing and system slowdown
- Reduces risk of OOM kills on memory-constrained systems
- Maintains smooth UI responsiveness during test runs
- Improves test reliability while keeping parallel execution

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-15 14:37:27 -07:00
nobuo kawasaki
30c3a65b7b
Fix eslint error about --ext option by remove it (#2543) 2025-04-14 16:25:09 -07:00
Sam Hoang Van
08110ae35b
Filter & Search Workspace Task History (#2526)
* Enhancement: Add 'Show all workspaces' feature to task history and update translations

* Enhancement: Add Checkbox component and integrate it into HistoryPreview and HistoryView

* Simplify the UX

---------

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-04-12 23:20:14 -04:00
Matt Rubens
e810a886d2
Welcome page OAuth (#1913)
* Add Requesty OAuth flow

* New 1-click onboarding flow

* Requesty: Use correct default model info

* When called from the onboard flow, created the default profile

Glama OAuth handler changed for consistency.

* Add router images

* Shuffle the routers

* Translate

* Appease knip

---------

Co-authored-by: Daniel Trugman <dtrugman@gmail.com>
2025-03-23 10:08:16 -04:00