feat(orchestrator): MS23-P0-005 subagent tree endpoint (#714)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com> Co-committed-by: Jason Woltje <jason@diversecanvas.com>
This commit was merged in pull request #714.
This commit is contained in:
@@ -30,6 +30,8 @@ import { AgentEventsService } from "./agent-events.service";
|
||||
import { GetMessagesQueryDto } from "./dto/get-messages-query.dto";
|
||||
import { AgentMessagesService } from "./agent-messages.service";
|
||||
import { AgentControlService } from "./agent-control.service";
|
||||
import { AgentTreeService } from "./agent-tree.service";
|
||||
import { AgentTreeResponseDto } from "./dto/agent-tree-response.dto";
|
||||
import { InjectAgentDto } from "./dto/inject-agent.dto";
|
||||
import { PauseAgentDto, ResumeAgentDto } from "./dto/control-agent.dto";
|
||||
|
||||
@@ -56,7 +58,8 @@ export class AgentsController {
|
||||
private readonly killswitchService: KillswitchService,
|
||||
private readonly eventsService: AgentEventsService,
|
||||
private readonly messagesService: AgentMessagesService,
|
||||
private readonly agentControlService: AgentControlService
|
||||
private readonly agentControlService: AgentControlService,
|
||||
private readonly agentTreeService: AgentTreeService
|
||||
) {}
|
||||
|
||||
/**
|
||||
@@ -78,6 +81,7 @@ export class AgentsController {
|
||||
// Spawn agent using spawner service
|
||||
const spawnResponse = this.spawnerService.spawnAgent({
|
||||
taskId: dto.taskId,
|
||||
...(dto.parentAgentId !== undefined ? { parentAgentId: dto.parentAgentId } : {}),
|
||||
agentType: dto.agentType,
|
||||
context: dto.context,
|
||||
});
|
||||
@@ -152,6 +156,13 @@ export class AgentsController {
|
||||
};
|
||||
}
|
||||
|
||||
@Get("tree")
|
||||
@UseGuards(OrchestratorApiKeyGuard)
|
||||
@Throttle({ default: { limit: 200, ttl: 60000 } })
|
||||
async getAgentTree(): Promise<AgentTreeResponseDto[]> {
|
||||
return this.agentTreeService.getTree();
|
||||
}
|
||||
|
||||
/**
|
||||
* List all agents
|
||||
* @returns Array of all agent sessions with their status
|
||||
|
||||
Reference in New Issue
Block a user