GitHub
FreeA versatile generalist agent
FreeFree tier
Inputs: text, url, code
About GitHub
Evo.ninja is a versatile generalist AI agent that adapts in real-time to tasks by selecting from pre-defined agent personas. It operates through a four-step execution loop: predicting the next step, selecting the best agent persona, contextualizing chat history, and executing an action. Evo.ninja supports multiple personas including a Synthesizer for text analysis, a CSV Analyst for data extraction, a Researcher for internet searching, and a Developer for building software. It is open-source and can be run via CLI or a user interface.
Key Features
Real-time adaptation to tasks
Pre-defined agent personas: Synthesizer, CSV Analyst, Researcher, Developer
Four-step execution loop: Predict, Select, Contextualize, Execute
CLI and UI interfaces for interaction
Session management and configurable timeout
Integration with OpenAI and SERP APIs
Pros & Cons
Pros
- Versatile and adapts to different task domains
- Open-source with free usage (API keys required)
- Extensible persona system allows specialization
- Supports both command-line and graphical interfaces
- Active community on Discord and GitHub issues
Cons
- Requires OpenAI API key (paid) and SERP API key
- Setup involves cloning repo, installing dependencies, and building
- Performance depends on underlying language model quality
- Limited to pre-defined personas unless custom ones are added
- No explicit privacy guarantees for user data sent to APIs
Best For
Reading and summarizing text filesAnalyzing CSV files for data insightsInternet research and information gatheringDeveloping software, specializing in PythonAutomating multi-step workflows with adaptive agent behavior
FAQ
How do I get started with evo.ninja?
Clone the repository, copy .env.template to .env, add your OpenAI API key and SERP API key, install dependencies with yarn, build, then run via CLI (yarn start) or UI.
What are the prerequisites?
You need git, Node.js (with nvm), Yarn, and API keys from OpenAI and SERP.
How does evo.ninja choose which persona to use?
It starts by predicting the best next step, selects the best-fit agent persona based on that prediction, contextualizes the chat history, then evaluates and executes a function.
Can I run evo.ninja without a UI?
Yes, you can run it via CLI using the 'yarn start' command with optional arguments like a goal and session name.