Skip to main content

lcode logo

lcode

A coding agent that runs entirely on your own machine.
Open-weight models · up to 256K tokens of context · your NVIDIA GPU or Apple Silicon Mac · your code stays local

CI Docs PyPI MIT License Python 3.10+ Linux and macOS

Documentation · Install · Models · Contributing

lcode finding and fixing a bug, then running the tests

Point lcode at a repository and talk to it in your terminal. It explores the code, answers questions with file:line references, writes and edits files, runs your scripts and tests, and keeps going until the task is done, asking before it changes anything. The model runs locally through Ollama, and when it needs current information it can search the web.

Features

  • A real agent. Reads, searches, edits and runs commands in a loop, checks its own work, and plans multi-step tasks with a visible todo list.
  • Long context. 256K tokens with the default model (1M with Nemotron). You choose the window.
  • Hardware-aware. Detects your NVIDIA GPU or Apple Silicon Mac and picks the best model and the largest context that fits: lcode setup does it in one step. lcode bench compares models on real coding tasks on your machine.
  • Safe by default. Every edit is shown as a diff and every command that isn't read-only needs your approval. auto-edit and yolo modes when you want speed.
  • Undo. lcode saves a checkpoint before the model changes files; /undo takes back the last request's edits, new files and shell-command changes, without touching your git history.
  • Bring your own model. Eight curated open-weight models, all tested end to end, or any Ollama model with tool calling.
  • MCP servers, ready to go. Connect Jira and Confluence, GitHub, AWS, Google Drive, Grafana, Google Cloud, Sentry, Linear, Notion, Postgres, Kubernetes and more with one command (lcode mcp add atlassian), or any other MCP server. Browser sign-in (OAuth) is built in.
  • Web search when needed. Looks up the latest versions, docs and error messages with Ollama web search, Brave, Tavily or your own SearXNG, and reads pages as clean text.
  • Private. The model runs on your machine, lcode never uploads your files and has no telemetry. Web access is on by default and can be set to ask or off.

Install

Ubuntu / Linux (NVIDIA GPU recommended) and macOS on Apple Silicon (M1–M4):

curl -fsSL https://nasser1941.github.io/lcode/install.sh | bash

The installer sets up lcode with its own Python via uv, checks for Ollama (0.30+) and runs lcode setup, which picks a model for your hardware and downloads it. Prefer manual steps? lcode is on PyPI as lcode-cli:

uv tool install lcode-cli      # or: pipx install lcode-cli
lcode setup

On a Mac with Homebrew:

brew install nasser1941/tap/lcode
lcode setup

See the installation guide for details.

Quickstart

cd ~/code/your-project
lcode
❯ /init                                   # study the repo and write AGENTS.md for future sessions
❯ How does authentication work here? Cite files.
❯ Write scripts/dedupe.py that removes duplicate rows from @data/users.csv by email, and run it
❯ The tests in tests/test_parser.py fail. Find out why and fix it.
lcode -p "…" one request, no interaction (scripts, hooks)
lcode -c / lcode --resume continue the last session here / pick a saved session from a list
lcode --model qwen3.5-9b --context 128k pick a model and context window for this session
lcode models / lcode doctor what fits this machine / check the installation
lcode bench qwen3.6-35b qwen3.5-9b compare models on small coding tasks on this machine
/undo, /rewind take back the last request's file changes, or go back further
lcode mcp catalog / lcode mcp add github ready-made MCP servers / add one
/rename, /resume name the current session, resume a saved one
/model, /context, /compact, /help switch model, resize the context window (pick from a list), summarize, list commands

Models

Key Model Download Max context
qwen3.6-35b Qwen3.6 35B-A3B Coding (MoE, 3B active) 22.6 GB 256K default, tested
qwen3.8-27b Qwen3.8 27B (dense) 17.7 GB 256K tested
qwen3.6-27b Qwen3.6 27B Coding (dense) 17.8 GB 256K tested
laguna-xs-2.1 Poolside Laguna XS 2.1 (MoE, 3B active) 20.3 GB 256K tested
nemotron-3.5-lightning NVIDIA Nemotron 3.5 Lightning (hybrid MoE) 25.4 GB 1M tested
qwen3.5-9b Qwen3.5 9B (dense) 6.6 GB 256K tested
gpt-oss-20b OpenAI gpt-oss 20B (MoE) 13.8 GB 128K tested
qwen3.5-4b Qwen3.5 4B (dense) 3.4 GB 256K tested

What lcode setup picks for common machines:

Machine Model Context
Mac with M4, 16 GB qwen3.5-9b 64K
Mac with M4 / M4 Pro, 24 GB qwen3.5-9b 256K
Mac with M4 Pro / M4 Max, 36 GB qwen3.6-35b 64K
Mac with M4 Pro, 48 GB · M4 Max, 64 GB+ qwen3.6-35b 256K
NVIDIA 8–24 GB + 32 GB RAM qwen3.6-35b 256K
NVIDIA 8 GB + 16 GB RAM gpt-oss-20b 64K

At 256K context the default model generates 50–55 tokens/s on an RTX 4080 Laptop GPU (12 GB) and 45 tokens/s on an M4 Pro Mac with 48 GB. See Models & context windows for memory estimates and tuning.

How it works

lcode sends your request, the repository layout and a set of tool definitions to the model; runs the tools the model calls (read, edit, grep, glob, bash, todo); feeds the results back; and repeats until the model answers. It sizes models to your memory from each model's KV-cache footprint, uses text-only model variants to free GPU memory, and summarizes the conversation when the context window fills up. Details: How it works.

Roadmap

See the pinned Roadmap issue. Next up:

Contributing

Contributions are welcome: bug reports, model test results, docs and code. See CONTRIBUTING.md. Please follow the code of conduct, and report security issues privately as described in SECURITY.md.

Acknowledgements

lcode stands on Ollama and llama.cpp, the open-weight models from Qwen, Poolside, NVIDIA and OpenAI, Rich and prompt_toolkit.

License

MIT © 2026 Naser Derakhshan

Metadata

Release files for lcode-cli 0.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lcode-cli 0.4.1
File Size Uploaded
lcode_cli-0.4.1.tar.gz 668.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for lcode-cli 0.4.1
File Interpreter ABI Platform
lcode_cli-0.4.1-py3-none-any.whl Python 3 none any Details

Total release size: 779.5 kB

Release files / lcode_cli-0.4.1.tar.gz

Download URL lcode_cli-0.4.1.tar.gz
Size 668.5 kB
Tags Source
SHA-256 checksum
How to use checksums
4260ad5b7342e5eb42129eec15c8396be0d8dbca9e73871a9673b472dbfc271c
BLAKE2b-256 checksum
How to use checksums
37e8ad7ac1382d3c11420cd5836a998a1890ea450fbdf7730931cd8c00477e9f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","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 / lcode_cli-0.4.1-py3-none-any.whl

Download URL lcode_cli-0.4.1-py3-none-any.whl
Size 111.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5a5c1659f922faa52a259910fa35ae00867ed359d8fb0e936a1c5afc47e64b4c
BLAKE2b-256 checksum
How to use checksums
792ac4ca01060f46f5735bc9b21c210f1a63fd7b07c6ae8c02e9276f42a66e1e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","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 history Release notifications | RSS feed

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

This release

0.4.1 This release

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release 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