Agent Areas Overview
Agent Areas are logical groupings of agents, knowledge bases, and tools that serve a specific business domain. An Area for HR has different agents, different knowledge, and different tools than an Area for Finance. Areas enforce isolation while allowing shared infrastructure.
What Is an Agent Area?
An Area is a named deployment scope that bundles together everything needed for a specific business domain:
public class AgentArea
{
public Guid AreaId { get; init; }
public Guid TenantId { get; init; }
public string Name { get; init; } = string.Empty; // e.g. "HR", "Finance", "IT Support"
public string Description { get; init; } = string.Empty;
public Guid[] AgentIds { get; init; } = Array.Empty<Guid>();
public Guid[] UserGroupIds{ get; init; } = Array.Empty<Guid>(); // Who can access this area
public bool IsActive { get; init; } = true;
}
Why Areas?
Isolation
HR agents cannot access Finance knowledge. Finance tools are not available to HR agents. Each area operates independently within the same Octopus instance.
Access Control
Users are granted access to specific areas. An employee sees only the HR area. A CFO sees the Finance area. Administrators manage area membership.
Shared Infrastructure
All areas share the same Octopus installation, SQL Server, and vector database — but each operates within its own logical boundary via agent and collection scoping.
Area Architecture
// Example: Multi-area enterprise deployment
Tenant: Acme Corp
├── Area: HR
│ ├── Agents: [HRAssistant, LeaveManager, PolicyAdvisor]
│ ├── Knowledge: [HR Policy 2025.pdf, Leave Calculator Guide.pdf]
│ ├── Tools: [get_leave_balance, submit_leave_request, get_org_chart]
│ └── Users: [All employees]
├── Area: Finance
│ ├── Agents: [ExpenseAdvisor, BudgetAnalyst]
│ ├── Knowledge: [Finance Policy.pdf, Expense Guidelines.pdf]
│ ├── Tools: [get_budget_summary, submit_expense, get_approvals]
│ └── Users: [Finance team, managers]
└── Area: IT Support
├── Agents: [HelpDeskBot, IncidentManager]
├── Knowledge: [IT Procedures.pdf, System Catalogue.pdf]
├── Tools: [create_ticket, get_ticket_status, reset_password]
└── Users: [All employees]
Area vs. Agent Distinction
| Concept | Granularity | Purpose |
|---|---|---|
| Area | Business domain (HR, Finance) | Groups agents + knowledge + tools for a domain; controls user access |
| Agent | Specific role within a domain | Single LLM persona with specific tools and knowledge; handles conversations |