Lovelaice
A sovereign, local-first coding agent for the terminal. A native tool-calling ReAct loop (read/bash/write/edit/glob/list_dir), yolo by default. Three ways to run it:
- One-shot — streams to stdout and exits:
lovelaice "<prompt>"(piped stdin works too). - ACP server —
lovelaice-acpspeaks the official Agent Client Protocol v1 over stdio, so any ACP client (e.g. aegis, Zed) can drive lovelaice as a native, harness-free agent — local or direct-API models, no external CLI. Supports streaming, per-session MCP tools, token usage, andload_sessionresume. Seeknow-how/acp-v1-server.md. - Library —
lovelaice.agent.Agent/lovelaice.coding.create_coding_agentembed the engine directly.
Install
pipx install lovelaice
Configure
lovelaice --init writes a .lovelaice.py in the current directory.
This file grounds the workspace: when you run lovelaice from any
subdirectory, it walks up to the nearest .lovelaice.py and chdirs
to its directory before running. Exactly one config grounds the
workspace — there is no stacking.
Set OPENROUTER_API_KEY in your environment before running.
export OPENROUTER_API_KEY=sk-or-...
lovelaice
Commands and tools
The .lovelaice.py registers tools and commands as decorators on a
Config object. Built-in tools: bash, read, write, edit,
list, glob, grep, fetch. Add your own with @config.tool.
See know-how/writing-a-tool.md and know-how/writing-a-command.md.
Thinking mode
Add thinking="high" (or "low"/"medium", or an integer token
budget) on a model entry to enable OpenRouter's reasoning passthrough.
Reasoning chunks render in a separate dim-italic panel above the
agent's reply. Non-OpenRouter base URLs silently ignore the knob —
v1 does not translate reasoning protocols across providers.
MCP
Pass mcp=[...] to Config(...) to spawn stdio MCP servers and
register their tools. Tool names are prefixed mcp:<server>:<tool>.
config = Config(
models=MODELS,
prompt=PROMPT,
mcp=[
{"name": "filesystem", "command": "npx",
"args": ["@modelcontextprotocol/server-filesystem", "."]},
],
)
License
MIT.
Metadata
Release files for lovelaice 2.13.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lovelaice-2.13.0.tar.gz | 196.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lovelaice-2.13.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 252.1 kB
Release files / lovelaice-2.13.0.tar.gz
| Download URL | lovelaice-2.13.0.tar.gz |
|---|---|
| Size | 196.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
12ec7ecf2e424c428d6813de51b19913a65f0896140c46a410b64e2db5b9b6e4
|
|
BLAKE2b-256 checksum How to use checksums |
1f56808c5ad287c60d2dc7ed6bdc018f459a46366cedf946c81aefe5cc489f31
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / lovelaice-2.13.0-py3-none-any.whl
| Download URL | lovelaice-2.13.0-py3-none-any.whl |
|---|---|
| Size | 56.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ac3c27a671717e3edc64c59eba3cf0f965fb5c9fcf071d45703c7fc046a2e8b3
|
|
BLAKE2b-256 checksum How to use checksums |
f8b086ce95530707ee1f9828fa6ca73e361df0346878a72f39f88d4b19d34ba6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|