Commit graph

7063 commits

Author SHA1 Message Date
davincidreams
b8e2e83a3f docs: update PRD to reflect Phase 1 + Teams shipped; add teams reference guide
- prd-swarm-multi-agent.md: mark Phase 1 and Teams (PT) as shipped in delivery
  table; update problem statement to reflect clineStack removal; add section 7b
  summarising the teams system and linking to the new reference
- docs/teams.md: new full reference for .roo/teams/*.json config format,
  template variables, execution modes, conventions injection, orchestrator loop
  pattern, and the fullstack.json example

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 06:37:09 -04:00
davincidreams
c2a549a1dc feat(teams): add run_team_phase tool and TeamsManager for phased multi-agent workflows
Implements the Atlas-Agent-Teams pattern for Roo-Code:
- TeamConfig JSON schema in packages/types (slug, phases, agents, conventions)
- TeamsManager scans .roo/teams/*.json and caches configs
- RunTeamPhaseTool executes one phase: concurrent via spawnConcurrentChildren,
  sequential single via delegateParentAndOpenChild, sequential multiple via queue drain
- LLM schema (run_team_phase.ts) with orchestrator loop description
- Wired into ClineProvider (init, getTeamConfig, dispose), TOOL_GROUPS.modes,
  TOOL_DISPLAY_NAMES, NativeToolArgs, toolParamNames, and presentAssistantMessage
- Sample .roo/teams/fullstack.json: discovery (concurrent) → implementation → review

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 06:29:24 -04:00
davincidreams
5aecb08211 fix(swarm): schema, mode-switch race, abortOnChildFailure for concurrent spawn
Three targeted fixes:

1. Tool schema: add concurrent and abortOnChildFailure params to
   spawn_parallel_tasks so the LLM can discover and use them. Update
   description to explain sequential vs concurrent trade-offs.

2. Mode-switch race: spawnConcurrentChildren was using tasks.map(async)
   which ran all handleModeSwitch calls concurrently, causing each child
   to read whatever mode happened to win the race. Rewrite to a sequential
   for-loop for setup (mode switch + createTask), then a tight sync loop
   for all child.start() calls so execution is still concurrent.

3. abortOnChildFailure for concurrent mode: when a child rejects and the
   flag is set, immediately abort all sibling tasks via removeClineFromStack
   and reject their completion Promises. Previously this flag was only
   wired for the sequential queue-drain path.

Add 7 unit tests covering: aggregated results, serialised mode switches,
simultaneous start ordering, per-child error collection, sibling abort,
event emission, and worktree creation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 05:07:43 -04:00
davincidreams
862d263cb8 feat(swarm-p1): replace clineStack with tasks Map + concurrent spawn path
Replace the LIFO `clineStack: Task[]` with a flat `tasks: Map<string, Task>`
(+ `focusedTaskId`, `leaderTaskId`, `childCompletionHandlers`) so multiple
tasks can be registered simultaneously — the prerequisite for true concurrent
fan-out.

Key changes:
- ClineProvider: swap all 19 clineStack usages; add `getTaskById()`,
  `spawnConcurrentChildren()`, `resolveChildCompletion()`
- SpawnParallelTasksTool: add `concurrent?: boolean` flag; concurrent path
  awaits Promise.all via spawnConcurrentChildren instead of queue drain
- AttemptCompletionTool: detect concurrent vs sequential by checking whether
  parent is still alive in the tasks map; route to resolveChildCompletion
  (concurrent) or reopenParentFromDelegation (sequential)
- Tests: update three spec files that accessed clineStack directly

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 03:05:14 -04:00
davincidreams
3b3fe80ae1 docs: add PRD for swarm / true multi-agent execution
Captures the full architecture plan for moving Moo Code from sequential
task delegation to genuine concurrent in-process swarm, modelled on the
claude-code teammate/swarm implementation.

Phases:
  P1 - Replace clineStack with concurrent tasks: Map, remove single-open invariant
  P2 - SwarmRegistry, AgentIdentity, round-robin color assignment
  P3 - InMemoryMailbox, idle worker loop, task_assignment/idle_notification
  P4 - LeaderPermissionBridge, worker badge in tool-ask UI
  P5 - FileMailbox with lockfile for cross-process workers
  P6 - CliWorkerBackend, moo-worker entry point, spawn_swarm tool

Includes data model changes, new event names, updated API surface for
spawn_parallel_tasks (concurrent flag) and new spawn_swarm tool spec,
UI changes, phased delivery estimates, and risk/mitigation table.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 02:34:31 -04:00
davincidreams
11b0bdef9d feat: parallel task introspection, orphan detection, error handling, and telemetry
- Introspection API: add ParallelTaskStatus type and getParallelTaskStatus() on
  TaskProviderLike so callers can list active child, queued tasks, and completed
  results (with errors) for any task ID
- Worktree orphan detection: detectAndCleanOrphanedWorktrees() scans history on
  startup, emits telemetry for each find, and offers a VS Code cleanup prompt
- Error propagation: reopenParentFromDelegation accepts childFailed flag; when
  abortOnChildFailure is set on the parent the remaining parallel queue is
  abandoned and partial results returned immediately
- abortOnChildFailure option: SpawnParallelTasksTool forwards the flag through
  delegation so callers can opt into fail-fast queue behaviour
- Worktree naming: worktree paths and branches now embed the last 8 chars of the
  parent task ID (e.g. project-a1b2c3d4) instead of a random suffix, making
  manual inspection easy
- Telemetry: six new events — WORKTREE_CREATED, WORKTREE_DELETED,
  WORKTREE_ORPHAN_DETECTED, PARALLEL_TASK_SPAWNED, PARALLEL_TASK_COMPLETED,
  PARALLEL_TASK_CHILD_FAILED — with matching TelemetryService capture methods
- error field on parallelResults items and abortOnChildFailure on HistoryItem
  schema so failure context survives process restarts

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 02:23:38 -04:00
davincidreams
be83bb6698 feat: port Claude Code CLI features and add parallel agent/worktree support
- Port session memory compaction, microcompact, hooks system, and
  prompt-too-long retry from the Claude Code CLI source
- Add spawn_parallel_tasks tool with serial queue drain fan-out pattern
- Add worktree isolation: new_task/spawn_parallel_tasks accept a worktree
  param; ClineProvider creates/cleans up git worktrees per child task
- Add completionPayload: attempt_completion result parsed as JSON and
  aggregated across parallel tasks for structured fan-in
- Fix workspacePath priority so explicit override always wins over parent
- Emit TaskSpawned event from delegateParentAndOpenChild
- Scope MCP hub to per-task workspacePath for worktree-aware mcp.json
- Fix microCompact bugs: touched flag, off-by-one threshold, keepRecent:0
- Fix lazy OutputChannel init in hooks executor to avoid test failures
- Fix pre-existing lint warnings across src, packages/cloud, webview-ui

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 23:50:56 -04:00
davincidreams
dae4954696 chore: remove telemetry banner from startup UI 2026-04-23 10:35:13 -04:00
davincidreams
9d5887ba31 chore: replace extension icon with custom Moo Code branding 2026-04-23 10:11:47 -04:00
davincidreams
f43d5edd74 fix: update cloud tests and package.json URLs
- Update all cloud package tests to match no-op implementations
- All 171 tests now pass
- Update src/package.json repository URL and homepage to point to actual fork
2026-04-23 09:27:21 -04:00
davincidreams
2fc7798424 feat: make fork standalone as Moo Code
- Strip all telemetry (PostHog, cloud telemetry) - no data leaves the machine

- Disable all cloud features (auth, settings sync, sharing, Roo provider)

- Rebrand extension: roo-cline -> moo-code, RooVeterinaryInc -> moo-code

- Update all commands, settings, views to moo-code.* prefix

- Remove upstream CI/CD workflows (marketplace publish, nightly, website)

- Rewrite README, PRIVACY, CONTRIBUTING, SECURITY docs

- Build verified: bin/moo-code-3.52.1.vsix (31.44 MB)
2026-04-23 08:20:11 -04:00
roomote-v0[bot]
c4547d25c5
feat(web): redesign Roomote announcement banner with violet branding (#12161)
Some checks failed
Code QA Roo Code / check-translations (push) Has been cancelled
Code QA Roo Code / knip (push) Has been cancelled
Code QA Roo Code / compile (push) Has been cancelled
Code QA Roo Code / platform-unit-test (ubuntu-latest) (push) Has been cancelled
Code QA Roo Code / platform-unit-test (windows-latest) (push) Has been cancelled
Deploy roocode.com / check-secrets (push) Has been cancelled
CodeQL Advanced / Analyze (javascript-typescript) (push) Has been cancelled
Nightly Publish / publish-nightly (push) Has been cancelled
Deploy roocode.com / deploy (push) Has been cancelled
Co-authored-by: Roo Code <roomote@roocode.com>
2026-04-21 11:40:35 -06:00
roomote-v0[bot]
b4f2a242bc
feat(blog): add sunsetting roo code blog post (#12160)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-04-21 11:40:27 -06:00
Chiranjeevisantosh Madugundi
2bb826039b
feat(chat): add previous checkpoint navigation controls and i18n (#12139)
Some checks are pending
Code QA Roo Code / check-translations (push) Waiting to run
Code QA Roo Code / knip (push) Waiting to run
Code QA Roo Code / compile (push) Waiting to run
Code QA Roo Code / platform-unit-test (ubuntu-latest) (push) Waiting to run
Code QA Roo Code / platform-unit-test (windows-latest) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
Nightly Publish / publish-nightly (push) Waiting to run
2026-04-20 16:12:10 -06:00
Chiranjeevisantosh Madugundi
3e202ebf5b
feat(vertex): add Claude Opus 4.7 support (#12135) 2026-04-20 11:42:10 -06:00
Bruno Bergher
cb83656718
Roomote banner (#12119)
Some checks failed
Code QA Roo Code / check-translations (push) Has been cancelled
Code QA Roo Code / knip (push) Has been cancelled
Code QA Roo Code / compile (push) Has been cancelled
Code QA Roo Code / platform-unit-test (ubuntu-latest) (push) Has been cancelled
Code QA Roo Code / platform-unit-test (windows-latest) (push) Has been cancelled
CodeQL Advanced / Analyze (javascript-typescript) (push) Has been cancelled
Nightly Publish / publish-nightly (push) Has been cancelled
Deploy roocode.com / check-secrets (push) Has been cancelled
Deploy roocode.com / deploy (push) Has been cancelled
* Roomote banner

* fix(web): use published @roo-code/types in web-roo-code

---------

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2026-04-14 18:48:08 -04:00
github-actions[bot]
8b12f21439
Changeset version bump (#12110)
Some checks are pending
Code QA Roo Code / check-translations (push) Waiting to run
Code QA Roo Code / knip (push) Waiting to run
Code QA Roo Code / compile (push) Waiting to run
Code QA Roo Code / platform-unit-test (ubuntu-latest) (push) Waiting to run
Code QA Roo Code / platform-unit-test (windows-latest) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
Nightly Publish / publish-nightly (push) Waiting to run
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-13 16:57:35 -06:00
Hannes Rudolph
9f251fde70
Release v3.52.1 (#12109) 2026-04-13 16:13:55 -06:00
roomote-v0[bot]
319b5576c7
chore: remove hiring announcement from VS Code extension (#12108)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-04-13 15:57:28 -06:00
roomote-v0[bot]
7adbfec2a4
feat: add correct JSON schema for .roomodes configuration files (#11791)
Some checks failed
Code QA Roo Code / check-translations (push) Has been cancelled
Code QA Roo Code / knip (push) Has been cancelled
Code QA Roo Code / compile (push) Has been cancelled
Code QA Roo Code / platform-unit-test (ubuntu-latest) (push) Has been cancelled
Code QA Roo Code / platform-unit-test (windows-latest) (push) Has been cancelled
CodeQL Advanced / Analyze (javascript-typescript) (push) Has been cancelled
Nightly Publish / publish-nightly (push) Has been cancelled
Deploy roocode.com / check-secrets (push) Has been cancelled
Deploy roocode.com / deploy (push) Has been cancelled
Co-authored-by: Roo Code <roomote@roocode.com>
2026-04-08 16:37:14 -06:00
github-actions[bot]
9cfaf38d8a
Changeset version bump (#12085)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Hannes Rudolph <hrudolph@gmail.com>
2026-04-08 15:16:12 -06:00
Ronald
92a1be40df
fix: Qwen Bad Request 400 (#12067) (#12083) 2026-04-08 14:34:45 -06:00
Hannes Rudolph
5b93bc7dc3
Release v3.52.0 (#12082) 2026-04-08 14:33:47 -06:00
Enrico Carlesso
5432fa2689
feat: migrate xAI provider to Responses API with reusable transform utils (#11962)
Co-authored-by: Enrico Carlesso <ecarlesso@twitter.com>
Co-authored-by: Roo Code <roomote@roocode.com>
2026-04-08 11:38:13 -06:00
Ksandr
eafed9705c
Fix/minimax context window and models (#12069) 2026-04-08 08:44:36 -06:00
Kamil Jopek
c3cae397a1
feat: add Poe as an AI provider (#12015)
Some checks failed
Code QA Roo Code / platform-unit-test (ubuntu-latest) (push) Has been cancelled
Code QA Roo Code / platform-unit-test (windows-latest) (push) Has been cancelled
Code QA Roo Code / knip (push) Has been cancelled
Code QA Roo Code / compile (push) Has been cancelled
Code QA Roo Code / check-translations (push) Has been cancelled
CodeQL Advanced / Analyze (javascript-typescript) (push) Has been cancelled
Nightly Publish / publish-nightly (push) Has been cancelled
2026-04-05 23:37:29 -04:00
Peter Dave Hello
137d3f4fd8
Add OpenAI GPT-5.4 mini and nano models (#11946) 2026-03-18 22:27:26 -06:00
Enrico Carlesso
08f3a2bb39
feat: add xAI grok-4.20 models and update default (Fixes #11955) (#11956) 2026-03-18 22:25:20 -06:00
github-actions[bot]
44fd975b17
Changeset version bump
changeset version bump

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-03-07 19:36:55 -07:00
roomote-v0[bot]
4ab1d81f55
Release v3.51.1
chore: add changeset for v3.51.1

Co-authored-by: Roo Code <roomote@roocode.com>
2026-03-07 19:17:54 -07:00
roomote-v0[bot]
7ae9c4efd2
feat: add gpt-5.4 to ChatGPT Plus/Pro (Codex) model catalog (#11876) 2026-03-07 19:00:39 -07:00
cscvenkatmadurai
0892455db2
feat(bedrock): add Cohere Embed v4 model and improve credential handling (Fixes #11823) (#11824)
feat(bedrock): add Cohere Embed v4 model and improve credential handling

- Add cohere.embed-v4:0 (1536-dim) to Bedrock embedding model profiles
- Add v4-specific request format (embedding_types: ["float"]) and response
  parsing (embeddings.float[0]) in BedrockEmbedder
- Replace fromEnv() with fromNodeProviderChain() for default credential
  chain when no AWS profile is specified, supporting SSO, IMDS, ECS, and
  other credential sources with built-in memoization
- Add unit tests for Cohere v4 request/response handling, credential
  provider selection, and v3 regression coverage

Fixes #11823
2026-03-05 18:45:17 -07:00
Niklas Volcz
0e56afc764
Add Gemini 3.1 Pro customtools model to Vertex AI provider (#11857) 2026-03-05 15:21:12 -07:00
github-actions[bot]
5eec588653
Changeset version bump (#11731)
changeset version bump

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-03-05 15:18:22 -07:00
Hannes Rudolph
58c535319e
Release v3.51.0 (#11870)
chore: add changeset for v3.51.0
2026-03-05 14:58:45 -07:00
Peter Dave Hello
0612739ba1
Add OpenAI GPT-5.3 chat latest and GPT-5.4 model support (#11848) 2026-03-05 14:15:55 -07:00
AJ Juaire
52ce796e42
feat: add ROO_ACTIVE env variable to terminal env settings (#11862) 2026-03-04 17:23:52 -07:00
Chris Estreich
3e237e6061
chore(cli): prepare release v0.1.17 (#11860) 2026-03-04 12:27:57 -08:00
Chris Estreich
0b0b33e6a2
feat(cli): support --create-with-session-id and UUID session validation (#11859)
feat(cli): add create-with-session-id support

rename public task id flag to --create-with-session-id

validate session ids as UUIDs for create/resume and stdin start.taskId

add integration coverage for create+resume loading correct session
2026-03-04 10:32:16 -08:00
Chris Estreich
0db51d8bfa
chore(cli): prepare release v0.1.16 (#11852) 2026-03-03 23:37:56 -08:00
John Richmond
7dc83a522e
Allow selecting a specific shell (#11851)
* Allow selecting a specific shell

Add --terminal-shell CLI flag to specify which shell ExecaTerminalProcess
uses for inline command execution. The shell path is validated at the CLI
layer and passed through the standard settings mechanism (BaseTerminal
static getter/setter), matching how all other CLI terminal settings flow
through the system.

* test(cli): make shell path access test cross-platform
2026-03-03 23:31:34 -08:00
Chris Estreich
9a58f76299
Add CLI integration coverage for stdin stream routing/race invariants (#11846)
Add integration coverage for stdin stream routing and race invariants
2026-03-02 23:11:54 -08:00
Chris Estreich
f9da48f73a
chore(cli): prepare release v0.1.15 (#11845) 2026-03-02 23:05:05 -08:00
Chris Estreich
06afe4206b
Fix CLI follow-up routing after completion asks (#11844)
Fix stdin follow-up routing for completion asks in CLI stream mode
2026-03-02 22:52:39 -08:00
Chris Estreich
02598bc4a5
chore(cli): prepare release v0.1.14 (#11843) 2026-03-02 21:54:26 -08:00
Chris Estreich
d0480360cb
cli: ensure full command output is streamed before done (#11842) 2026-03-02 21:50:18 -08:00
Hannes Rudolph
459f27015d
fix: prevent redundant skill reloading in conversation (#11838) 2026-03-02 16:47:19 -07:00
Hannes Rudolph
d6611f8f69
chore(cli): prepare release v0.1.13 (#11837)
* chore(cli): prepare release v0.1.13

* Update CHANGELOG.md

---------

Co-authored-by: Chris Estreich <cestreich@gmail.com>
2026-03-02 14:50:33 -08:00
Hannes Rudolph
af1e12c76d
feat: expose skills as slash commands with skill fallback execution (#11834)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-03-02 15:10:32 -07:00
Chris Estreich
ce73d05646
Release: v1.115.0 (#11833)
chore: bump version to v1.115.0
2026-03-02 13:35:52 -08:00