A context-aware, conversational AI agent application built on the Mastra agentic AI framework (TypeScript). ProGenHost enables users to interact with AI agents through a unified interface, leveraging Mastra's primitives — agents, tools, workflows, memory, and MCP integration — to support multiple AI providers (OpenAI, Gemini), manage MCP server configurations, and provide a runtime environment for autonomous AI agent execution.
This repository currently contains project specifications only (epics, user stories, roadmap, PRD). Implementation has not started yet.
All project documentation lives in the docs/ directory:
- Product Requirements Document (PRD)
- Product Roadmap
- Milestones
- Split Project Overview
- Host App Epics
- Host App User Stories
- Agent Runtime Epics
- Agent Runtime User Stories
- Test Cases
| Layer | Technology |
|---|---|
| Frontend | React + TypeScript + Vite + shadcn/ui + Tailwind CSS |
| Frontend State | Zustand (client state) + TanStack Query (server state) |
| Backend | Node.js + TypeScript + Hono (via Mastra built-in server) |
| AI Framework | Mastra (Agentic AI Framework) |
| AI Agents | Mastra Agents (@mastra/core/agent) with model routing |
| MCP Integration | @mastra/mcp (MCPClient & MCPServer) |
| Memory | @mastra/memory with LibSQLStore & LibSQLVector |
| Database | LibSQL (via @mastra/libsql) |
| Real-time | SSE for AI response streaming; WebSocket for status/progress |
| Desktop | Electron 28+ |
| Container | Docker |
| Testing | Vitest, React Testing Library, Playwright, supertest |
| Auth | Placeholder JWT (MVP); Adobe IMS OAuth (Phase 4) |
- Epics: 8 (Foundation, Auth, Core UI, AI Providers, MCP Config, Conversation, Agent Planning, Status & Feedback)
- User Stories: 57
- Story Points: ~131
- Timeline: 8 weeks
Implementation has not started yet. Once development begins:
- Review the Requirements Document
- Review the Split Project Overview
- Start from either Host App Epics or Agent Runtime Epics
- Run
docker-compose upto start all services - Frontend:
http://localhost:3000| Backend:http://localhost:4111
Proprietary — internal use only.