Core Concepts
Understanding a few key ideas will help you get the most out of DAEMI. Everything in the platform flows from these building blocks.
Agents
An agent is the fundamental unit in DAEMI. Each agent is defined by a YAML profile that specifies:
- Identity — a unique
agent_id, name, and role - Personality — tone, behavioral traits, and emotional modeling
- Memory policy — how memories transfer between sessions
- LLM configuration — which model provider to use, or inherit the system default
Agents are stateful. They remember things. They have personalities that shape how they reason and respond. They're not just prompt wrappers — they're entities that evolve over time.
agent_id: aria
name: Aria
role: Research Assistant
personality:
tone: curious, methodical
traits:
- high openness
- strong analytical drive
memory:
transfer_policy: carry_all
→ See Agent Profiles for the full schema.
Memory — STM and LTM
Every agent has two memory layers, both managed by DAEMI's memory store:
Short-Term Memory (STM)
The agent's working memory for the current session. Messages, tool results, and reasoning steps are written here during a conversation. STM is semantically indexed, meaning the agent can surface relevant context from earlier in the session even across a long exchange.
Long-Term Memory (LTM)
Persistent memory that survives session boundaries. At the end of a session, DAEMI distills key facts, insights, and events from STM into LTM based on the agent's transfer_policy. Future sessions query LTM to surface relevant past context before the conversation begins.
LTM is what makes agents feel like they know you. The more you use an agent, the richer its memory becomes.
→ See Memory for details on how STM/LTM work and how to query them.
Teams
A team is a special type of agent that orchestrates a group of specialized member agents. Teams are also defined via YAML profiles with type: team.
When you talk to a team, DAEMI routes your request to the right member based on role and context. Members collaborate — a Designer might hand off specs to a Frontend developer, who surfaces issues to a QA agent.
agent_id: tema
name: Tema
role: Software Team
type: team
members:
- role: PM
name: Roja
- role: Designer
name: Desa
- role: Architect
name: Teka
→ See Teams for orchestration details.
Plugins
Plugins extend the tool graph. DAEMI ships with 37+ built-in tool nodes covering web search, file I/O, code execution, and more. Plugins add capabilities on top — email, databases, external APIs — and join the tool graph dynamically when configured.
Each plugin is configured via the Console under Settings → Plugins. Once configured, its tools become available to all agents.
{
"smtp_host": "smtp.gmail.com",
"smtp_port": 587,
"username": "you@gmail.com",
"password": "app-password"
}
→ See Plugins Overview and Configuring Plugins.
Workflows
A workflow is a multi-step automation you define and run through DAEMI. Steps can be sequential or nested, and each step maps to a tool in the tool graph (including agent calls).
Workflows are useful for:
- Repeated multi-step research tasks
- Report generation pipelines
- Data processing sequences
- Any process too complex for a single agent turn
When you run a workflow, DAEMI returns a run_id immediately and streams results via SSE:
GET /api/workflows/{id}/runs/{run_id}/stream
→ See Workflows Overview.
Scheduled Jobs
DAEMI can run workflows on a schedule using cron expressions. The server manages crontab automatically — you define the schedule in the Console, DAEMI writes the crontab entry, and POST /api/jobs/{id}/run is what cron calls at trigger time.
No manual crontab editing required.
→ See Scheduled Jobs.
The Console
The Console is DAEMI's Angular web UI. It's how most users interact with DAEMI day-to-day:
- Start sessions with any agent
- Run and monitor workflows
- Configure plugins
- Manage LLM provider settings
- View memory and session history
→ See Console Overview.
The Tool Graph
Every capability available to agents — web search, file operations, code execution, memory queries, plugin tools — is a node in the tool graph. DAEMI ships with 37+ built-in nodes. The graph is defined at the server level and plugins join it dynamically when configured.
When an agent decides to use a tool, DAEMI resolves it through the tool graph and executes it in the appropriate runtime context.