Skip to main content

Swarm API

The Swarm API provides comprehensive multi-agent swarm coordination capabilities, enabling you to manage swarms, agents, teams, roles, and vacancies. This API allows you to orchestrate complex multi-agent systems with fine-grained control over agent organization and responsibilities.

Overview​

The swarm module enables you to:

  • Swarm Management: Create and manage swarms of AI agents
  • Agent Registration: Register and manage agents within swarms
  • Team Organization: Create teams to group agents for specific tasks
  • Role Assignment: Define roles and assign them to agents
  • Vacancy Management: Create and manage job vacancies within swarms
  • Status Tracking: Monitor agent status and swarm health

Quick Start Example​

// Wait for connection
await codebolt.waitForReady();

// Create a new swarm
const swarm = await codebolt.swarm.createSwarm({
name: 'Development Team',
description: 'A swarm for coordinating development tasks',
allowExternalAgents: false,
maxAgents: 10
});
console.log('✅ Created swarm:', swarm.data.swarm);

// Register an agent to the swarm
const agent = await codebolt.swarm.registerAgent(swarm.data.swarm.id, {
name: 'Code Reviewer',
capabilities: ['code_review', 'testing'],
agentType: 'internal',
metadata: { version: '1.0.0' }
});
console.log('✅ Registered agent:', agent.data);

// Create a team
const team = await codebolt.swarm.createTeam(swarm.data.swarm.id, {
name: 'Frontend Team',
description: 'Handles frontend development',
maxMembers: 5,
createdBy: 'admin'
});
console.log('✅ Created team:', team.data);

// Create and assign a role
const role = await codebolt.swarm.createRole(swarm.data.swarm.id, {
name: 'Senior Developer',
description: 'Experienced developer role',
permissions: ['write', 'review', 'deploy'],
maxAssignees: 3,
createdBy: 'admin'
});
console.log('✅ Created role:', role.data);

// Assign role to agent
await codebolt.swarm.assignRole(
swarm.data.swarm.id,
role.data.role.id,
agent.data.agentId
);
console.log('✅ Role assigned successfully');

Response Structure​

All swarm API functions return responses with a consistent structure:

{
success: boolean,
requestId?: string,
data?: {
// Response-specific data
swarm: Swarm,
agents: SwarmAgent[],
team: Team,
role: Role,
// ... etc
},
error?: {
code: string,
message: string,
details?: any
}
}

Key Concepts​

Swarms​

A swarm is a collection of AI agents working together towards common goals. Each swarm has its own configuration, agents, teams, and roles.

Agents​

An agent is an AI entity that can perform tasks. Agents can be internal (managed by the system) or external (connected via external endpoints).

Teams​

A team is a subgroup of agents within a swarm, organized for specific purposes or projects.

Roles​

A role defines a set of responsibilities and permissions within a swarm. Agents can be assigned to roles to control their capabilities and access.

Vacancies​

A vacancy represents an open position within a swarm that agents can apply for, based on their capabilities and role assignments.

Status Tracking​

Agents can have different statuses: active, idle, busy, or offline. This helps in monitoring and coordinating agent activities.