AI coding agent CLI — local LLMs via Ollama or cloud models via API
Project description
Vaal
AI coding agent CLI. Runs local LLMs via Ollama or cloud models via API. Named after the Vaal Orb from Path of Exile.
Install
git clone https://github.com/0xE666/vaal.git
cd vaal
python install.py
That's it. vaal is now available as a command from anywhere, just like claude.
Or manually:
pip install -e .
Quick Start
# With Ollama (free, local)
vaal
# With Claude
vaal -m anthropic:claude-sonnet-4-20250514
# With OpenAI
vaal -m openai:gpt-4o
On first run with a cloud model, use /login to add your API key:
/login anthropic sk-ant-api03-your-key-here
/login openai sk-your-key-here
Or create a vaal account at e-e.tools/vaal:
/register
Features
- 45 tools — bash, file read/write/edit, git, grep, glob, web search, agents, notebooks, and more
- Subagents — spawn background agents (explore, plan, verify, code-review) that work in parallel
- 80+ slash commands —
/commit,/test,/pr,/diff,/pin,/remote,/plugin, and more - Multi-provider — Ollama, Anthropic, OpenAI, Groq, OpenRouter, DeepSeek, Together
- Self-repair — catches its own crashes, asks the LLM to fix the bug, patches itself
- Remote control — control vaal from a browser at e-e.tools/vaal
- Plugins — create custom tools with
/plugin createor let the LLM generate them - Tab completion — file paths auto-complete on Tab
- Persistent history — Up arrow recalls prompts across sessions
Providers
| Provider | Auth | Example |
|---|---|---|
| Ollama | None (local) | vaal -m qwen3:8b |
| Anthropic | API key or Max/Pro OAuth | vaal -m anthropic:claude-opus-4-6 |
| OpenAI | API key | vaal -m openai:gpt-4o |
| Groq | API key | vaal -m groq:llama-3.3-70b-versatile |
| OpenRouter | API key | vaal -m openrouter:anthropic/claude-sonnet-4 |
| DeepSeek | API key | vaal -m deepseek:deepseek-chat |
| Together | API key | vaal -m together:meta-llama/Llama-3.3-70B |
Key Commands
/help — All commands
/login — Add API key
/register — Create vaal account
/commit — Auto-generate commit message
/test — Run tests, auto-fix failures
/pr — Create pull request
/pin <file> — Keep file in context
/remote — Control from browser
/plugin create — Create custom tools
/effort — Set inference level
/doctor — System diagnostics
Requirements
- Python 3.11+
- httpx, rich (auto-installed)
- Ollama (optional, for local models)
- Git (optional, for git commands)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vaal_code-0.6.960.tar.gz.
File metadata
- Download URL: vaal_code-0.6.960.tar.gz
- Upload date:
- Size: 225.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4a90b56d889423173908badfe7f31a458947a2d211f9990034cc168e46a71332
|
|
| MD5 |
176b6f74a3411aaccbbd4743e73c106a
|
|
| BLAKE2b-256 |
edabeddc50baa00dfc405fac5dcd3355f461372ef566172682f76b9926c2882f
|
File details
Details for the file vaal_code-0.6.960-py3-none-any.whl.
File metadata
- Download URL: vaal_code-0.6.960-py3-none-any.whl
- Upload date:
- Size: 254.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
195f10b74f04ad48c81c36fa8259a95c83ddde64bbb5eaa1c9c0e4c63ee3f3c9
|
|
| MD5 |
f230337c1ba45159ff9d764dfe26d8b2
|
|
| BLAKE2b-256 |
40ed30bfb52a0830725641ac0d16643c7578022bd945bb19cedb4ecd0dceff64
|