Hey! I'm Aman. I built AgentForge to democratize the creation of complex AI agents. Writing boilerplate code to connect LLMs, databases, and APIs is repetitive and difficult to maintain. I engineered a visual, node-based execution engine that allows developers to design, test, and deploy intelligent AI workflows entirely through a drag-and-drop canvas.
π Live Deployment: π Try AgentForge Here
The Problem: Building capable AI agents usually requires complex scripting, managing state between API calls, handling context windows, and building custom routing logic. Visualizing how data flows from a trigger to an LLM and finally to a database is highly abstract and prone to breaking.
The Solution: AgentForge acts as a visual IDE for AI. It features a custom-built React Flow canvas where users can visually connect Webhooks, Llama 3.1 AI models, Web Scrapers, Logic Routers, and Databases. The backend parses this visual graph into an executable JSON payload, processing the logic seamlessly and returning real-time execution logs.
I designed the execution engine to dynamically parse UI nodes into backend logic. When an agent is triggered, the engine steps through the graph, substituting variables and handling external API calls autonomously.
[Webhook / Schedule] ββ(Trigger)ββ> [AgentForge Execution Engine]
β
βΌ
[Graph Parsing & Validation]
ββ 1. Variable Injection ({{trigger}})
ββ 2. Node Execution Routing
β
ββββββββββββββββββββββββββββββββββββββ΄βββββββββββββββββββββββββββββββββββββ
βΌ βΌ βΌ
[AI & Scrapers] [Logic & Flow] [Actions & Storage]
(Groq / Tavily) (If/Else, Loops) (Postgres / Discord)
β β β
ββββββββββββββββββββββββββββββββββββββΌβββββββββββββββββββββββββββββββββββββ
βΌ
[Live Terminal Execution Logs]
(Real-time Visual Feedback)
A clean, modern interface featuring interactive elements to introduce the platform's visual automation capabilities.
Enterprise-grade authentication powered by Clerk, ensuring user workspaces and API configurations remain completely private.
The central command center. Track global executions, monitor engine status, and manage your active workflow drafts.
The core product workspace. A highly interactive drag-and-drop canvas with custom-designed nodes categorized by Triggers, Logic, AI, Actions, and Storage.
Advanced node configuration allowing users to pass data seamlessly across the graph using intuitive mustache syntax. For example, capturing real-time data with a Live Web Search node, passing those results into an AI Model using {{search}}, and routing the final prompt to an AI Image Generator using {{llm}}.
A custom-built, auto-scrolling terminal that provides step-by-step logs of the backend execution engine, featuring CSS animations that highlight nodes as they successfully process payload data in real-time.
An integrated middleware node that actively inspects incoming data for Prompt Injections, PII leaks, and Toxicity before it ever reaches the LLM. It processes dynamic variables like {{trigger.payload}} and enables secure dual-path routing (Safe/Clean vs. Flagged) to handle malicious inputs autonomously.
agent-forge/
βββ app/
β βββ api/ # Next.js API Routes (Agents, Execution Engine)
β βββ builder/ # The React Flow Canvas workspace
β βββ privacy/ # Legal & Privacy pages
β βββ terms/ # Terms of Service
β βββ globals.css # Tailwind & Custom Animation CSS
β βββ layout.tsx # Root layout with Clerk Provider
β βββ page.tsx # Hybrid Landing Page & Dashboard
βββ assets/ # Screenshots for README documentation
βββ components/
β βββ nodes/ # Custom React Flow Node Components
β β βββ AISecurityNode.tsx
β β βββ LLMNode.tsx
β β βββ WebhookNode.tsx
β β βββ ...
β βββ Sidebar.tsx # Draggable node library
βββ prisma/
β βββ migrations/ # Database version control
β βββ schema.prisma # PostgreSQL Schema (Users, Agents, Logs)
βββ .env.example # Template for required API keys
βββ docker-compose.yml # Local Postgres & Redis setup
βββ proxy.ts # Clerk Auth edge routing protection
βββ package.json # Project dependencies
βββ LICENSE # MIT License
βββ README.md # Project documentation
- React Flow JSON State vs. Deep Relational Tables: I chose to store the visual canvas state (nodes and edges) as a serialized
JSONBblock in PostgreSQL rather than breaking them down into individual relational rows. Tradeoff: This prevents complex cross-node SQL queries, but allows for lightning-fast reads/writes, trivial versioning, and eliminates complex table joins for UI rendering. - Serverless Next.js API vs. Long-Running Backend: The execution engine runs on Next.js Edge/Serverless API routes. Tradeoff: This makes deployment to Vercel incredibly easy and scales infinitely from day one. However, serverless architectures have timeout limits (10s - 60s), meaning extremely long-running AI workflows would eventually require transitioning to a background job architecture like BullMQ/Redis. (This frames it as a future scaling option rather than a current requirement).
- Clerk Auth vs. Custom JWT: Delegated authentication to Clerk middleware. Tradeoff: Introduces third-party dependency, but instantly grants secure multi-session management and enterprise-grade security without reinventing the wheel.
git clone https://github.com/iamanpathak/agent-forge.git
cd agent-forge
# Install dependencies
npm installCreate a .env file in the root directory and copy the contents from .env.example. You will need to provision keys for:
- Clerk (Authentication)
- Groq (LLM Engine)
- Tavily (Live Web Search)
- Resend (Email Node)
Start the local PostgreSQL database using Docker, then push the Prisma schema:
docker-compose up -d
npx prisma db pushStart the Next.js development server:
npm run devNavigate to http://localhost:3000 to access AgentForge locally.
AgentForge is fully optimized for serverless edge deployment. The current live production build is hosted on Vercel.
To deploy your own instance:
- Import the repository into Vercel.
- Add your
.envvariables in the Vercel project settings. - Provision a cloud PostgreSQL database (e.g., Neon or Supabase) and update your
DATABASE_URL. - Deploy!
This project is licensed under the MIT License. See the LICENSE file for details.
Made with β€οΈ by Aman Pathak






