AI Overview

AuraBoot is a metadata-first application platform with AI built into the same pipeline that powers the rest of the system. AI features do not bypass models, commands, permissions, or audit. They reuse them.
This page maps the five surfaces that make up AuraBoot's AI layer and explains when each one is the right tool.
Capability Map
| Surface | Audience | Role |
|---|---|---|
| Agent System | Architects, plugin authors | The runtime that loads agent definitions, selects tools, and executes guarded steps |
| AI Copilot (AuraBot panel) | End users | The chat panel embedded in the web admin shell |
| Aura Bot | End users on IM | The same agent runtime exposed through chat channels (@AI, DM, group reply) |
| MCP | External tool consumers | The Model Context Protocol surface that exposes AuraBoot tools to other agents |
| ACP | Backend integrators | The Agent Communication Protocol (/execute, SSE event stream) used for server-to-server agent runs |
All five share one execution path. Every chat turn, every IM mention, every ACP /execute call, and every MCP tool invocation goes through ConversationTurnService.runTurn (or resumeTurn for approval gates). This is the chokepoint that guarantees persistence, audit, event publishing, and streaming consistency.
How They Fit Together
+-----------------------------+
| LLM Providers |
| (Anthropic, OpenAI, |
| DeepSeek, Qianwen, Zhipu, |
| Moonshot) |
+--------------+--------------+
|
+--------------v--------------+
| Agent Runtime |
| - Agent definitions |
| - Tool selection |
| - Guardrails |
+--------------+--------------+
|
+--------------v--------------+
| ConversationTurnService | <- single chokepoint
| runTurn / resumeTurn |
+--------------+--------------+
|
+---------+---------+-------+-------+---------+----------+
| | | | | |
AI Copilot Aura Bot ACP /execute MCP tools Approval Audit /
(web) (IM) (server agent) (external) gate trace
The same response goes to the right ResponseSink:
SseResponseSinkfor HTTP streaming (Copilot panel, ACP)BroadcastResponseSinkfor IM channels and group chat fan-out
When To Use Which
| Use case | Pick |
|---|---|
| End user asks a question inside the web admin | AI Copilot |
End user mentions @AI in IM or DMs the bot | Aura Bot |
| External agent (Claude Desktop, another platform) wants to call AuraBoot tools | MCP |
| Another backend service needs to run an agent and stream events | ACP |
| Plugin author needs to add a new tool, prompt, or guardrail | Agent System + plugin packaging |
Shared Invariants
Regardless of surface, the following always hold:
- A tool call goes through the standard command pipeline (auth, validation, transaction, audit).
- Permission codes follow
<module>.<resource>.<action>and are checked per call. - High-risk operations route to the approval gate and pause the turn until resolved.
- Every turn writes trace spans with prompt, model, tool calls, latency, and cost.
- Conversation state is durable; resuming an interrupted turn is supported.
Example: One Question, Four Surfaces
A user asking "How many overdue tasks does Alice have?" can hit any surface:
# Copilot panel
POST /api/ai/aurabot/chat/stream
{ "agentCode": "operations-helper", "conversationId": 1024, "message": "How many overdue tasks does Alice have?" }
# Aura Bot (IM mention)
@AI How many overdue tasks does Alice have?
# ACP (server agent, resumes via /execute)
POST /api/ai/aurabot/execute
{ "agentCode": "operations-helper", "message": "...overdue tasks for Alice..." }
# MCP (external client)
tools/call name=cmd:task:query args={ "assignee": "alice", "status": "overdue" }All four resolve to the same agent, the same tool contract, and the same audit record.
Verify Checklist
- You can identify which surface (Copilot / Bot / ACP / MCP) your scenario uses.
- The tool you intend to expose is registered as a command with a permission code.
- You understand that all turns flow through
ConversationTurnService. - You know whether your action is low-risk (auto-execute) or high-risk (approval gate).