Skip to main content

Welcome to Agent Forge

Welcome to Agent Forge – a powerful TypeScript framework designed to simplify the creation, orchestration, and deployment of AI agents using a modern decorator-based architecture.

Agent Forge enables developers to build sophisticated AI systems through declarative patterns that make complex agent orchestration as simple as adding decorators to classes.

What You'll Learn

In this "Learn" section, we'll cover:

  • Getting Started: How to install Agent Forge and create your first agent using decorators
  • Core Concepts: Deep dives into the decorator-based architecture, agent classes, tools, and orchestration patterns
  • Practical Examples: Step-by-step tutorials showing real-world applications
  • Advanced Topics: Complex multi-agent systems, A2A communication, RAG integration, and plugin development

Why Agent Forge?

🎯 Decorator-Driven Development

Define agents, tools, and configurations using simple, intuitive decorators:

@agent({
name: "Research Assistant",
role: "Research Specialist",
description: "An AI agent that specializes in research and analysis",
objective: "Find accurate and relevant information on any topic",
model: "gpt-4",
temperature: 0.7
})
class ResearchAgent extends Agent {}

🔧 Effortless Tool Integration

Add capabilities to your agents with zero boilerplate:

@tool(WebSearchTool)
@tool(CalculatorTool)
@agent({ /* config */ })
class AssistantAgent extends Agent {}

🌐 Built-in Agent-to-Agent Communication

Enable distributed agent systems with simple decorators:

@a2aClient({ serverUrl: "http://localhost:3000/a2a" })
class RemoteAgent extends Agent {}

@a2aServer({ port: 3000 })
class ServerAgent extends Agent {}

📚 Seamless RAG Integration

Add knowledge base capabilities instantly:

@RAGChromaDb({
collectionName: "knowledge_base",
chromaUrl: "http://localhost:8000",
topK: 5
})
@agent({ /* config */ })
class KnowledgeAgent extends Agent {}

🔄 Powerful Orchestration

Create teams and workflows that coordinate multiple agents:

@llmProvider("openai", { apiKey: process.env.OPENAI_API_KEY })
@forge()
class MyApplication {
static forge: AgentForge;

static async run() {
await readyForge(MyApplication, [ManagerAgent, ResearchAgent, WriterAgent]);

const team = MyApplication.forge
.createTeam("ManagerAgent")
.addAgent(MyApplication.forge.getAgent("ResearchAgent")!)
.addAgent(MyApplication.forge.getAgent("WriterAgent")!);

const result = await team.run("Create a comprehensive report on AI trends");
}
}

Advanced Features Out of the Box

  • Rate Limiting: Built-in API rate limiting with @RateLimiter
  • Visualization: Execution timeline tracking with @Visualizer
  • Plugins: Extensible plugin system with @plugin
  • MCP Integration: Model Context Protocol support with @MCP
  • Error Handling: Robust error handling and recovery mechanisms

Prerequisites

Before you dive in, we recommend having a basic understanding of:

  • Node.js and npm/yarn
  • TypeScript (especially decorators)
  • General concepts of AI and Large Language Models (LLMs)

Let's Get Building!

We're excited to see what you create with Agent Forge. Start with the Installation guide to set up your environment, and then move on to Building Your First Agent.

If you have questions or run into issues, don't hesitate to check our GitHub Discussions or report an issue.