Eva

Terminal Context over Browser Tabs

Developers spend hours context-switching out of their terminal into browser tabs just to look up shell syntax, parse long error tracebacks, or draft git commit messages.

Eva was created to bring intelligent assistance directly into the command line. Rather than sending every keystroke to expensive remote APIs, Eva operates on a strict principle: use deterministic local tools whenever possible, and invoke LLMs only for reasoning.

Local utilities like eva find, eva tree, and eva grep run completely offline with zero token cost. When natural-language understanding is required, Eva streams structured responses back into your shell.

$0 Cost by Design: Multi-Provider Fallback

Commercial LLM CLI tools lock you into monthly subscriptions or fragile single-provider key quotas. Eva solves this through a provider abstraction with automatic failover.

Eva ships configured for free-tier cloud endpoints across OpenRouter (default), Groq, Gemini, and OpenCode Zen, as well as local offline models via Ollama and llama.cpp. Disk-backed RPM (Requests Per Minute) and RPD (Requests Per Day) budget tracking automatically redirects traffic before provider rate limits hit.

SAFETY DOSSIERHARDENED DEFAULTS

1. No `shell=True` Execution

Commands generated via eva work use strictly parsed subprocess.run(argv) arrays to prevent shell injection vectors.

2. High-Risk Pattern Blocker

Dangerous patterns like sudo, rm -rf /, curl | bash, and destructive dd wipes are blocked automatically before prompt generation.

3. Dry-Run & SHA-256 Audit Chain

--dry-run previews commands safely. All actions write to a SHA-256 cryptographically hash-chained, tamper-verifiable audit log in ~/.eva/audit.log.

4. Local OS Keyring Storage

API credentials are encrypted using your system keyring (macOS Keychain, SecretService, or Windows Credential Manager).