Skip to main content
Every Cube deployment ships with a single agent by default — see the Overview for the standard configuration. For more advanced setups, you can configure multiple agents within the same deployment, each with its own model, accessible views, rules, and certified queries. Multi-agent is useful when:
  • Different teams need agents tuned to their own domain (e.g., a Sales Assistant and a Marketing Analyst).
  • You want specialized agents with distinct instructions or tool access in the same deployment.
  • You need to isolate context (rules, certified queries, memories) between user groups.
Spaces and agents must first be created through the Cube Cloud UI before they can be configured via YAML. The system matches YAML entries to UI-created spaces and agents by their name field.

Architecture

A multi-agent setup introduces one new concept on top of the single-agent model: spaces.
  • A deployment can contain one or more spaces.
  • A space is an isolated context. It owns its rules, certified queries, and memories — they are not shared across spaces.
  • Each agent belongs to exactly one space and inherits everything that space owns. Multiple agents can live in the same space and share the same rules, certified queries, and memories.
This means you choose a space’s boundary based on what context should be shared. Two agents serving the same team usually live in one space; agents serving different domains (Sales vs. Marketing) live in different spaces so their context stays separate. In the single-agent setup, there is an implicit auto space that holds all rules, certified queries, and memories — you don’t need to think about it. In a multi-agent setup, you define spaces explicitly and attach rules and certified queries to specific spaces.

What changes from the single-agent setup

The agents/ file structure is the same. What’s different is how agents/config.yml is shaped:
  1. Agents are defined as an array. Each agent gets a unique name and an optional description, in addition to the standard agent properties (llm, runtime, accessible_views, memory_mode, etc.).
  2. Spaces are introduced. A spaces array defines the contexts agents operate in. Each space gets a unique name.
  3. Rules and certified queries attach to spaces. Use the space property in the frontmatter of each rule or certified query Markdown file to attach it to a specific space.
You cannot mix flat root-level properties (the single-agent style) with spaces or agents arrays in the same file. Use one style per file.

Agents

Replace the flat root-level agent properties with an agents array:
The properties available on each agent are the same as in the single-agent setup, plus:

Spaces

A space is the context an agent operates in. Spaces own the rules, certified queries, and memories that the agents inside them share. Define spaces alongside agents:
Each agent must reference exactly one space via its space property. Multiple agents can share the same space and inherit its rules, certified queries, and memories.

Attaching rules and certified queries to a space

In the single-agent setup, rules and certified queries belong to the implicit auto space. In a multi-agent setup, you must attach each rule and certified query to a specific space using the space property in the Markdown frontmatter:
You can also organize rules and certified queries into space-named subdirectories. Files placed under agents/rules/<space-name>/ or agents/certified_queries/<space-name>/ are attached to that space automatically — no space frontmatter required.

Complete example