mirror of
https://github.com/getpaseo/paseo.git
synced 2026-07-29 12:01:31 +00:00
feat: add parentAgentId to MCP create_agent tool
Add parentAgentId optional parameter to the create_agent MCP tool input schema so agents can create child agents with explicit parent references. Also update registerSession() to copy parentAgentId from config to the managed agent object. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -727,6 +727,7 @@ export class AgentManager {
|
||||
historyPrimed: false,
|
||||
lastUserMessageAt: null,
|
||||
attention: { requiresAttention: false },
|
||||
parentAgentId: config.parentAgentId,
|
||||
} as ActiveManagedAgent;
|
||||
|
||||
this.agents.set(agentId, managed);
|
||||
|
||||
@@ -220,6 +220,12 @@ export async function createAgentMcpServer(
|
||||
.describe(
|
||||
"Run agent in background. If false (default), waits for completion or permission request. If true, returns immediately."
|
||||
),
|
||||
parentAgentId: z
|
||||
.string()
|
||||
.optional()
|
||||
.describe(
|
||||
"Optional parent agent ID. When set, this agent is a child of the specified parent agent."
|
||||
),
|
||||
},
|
||||
outputSchema: {
|
||||
agentId: z.string(),
|
||||
@@ -246,6 +252,7 @@ export async function createAgentMcpServer(
|
||||
worktreeName,
|
||||
background = false,
|
||||
title,
|
||||
parentAgentId,
|
||||
}) => {
|
||||
let resolvedCwd = expandPath(cwd);
|
||||
|
||||
@@ -265,6 +272,7 @@ export async function createAgentMcpServer(
|
||||
cwd: resolvedCwd,
|
||||
modeId: initialMode,
|
||||
title: normalizedTitle ?? undefined,
|
||||
parentAgentId,
|
||||
});
|
||||
|
||||
if (initialPrompt) {
|
||||
|
||||
3
plan.md
3
plan.md
@@ -300,12 +300,13 @@ Files requiring modification:
|
||||
- Run typecheck after changes.
|
||||
- **Done (2025-12-21 19:45)**: Added `parentAgentId?: string` to `ManagedAgentBase` in `agent-manager.ts:97`, `AgentSessionConfig` in `agent-sdk-types.ts:164`, and `AgentSnapshotPayloadSchema` in `messages.ts:248`. Updated `toAgentPayload()` in `agent-projections.ts:83` to include `parentAgentId` in the payload. Typecheck passes.
|
||||
|
||||
- [ ] **Implement**: Add parentAgentId to MCP create_agent tool.
|
||||
- [x] **Implement**: Add parentAgentId to MCP create_agent tool.
|
||||
|
||||
- Add `parentAgentId` to tool input schema in `mcp-server.ts:183`
|
||||
- Pass `parentAgentId` to `agentManager.createAgent()` call in `mcp-server.ts:263`
|
||||
- The MCP server has access to the calling agent context - use that ID
|
||||
- Run typecheck after changes.
|
||||
- **Done (2025-12-21 21:15)**: Added `parentAgentId` optional field to `create_agent` tool input schema in `mcp-server.ts:223-228`. Updated handler to accept `parentAgentId` parameter and pass it to `agentManager.createAgent()` in `mcp-server.ts:275`. Also updated `registerSession()` in `agent-manager.ts:730` to copy `parentAgentId` from config to the managed agent. Typecheck passes.
|
||||
|
||||
- [ ] **Implement**: Add parentAgentId to client types and session store.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user