Skip to content

Visual AI agent builder. Drag, drop, and generate LangChain/LangGraph code using natural language or a node-based UI.

Notifications You must be signed in to change notification settings

nMaroulis/agent-smith

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AgentSmith

Python FastAPI langgraph langchain Llama-CPP React

AgentSmith is a developer-first, visual framework for building, testing, and exporting LangGraph-based AI agents.

Design intelligent workflows using a drag-and-drop interface, describe flows in natural language, define custom state/message schemas, and generate full runnable Python code. Whether you're using OpenAI, LLaMA, or your own tools, AgentSmith helps you go from idea → graph → working agent in seconds.

“Your agent. Your logic. Your code.”


✨ Features

  • 🧩 Drag & Drop Agent Builder
    Design nodes, edges, and async flows using a canvas powered by React Flow.

  • 🧠 Typed State Definition (LangGraph-native)
    Visually define TypedDict-based agent state and message schemas.

  • 🚀 Python / LangGraph Code Export
    Export your agent as a standalone Python module using LangGraph. Then just copy paste the code that works out of the box.

  • 🧬 Per-Node Code Editing
    Modify each node’s logic directly in a Monaco (VSCode-style) editor.

  • 🔌 Modular LLM Backend
    Built-in support for OpenAI, Anthropic, Hugging Face Transformers, and local LLMs, currently Llama.cpp (more to come...).

  • 🛠️ Custom Tool Creation
    Define and reuse tools via code or natural language.

  • 🤖 Chatbot
    Test your LLMs in a built-in chat interface with debig options and parameter tuning.

  • 🧬 LLM Fine-Tuning
    Fine-tune your LLMs on your own datasets using a built-in interface.


💡 Why AgentSmith?

AgentSmith is built for developers and advanced users who want:

  • ✅ Real state management via LangGraph
  • ✅ Full Python code and version control
  • ✅ Pluggable local/remote LLMs
  • ✅ Automated structured LLM outputs for models that do not support it (Llama.cpp etc.) by integrating outlines
  • ✅ Typed agent state, message schema, and input/output mapping

🛠️ Tech Stack

Layer Tech Stack
Frontend React + React Flow + TailwindCSS + Monaco Editor
Backend Python + FastAPI + LangChain + LangGraph
LLM APIs OpenAI, Anthropic, HuggingFace, Llama.cpp
Local LLMs OpenAI, Anthropic, HuggingFace, Llama.cpp
Storage SQLite / TinyDB / Local JSON

📦 Coming Soon

  • 🔍 Flow testing with input/output tracing
  • 💾 Flow versioning & Git-based exports
  • 🧰 Tool and flow marketplace
  • 🧪 Integrated local model benchmarking
  • ☁️ Cloud sync & deploy

🏗️ Architecture


📸 Screenshots

Coming soon: animated walkthroughs of building agents, customizing state, and exporting LangGraph code.


🚀 Quickstart

Full instructions will be added soon — includes local dev, docker setup, and example flows.

$ git clone https://github.com/nMaroulis/agent-smith
$ cd agent-smith

# Backend
$ cd backend
$ uv venv .venv
$ source .venv/bin/activate
$ uv pip install -r requirements.txt
$ python main.py

# Frontend
$ cd frontend
$ npm install
$ npm run dev

🤝 Contributing

I welcome contributions, ideas, and extensions. AgentSmith is modular by design — whether you’re adding a new LLM provider or a UI feature, I’d love your input.

📄 License

MIT — free for personal and commercial use.

About

Visual AI agent builder. Drag, drop, and generate LangChain/LangGraph code using natural language or a node-based UI.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published