eva  by usepr

Lightweight, single-file agent for local and remote LLM execution

Created 1 month ago
274 stars

Top 94.2% on SourcePulse

GitHubView on GitHub
Project Summary

EVA is a single-file, lightweight AI agent designed for developers and power users. It offers a "low-spec Claude Code" experience, enabling users to write scripts, generate tests, execute shell commands, and analyze data with extreme portability and ease of use. Its core benefit lies in its minimal setup and versatile task execution capabilities.

How It Works

EVA operates as a single Python script (eva.py), emphasizing extreme minimalism. It integrates with various Large Language Models (LLMs), supporting local deployments (Ollama, vLLM) and external APIs (OpenAI, DeepSeek) configured via environment variables. Conversations are managed through directory-level sessions, persisting state across restarts within the same directory. A key design choice is its safety mechanism, defaulting to read-only command execution and requiring explicit user confirmation for potentially destructive actions. Extensibility is achieved through a .eva/hints.md file for memory cues and .eva/commands/.eva/skills/ directories for custom functionalities.

Quick Start & Requirements

  • Installation: Create a eva.py file and paste the repository's content, or use git clone.
  • Prerequisites: Python 3.
  • Configuration: Set environment variables like EVA_API_KEY, EVA_BASE_URL, and EVA_MODEL_NAME to connect to desired LLMs.
  • Running: Execute python3 eva.py. The first run may require source ~/.bashrc to enable a global eva command.
  • Usage: Interact directly via the eva command or use eva -u "user ask" -s for single-turn execution with session persistence.
  • Documentation: Primary documentation is within the README; no separate docs/demo links provided.

Highlighted Details

  • Extreme Lightweightness: Single-file (eva.py) design promotes a "Just Paste and Go" philosophy, requiring no complex installation.
  • Flexible LLM Integration: Seamlessly connects to local LLM servers (Ollama, vLLM) or cloud APIs (OpenAI, DeepSeek).
  • Contextual Sessions: Directory-level session management ensures conversation continuity tied to specific project directories.
  • Built-in Safety: Default read-only command execution enhances security, requiring explicit user approval for modifications.
  • Extensible Capabilities: Supports custom commands and skills via dedicated directories and hint files.

Maintenance & Community

The project welcomes contributions to enhance autonomy, add language support, and improve core functionalities. No specific community channels (Discord/Slack), roadmap links, or notable maintainer information are provided in the README.

Licensing & Compatibility

The provided README does not specify a software license. This lack of clear licensing information presents a significant adoption blocker, particularly for commercial use or integration into proprietary systems.

Limitations & Caveats

The project acknowledges limitations in its current memory compression, which may affect long-term task continuity. The self-evolution mechanism is basic, relying on EVA's internal recording, with a desire for more sophisticated, AI-driven approaches. The default safety confirmation for non-read commands might introduce workflow friction for some users.

Health Check
Last Commit

17 hours ago

Responsiveness

Inactive

Pull Requests (30d)
3
Issues (30d)
3
Star History
42 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.