Categories:
Agents Server architecture and components
Development architecture and technical components of the agents-server
Technical foundations
The agents-server component will start a server that listens for incoming requests and executes the agent’s tasks based on the received input.
The server can be configured to use an agent by specifying the agent package name.
This server creates a REST API that can be used to interact with different agents. The API allows sending requests to the agent and receiving responses.
Within the agents-server, the agents package component enables information processing tasks to be performed and acted upon to achieve specific objectives. This information can come from a database and respond to the user’s request based on that acquired information.
Architecture overview
The following figure shows the main technical components of the agents-server, which are described below.

agents-server components
HTTP server
Microservice is implemented as an HTTP server (fastapi) that exposes an API to receive the request to be validated.
Config Api Handler
The agents-server uses the aura-configuration-api to get the configuration of the agent. This handler is responsible for retrieving the configuration of the agent from the aura-configuration-api and providing it to the server.
ConfigurationManager
ConfigurationManager is a handler for configuration, obtained through a configuration file or environment variables.
Agents Package
The server is configured to use the agent of a specific agent package name. This package contains the agent’s code and its dependencies. The server will load the agent package and use it to execute the agent’s tasks.
Event Subscribers
Event subscribers are implementations for managing event registration and handling in the agents-server. They allow the server to listen for events and trigger actions based on those events.
Redis Async Subscriber
RedisAsyncSubscriber is a handler for subscribing to Redis channels asynchronously. It allows the server to receive messages from Redis and process them in real time.
DAPR Async Subscriber
DaprAsyncSubscriber is a handler for subscribing to DAPR topics asynchronously. It allows the server to receive messages from DAPR and process them in real time.