Skip to main content
wow-agent logo

wow-agent

Terminal Coding Agent for Everyone

A simple, open, extensible terminal AI coding assistant

License: MIT Python Platform Docs

English | 简体中文

Quick Start · Features · Architecture · Docs


Why wow-agent?

Traditional AI coding loops look like this:

User → copy code → ask AI → edit yourself → ask again → infinite loop

wow-agent breaks the loop and joins your real workflow:

Give a goal → AI plans → tools execute → verify → done

It is not a chat toy — it is an AI pair programmer that works inside real codebases.


Why choose wow-agent?

Core difference Traditional tools wow-agent
Model freedom Locked to one vendor/model Any OpenAI-compatible API + local models (Ollama / LM Studio)
Runtime Tied to a specific IDE / cloud Pure terminal, local execution, full data control
Architecture x86 only Native ARM64 (tested on Jetson Orin NX, edge-ready)
Safety AI executes commands directly Triple safety: network sandbox + egress guard + double confirm + one-click rollback
Extensibility Closed ecosystem MCP ecosystem + custom tools + sub-agents

In one sentence: wow-agent gives you model choice, environment control, and safety decisions.


Architecture: four-layer design

┌─────────────────────────────────────────────────────┐
│  Layer 1: Agent Brain                               │
│  ├─ task planning · state machine · sub-agents      │
└─────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────┐
│  Layer 2: Developer Tools                           │
│  ├─ file CRUD / diff / undo / code index            │
└─────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────┐
│  Layer 3: Model Ecosystem                           │
│  ├─ cloud: DeepSeek / Qwen / OpenAI / Gemini / ...  │
│  └─ local: Ollama / LM Studio                       │
└─────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────┐
│  Layer 4: Safety System                             │
│  ├─ sandbox · egress guard · confirm · rollback     │
└─────────────────────────────────────────────────────┘
Layer Capability Key tech
Agent Brain task decomposition, state machine, sub-agents planning → executing → verifying → done/failed
Dev Tools file ops, diff/undo, code index AST Python symbol table, incremental index, diff visualization
Model Eco unified cloud/local access 16+ providers + Ollama/LM Studio, /model fetches lists online
Safety sandbox / egress guard / confirm / rollback unshare -n isolation, egress patterns, /undo

🚀 Quick Start

Install (requires uv)

# Ubuntu / Debian / WSL
cd wow-agent && curl -LsSf https://astral.sh/uv/install.sh | sh && uv sync && uv run wow

# Windows (PowerShell, experimental)
cd wow-agent; irm https://astral.sh/uv/install.ps1 | iex
$env:Path += ";$env:USERPROFILE\.local\bin"
uv sync; uv run wow

Subsequent launches:

uv run wow        # or .venv/bin/wow

First launch walks you through provider + API key setup, saved to ~/.wow-agent.env (mode 600).


✨ Core Features

🤖 Agent Brain

  • Task tree + state machine: auto-decomposes multi-step tasks, planning → executing → verifying → done/failed
  • Sub-agents: clean-context code research that returns only conclusions; /review three-level code review
  • State machine: planning → executing → verifying → done/failed automatic transitions

🛠 Developer Tools

  • File operations: read / write / edit / delete / search; code_index builds a Python symbol table in one scan
  • Diff & Undo: colored diff visualization, single-step /undo, full-task rollback on failure, snapshots survive restarts
  • Code index: AST-parsed Python symbols, incremental updates — query the index before reading files

🤝 Model Ecosystem

Type Supported
Cloud DeepSeek / Qwen / Kimi / GLM / SiliconFlow / Doubao / Hunyuan / MiniMax / OpenRouter / Groq / Mistral / Grok / OpenAI / Gemini / OpenCode Zen
Local Ollama / LM Studio (no API key needed)
Free tier OpenCode Zen free tier (includes ox alpha x-preview-f-free)

🛡 Safety System

  • Network sandbox: unshare -n network namespace isolation, falls back to proxy blackhole
  • Egress guard: auto-blocks curl POST / scp / git push / npm publish etc.
  • Double confirm: rm -rf /, mkfs, dd, fork bombs, shutdown, chmod -R 777 / require typed confirmation
  • One-click rollback: /undo reverts a single step; failed tasks roll back entirely

⚙️ Configuration

Config file: ~/.wow-agent.env (mode 600)

WOW_API_KEY=            # API key
WOW_BASE_URL=           # API base URL
WOW_MODEL=              # model id
WOW_SAFE_MODE=1         # 0 disables sandbox
WOW_MAX_ITER=40         # max iterations per task
WOW_AUTO_COMPACT=55000  # auto-compact threshold
WOW_LANGUAGE=en         # en/zh, default en
WOW_MODEL_CTX=128000    # model context length (for estimation)
WOW_CELL_ASPECT=2.0     # terminal cell aspect (logo scaling)
WOW_UPLOAD_GUARD=1      # egress guard switch

MCP servers: ~/.wow-agent/mcp.json

{
  "servers": {
    "fs": {"command": "npx", "args": ["-y", "@modelcontextprotocol/server-fs", "/tmp"]}
  }
}

💡 Usage

$ wow
Enter auto mode? y/N    # y = skip step-by-step confirms (dangerous/egress still require approval)
> Help me understand this project structure

Interaction basics:

  • !<command>: run shell directly without the model (e.g. !git status)
  • /: fuzzy command completion, /help lists everything
Command Description
/model provider/model wizard; /model <id> quick switch
/status session status: context, task progress, undoable changes
/compact [hint] compress history manually (auto-triggers past threshold)
/mem save/use/rm/list/new long-term memory
/resume restore a previous session
/undo revert last change; full rollback on task failure
/review [path] read-only review: 🔴 high risk / 🟡 suggestion / 🟢 polish
/language [en|zh] switch language (default en, interactive menu)
/safe toggle safe mode
/clear /exit clear conversation / quit

📚 Documentation

Full bilingual documentation is online: uuzjw.github.io/wow-agent


🧪 Development & Testing

uv sync                      # install dependencies
uv run python tests_smoke.py # smoke tests (offline)
uv run python tests_e2e.py   # e2e simulation (fake LLM, offline)

🤝 Contributing

All kinds of contributions are welcome!

  • 🌐 New model/provider adapters — extend PROVIDERS in config.py
  • 🎨 UI/UX improvementsui.py / tui.py (if revived)
  • 🔧 New tools — extend TOOLS_SCHEMA + execute in tools.py
  • 🐛 Bug fixes / docs — Issues / PRs welcome

Please make the tests pass before submitting:

uv run python tests_smoke.py
uv run python tests_e2e.py

License

MIT © uuzjw

Independently developed — unrelated to other open-source projects with the same name. Please report issues at GitHub Issues.

English | 简体中文

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wow_agent-0.6.0.tar.gz (679.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wow_agent-0.6.0-py3-none-any.whl (120.2 kB view details)

Uploaded Python 3

File details

Details for the file wow_agent-0.6.0.tar.gz.

File metadata

  • Download URL: wow_agent-0.6.0.tar.gz
  • Upload date:
  • Size: 679.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.16

File hashes

Hashes for wow_agent-0.6.0.tar.gz
Algorithm Hash digest
SHA256 01702169de47b4eb117c973cad78a163398216d34e850273e450c33877486b71
MD5 e57d530fb194000c52187629d0a1fa5b
BLAKE2b-256 df2fffc3a95b07b0a10870e8c254b4f3061790112b0a529cd7360877250648c7

See more details on using hashes here.

File details

Details for the file wow_agent-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: wow_agent-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 120.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.16

File hashes

Hashes for wow_agent-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4819644707feb023fbc3f2eaf8e6bf0135c54231eb230a771e59e7ca42e19d6d
MD5 68f3e20d6ccb77c013b4fc966ab0babe
BLAKE2b-256 4e6d983d258254f31daf2c60be98b6c0457592dec4b35960fae7e3ca74aad2ed

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.6.0 This release

2 files

0.5.2

2 files

0.5.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page