Commit graph

1437 commits

Author SHA1 Message Date
Matt Rubens
7780957fed Fix language passing 2025-03-17 15:50:18 -04:00
Matt Rubens
41bd36c29a More chat i18n 2025-03-17 15:49:59 -04:00
cte
f108dfaeb8 Evals 2025-03-17 10:09:19 -07:00
Chris Estreich
a06119a40c
Merge branch 'main' into all-tasks-events-in-api 2025-03-17 09:35:14 -07:00
Matt Rubens
df80e9620d
Merge pull request #1618 from aheizi/support_project_mcp
feat: support project-level mcp config
2025-03-17 12:32:11 -04:00
Chris Estreich
dc302f72c2
Merge pull request #1670 from franekp/ask-response-event
feat(RooCodeAPI): add event that user responded to "ask" request
2025-03-17 09:32:02 -07:00
Chris Estreich
5cd084de6f
Merge pull request #1669 from franekp/public-api-current-task-ids
feat(RooCodeAPI): add getCurrentTaskStack() returning stack of task IDs
2025-03-17 09:31:39 -07:00
Matt Rubens
7bfdcbe64e
Merge pull request #1705 from RooVetGit/cte/context-proxy-fixes
Fix API configuration profile switching
2025-03-17 11:52:08 -04:00
aheizi
c948e811db Merge branch 'main' into support_project_mcp
# Conflicts:
#	src/services/mcp/McpHub.ts
2025-03-17 23:37:20 +08:00
aheizi
1f200882d0 fix test 2025-03-17 17:30:38 +08:00
aheizi
686a31d6c6 update MCP prompt instructions
(cherry picked from commit 8b76206cc1)
2025-03-17 14:38:35 +08:00
aheizi
bda929b4f6 Merge branch 'main' into support_project_mcp
# Conflicts:
#	webview-ui/src/i18n/locales/ar/mcp.json
#	webview-ui/src/i18n/locales/cs/mcp.json
#	webview-ui/src/i18n/locales/hu/mcp.json
#	webview-ui/src/i18n/locales/pt/mcp.json
#	webview-ui/src/i18n/locales/ru/mcp.json
2025-03-17 12:07:03 +08:00
Matt Rubens
79e1d11b2e Add a language picker 2025-03-16 16:49:07 -04:00
cte
1abf8c1dcc Fix API configuration profile switching 2025-03-16 11:24:58 -07:00
Matt Rubens
129020ea00 Add language to telemetry 2025-03-16 14:05:25 -04:00
aheizi
4363c26fd9 Merge branch 'main' into support_project_mcp 2025-03-16 11:51:48 +08:00
Matt Rubens
c7868cf111 Fix getWorkspaceProblems to use an await 2025-03-15 23:17:53 -04:00
GitlyHallows
2a2e467ba4 1. Added validation for task history and added option for user to remove/keep task in history 2025-03-16 00:07:21 +00:00
Wojciech Kordalski
67f6dab782
Forward events from all running Cline instances to the exposed API 2025-03-15 12:51:47 +01:00
Wojciech Kordalski
bf497119c8
Expose event that informs that user responded to "ask" request 2025-03-15 12:16:18 +01:00
Wojciech Kordalski
3b5b34012f
Expose task IDs on the Cline stack 2025-03-15 12:05:55 +01:00
aheizi
70600d7077 Merge remote-tracking branch 'origin/main' into support_project_mcp 2025-03-15 18:40:22 +08:00
Matt Rubens
9bbbaf2288 Add a new setting to control the number of workspace files included in the system prompt 2025-03-14 12:06:56 -04:00
aheizi
5d8a456374 Merge branch 'main' into support_project_mcp 2025-03-14 20:48:47 +08:00
Matt Rubens
b29f94ae65
Revert "feat: add sse mcp support" 2025-03-13 13:00:32 -04:00
aheizi
4106ca4a19 support project-level mcp config 2025-03-13 21:07:24 +08:00
cte
c609856302 Fix e2e tests 2025-03-13 00:54:05 -07:00
Chris Estreich
7845f96788
Merge pull request #1612 from RooVetGit/cte/task-events
Add Cline events and roofactor subtasks slightly
2025-03-12 22:56:13 -07:00
cte
4b23644683 Add Cline events and roofactor subtasks slightly 2025-03-12 22:52:37 -07:00
Matt Rubens
774248be1e Fix more hard-coded openrouter urls 2025-03-12 14:08:17 -04:00
Matt Rubens
0d8c6e7ae0 Add diffStrategy name to telemetry 2025-03-12 13:46:46 -04:00
Matt Rubens
cad274176c Merge remote-tracking branch 'origin/main' into feature/add_sse_mcp 2025-03-12 11:51:25 -04:00
Matt Rubens
28e745124a PR cleanup 2025-03-12 11:23:06 -04:00
Matt Rubens
00bf91470b Add i18n 2025-03-12 11:23:06 -04:00
Matt Rubens
baa346dc46 Remove preferredLanguage and just rely on VSCode language 2025-03-12 11:23:04 -04:00
aheizi
e45f515e62 Merge branch 'main' into feature/add_sse_mcp 2025-03-12 19:09:07 +08:00
cte
4b6def5f31 ContextProxy fix - constructor should not be async 2025-03-11 14:24:21 -07:00
Chris Estreich
b73bc39c8d
Merge pull request #1365 from KJ7LNW/roo-fix-terminal-undefined-exit-code
refactor terminal architecture to address critical issues with the current design
2025-03-11 13:59:04 -07:00
Matt Rubens
3b2d6bce64
Merge pull request #1564 from cannuri/cannuri/fix_subtask_cancel_resume_bug
fix: Preserve parent-child relationship when cancelling subtasks
2025-03-11 14:47:17 -04:00
aheizi
f534e80f78 fix ut 2025-03-12 00:46:04 +08:00
aheizi
29aa464ce3 Merge remote-tracking branch 'origin/main' into feature/add_sse_mcp 2025-03-11 23:06:12 +08:00
aheizi
8b76206cc1 update MCP prompt instructions 2025-03-11 22:58:57 +08:00
axb
8917ab7591 fix duplicate ask 2025-03-11 13:08:02 +08:00
axb
621fc0e867 Revert "Merge pull request #1518 from RooVetGit/revert_tool_progress_for_now"
This reverts commit dba9116d26, reversing
changes made to 85dd1a1977.
2025-03-11 13:07:55 +08:00
cannuri
6ce8e56db5 fix: Preserve parent-child relationship when cancelling subtasks
This commit fixes an issue where subtasks weren't properly reporting back to parent tasks when cancelled and resumed. Previously, when a subtask was cancelled and a new task was started with the same message, the parent task would incorrectly resume, causing unexpected behavior.

The fix:
1. Stores parent-child relationship information before cancelling a task
2. Restores this relationship after task reinitialization
3. Ensures parent tasks only resume when explicitly instructed to do so

This approach maintains the correct task hierarchy throughout the cancellation and resumption process, preventing parent tasks from automatically resuming when unrelated tasks with similar messages are started.
2025-03-11 06:05:48 +01:00
Eric Wheeler
e3adee4f15 fix: allow background terminals to broadcast output across tasks
Fix issue where background processes (like compilers) couldn't broadcast their
output to new tasks after the launching task was closed. Previously commit
851a4cd prevented terminals from responding to any task except the one that
started them.

The fix allows background terminals (taskId undefined) to act as broadcast
sources that can update any task through getEnvironmentDetails, while still
maintaining proper isolation for task-specific terminals. This enables common
workflows where:

1. A task launches a background compiler
2. That task is closed and a new task is started
3. The new task can still receive compiler errors when making changes

This gives us the best of both worlds:
- Task isolation: Active tasks only see their own terminal output
- Background broadcasting: Background processes can inform any task that needs
  their output

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-03-10 20:55:05 -07:00
Eric Wheeler
0b4fa0b1d6 feat: compress repeated terminal output lines
Add Terminal.compressTerminalOutput static method to apply run-length encoding
before truncating terminal output. This significantly reduces output size for
repeated lines while maintaining readability.

- Add compressTerminalOutput static method to Terminal class
- Replace all truncateOutput calls with Terminal.compressTerminalOutput
- Import required functions from extract-text

Test program demonstrating compression:
```python
def generate_repeats():
    patterns = [
        ("A\n", 10),          # 10 lines
        ("AA\n", 100),        # 100 lines
        ("AAA\n", 1000),      # 1K lines
        ("AAAA\n", 10000),    # 10K lines
        ("AAAAA\n", 100000),  # 100K lines
        ("AAAAAA\n", 1000000) # 1M lines
    ]

    for text, count in patterns:
        print(text * count, end="")
```

Sample output showing compression:
```
A
A
A
A
A
A
A
A
A
A
AA
<previous line repeated 99 additional times>
AAA
<previous line repeated 999 additional times>
AAAA
<previous line repeated 9999 additional times>
AAAAA
<previous line repeated 99999 additional times>
AAAAAA
<previous line repeated 999999 additional times>
```

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-03-10 20:55:05 -07:00
Eric Wheeler
269ddf9a0e fix: avoid duplicate terminal output accumulation
Optimize terminal output handling to reduce memory pressure by:
- Remove continuous result accumulation during line processing
- Only store the same final output from the "completed" event that came from TerminalProcess

Also:
- Add clear error messages for undefined exit details

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-03-10 20:55:05 -07:00
Eric Wheeler
5be49e1d15 fix: apply terminal output line limits consistently
Apply terminalOutputLineLimit to command output lines as they are received,
rather than only at the end of command execution. Also apply the limit to
terminal output shown in environment details.

This ensures consistent output truncation behavior across all terminal
output paths, preventing potential memory issues from large outputs.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-03-10 20:55:05 -07:00
Eric Wheeler
8b8c4fde50 fix: handle undefined exit codes in terminal output
When a terminal command completes with an undefined exit code:

- Add explicit handling for undefined exit code case
- Include clear message in output that exit code is undefined
- Notify user to help diagnose potential terminal issues

This helps identify and debug cases where the terminal process
completes but the exit code is not properly captured.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-03-10 20:55:05 -07:00