Free LLM proxy for Cowork and OpenAI-compatible clients — no litellm, pure httpx routing
Project description
litecoo (litecoo v3)
litecoo (formerly litecoo) is a local FastAPI proxy that makes free LLM models (DeepSeek V4, Gemma, Nemotron) behave like Claude for Cowork Desktop and Claude Code. It handles the Anthropic protocol, agentic tool loops, session memory, and built-in tools — all without spending a cent on API calls.
🚀 System Architecture
graph TD
Client[Client (Cowork / curl)] --> API[FastAPI Proxy]
API --> Router[Model Router]
subgraph Core Features
Router --> Memory[SQLite Session Memory]
Router --> AgentLoop[Server-Side Agent Loop]
Router --> RateLimit[Cooldown / Rate Limiting]
end
subgraph Built-in Tools
AgentLoop --> Fetch[Web Fetch]
AgentLoop --> Search[Web Search]
AgentLoop --> Bash[Bash Command]
AgentLoop --> FileOps[File Read/Write]
AgentLoop --> Office[Create PDF/DOCX/PPTX]
end
Router --> Provider[OpenRouter / DeepSeek / External APIs]
🛠️ Endpoints
| Endpoint | Format | Description |
|---|---|---|
POST /v1/messages |
Anthropic | For Claude Desktop and Cowork. Handles tool loops and SSE streaming. |
POST /v1/chat/completions |
OpenAI | For standard OpenAI clients, Claude Code, curl. |
GET /v1/models |
Standard | Returns the list of available aliases. |
GET /v1/sessions/{id} |
Internal | Inspect a session's history. |
DELETE /v1/sessions/{id} |
Internal | Clear a session from SQLite. |
GET /v1/cooldowns |
Internal | Check rate limit status for each model. |
GET /v1/usage |
Internal | Review token usage stats. |
📦 Built-in Tools
If the client doesn't send its own tool definitions, litecoo automatically injects these tools:
web_fetch,web_search: DuckDuckGo and basic page scraping.bash: Local command execution.read_file,write_file: Read and write to disk.create_pdf,create_docx,create_pptx,create_xlsx: Generate rich documents.
Add the header X-Agent-Loop: server to let litecoo automatically execute multi-step tools server-side before returning the final text to the client.
💻 Installation
To run it locally or use it as a library, install directly from source:
python -m venv venv
# On Windows: venv\Scripts\activate
# On Mac/Linux: source venv/bin/activate
pip install litecoo
Then run the proxy:
litecoo --host 0.0.0.0 --port 8000 --env-file .env
🔌 Connecting Clients
Claude Desktop:
Settings → Developer → API base URL → http://localhost:8000
Claude Code:
export ANTHROPIC_BASE_URL=http://localhost:8000
export ANTHROPIC_API_KEY=any-string
claude
⬆️ How to Publish to PyPI
If you are a developer and want to push the latest changes to PyPI, follow these steps:
-
Install build tools:
pip install build twine
-
Build the wheel and source distribution:
python -m build
This creates a
dist/directory with a.tar.gzand.whlfile. -
Upload to PyPI:
python -m twine upload dist/*
You will be prompted for your PyPI API token (username
__token__).
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 litecoo-1.0.3.tar.gz.
File metadata
- Download URL: litecoo-1.0.3.tar.gz
- Upload date:
- Size: 36.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ba36eda133f36895d5dc17978527fb5bf4a849f80987c683e6418d10e82012a2
|
|
| MD5 |
32898e64132c8453e1063e4e385c9bb2
|
|
| BLAKE2b-256 |
29880c377667e171385b56c1986d274a2e6dc1fdda750a32842ad2535e88f5f2
|
File details
Details for the file litecoo-1.0.3-py3-none-any.whl.
File metadata
- Download URL: litecoo-1.0.3-py3-none-any.whl
- Upload date:
- Size: 40.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4abf0502655cd2e808dcd44efb681e0eea9965fa6647dd839cb470e1bf8fff07
|
|
| MD5 |
1351f47ecde77c8675054c9326ed0720
|
|
| BLAKE2b-256 |
3bee5160030143185f2d00d951d80a155de1874f6801f146952b63f732d3eda6
|