Skip to content

Managing Teams ​

Teams are multi-agent collaboration systems where multiple AI agents work together on complex workflows. This guide covers team creation, configuration, and management.


What Are Teams? ​

Teams enable multiple AI agents to collaborate on tasks that require specialized knowledge or multi-step workflows.

Key Concepts:

  • Team Agents: Agents that belong to a team (with specific roles)
  • Agent Roles: Manager, Orchestrator, or Member
  • Connections: AI Delegation (bidirectional) or Handoff (one-way)
  • Visual Designer: Flow-based canvas for designing team structures

Use Cases:

  • Customer support escalation (Tier 1 → Tier 2 → Specialist)
  • Sales workflows (Lead qualifier → Demo scheduler → Sales closer)
  • Content creation (Researcher → Writer → Editor → Publisher)
  • Multi-domain support (Product questions → Billing → Technical support)

Team List Page ​

Path: /teams

View Modes ​

ModeDescriptionUse Case
Grid ViewCard-based layoutBrowsing and comparing teams visually
Table ViewCompact row-based layoutQuickly scanning many teams

Toggle: View mode buttons in top-right corner

Search and Filtering ​

Search: Real-time search by team name or identifier

Team List Columns ​

Verified against app/types/domains/team.ts:

ColumnDescriptionSource Field
NameTeam display namename
IdentifierUnique slugidentifier
DescriptionBrief team summarydescription
Agent CountNumber of agents in teamagent_count
StatusActive, Inactive, or Draftstatus
CreatedCreation timestampcreated_at
ActionsQuick action buttons—

Creating Teams ​

Two paths:

1. Quick Create Form ​

Path: /teams/createInterface: Simple form with basic fields

Fields:

  • Name (required): Team display name
  • Identifier (required): Unique slug (auto-generated from name)
  • Description (required): Brief summary of team purpose
  • Image (optional): Team avatar/logo

Action: Creates team with no agents → redirect to Visual Designer to add agents

2. Visual Designer ​

Path: /teams/designerInterface: Flow-based canvas with drag-and-drop

Workflow:

  1. Create new team (enter name, identifier, description)
  2. Add agents to canvas
  3. Connect agents with relationship lines
  4. Configure roles and connection types
  5. Save team

See: Visual Designer Guide for full designer documentation


Team Structure ​

Team Fields ​

From app/types/domains/team.ts:

typescript
{
  id: number,
  name: string,              // Team display name
  identifier: string,        // Unique slug (e.g., "support-team")
  description: string,       // Brief summary
  image?: string,            // Optional team avatar URL
  agents: TeamAgent[],       // Array of team agents
  suggested_prompts?: SuggestedPromptsConfig  // Conversation starters
}

Example:

json
{
  "name": "Customer Support Team",
  "identifier": "support-team",
  "description": "Multi-tier support with escalation to specialists",
  "image": "https://...",
  "agents": [
    { "id": 1, "name": "Tier 1 Support", "role": "member" },
    { "id": 2, "name": "Tier 2 Support", "role": "member" },
    { "id": 3, "name": "Support Manager", "role": "manager" }
  ]
}

Agent Roles ​

Every agent in a team has a role that defines its responsibility.

Role Types ​

Verified against app/types/domains/team.ts (role is implied via AgentConfiguration):

RoleIconDescriptionCapabilities
ManagerCrownCoordinates team, delegates tasksCan assign work, review outputs, make decisions
OrchestratorNetworkRoutes messages to appropriate agentsCan analyze requests, route to specialists
MemberUserExecutes specialized tasksFocused expertise, reports to manager

Configuration: Set via agent's configuration.manager and configuration.orchestrator flags

Example:

json
{
  "name": "Support Manager",
  "configuration": {
    "manager": true,
    "orchestrator": false
  }
}

Role Assignment Best Practices ​

Manager (1 per team):

  • Highest-level decision maker
  • Reviews all outputs before final response
  • Handles escalations
  • Coordinates between specialists

Orchestrator (optional, 0-1 per team):

  • Routes incoming requests to appropriate member
  • No decision-making authority
  • Pure routing logic

Members (2-10 per team):

  • Specialized expertise (billing, technical, product, etc.)
  • Execute specific tasks
  • Report results to manager

Team Structure Recommendation:

  • Small teams (2-4 agents): 1 manager + 2-3 members
  • Medium teams (5-7 agents): 1 manager + 1 orchestrator + 3-5 members
  • Large teams (8+ agents): Consider splitting into multiple teams

Agent Connections ​

Connections define how agents communicate and collaborate.

Connection Types ​

From team flow designer (implied in app/types/domains/team.ts via edge types):

Connection TypeDirectionDescriptionUse Case
AI DelegationBidirectionalManager delegates task to member, member returns resultComplex problem-solving, review workflows
HandoffOne-wayTransfer conversation to another agentEscalation, specialization routing

AI Delegation Flow:

Manager → "Research this topic" → Member
Member → "Here's the research" → Manager
Manager → Uses research to formulate response

Handoff Flow:

Tier 1 Support → Cannot solve issue → Handoff to Tier 2
Tier 2 Support → Takes over conversation

Configuring Connections ​

In Visual Designer:

  1. Click and drag from one agent node to another
  2. Select connection type (AI Delegation or Handoff)
  3. Optionally add label (e.g., "Escalate technical issues")

Connection Rules:

  • Manager → Member: Use AI Delegation (manager needs results back)
  • Member → Member: Use Handoff (transfer ownership)
  • Orchestrator → Member: Use Handoff (route to specialist)
  • Member → Manager: Use AI Delegation (report results)

Team Agents ​

TeamAgent Interface ​

From app/types/domains/team.ts:

typescript
{
  id?: number,
  name: string,
  description: string,
  knowledgeSources: any[],
  tools: any[],
  tasks?: any[],
  configuration?: AgentConfiguration,
  isExistingAgent?: boolean,
  '@id'?: string,
  originalIndex?: number
}

Key Fields:

  • isExistingAgent: If true, references existing agent by ID (not a new agent)
  • configuration: Role flags, capabilities
  • knowledge, tools: Resources available to this agent

Adding Agents to Teams ​

Two methods:

1. Reference Existing Agent ​

json
{
  "id": 123,
  "isExistingAgent": true
}

Effect: Team uses existing agent (no duplication)

2. Create New Team-Specific Agent ​

json
{
  "name": "Team-Specific Support Agent",
  "description": "Specialized for this team",
  "isExistingAgent": false,
  "configuration": {
    "manager": false,
    "reasoning": true
  }
}

Effect: Creates new agent scoped to this team

Recommendation: Use existing agents when possible to maintain consistency across teams.


Editing Teams ​

Two paths:

1. Quick Edit Form ​

Path: /teams/{id}/editInterface: Form view (same as create) Editable:

  • Name, identifier, description, image
  • Agent list (add/remove references)

Cannot edit: Agent roles, connections (use Visual Designer)

2. Visual Designer ​

Path: /teams/designer?team={id} or /teams/{id}/designerInterface: Flow-based canvas Editable: Everything (structure, roles, connections, positions)

Recommended for: Complex team restructuring


Team Actions ​

Per-Team Actions ​

ActionIconDescription
ChatMessage bubbleStart conversation with team
EditPencilOpen quick edit form
DesignerNetworkOpen visual designer
DeleteTrashPermanently delete team

Row Click: Clicking anywhere on team row opens team detail view

Deleting Teams ​

Warning: Deletion is permanent

What gets deleted:

  • Team configuration
  • Agent connections and roles
  • Team-specific agents (if created for team)

What is preserved:

  • Referenced existing agents (not deleted)
  • Historical sessions (sessions remain accessible)

Cannot delete if:

  • Team has active sessions in progress
  • Team is referenced by automation workflows

Team Metrics ​

From app/types/domains/team.ts:

typescript
{
  total_teams: number,
  active_teams: number,
  inactive_teams: number,
  total_team_agents: number,
  average_agents_per_team: number,
  teams_with_images: number
}

Display: Shown on teams dashboard at /teams (top metrics panel)


Suggested Prompts ​

Teams can have conversation starters like individual agents.

Field: suggested_promptsType: SuggestedPromptsConfig (same as agents)

Example:

json
{
  "suggested_prompts": [
    { "text": "I have a billing question", "icon": "credit-card" },
    { "text": "Technical support needed", "icon": "wrench" },
    { "text": "Talk to sales", "icon": "phone" }
  ]
}

Use Case: Guide users to the right team member


Team Workflows ​

Delegation Workflow ​

Scenario: User asks complex question requiring research

Flow:

  1. Manager receives user message
  2. Manager delegates research task to Researcher agent
  3. Researcher performs research, returns results
  4. Manager uses research to formulate response
  5. Manager replies to user

Implementation: AI Delegation connections

Escalation Workflow ​

Scenario: Tier 1 support can't solve issue

Flow:

  1. Tier 1 Support attempts to help
  2. Tier 1 determines escalation needed
  3. Handoff to Tier 2 Support
  4. Tier 2 takes over conversation
  5. User continues conversation with Tier 2

Implementation: Handoff connections

Routing Workflow ​

Scenario: User request needs specific specialist

Flow:

  1. Orchestrator receives user message
  2. Orchestrator analyzes intent (billing? technical? sales?)
  3. Handoff to appropriate specialist
  4. Specialist handles conversation

Implementation: Orchestrator with Handoff connections to specialists


Best Practices ​

Team Size ​

Optimal: 3-5 agents Maximum recommended: 7 agents Why: More agents = slower response times, higher costs, complexity

If you need 8+ agents: Split into multiple specialized teams

Role Distribution ​

Recommended ratios:

  • 1 Manager : 3-5 Members
  • 1 Orchestrator : 4-6 Members

Don't:

  • Multiple managers (creates confusion)
  • All members, no manager (no coordination)
  • Too many orchestrators (adds latency)

Naming Conventions ​

Teams: Describe purpose, not structure

  • ✅ "Customer Support Team"
  • ❌ "Team with 5 agents"

Agents: Describe specialty or role

  • ✅ "Billing Specialist"
  • ✅ "Technical Support - Level 2"
  • ❌ "Agent 1"

Connection Patterns ​

Star Pattern (Manager-centric):

      Member A
          ↑
     Manager ← User
          ↓
      Member B

Use for: Research teams, review workflows

Linear Pattern (Escalation):

User → Tier 1 → Tier 2 → Specialist

Use for: Support escalation, approval chains

Hub Pattern (Orchestrator-centric):

         Orchestrator ← User
         /    |    \
    Sales  Support  Product

Use for: Routing, department-based teams


Troubleshooting ​

Team Not Responding ​

Symptoms: Team conversation doesn't start or agents don't respond

Possible Causes:

  1. No manager configured → No agent to coordinate
  2. All agents disabled → Check agent status
  3. Connection errors → Verify connections in Visual Designer

Fix: Open Visual Designer, verify structure and roles

Wrong Agent Responding ​

Symptoms: Orchestrator routes to wrong specialist

Cause: Orchestrator instructions unclear

Fix: Edit orchestrator agent instructions to clarify routing logic

Slow Response Times ​

Symptoms: Team takes 5+ seconds to respond

Causes:

  • Too many agents (7+)
  • Complex delegation chains (Manager → A → B → C)
  • Heavy knowledge sources on multiple agents

Fix: Simplify team structure, reduce agents, optimize knowledge


Next Steps ​