Lakshya

Software Engineering · Chapter 24 of 31

Your editor, and putting a model in it

What the tools are, what actually gets sent when you use them, and how to run a model on your own laptop.

8 min read1 diagramAll 31 chapters

An editor is where you write code; an IDE adds the machinery around it — running the program, stopping it mid-way to look at what went wrong, jumping to where something is defined. The line between the two stopped mattering years ago. What matters now is which one you can get a model into, and on what terms.

A review date, because this chapter needs one more than any other on the site.

Everything below is accurate as of August 2026. In the nine months before that, GitHub changed how GitHub Copilot is billed, reversed its default on using individual users' code for training, and added a new frontier model to the picker roughly every two to five weeks. One editor was acquired and renamed.

So learn the shape here, and check the current prices and settings yourself. Any guide to this subject that does not tell you that is lying to you.

The editors, briefly

What it isWhat is different about it
VS CodeMicrosoft's free editor, and the default choice for most peopleShips with no AI at all until you add an extension. Copilot is the common one, but see below — you are no longer locked to it
CursorA copy of VS Code, rebuilt around the assumption that a model reads your whole codebaseIts Tab is its own prediction model, not Copilot's. Multi-file agent work is the default rather than an add-on
JetBrainsIntelliJ, PyCharm and the rest — deeper language understanding, heavierAI Assistant is the chat and completion layer; Junie is its agent. Local models do not consume credits
ZedA newer, very fast editor written in RustShips its own open-weight prediction model rather than depending on a vendor's
Devin Desktop⚠️ This is what Windsurf became. Cognition acquired it and renamed it on 2 June 2026If you search for Windsurf you will land on a renamed product with a different default agent

What actually gets sent

This is the question a corporate reader has and almost nobody answers plainly.

WHEN YOU PRESS TAB, WHAT ACTUALLY LEAVES YOUR COMPUTER? TAB COMPLETION — the grey text · the code around your cursor · snippets from your other open tabs that look similar That is roughly it. A few hundred lines, not your repository. Fast, small, and unmetered on every paid plan. Closing an unrelated tab can change your suggestions. CHAT AND AGENT MODE · files you point at, and your question · search results from across the project · terminal output you share · and in agent mode, whatever it decides to go and read This one can pull in code you never showed it. That is thefeature. Metered. This is what your credits pay for. THE CONTROL YOUR ADMINISTRATOR SET PROBABLY DOES NOT COVER THE RIGHT HALF GitHub’s content exclusion lets an organisation say “never read this folder”. It works for completions and chat. GitHub’s own documentation states it does NOT apply to agent mode, or to the command-line tool. AND ONE THING NO SETTING CHANGES “We do not train on your code” and “your code does not leave the building” are different promises. Every one of these tools sends your code to a server to get an answer. That is how it works. The contract governs what is KEPT, notwhether it travels. Even with your own model key in Cursor, its own documentation says the request still passes through Cursor’s backend, where the prompt isassembled. If code genuinely cannot leave, the only answer is a model running on your own hardware — which is the last section of this chapter.
The two paths are very different sizes — and the enterprise control that blocks one has a documented hole in the other.

Two things in that picture are worth saying again. First, GitHub's own documentation states that content exclusion — the setting an administrator uses to keep Copilot away from a sensitive folder — does not apply to agent mode or the command-line tool. An organisation that believes it has fenced off a secrets directory has fenced off half the product.

Second, and this catches people out personally rather than corporately: as of 24 April 2026, GitHub switched individual Free, Pro and Pro+ accounts to opt out for using your Copilot interactions to train models. It used to be opt in. Business and Enterprise remain excluded by contract and are unaffected. The setting is under your Copilot features page. If you set Copilot up personally before checking your employer's policy, this is the one to go and look at.

Running a model on your own machine

If you want to try this without a subscription, or your code genuinely cannot leave the building, you run the model yourself. Two tools make it easy.

shellollama.com/download and docs.ollama.com
# Ollama — a command-line tool that downloads and runs models
curl -fsSL https://ollama.com/install.sh | sh

ollama pull llama3.2        # download it
ollama run  llama3.2        # chat with it right here

# it also serves an API on http://localhost:11434/v1/ — that address matters, see below

LM Studio does the same job with a window you can click around in, which is gentler if the terminal is not yet comfortable. Its command-line tool is lms, and its server runs on http://localhost:1234/v1.

How much machine do you need — honestly

Quantisation, first, because every download page asks you about it. A model's numbers are normally stored at 16 bits each. Quantising squeezes them down — usually to 4 bits — which roughly quarters the memory needed at some cost to quality. Q4 is the sensible default. Q8 is when you have memory to spare. Q2 or Q3 is what you use to force a big model onto a small machine, and you will feel it.

Your machineWhat is realistically usefulNote
16 GBA 7 or 8 billion parameter model at Q4This is the floor for something genuinely useful, and it is a hard ceiling — you are choosing between a smaller model at better quality or a bigger one at coarser quality
32 GB32B-class models run comfortably70B becomes reachable at heavy compression, though quality degrades noticeably
Apple SiliconOnly about 70–75% of your memory is usable for the modelSo a 16 GB MacBook Air has roughly 11–12 GB for weights, not 16

Set your expectations before you try it, or you will draw the wrong conclusion

A 7 or 8 billion parameter model on a 16 GB laptop is genuinely good at tab completion and simple, well-scoped questions.

It is materially worse than a current hosted model at multi-file refactoring or anything requiring hard reasoning — and it is not close.

People try a local model for agentic work, find it disappointing, and conclude “AI coding does not work.” They have concluded something narrower than they think. Use local for completion and privacy; use hosted for the hard parts.

Pointing your editor at it

Here is the practical trick, and the one most guides skip. Nearly every tool in this space accepts an OpenAI-compatible address — a web address ending in /v1 that speaks a common request format. That single convention is why Ollama and LM Studio work almost everywhere:

EditorCan you point it at a local model?Where
VS CodeYes — and notably this works without a GitHub account or a Copilot plan at allChat model picker → Manage Models → add an Ollama provider
CursorChat and inline edits: yes. Tab completion: noSettings → Models → override the Base URL
JetBrainsYes, and local models do not consume your creditsSettings → Tools → AI Assistant → Providers
Zed, AiderYes, natively — both were built model-agnostic—
Claude Code, Codex CLINo — tied to their own vendor—

Notice the pattern in that table. Chat and agent surfaces are open; tab completion is almost always locked to the vendor. That is not commercial spite — tab completion depends on a small model tuned specifically for very low latency, and it is the one place a general-purpose local model genuinely cannot substitute.

Check yourself

What does VS Code ship with, AI-wise?Nothing. It is an extension you add. What changed is that you are no longer locked to Copilot's own models inside it — bring-your-own-key works without a GitHub account or Copilot plan.
What gets sent when you press tab?The code around your cursor, plus snippets from your other open tabs that look similar. A few hundred lines, not your repository. Which is why closing tabs changes your suggestions.
What does content exclusion not cover?Agent mode and the command-line tool, per GitHub's own docs. An organisation that fenced off a secrets folder has fenced off half the product.
What changed for individual accounts in April 2026?GitHub switched Free, Pro and Pro+ to opt-out by default for using your interactions to train models. It used to be opt-in. Business and Enterprise are excluded by contract.
What is quantisation?Squeezing each of a model's numbers from 16 bits down to typically 4, which roughly quarters the memory needed at some cost to quality. Q4 is the sensible default.
What runs usefully on a 16 GB laptop?A 7–8 billion parameter model at Q4 — good for completion and simple questions, materially worse than a hosted model for multi-file work. On Apple Silicon only ~70–75% of memory is usable for weights.
Why can you not point tab completion at a local model?It depends on a small model tuned for very low latency. Chat and agent surfaces accept an OpenAI-compatible address; tab completion stays vendor-locked in both Copilot and Cursor.
← Git and GitHub, actually explainedGitHub Copilot, honestly →