GenericAgent is a free, open source ai development platforms project written in Python and released under MIT. It has 14,218 GitHub stars, 1,654 forks and 171 open issues, and was last pushed 4 days ago. On this registry it ranks #48 of 116 tracked projects in AI Development Platforms, with 5 head-to-head comparisons available.

What is GenericAgent?

GenericAgent is a minimal, self-evolving autonomous agent framework in Python that gives any supported large language model system-level control over a local computer, built for developers and automation builders who want to run and extend an agent themselves instead of renting a managed one.

What it is

GenericAgent is an open-source agent framework whose entire core is roughly 3,000 lines of seed code. It exposes 9 atomic tools behind an Agent Loop of about 100 lines, and through those tools it grants a language model system-level control over a local computer: browser, terminal, filesystem, keyboard and mouse input, screen vision, and mobile devices through ADB. It lives in the Python AI-agent ecosystem and is distributed under the MIT licence. Its design philosophy is explicit — do not preload skills, evolve them. Every time the framework solves a new task, it crystallizes the execution path into a reusable Skill, so capabilities accumulate into a personal skill tree grown from that seed code.

The concrete problem it addresses is the weight of conventional agent stacks. Comparable setups commonly pull in LangChain and Playwright, and require downloading browser binaries before anything runs. GenericAgent deliberately avoids all three. Its dependencies are tiered: the agent core needs only requests plus four lightweight packages (beautifulsoup4, bottle, simple-websocket-server, aiohttp) for the TMWebdriver local server, while the [ui] extra adds Streamlit and prompt_toolkit/rich for the bundled interfaces. The project also claims full system control at 6x less token consumption. As a self-bootstrap demonstration, the repository states that everything from installing Git and running git init to every commit message was completed autonomously by GenericAgent.

Key capabilities

  • 9 atomic tools driven by an Agent Loop of roughly 100 lines, covering browser, terminal, filesystem, keyboard and mouse, screen vision, and ADB-connected mobile devices.
  • Self-evolution: each solved task is crystallized into a reusable Skill rather than discarded, forming an accumulating personal skill tree.
  • TMWebdriver injects into a real browser session, preserving login state instead of launching an instrumented browser.
  • Model compatibility across Claude, Gemini, Kimi, MiniMax and other major models, with cross-platform operation.
  • Tiered dependency model: core install needs requests, beautifulsoup4, bottle, simple-websocket-server and aiohttp; the optional [ui] extra adds Streamlit and prompt_toolkit/rich.
  • Headless operation is supported by skipping the [ui] extra entirely.
  • Self-bootstrap proof: installation of Git, git init, and commit authorship performed by the agent itself.

Who uses it and how

  • Browser-centric tasks that depend on an authenticated session, including a documented case where an hCaptcha "Are you human?" challenge appeared mid-task while configuring a Discord bot and the real browser session passed it, allowing the task to continue.
  • Desktop and mobile automation at personal-finance scale, such as locating expenses over ¥2K in the last 3 months by driving Alipay through ADB.
  • Client-driving messaging workflows, demonstrated by sending bulk WeChat messages through full control of the WeChat client.
  • Quantitative research jobs, for example screening for GEM stocks with an EXPMA golden cross and turnover above 5%.
  • Autonomous web exploration with periodic summarization, plus everyday consumer flows such as ordering food delivery through a delivery app.

Getting started

The README specifies Python 3.11 or 3.12, and warns against Python 3.14 because it is incompatible with pywebview and other dependencies. Installation is a clone followed by uv venv, uv pip install -e ".[ui]", and cp mykey_template_en.py mykey.py to hold an LLM API key; detailed guides live at docs/installation.md and docs/installation_zh.md, and can be fetched directly via curl -fsSL https://raw.githubusercontent.com/lsdefine/GenericAgent/refs/heads/main/docs/installation.md.

How it compares

The project is positioned against heavier agent stacks that depend on LangChain and Playwright or on separately downloaded browser binaries, which it declines to use. It is model-agnostic across Claude, Gemini, Kimi and MiniMax rather than tied to a single vendor, and the README notes that the official distribution channels are GitHub and https://gaagent.ai only, with DintalClaw as the sole authorized commercial partner. No list of paid products it replaces is provided in the available facts.

When to use it — and when not to

A self-hoster must operate a local Python environment on 3.11 or 3.12, supply an LLM API key in mykey.py, and grant the agent genuine system-level control over browser, filesystem, terminal and input devices, with UI extras such as Streamlit installed only if the bundled interfaces are wanted. Anyone on Python 3.14, anyone unwilling to hand an agent that degree of machine access, and anyone wanting a fully managed hosted service should look elsewhere. Honest caveats: 171 open issues are recorded, one installation guide is Chinese-only, and the token-consumption and comparison claims are stated in the README without supporting benchmark detail in the available material.

project readme (upstream, from github) — read inline

GenericAgent

A Minimal, Self-Evolving Autonomous Agent Framework

~3K lines of seed code · 9 atomic tools · ~100-line Agent Loop

Official Website Technical Report Reproduction Repo Tutorial Sophub

Trendshift

English · 中文

📌 Official: GitHub + https://gaagent.ai only. DintalClaw is the sole authorized commercial partner; others are not affiliated.


🌟 Overview

GenericAgent is a minimal, self-evolving autonomous agent framework. Its core is just ~3K lines of code. Through 9 atomic tools + a ~100-line Agent Loop, it grants any LLM system-level control over a local computer — covering browser, terminal, filesystem, keyboard/mouse input, screen vision, and mobile devices (ADB).

Design philosophy — don't preload skills, evolve them.

Every time GenericAgent solves a new task, it automatically crystallizes the execution path into a reusable Skill. The longer you use it, the more skills accumulate — forming a personal skill tree grown entirely from 3K lines of seed code.

🤖 Self-Bootstrap Proof — Everything in this repository, from installing Git and running git init to every commit message, was completed autonomously by GenericAgent. The author never opened a terminal once.

📑 Table of Contents


📋 Key Features

Feature Description
🧬 Self-Evolving Automatically crystallizes each task into a Skill. Capabilities grow with every use, forming your personal skill tree.
🪶 Minimal Architecture ~3K lines of core code. Agent Loop is ~100 lines. No complex dependencies, zero deployment overhead.
Strong Execution TMWebdriver injects into a real browser (preserving login sessions). 9 atomic tools take direct control of the system.
🔌 High Compatibility Supports Claude / Gemini / Kimi / MiniMax and other major models. Cross-platform.
💰 Token Efficient
🛡️ Real-Browser CAPTCHA Survival 🌐 Autonomous Web Exploration While configuring a Discord bot, an hCaptcha "Are you human?" challenge pops up mid-task — GA's real browser session passes it and the task continues. See Browser Realness. Autonomously browses and periodically summarizes web content. 🧋 Food Delivery Order 📈 Quantitative Stock Screening "Order me a milk tea" — navigates the delivery app, selects items, completes checkout. "Find GEM stocks with EXPMA golden cross, turnover > 5%" — quantitative screening. 💰 Expense Tracking 💬 Batch Messaging "Find expenses over ¥2K in the last 3 months" — drives Alipay via ADB. Sends bulk WeChat messages, fully driving the WeChat client.

🚀 Quick Start

⚠️ Python version: use Python 3.11 or 3.12. Do not use Python 3.14 — it is incompatible with pywebview and a few other GA dependencies.

📖 Detailed installation guide: installation.md · installation_zh.md(中文)

For LLM Agents

Fetch the installation guide and follow it:

curl -fsSL https://raw.githubusercontent.com/lsdefine/GenericAgent/refs/heads/main/docs/installation.md

For Humans

Method 1 — Clone & install (recommended)
git clone https://github.com/lsdefine/GenericAgent.git && cd GenericAgent
uv venv && uv pip install -e ".[ui]"
cp mykey_template_en.py mykey.py   # fill in your LLM API key

Dependencies are deliberately tiered: the agent core needs only requests, plus four lightweight packages (beautifulsoup4, bottle, simple-websocket-server, aiohttp) for TMWebdriver's local server. The [ui] extra pulls in frontend libraries (Streamlit, prompt_toolkit/rich for the TUI, …) — install it for the bundled UIs, or skip it entirely and drive the agent headless. No Playwright, no LangChain, no browser binaries to download.

Then launch:

python frontends/tui_v3.py   # Terminal UI (recommended)
python launch.pyw            # Streamlit web UI
Method 2 — One-line installer (convenience)

Sets up a self-contained directory with an isolated Python environment, Git, and a ready-to-run package. The script is in assets/ if you'd like to read it first.

Windows PowerShell

powershell -ExecutionPolicy Bypass -c "$env:GLOBAL=1; irm https://raw.githubusercontent.com/lsdefine/GenericAgent/main/assets/ga_install.ps1 | iex"

Linux / macOS

GLOBAL=1 bash -c "$(curl -fsSL https://raw.githubusercontent.com/lsdefine/GenericAgent/main/assets/ga_install.sh)"

💡 GenericAgent grows its environment through the Agent itself — don't pre-install everything. See Unlocking Advanced Capabilities below.


💻 Usage

Frontends

Terminal UI (recommended)

A lightweight, scrollback-first terminal interface built on prompt_toolkit + rich. Supports multiple concurrent sessions and real-time streaming.

python frontends/tui_v3.py
⚠️ Windows TUI Troubleshooting

TUI rendering on Windows can be flaky depending on terminal + font. Common causes:

  1. prompt_toolkit / rich are not on the latest version — pip install -U prompt_toolkit rich first.
  2. PowerShell / cmd ship with terminals that have rough Unicode + key-binding support. Prefer Git Bash on Windows, which is much better behaved.
  3. If it still looks broken, ask GA itself to fix it:

    "My experience using frontends/tui_v3.py in PowerShell / cmd / Git Bash on Windows is very poor — lots of incompatibility. Please refer to Claude Code's best practices for the Windows terminal and fix all font and rendering incompatibilities."

Streamlit UI
python launch.pyw

Bot Interface (IM)

GenericAgent also supports IM frontends such as Telegram, Discord, and Lark.

Platform Command
Telegram python frontends/tgapp.py
Discord python frontends/dcapp.py
Lark / Feishu python frontends/fsapp.py

WeChat, QQ, WeCom and DingTalk are also

readme truncated — read the full docs on github

Frequently asked questions

Is GenericAgent free to use?

GenericAgent is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does GenericAgent do?

Self-evolving agent: grows skill tree from 3.3K-line seed, achieving full system control with 6x less token consumption

What is GenericAgent written in?

GenericAgent is primarily written in Python. Its source is publicly available at https://github.com/lsdefine/GenericAgent, and it has 14,218 GitHub stars.