Studio overview
Alquimia Studio is the web-based visual interface for designing, testing, publishing, and operating agents on Alquimia Platform. It connects to alquimia-runtime and lets teams build production-grade conversational and autonomous agents through a wizard-driven UI, without writing code for every configuration change.
Use Studio when you want:
- A visual agent creation workflow with live validation and interactive testing.
- A central place to manage models, MCP servers, embeddings, and integration channels.
- Multi-agent orchestration with Agent-to-Agent (A2A) delegation.
- A registry and publishing workflow for agentspaces.
- Operator-friendly controls for runs, approvals, knowledge sources, and observability.
What Studio provides
Section titled “What Studio provides”Agent creation wizard
Section titled “Agent creation wizard”Studio guides users through a step-by-step wizard to define an agent:
- Basic configuration — name, purpose, personality, and utility description.
- Model selection — choose from OpenAI, Anthropic, Google, Meta, Mistral AI, Cohere, Groq, or custom OpenAI-compatible endpoints.
- MCP integration — connect Model Context Protocol servers for tools and data access.
- Agent-to-Agent (A2A) — delegate tasks to sub-agents by ID or capability tags.
- Knowledge base — attach RAG-powered document collections.
- Advanced settings — memory strategies, evaluation criteria, custom clauses, and developer-mode system prompts.
Multi-agent orchestration
Section titled “Multi-agent orchestration”Studio supports true agentic AI through A2A delegation:
- Intelligent delegation — primary agents route tasks to specialized sub-agents.
- Tag-based selection — dynamically choose agents by capability tags.
- Expert modules — augment agents with domain-specific expertise.
- Coordinated workflows — build multi-step flows across teams of agents.
Integration channels
Section titled “Integration channels”Connect agents to external communication platforms from the same UI:
- WhatsApp Business API — respond to WhatsApp messages.
- Email (SMTP) — send automated responses with Jinja2 HTML templates.
Each channel supports staging and production endpoints, real-time validation, and encrypted credential storage.
Knowledge base and RAG
Section titled “Knowledge base and RAG”Studio integrates with the Alquimia knowledge base service for retrieval-augmented generation:
- Upload documents (PDF, text, and more).
- Select embedding models and providers.
- Configure semantic search and retrieval parameters.
- Organize knowledge by topics and domains.
Test and iterate
Section titled “Test and iterate”The Try Me feature lets operators chat with an agent in real time before publishing:
- Interactive chat with full agent capabilities.
- Conversation history and context persistence.
- Live configuration updates during testing.
Publish and discover
Section titled “Publish and discover”Studio includes a publishing workflow for sharing agents and workspaces:
- Publish to OCI registry — one-click publish with version tagging and
latestdual-push. - Discover catalog — browse published agentspaces by category.
- Two install modes — add agents to an existing workspace or clone a full workspace.
- Namespace isolation — agentspaces are scoped by organization namespace (
namespace/name:tag).
Trust and observability
Section titled “Trust and observability”Studio is integrated with the platform’s observability stack:
- Alquimia TrustLens — optional automated conversation evaluation with Gaussia benchmarks. TrustLens consumes signed runtime webhooks, scores sessions on humanity, context, conversational quality, bias, and toxicity, and exposes Prometheus metrics that Studio renders in the Agent Humanity view.
- OpenTelemetry — distributed tracing, automatic instrumentation, custom metrics, and OTLP export to Jaeger, Tempo, Honeycomb, DataDog, and other backends.
Configure telemetry with environment variables such as:
OTEL_ALQUIMIA_SERVICE_NAME=alquimia-studioOTEL_COLLECTOR_ENDPOINT_TRACES=http://collector-endpoint/v1/tracesOTEL_COLLECTOR_ENDPOINT=http://collector-endpoint/v1/metricsOTEL_EXPORTER_INTERNAL_MILIS=5000Architecture
Section titled “Architecture”Studio is a Next.js 15 application with a layered architecture:
┌─────────────────────────────────────────┐│ Frontend ││ ┌────────────────────────────────┐ ││ │ React 19 + TypeScript │ ││ │ Atomic Design Components │ ││ │ Shadcn/ui + Radix UI │ ││ └────────────────────────────────┘ │└─────────────────┬───────────────────────┘ │┌─────────────────▼───────────────────────┐│ Server Actions & API Routes ││ ┌────────────────────────────────┐ ││ │ Next.js Server Actions │ ││ │ API Proxy for Runtime │ ││ └────────────────────────────────┘ │└─────────────────┬───────────────────────┘ │┌─────────────────▼───────────────────────┐│ Business Logic Layer ││ ┌────────────────────────────────┐ ││ │ Agent Service │ ││ │ Settings Service │ ││ │ Registry Service │ ││ └────────────────────────────────┘ │└─────────────────┬───────────────────────┘ │┌─────────────────▼───────────────────────┐│ Data Access Layer ││ ┌────────────────────────────────┐ ││ │ Agent Repository │ ││ │ Model Repository │ ││ │ MCP Repository │ ││ └────────────────────────────────┘ │└─────────────────┬───────────────────────┘ │┌─────────────────▼───────────────────────┐│ MongoDB or NeDB (DB_STRATEGY) ││ • Settings (Models, MCPs, Embeddings) ││ • Sentinels │└─────────────────────────────────────────┘External integrations:
- Alquimia Runtime — inference orchestration and agent execution.
- Knowledge Base Service — document storage and embeddings.
- Keycloak — authentication and authorization.
- Trust Lens — observability and metrics.
Tech stack
Section titled “Tech stack”| Layer | Technology |
|---|---|
| Framework | Next.js 15 with App Router |
| Language | TypeScript |
| UI library | React 19 |
| Styling | Tailwind CSS |
| Components | Shadcn/ui + Radix UI |
| State management | TanStack Query (React Query) |
| Forms | React Hook Form + Zod |
| Backend | Next.js Server Actions + API proxy |
| Database | MongoDB with Mongoose, or NeDB (DB_STRATEGY=lite) |
| Authentication | NextAuth.js with Keycloak provider |
| Observability | OpenTelemetry |
Installation
Section titled “Installation”Prerequisites
Section titled “Prerequisites”- Node.js 18+ and Yarn
- MongoDB instance, or set
DB_STRATEGY=liteto use embedded NeDB with no external database - Keycloak instance, or set
AUTH_STRATEGY=litefor self-contained authentication - A running alquimia-runtime deployment
- Environment variables configured
Install and run
Section titled “Install and run”# Clone the repositorygit clone https://github.com/Alquimia-ai/studio.gitcd studio
# Install dependenciesyarn install
# Configure environment variablescp .env.example .env.local# Edit .env.local with your configuration
# Run development serveryarn devOpen http://localhost:3000 to access Alquimia Studio.
Production scripts
Section titled “Production scripts”yarn build # Build for productionyarn start # Start production serveryarn lint # Run ESLintConfiguration
Section titled “Configuration”The following environment variables configure Studio:
# Database strategy: "mongo" (default) or "lite" (NeDB, no MongoDB required)DB_STRATEGY=mongoMONGODB_URI=mongodb://localhost:27017/alquimia-studio
# Authentication (Keycloak)KEYCLOAK_ISSUER=https://your-keycloak-instance/realms/your-realmKEYCLOAK_CLIENT_ID=alquimia-studioKEYCLOAK_CLIENT_SECRET=your-secretNEXTAUTH_URL=http://localhost:3000NEXTAUTH_SECRET=your-nextauth-secret
# Alquimia RuntimeASSISTANT_BASEURL=https://runtime.your-domain.comALQUIMIA_ASSISTANT_API_KEY=your-runtime-api-key
# OCI / OrganizationNEXT_PUBLIC_DEFAULT_NAMESPACE=alquimia
# Knowledge Base ServiceKNOWLEDGE_BASE_API_URL=https://kb.your-domain.comKNOWLEDGE_BASE_API_KEY=your-kb-api-key
# OpenTelemetry (optional)OTEL_ALQUIMIA_SERVICE_NAME=alquimia-studioOTEL_COLLECTOR_ENDPOINT_TRACES=http://your-otel-endpoint/v1/tracesOTEL_COLLECTOR_ENDPOINT=http://your-otel-endpoint/v1/metricsOTEL_EXPORTER_INTERNAL_MILIS=5000Creating your first agent in Studio
Section titled “Creating your first agent in Studio”- Log in and open the Settings tab to add at least one LLM model and any MCP servers you need.
- Create a new agent from the Agents dashboard (
/dashboard/agents/new). - Configure basic information — name, description, purpose, and utility.
- Select a model and configure provider-specific parameters.
- Add tools and integrations — connect MCP servers, A2A sub-agents, or integration channels.
- Attach a knowledge base — upload documents and configure retrieval.
- Tune advanced settings — memory, evaluation strategies, custom clauses, and system prompts.
- Test with Try Me — validate behavior before publishing.
- Publish — deploy the agent to the runtime and monitor via Trust Lens.
Agent lifecycle states
Section titled “Agent lifecycle states”| State | Meaning |
|---|---|
| Stopped | Agent is saved but not published to the runtime. |
| Running | Agent is active and handling requests. |
| Paused | Agent is temporarily inactive. |
Operators can edit, publish, unpublish, or delete agents from the Studio UI.
Security
Section titled “Security”- Server-side validation for all mutations.
- Authentication required for all routes via Keycloak or the lite auth strategy.
- Role-based access control.
- Secrets and API keys encrypted at rest and never exposed to the client.
- Input sanitization and CSRF protection through NextAuth.js.
Next steps
Section titled “Next steps”- Installation — install the runtime and Studio.
- Platform overview — how Studio, runtime, and core fit together.
- Runtime API overview — the HTTP API that Studio uses under the hood.
- Create and publish an agent — agent workflow from configuration to production.