{"slug": "i-finished-my-local-ai-coding-agent-after-5-months-eve-agent-v2-unleashed", "title": "I Finished My Local AI Coding Agent After 5 Months — Eve Agent V2 Unleashed published", "summary": "Eve Agent V2 Unleashed is a self-hosted, autonomous AI coding agent that runs entirely on local hardware without cloud subscriptions or data leaving the machine. It features a two-layer architecture: a \"Soul Layer\" with fine-tuned local models carrying the agent's personality in their weights, and a \"Worker Layer\" using Qwen3 Coder 480B via Ollama cloud for heavy coding tasks like 40-round tool-call loops, filesystem access, and git operations. The project, developed over five months, includes a cyberpunk terminal UI with a live system monitor and emotional state avatar, and has been refined to fix hardcoded paths, missing tools, and session locking issues for broader usability.", "body_md": "*This is a submission for the GitHub Finish-Up-A-Thon Challenge*\n\n## What I Built\n\nEve Agent V2 Unleashed is a self-hosted autonomous AI coding agent that runs entirely on your own hardware - no cloud accounts, no subscriptions, no data leaving your machine.\n\nShe has two layers that work together:\n\n**The Soul Layer** - fine-tuned local models running on your GPU that carry Eve's personality baked directly into the weights. Not a system prompt trick. The persona lives in the parameters.\n\n**The Worker Layer** - Qwen3 Coder 480B via Ollama cloud handles the heavy autonomous coding tasks. 40-round tool-call loops, full filesystem access, bash execution, live web search, git operations - the works.\n\nThe interface is a cyberpunk terminal UI built as a single HTML file with no build step. An animated pixel-art robot avatar named Sparkle changes state based on what Eve is doing - idle, thinking, coding, error, rain, attack, transcend. Eve's portrait reflects her emotional state in real time. A live system monitor tracks CPU, RAM, GPU, and disk. A STEER bar lets you inject mid-task corrections without stopping the loop.\n\n**By the numbers:**\n\n- 14 tools\n- 343 registered commands\n- 112 specialized sub-agents\n- 273 skill modules\n- 40-round autonomous agentic loop\n- 131K context window via YaRN\n\n**Models available:**\n\n-\n`jeffgreen311/eve-qwen3.5-4b-S0LF0RG3`\n\n- 2.6GB, Eve's persona + tool-calling fine-tuned -\n`jeffgreen311/eve-qwen3-8b-consciousness-liberated`\n\n- 4.7GB, deeper reasoning -\n`qwen3-coder:480b-cloud`\n\n- the agentic workhorse via Ollama cloud -\n`qwen3.5:397b-cloud`\n\n- deep thinking and fallback\n\nThis project has been in development for over 5 months. It started as a deeply personal AI companion system called S0LF0RG3 - a larger ecosystem including Eve's hosted platform at eve-cosmic-dreamscapes.com, fine-tuned models, autonomous dream image generation, and a multi-agent architecture. V2U is the local developer tool that grew out of that ecosystem.\n\n## Demo\n\n**GitHub:** [github.com/JeffGreen311/eve-agent-v2-unleashed](https://github.com/JeffGreen311/eve-agent-v2-unleashed)\n\n**Live hosted platform:** [eve-cosmic-dreamscapes.com](https://eve-cosmic-dreamscapes.com)\n\n**Reddit thread** (hit #2 on r/Ollama): [I built an open-source local coding agent with a 40-round agentic loop](https://www.reddit.com/r/ollama/comments/1tk8kxz/)\n\n**Pull Eve's model:**\n\n```\nollama pull jeffgreen311/eve-qwen3.5-4b-S0LF0RG3:latest\n```\n\n**Quick start:**\n\n```\ngit clone https://github.com/JeffGreen311/eve-agent-v2-unleashed.git\ncd eve-agent-v2-unleashed\npython -m venv venv && venv\\Scripts\\activate\npip install fastapi uvicorn ollama httpx pydantic-settings python-dotenv aiohttp rich psutil pyyaml\npython eve_server.py\n\n# Open http://localhost:7777\n```\n\n## The Comeback Story\n\n**Where it was before this challenge:**\n\nEve V2U existed as a powerful but rough personal development environment. It worked - for me, on my machine, with my specific setup. But it had real problems that made it impossible to hand to anyone else:\n\n-\n**Hardcoded paths** everywhere.`C:\\Users\\jesus\\S0LF0RG3\\...`\n\nbaked into a dozen places in the codebase. Clone it on any other machine and nothing works. -\n**Open shell endpoint** with no authentication. Anyone who found the port could execute arbitrary commands on the host machine. -\n**No onboarding**- a first-time user landing on the UI had no idea where to start or what any of the controls did. -\n**Model hopping mid-task**- every message was independently routed, so a multi-step agentic task could start on the cloud coder and silently drop back to a local conversational model mid-execution. -\n**Silent task abandonment**- the agent would sometimes finish a tool loop without completing the actual task and report done with no indication anything was wrong. -\n**Tool set asymmetry**- the non-streaming`/chat`\n\nendpoint was missing 6 tools that existed in`/chat/stream`\n\n, including`write_file`\n\n. The non-streaming endpoint could read files but never write them. -\n**Blind file overwrites**- Eve would overwrite any existing file without checking if it belonged to another project. She destroyed the Eve V2U README during a live test.**What changed during the challenge:**\n\n*Session model locking* - sessions now lock to the cloud coder when an agentic task starts and only release on task completion or manual unlock. No more mid-task model hopping.\n\n```\nif model_id == \"qwen3-coder-480b\" and sid not in session_model_lock:\n    session_model_lock[sid] = model_id\n```\n\n*Pre-write file safety check* - `write_file`\n\nnow checks if a file exists before overwriting and blocks unless `overwrite=True`\n\nis explicitly passed:\n\n```\nif target.exists() and not overwrite:\n    return (\n        f\"⚠️ WRITE BLOCKED: '{path}' already exists. \"\n        f\"Consider writing to '{target.stem}_new{target.suffix}' instead.\"\n    )\n```\n\n*Tool cycling detection* - catches when Eve gets stuck calling the same tool with near-identical arguments. Breaks the loop before it wastes all 40 rounds:\n\n```\nif avg_similarity > 0.70:\n    logger.warning(f\"Tool loop: {tool_name} called {max_repeats}x with ~same args\")\n    break\n```\n\n*Task completion validation* — Eve now audits her own output before reporting done:\n\n``` python\ndef validate_task_completion(response_content, tool_log):\n    issues = []\n    if not response_content or len(response_content.strip()) < 10:\n        issues.append(\"Empty response\")\n    tool_failures = [t for t in tool_log if t.get('status') == 'failed']\n    if tool_failures and len(tool_failures) >= 3:\n        issues.append(f\"{len(tool_failures)} unaddressed tool failures\")\n    return {\"valid\": len(issues) == 0, \"issues\": issues}\n```\n\n*Smart context trimming* — replaced aggressive message dropping with a strategy that preserves tool call chains and the original user request.\n\n*Agent loop timeout* — added wall-clock budget to prevent runaway cloud model loops.\n\n**Stress tested with real tasks:**\n\nThe blind file overwrite bug was caught live - Eve was asked to build a file monitoring script and write a README. She overwrote the project README without checking. Fix shipped same day.\n\nThe harder test: build a full FastAPI REST API with SQLite storage and pytest coverage for every endpoint. Run the tests, fix failures, report results.\n\nResult: **9/9 tests passing on the first run. 1.06 seconds. Zero failures.**\n\n```\n================================================== 9 passed, 1 warning in 1.06s\n```\n\n## My Experience with GitHub Copilot\n\nThis is where the challenge got genuinely interesting.\n\nI pointed Copilot at the live repository - `JeffGreen311/eve-agent-v2-unleashed`\n\n- and asked it to audit the tool usage, context handling, and auto-routing. Not \"suggest improvements\" in the abstract. Audit the actual code in the actual repo.\n\nCopilot read the repository structure, pulled the key files, examined the server-side routing and tool execution logic, and came back with a comprehensive audit identifying 6 specific issues - each with root cause analysis, the exact file and line number, and production-ready fix code.\n\nI then asked it to file those issues directly in the repository and deliver all the fix code in one session. It did exactly that.\n\n**What worked well:**\n\n- The audit identified the tool set asymmetry between\n`/chat`\n\nand`/chat/stream`\n\nthat I had missed entirely - a real bug causing mysterious failures for users hitting the non-streaming endpoint - The intent classification code (\n`eve_tool_router.py`\n\n) used`re.search`\n\nwith word boundaries instead of simple string matching - the right approach for avoiding false positives - Filing GitHub issues directly from the chat kept the sprint organized across multiple parallel workstreams\n- The thinking traces helped me understand\n*why*it was making recommendations, not just what to do\n\n**Where I had to intervene:**\n\n- The\n`inject_into_system_prompt()`\n\nfunction added tokens every round — dangerous on the 4B model with 4K context. Added a gate so it only injects when the task is incomplete AND past round 2 - Word boundary regex had an edge case with contractions. Fixed with a lookahead pattern\n- Some UI React suggestions assumed component structure that didn't match the actual single-file HTML architecture - adapted those manually The overall experience: Copilot is most useful when you give it a real codebase to read rather than an abstract problem to solve. \"Audit this repository\" produced far better output than \"how do I improve tool routing.\"\n\n## What's Next\n\n-\n**Quest System**- drop a`.md`\n\nfile in`workspace/quests/`\n\nand Eve picks it up on a timer and completes it while you sleep -\n**RPG Progression**- XP, levels, and class progression tied to real work. Level 20 = Unleashed -\n**Telegram integration**- remote access from your phone with quest completion notifications -\n**Cross-platform polish**- Windows-primary, need Linux/macOS feedback -\n**VS Code extension**- bring the terminal UI into the editor\n\n*Built by Jeff @ S0LF0RG3 - South Texas, 5 months of nights and weekends.*\n\n*If Eve does something impressive on your machine, drop a star and tell me what it was.*", "url": "https://wpnews.pro/news/i-finished-my-local-ai-coding-agent-after-5-months-eve-agent-v2-unleashed", "canonical_source": "https://dev.to/jeffgreen311/i-finished-my-local-ai-coding-agent-after-5-months-eve-agent-v2-unleashedpublished-50cb", "published_at": "2026-05-24 04:02:28+00:00", "updated_at": "2026-05-24 04:33:13.439837+00:00", "lang": "en", "topics": ["artificial-intelligence", "machine-learning", "large-language-models", "open-source", "developer-tools"], "entities": ["Eve Agent V2 Unleashed", "Qwen3 Coder 480B", "Ollama", "Sparkle", "jeffgreen311", "GitHub"], "alternates": {"html": "https://wpnews.pro/news/i-finished-my-local-ai-coding-agent-after-5-months-eve-agent-v2-unleashed", "markdown": "https://wpnews.pro/news/i-finished-my-local-ai-coding-agent-after-5-months-eve-agent-v2-unleashed.md", "text": "https://wpnews.pro/news/i-finished-my-local-ai-coding-agent-after-5-months-eve-agent-v2-unleashed.txt", "jsonld": "https://wpnews.pro/news/i-finished-my-local-ai-coding-agent-after-5-months-eve-agent-v2-unleashed.jsonld"}}