Skip to content

sousadiego11/cloud-ai-agent-platform

Repository files navigation

🚀 AI Agent Backend (LangChain, Kubernetes, AWS)

🛠️ Technologies & Tools

My Skills

☁️ AWS Services

AWS S3 AWS EKS AWS CloudFront AWS RDS AWS ECR AWS IAM AWS VPC

Backend for a production-ready AI SaaS platform built around an agent-based architecture powered by LangChain.

The system exposes a unified conversational endpoint (/api/v1/messages) where users interact with an AI agent capable of maintaining context across chats, reasoning over inputs, and orchestrating tools to generate dynamic responses. The agent uses LangChain for prompt orchestration, memory management, and integration with external tools and data sources.

It supports:

  • Context-aware multi-turn conversations with persistent memory
  • Retrieval and analysis of user files stored in S3
  • Agent-driven tool usage and extensibility
  • Structured workflows for building AI-powered features beyond simple chat

The API is fully documented and testable via Scalar at /docs, exposing all available routes with an interactive interface for exploration and debugging.

Designed with production in mind, the project demonstrates:

  • Scalable architecture on Kubernetes (EKS)
  • Infrastructure as Code with Terraform
  • Containerization with Docker and ECR
  • Managed database with PostgreSQL (RDS)
  • Secure networking using VPC, IAM, and CloudFront
  • CI/CD pipelines via GitHub Actions
  • Clean architecture and strong separation of concerns
  • Type-safe backend using TypeScript and Prisma

▶️ Run Locally

⚠️ This project uses real cloud infrastructure (AWS). Make sure you have the proper credentials and permissions.

1. Configure AWS credentials

Set your AWS credentials in environment variables:

AWS_ACCESS_KEY_ID=your_key
AWS_SECRET_ACCESS_KEY=your_secret

2. Configure Terraform

  • Login to your Terraform account (HCP Terraform)
  • Update the AWS region if needed inside the Terraform files

3. Provision infrastructure

Run Terraform to create the required resources:

bun run iac:init
bun run iac:apply

4. Configure environment variables

After provisioning, update your .env using .env.example file with all required values, including:

  • Database credentials (generated by Terraform)
  • Any other service/environment variables

5. Deploy to Kubernetes

Run the deployment scripts:

sh k8s/scripts/secrets.sh
sh k8s/scripts/deploy.sh

6. Run database migrations

bunx prisma migrate deploy

7. Start the application

bun dev

About

Cloud-native AI agent backend capable of analyzing user files using LLMs. Built with LangChain, AWS (S3, RDS), Terraform infrastructure and Kubernetes-ready architecture.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors