-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Add Agent Manager for multi-agent orchestration #4151
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds a multi-agent orchestration system called "Agent Manager" that enables running multiple autonomous AI agent sessions in parallel. Each agent is driven by an isolated Kilocode CLI process running in JSON mode, with state management handled via Jotai in the webview.
Key Changes:
- New Agent Manager panel accessible from the sidebar (behind
AGENT_MANAGER_ENABLEDfeature flag) - Complete webview UI with session management, message streaming, and real-time status updates
- Backend provider that spawns and manages CLI processes, parsing nd-json output
- Comprehensive test coverage for parser logic and state management
Reviewed changes
Copilot reviewed 33 out of 34 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
webview-ui/vite.config.ts |
Added agent-manager.html as build entry point |
webview-ui/agent-manager.html |
New HTML entry for Agent Manager webview |
webview-ui/package.json |
Added Jotai dependency for state management |
webview-ui/src/i18n/locales/en/agentManager.json |
English localizations for Agent Manager UI |
webview-ui/src/agent-manager/index.tsx |
React app entry point with i18n setup |
webview-ui/src/agent-manager/utils/vscode.ts |
VS Code API wrapper for webview communication |
webview-ui/src/agent-manager/state/ |
Jotai atoms and hooks for session and message state |
webview-ui/src/agent-manager/components/ |
React components for UI (sidebar, detail view, messages, chat) |
webview-ui/src/agent-manager/components/AgentManagerApp.css |
Complete styling for Agent Manager UI |
src/core/agent-manager/types.ts |
TypeScript interfaces for agent sessions and messages |
src/core/agent-manager/CliOutputParser.ts |
Parser for CLI nd-json output with ANSI handling |
src/core/agent-manager/AgentRegistry.ts |
In-memory session registry with lifecycle management |
src/core/agent-manager/AgentManagerProvider.ts |
Main provider managing webview and CLI processes |
src/core/agent-manager/__tests__/ |
Comprehensive test suites for parser and provider |
src/core/task/Task.ts |
Added CLI-mode storage path fallback |
src/activate/registerCommands.ts |
Registered agentManagerOpen command |
src/package.json |
Added Agent Manager command to VS Code manifest |
packages/types/src/vscode.ts |
Added agentManagerOpen command ID |
packages/types/src/feature-flags.ts |
Added AGENT_MANAGER_ENABLED feature flag |
pnpm-lock.yaml |
Lockfile updates for Jotai dependency |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
useful for integration tests
sessions can be forked from a share or from own session id
…sion startup (#4171) * Fix crash loop if ManagedIndexer somehow doesn't instantiate on extension startup * Add changeset * Add telemetry to managedindexer instance being missing
RSO
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tested it, and while there's definitely room for improvement, I think this is a good place to start with a first version. Great job!
Adds a new Agent Manager panel for running multiple autonomous agent sessions in parallel.
Features:
Notes:
AGENT_MANAGER_ENABLED) - dev mode onlyScreens



