perf(agent): cache ListAgentIDs() result before MCP tool registration loop
ListAgentIDs() was called on every iteration of the inner tool loop, causing repeated allocations. Capture the slice once and reuse it for both agentCount and the registration loop.
This commit is contained in:
parent
d2b3fc1dd0
commit
11dbc301f9
1 changed files with 3 additions and 2 deletions
|
|
@ -185,12 +185,13 @@ func (al *AgentLoop) Run(ctx context.Context) error {
|
|||
servers := mcpManager.GetServers()
|
||||
uniqueTools := 0
|
||||
totalRegistrations := 0
|
||||
agentCount := len(al.registry.ListAgentIDs())
|
||||
agentIDs := al.registry.ListAgentIDs()
|
||||
agentCount := len(agentIDs)
|
||||
|
||||
for serverName, conn := range servers {
|
||||
uniqueTools += len(conn.Tools)
|
||||
for _, tool := range conn.Tools {
|
||||
for _, agentID := range al.registry.ListAgentIDs() {
|
||||
for _, agentID := range agentIDs {
|
||||
agent, ok := al.registry.GetAgent(agentID)
|
||||
if !ok {
|
||||
continue
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue