Skip to main content

localcode

PyPI License Python Platform

A coding agent that runs a local model on your Mac.
No cloud inference, no API key, no account.

A localcode turn: it reads the stub and test, edits the file, then pytest reports 1 passed

localcode runs an open-weight model on your Mac and uses it to read, edit and test your code. Your prompts and your files stay on your machine. The only thing it downloads is the model weights, once per model.

Install

pip install -U localcode      # or: uv pip install -U localcode

The inference server ships inside the package. Nothing is compiled or cloned on your machine.

Run

cd your-project
localcode

On first launch the model picker opens: models first, then every quant the repository ships, with the size and whether it fits your Mac's memory. The recommended one for your machine is starred. Pick one, watch the download, and start typing. /models switches later.

> Implement the retry decorator in retry.py so every test in test_retry.py passes. Then run: pytest -q

localcode --classic opens the previous (0.3) interface.

Docs: mjwsolo.github.io/localcode

What it does

  • Reads and edits files in your project
  • Runs your tests, builds, Git and shell commands, and asks before anything risky
  • Searches code by name, content or structure
  • Scaffolds and launches apps, then checks that they respond
  • Remembers the task across messages

Requirements

  • Mac with Apple Silicon, macOS 13 or newer
  • 16 GB unified memory or more
  • Python 3.10 or newer
  • About 12 GB of free disk for the smallest model

Models

localcode recommends a model by your Mac's memory and marks it with a star. You choose; nothing is selected for you. Every quant the model's repository ships is listed, with a fit badge for your machine. Every model runs on binaries shipped in the package.

Model Weights Quant Active params Min RAM
Gemma 4 12B 7.4 GB UD-Q4_K_XL 12B (dense) 16 GB
Qwen 3.6 35B-A3B 10.7 GB UD-IQ2_M 3.0B (MoE) 24 GB
Gemma 4 26B-A4B 11.2 GB UD-IQ3_S 3.8B (MoE) 24 GB
DiffusionGemma 26B-A4B 15.7 GB Q4_K_M 4B (diffusion MoE) 32 GB
Muse Glimmer 30B 15.9 GB UD-Q4_K_XL 30B (dense, vision) 32 GB
Qwen 3.8 27B 17.9 GB UD-Q4_K_XL 27B (dense) 36 GB
North-Mini-Code 30B-A3B 17.9 GB UD-Q4_K_M 3B (MoE) 36 GB
Gemma 4 12B (full) 23.8 GB BF16 12B (dense) 48 GB
Gemma 4 26B-A4B 28.0 GB UD-Q8_K_XL 3.8B (MoE) 64 GB
Qwen 3.6 35B-A3B 38.5 GB UD-Q8_K_XL 3.0B (MoE) 96 GB

Min RAM is the memory at which localcode will recommend the model. You can pick a heavier one by hand. DiffusionGemma is a research model that is never recommended automatically.

Measured on a MacBook Pro (M5 Max, 128 GB) with Qwen 3.6 35B-A3B UD-IQ2_M at a 131072-token context: about 89 tokens/s generation, about 1174 tokens/s prompt processing, and 12 to 15 seconds for a typical four-tool-call task.

Network

Inference is local. Three features use the network: model downloads, the web_search and web_fetch tools, and any MCP servers you add. See Network Boundary for the full list.

Why local?

Powerful, personal AI should work for everyone, on any device, anywhere. That means running it locally. localcode is a first step.

Sponsors

To sponsor localcode, reach out.

Contributing

See CONTRIBUTING.md.

License

Apache 2.0. See LICENSE.

Release files for localcode 0.4.6

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

Source distribution (sdist)

Source distribution for localcode 0.4.6
File Size Uploaded
localcode-0.4.6.tar.gz 48.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for localcode 0.4.6
File Interpreter ABI Platform
localcode-0.4.6-py3-none-macosx_13_0_arm64.whl Python 3 none macOS 13.0+ ARM64 Details

Total release size: 91.6 MB

Release files / localcode-0.4.6.tar.gz

Download URL localcode-0.4.6.tar.gz
Size 48.4 MB
Tags Source
SHA-256 checksum
How to use checksums
0f4cbd7cd4db671ba1b4c3add4055f3fee0bf6a7fb1124d2c6d23c2735425d91
BLAKE2b-256 checksum
How to use checksums
0c7cf8943f381ef07c61030297af35e32ddac930b7fdf75cd3a3ed64f167244c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.

Transparency log

Release files / localcode-0.4.6-py3-none-macosx_13_0_arm64.whl

Download URL localcode-0.4.6-py3-none-macosx_13_0_arm64.whl
Size 43.2 MB
Tags Python 3 macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
0eb062fad2ed41c443f4067e75b42f9e496024d4952dac10a186646a83ba30a5
BLAKE2b-256 checksum
How to use checksums
21e9ab119ef19d5cd06cfca858394ac8404186bf626031bfaa26079415553c66
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.7

2 release files

This release

0.4.6 This release

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.71

2 release files

0.3.70

2 release files

0.3.69

2 release files

0.3.68

2 release files

0.3.67

2 release files

0.3.66

2 release files

0.3.65

2 release files

0.3.64

2 release files

0.3.63

2 release files

0.3.62

2 release files

0.3.61

2 release files

0.3.60

2 release files

0.3.59

2 release files

0.3.58

2 release files

0.3.57

2 release files

0.3.56

2 release files

0.3.55

2 release files

0.3.54

2 release files

0.3.53

2 release files

0.3.52

2 release files

0.3.51

2 release files

0.3.50

2 release files

0.3.49

2 release files

0.3.48

2 release files

0.3.47

2 release files

0.3.46

2 release files

0.3.45

2 release files

0.3.44

2 release files

0.3.43

2 release files

0.3.42

2 release files

0.3.41

2 release files

0.3.40

2 release files

0.3.36

2 release files

0.3.35

2 release files

0.3.34

2 release files

0.3.33

2 release files

0.3.32

2 release files

0.3.31

2 release files

0.3.29

2 release files

0.3.28

2 release files

0.3.27

2 release files

0.3.26

2 release files

0.3.25

2 release files

0.3.24

2 release files

0.3.23

2 release files

0.3.22

2 release files

0.3.21

2 release files

0.3.20

2 release files

0.3.19

2 release files

0.3.18

2 release files

0.3.17

2 release files

0.3.16

2 release files

0.3.15

2 release files

0.3.14

2 release files

0.3.13

2 release files

0.3.12

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.16

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.13

2 release files

0.2.12

9 release files

0.2.11

9 release files

0.2.10

9 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