Sound Experience
Change Language
Lyra: I'm here. What do you want to discover today?

Hi, I'm Lyra, your guide through this portfolio.

Autonomous AI Agents | Microkernel + Hexagonal | CQRS Status: In development

AETHELGARD

System of autonomous conversational AI agents in testing phase: a persuasive and empathetic sales agent, and a document reader with verified responses. Hybrid adaptable architecture.

Pure software architecture

Robust backend · No visual UI

Project Overview

I'm developing AETHELGARD, a system of conversational AI agents built on Google ADK and FastAPI. The architecture combines a minimal Microkernel core (where agents are independent plugins) with Hexagonal patterns (Ports and Adapters) to fully decouple business logic from infrastructure, and CQRS to separate queries from commands. This allows adding new agents or swapping language models (DeepSeek, Gemini, etc.) without touching the core. A sales agent is already operational, adopting dynamic personalities from YAML files (Alejandro: consultive, Valeria: empathetic) and applying strategies like SPIN Selling, active listening, and objection handling; it searches products in ChromaDB, remembers preferences with vector memory (Gemini Embeddings), and maintains coherent conversations through persistent sessions in PostgreSQL. A document agent is also live, processing PDFs and manuals using ChromaDB and pgvector, responding only with verified information and citing sources. A supervisor reviews every response before it reaches the user. What I'm still refining includes integration tests, fine-tuning personalities for different commercial sectors, production deployment, the sequential sales pipeline (search → compare → recommend), full WhatsApp Cloud API integration, and automated deal-closing notifications. If you have ideas to support the project, feel free to reach out.

RoleAI Systems Architect & Backend Engineer
ClientInternal R&D project for commercial and document automation
DurationApril 2026 - May 2026
Year2026

Core Modules

Microkernel Core & Agent Orchestrator

The system core is minimal: it only handles agent registration (plugins) and communication between them. A central orchestrator classifies the user's intent and routes the conversation to the appropriate specialized agent (sales or documents) without core intervention, allowing agents to be added or removed on the fly.

Sales Agent with Dynamic Personalities

Autonomous agent that adopts different personalities (aggressive, consultive, empathetic seller) based on the client's profile. Sales strategies (SPIN Selling, Challenger, etc.) are loaded from YAML files. Includes semantic product search tools in ChromaDB and long-term vectorized memory (Gemini Embeddings).

Document Agent with Extreme RAG

Specialized agent for processing long documents (manuals, contracts, regulations). Uses ChromaDB and pgvector for semantic vector search, with intelligent chunking (recursive or entity-based). Responds exclusively with citations extracted from the documents, with zero hallucinations.

Hexagonal Architecture + CQRS

Ports and adapters isolate business logic from infrastructure details (AI models, databases, APIs). CQRS separates write operations (commands) from read operations (queries), allowing each side to scale independently and use different optimizations (cache, vector indexes).

Vectorized Long-Term Memory

Stores preferences, conversation history, and relevant user data as vectors in ChromaDB (Gemini Embedding 2). The sales agent can retrieve information from previous interactions to personalize offers without requiring explicit login.

Response Quality Supervisor

Safety filter that reviews every generated response before sending it to the user. Validates that there are no fabricated facts, the tone is appropriate, and business rules are respected. If issues are detected, it corrects or replaces the response with a controlled fallback message.

Persistent Multi-Instance Sessions

Conversations are stored in PostgreSQL (adk_sessions and adk_events tables), allowing the full history to survive server restarts and be shared across multiple server instances. The agent remembers context (size, preferences, mentioned products) even if the user returns days later.

Technologies Implemented

frontend

Not applicable (Backend API)Swagger UI (interactive documentation)

backend

Python 3.12FastAPIGoogle ADK 0.2.0SQLAlchemy 2.0PydanticUvicorn

ai And Storage

DeepSeek V3.2 (chat)DeepSeek R1 (reasoning)Gemini 2.5 FlashGemini 2.5 ProGemini Embedding 2 (3072d)ChromaDBpgvectorPostgreSQLRedis

tools

uvRuffPytestGitPostmancURL