Metadata-Version: 2.4
Name: wizolt
Version: 0.70.1
Summary: A terminal coding agent written in Python
Author-email: hit9 <hit9@icloud.com>
License-Expression: BSD-3-Clause
Project-URL: Homepage, https://github.com/hit9/wizolt
Project-URL: Repository, https://github.com/hit9/wizolt
Project-URL: Issues, https://github.com/hit9/wizolt/issues
Project-URL: Documentation, https://wizolt.readthedocs.io
Keywords: ai,coding-agent,cli,terminal
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: 3.15
Classifier: Topic :: Software Development
Classifier: Topic :: Terminals
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: anthropic>=1.0.0
Requires-Dist: anyio>=4.0
Requires-Dist: mcp<3,>=2.2
Requires-Dist: httpx2>=2.12.0
Requires-Dist: openai>=3.0.0
Requires-Dist: prompt-toolkit>=3.0.53
Requires-Dist: pygments>=2.16
Requires-Dist: rich>=13.0
Requires-Dist: socksio>=1.0.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: tomlkit>=0.13
Provides-Extra: dev
Requires-Dist: json-repair>=0.63; extra == "dev"
Requires-Dist: pathspec>=1.0; extra == "dev"
Requires-Dist: pillow>=11.0; extra == "dev"
Requires-Dist: pyright>=1.1.411; extra == "dev"
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: pytest-asyncio>=1.0; extra == "dev"
Requires-Dist: pytest-xdist>=3.8; extra == "dev"
Requires-Dist: ruff==0.16.0; extra == "dev"
Dynamic: license-file

<h1 align="center">
  <img src="https://raw.githubusercontent.com/hit9/wizolt/master/docs/_static/wizolt-logo.png" alt="Wizolt logo: a blue hooded terminal mage holding a lightning staff" width="112"><br>
  wizolt
</h1>

<p align="center">
  A terminal coding agent. Read code, edit files, run commands — and pick up where you left off.
</p>

<p align="center">
  <img src="https://raw.githubusercontent.com/hit9/wizolt/master/snapshots/wizolt3.gif" alt="wizolt working through a long session with background jobs, an edit preview, and a live status bar" width="600">
</p>

## Highlights

- **Keep long tasks going.** Automatic context compaction, prompt caching on supported providers, and saved sessions. Resume conversation, tool history, and diffs with `wizolt -c`.
- **Review every change.** Edits reject stale or ambiguous targets. `/diff` shows the latest round or the whole session.
- **Steer while it works.** Send follow-ups, queue the next task, and let slow commands run as background jobs.
- **Mix models.** Connect OpenAI-compatible Chat Completions, Responses, or Anthropic Messages APIs. Run parallel subagents with independent conversations and model settings.
- **Bring your tools.** MCP servers, reusable Markdown skills, and shell hooks for checks and formatters.
- **Make it yours.** Preview themes, diff colors, statusbars, dividers, and input symbols in `/theme`; customize further in your config.

## Install

Requires macOS or Linux, Python 3.11+, and [uv](https://docs.astral.sh/uv/).

```sh
uv tool install wizolt
wizolt --init-config
```

Add your provider to `~/.wizolt/config.toml`:

```toml
[provider]
active = "default"

[provider.default]
url = "https://api.deepseek.com"
key = "sk-..."
model = "deepseek-flash"
```

Start in your project directory:

```sh
wizolt
```

Upgrade with `uv tool upgrade wizolt`.

**No built-in sandbox.** wizolt can edit files and run commands. Use a container or VM when you need isolation.

## Links

- [Documentation](https://wizolt.readthedocs.io/en/latest/) — full usage guide and reference.
- [Maintainer design notes](design/README.md) — architecture, state ownership and known trade-offs.
- [Blog post](https://hit9.dev/post/nanocode) — why and how it was built.
