Skip to content

Start Skill Am Gonna List -> Primary - #1049

Merged
arul28 merged 6 commits into
mainfrom
ade/orchestrator-lead-tool-gate
Aug 6, 2026
Merged

Start Skill Am Gonna List -> Primary#1049
arul28 merged 6 commits into
mainfrom
ade/orchestrator-lead-tool-gate

Conversation

@arul28

@arul28 arul28 commented Aug 6, 2026

Copy link
Copy Markdown
Owner

ADE   Open in ADE  ·  ade/orchestrator-lead-tool-gate branch  ·  PR #1049

Summary by CodeRabbit

  • New Features
    • Improved orchestration safeguards by limiting lead agents’ native editing, shell, task, and MCP access while preserving worker capabilities.
    • Added support for Claude Code CLI sessions and safer OpenCode configuration handling.
    • Grouped repeated background jobs in chat transcripts with counts and shared status details.
  • Bug Fixes
    • Reduced duplicate system notices and rate-limit warnings.
    • Improved cleanup of background tasks when parent agents stop.
  • Documentation
    • Updated guidance for browser, simulator, lanes, PRs, Linear, and session ownership workflows.

@vercel

vercel Bot commented Aug 6, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
ade Ignored Ignored Preview Aug 6, 2026 6:10pm

@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: c1568cc0-2360-4f9a-a9e1-33c61fb27232

📥 Commits

Reviewing files that changed from the base of the PR and between 3314740 and 9d1caf1.

⛔ Files ignored due to path filters (2)
  • docs/features/agents/README.md is excluded by !docs/**
  • docs/features/chat/README.md is excluded by !docs/**
📒 Files selected for processing (42)
  • .agents/skills/quality/SKILL.md
  • apps/desktop/resources/agent-skills/ade-app-control/SKILL.md
  • apps/desktop/resources/agent-skills/ade-browser/SKILL.md
  • apps/desktop/resources/agent-skills/ade-cli-control-plane/SKILL.md
  • apps/desktop/resources/agent-skills/ade-deeplinks/SKILL.md
  • apps/desktop/resources/agent-skills/ade-ios-simulator/SKILL.md
  • apps/desktop/resources/agent-skills/ade-lanes-git/SKILL.md
  • apps/desktop/resources/agent-skills/ade-linear/SKILL.md
  • apps/desktop/resources/agent-skills/ade-mosaic/SKILL.md
  • apps/desktop/resources/agent-skills/ade-orchestrator/SKILL.md
  • apps/desktop/resources/agent-skills/ade-pr-workflows/SKILL.md
  • apps/desktop/resources/agent-skills/ade-proof-artifacts/SKILL.md
  • apps/desktop/resources/agent-skills/ade-search/SKILL.md
  • apps/desktop/scripts/validate-packaged-tree.mjs
  • apps/desktop/src/main/services/ai/tools/systemPrompt.test.ts
  • apps/desktop/src/main/services/ai/tools/systemPrompt.ts
  • apps/desktop/src/main/services/chat/agentChatService.test.ts
  • apps/desktop/src/main/services/chat/agentChatService.ts
  • apps/desktop/src/main/services/chat/cursorSdkPolicy.test.ts
  • apps/desktop/src/main/services/chat/cursorSdkPolicy.ts
  • apps/desktop/src/main/services/chat/cursorSdkPool.test.ts
  • apps/desktop/src/main/services/chat/cursorSdkPool.ts
  • apps/desktop/src/main/services/chat/cursorSdkProtocol.ts
  • apps/desktop/src/main/services/chat/cursorSdkWorker.ts
  • apps/desktop/src/main/services/chat/droidSdkPool.test.ts
  • apps/desktop/src/main/services/chat/droidSdkPool.ts
  • apps/desktop/src/main/services/chat/droidSdkProtocol.test.ts
  • apps/desktop/src/main/services/chat/droidSdkProtocol.ts
  • apps/desktop/src/main/services/chat/droidSdkWorker.ts
  • apps/desktop/src/main/services/opencode/openCodeRuntime.test.ts
  • apps/desktop/src/main/services/opencode/openCodeRuntime.ts
  • apps/desktop/src/main/services/opencode/openCodeServerManager.test.ts
  • apps/desktop/src/main/services/opencode/openCodeServerManager.ts
  • apps/desktop/src/renderer/components/chat/AgentChatMessageList.tsx
  • apps/desktop/src/renderer/components/chat/SubagentActivityCards.test.tsx
  • apps/desktop/src/renderer/components/chat/SubagentActivityCards.tsx
  • apps/desktop/src/renderer/components/chat/chatTranscriptRows.test.ts
  • apps/desktop/src/renderer/components/chat/chatTranscriptRows.ts
  • apps/desktop/src/shared/adeCliGuidance.test.ts
  • apps/desktop/src/shared/adeCliGuidance.ts
  • apps/desktop/src/shared/orchestrationRuntimePolicy.test.ts
  • apps/desktop/src/shared/orchestrationRuntimePolicy.ts

Disabled knowledge base sources:

  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.


📝 Walkthrough

Walkthrough

The PR updates orchestration prompts and provider isolation, improves Claude task cleanup, adds background-job grouping and notice deduplication, and revises ADE skill guidance. It also removes the bundled ade-orchestrator skill.

Changes

Orchestration and chat behavior

Layer / File(s) Summary
Orchestration policy and prompt contracts
apps/desktop/src/shared/orchestrationRuntimePolicy.ts, apps/desktop/src/main/services/ai/tools/systemPrompt.ts, related tests
Adds provider-specific lead restrictions, MCP isolation contracts, Codex configuration parsing, and revised orchestration prompt rules.
Provider runtime isolation
apps/desktop/src/main/services/chat/cursorSdk*, apps/desktop/src/main/services/chat/droidSdk*, apps/desktop/src/main/services/opencode/*
Applies lead-specific tool and MCP restrictions across Cursor, Droid, and OpenCode while preserving worker capabilities and user configuration where applicable.
Agent session and task lifecycle
apps/desktop/src/main/services/chat/agentChatService.ts, apps/desktop/src/main/services/chat/agentChatService.test.ts
Adds provider-specific wiring, shared session guidance, Claude stop-state handling, rate-limit deduplication, and parent-scoped background-task cleanup.
Transcript grouping and rendering
apps/desktop/src/renderer/components/chat/chatTranscriptRows.ts, apps/desktop/src/renderer/components/chat/AgentChatMessageList.tsx, apps/desktop/src/renderer/components/chat/SubagentActivityCards.tsx
Deduplicates system notices by context and renders matching background jobs as grouped events with counts and metadata.
ADE guidance and bundled skill updates
.agents/skills/quality/SKILL.md, apps/desktop/resources/agent-skills/*, apps/desktop/src/shared/adeCliGuidance.ts, apps/desktop/scripts/validate-packaged-tree.mjs
Updates socket, ownership, workflow, handoff, and capability guidance, and removes ade-orchestrator from bundled skill registries.

Estimated code review effort: 5 (Critical) | ~120 minutes

Possibly related PRs

  • arul28/ADE#361: Overlaps in orchestration prompt protocols, provider isolation, and removal of the bundled ade-orchestrator skill.
  • arul28/ADE#1041: Directly overlaps with background-job grouping and transcript rendering.
  • arul28/ADE#257: Overlaps in agentChatService.ts and OpenCode orchestration behavior.

Suggested labels: desktop, docs

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ade/orchestrator-lead-tool-gate

Warning

Tools execution failed with the following error:

Failed to run tools: 14 UNAVAILABLE: read ECONNRESET


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.

arul28 and others added 5 commits August 6, 2026 13:07
ADE hosts harnesses; it does not replace them. Every provider already ships
its own operating instructions, so ADE's bundled skills adding a second layer
of "how to think" competes with the harness the user chose.

Strip generic workflow guidance from the bundled skills and keep only what is
true and ADE-specific: what a command does, what it returns, and the facts an
agent cannot infer from the repo. Destructive-operation notes stay, restated
as facts about consequences rather than instructions about conduct.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
An orchestrator lead may run on any provider the user picks, but only Claude's
native tool names were denied. A Codex, Cursor, Droid, or OpenCode lead kept
full edit and shell access while holding danger-full-access with approvals set
to never, so the "leads never touch files" rule held on exactly one runtime.

Add provider-native deny lists in orchestrationRuntimePolicy and apply them at
each runtime's own gate: Cursor loses the setting layers that carry writable
tools and MCP servers, OpenCode gets only ADE's managed lease, and Droid's
protocol denies its editing tools. MCP calls on a gated lead fail closed.

Known gap: OpenCode project-level config is not yet isolated. The MCP map ADE
hands it is gated, but a project config it reads on its own is not.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Background job rows and plan-limit notices each rendered once per emission,
so a turn that spawned several waiters or crossed the usage threshold more
than once filled the transcript with near-identical cards.

Fold consecutive background rows into a single card and show the usage notice
at most once per turn. Both stay in the thread; only the repetition goes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@arul28
arul28 force-pushed the ade/orchestrator-lead-tool-gate branch from 1ea7188 to 10bb314 Compare August 6, 2026 17:08
@arul28
arul28 merged commit 3da50a8 into main Aug 6, 2026
3 of 4 checks passed
@arul28
arul28 deleted the ade/orchestrator-lead-tool-gate branch August 6, 2026 18:12
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