suna  by kortix-ai

Open-source AI agent for real-world task automation

Created 11 months ago
18,072 stars

Top 2.5% on SourcePulse

GitHubView on GitHub
Project Summary

Suna is an open-source generalist AI agent designed to act on behalf of users to accomplish real-world tasks through natural conversation. It targets users needing automated workflows for research, data analysis, and complex problem-solving, offering a unified interface for diverse capabilities.

How It Works

Suna employs a modular architecture comprising a Python/FastAPI backend for API endpoints and LLM integration (via LiteLLM), a Next.js/React frontend for the user interface, isolated Docker containers for agent execution with sandboxed tools, and Supabase for data persistence, authentication, and real-time features. This design allows for secure, isolated execution of agent tasks, including browser automation, file management, and command-line operations, while leveraging a robust backend and database for scalability and user management.

Quick Start & Requirements

  • Installation: Clone the repository, configure backend (backend/.env) and frontend (frontend/.env.local) environment files with Supabase, Redis, Daytona, and LLM API keys. Install dependencies (npm install in frontend, pip install -r requirements.txt in backend).
  • Running: Start frontend (npm run dev in frontend) and backend (python api.py in backend) in separate terminals. Alternatively, use docker compose -f docker-compose.ghcr.yaml up after configuring environment variables.
  • Prerequisites: Python 3.11, Node.js, Supabase project, Redis instance, Daytona account/API key, LLM API keys (Anthropic recommended), optional Tavily, Firecrawl, and RapidAPI keys.
  • Access: http://localhost:3000
  • Docs: https://github.com/kortix-ai/suna

Highlighted Details

  • Integrates browser automation, file management, command-line execution, and API services.
  • Supports multiple LLM providers via LiteLLM, with Anthropic recommended for specific tool-call formatting.
  • Utilizes Daytona for secure, isolated agent execution environments.
  • Offers extensive use cases, including market analysis, lead generation, web scraping, and report generation.

Maintenance & Community

  • Active development with contributions from Adam Cohen Hillel, Dat-lequoc, and Marko Kraemer.
  • Community channels available via Discord.
  • Links to Twitter and GitHub stars are provided.

Licensing & Compatibility

  • Licensed under the Apache License, Version 2.0.
  • Permissive license suitable for commercial use and integration with closed-source projects.

Limitations & Caveats

The setup requires multiple external services (Supabase, Redis, Daytona) and API keys, which may incur costs. LLM integration requires specific prompt adjustments for non-Anthropic providers to ensure correct tool call output.

Health Check
Last Commit

19 hours ago

Responsiveness

1 day

Pull Requests (30d)
129
Issues (30d)
327
Star History
573 stars in the last 30 days

Explore Similar Projects

Starred by Travis Fischer Travis Fischer(Founder of Agentic), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
4 more.

open-operator by browserbase

0.4%
2k
Template for building web agents using Browserbase and Stagehand
Created 7 months ago
Updated 3 months ago
Feedback? Help us improve.