FlyText icon FlyText

Local AI Code Autocomplete: Copilot-Like Suggestions Without Leaving Your Machine

AI code completion is everywhere — except for one group of people who can't use it: intranet developers, classified projects, engineers debugging offline at customer sites, and anyone whose compliance department explicitly forbids sending source code out.

For them, the question was never "is the cloud model smart enough" but "can I use it at all" — if not a single byte may leave the building, the strongest model on earth is worth zero. This post is about making that path work.

1. Cloud vs local: the difference is one layer

The difference isn't the model — it's where inference happens.

The cloud completion data flow

Editor → collects context (surrounding lines of the current file + open tabs)
       → uploads over HTTPS to the vendor's server
       → cloud GPU inference
       → returns suggestions
       → editor renders Ghost Text

Note step two: the "context" contains your source code itself. That's not paranoia — it's a functional prerequisite. The model must see your code to predict the next token. Vendors typically promise no retention and no training use, but "a promise" and "architecturally impossible" are two different things.

The local completion data flow

Editor → local inference service (over loopback 127.0.0.1)
       → inference on your own CPU / GPU
       → returns suggestions
       → editor renders Ghost Text

The key difference: the connection target is 127.0.0.1, so the packets never reach the network card. This isn't "the vendor promises not to upload" — it's "there is no upload path in the architecture". Unplug the network cable and completion keeps working.

How to verify it's genuinely local

Don't trust the marketing — test it yourself: disconnect the network (or pull the cable) and confirm completion still works; then check netstat -ano or Windows Firewall's outbound log to see whether the process makes any external connections. Pass both tests, and it's truly local.

2. The costs, stated up front

Local completion isn't a free lunch. Before choosing it, accept these three things:

DimensionCloud completionLocal completion
QualityStrong (tens-of-billions-parameter models)Medium (bounded by local hardware, usually 1B–7B quantized)
First response200–600 ms including network round-tripDepends on local compute; 1–3 s on CPU is common
HardwareNoneConsumes RAM and compute; models from hundreds of MB to several GB
Data egressYes (source must be uploaded)None (no path exists)
OfflineNoYes
CostSubscription, per user per monthOne-time hardware investment, then free

The expectation most in need of calibration is quality. Local small models do fine at short-range tasks like "finish this line from the current file", but cross-file reasoning, understanding project architecture, and generating whole functions remain clearly behind cloud LLMs.

The right framing: local completion buys you typing speed, not a thinking substitute.

3. The hardware bar

On-device inference is usually bottlenecked by memory bandwidth, not raw compute. Rough guide:

  • Minimum viable: 16 GB RAM + a modern quad-core CPU. Runs ~1B quantized models; responses around 1–2 s. Usable, not snappy.
  • Recommended: 32 GB RAM + a discrete GPU with 8 GB+ VRAM. Runs ~7B quantized models; responses in the 300–600 ms range, approaching cloud feel.
  • Rough: an old 8 GB machine. After the model loads, the system starts paging and everything slows down.

One more note: the completion service and the editor share your memory. Editing a 2 GB file in FlyText while running local inference stacks the pressure.

4. Hands-on: FlyText + FlyAI

FlyText's AI autocomplete is provided by the optional FlyAI inference service. The two talk over local loopback; without FlyAI, FlyText is a pure editor.

Step 1: install in this order

  1. Install FlyText first (~2 MB, installer or portable).
  2. Then install FlyAI (v1.1, ~943 MB, 32 / 64-bit). Install it on an SSD — model loading is much faster.
  3. Restart FlyText so it detects the local service port.

Step 2: confirm the service is running

FlyAI listens on the local loopback address by default. Verify:

# List local listening ports and confirm the FlyAI service is up
netstat -ano | findstr LISTENING

# Or open Task Manager → Performance and watch CPU / GPU usage during inference

If you can't find the listening port, check whether FlyAI was blocked by security software or added to the Windows Firewall block list.

Step 3: verify completion is truly local

This is the most important step — don't skip it:

  1. Disconnect the network (airplane mode or pull the cable).
  2. Create a new file in FlyText, type a few lines of code, and pause at end of line.
  3. When a gray Ghost Text suggestion appears → press Tab to accept.
  4. If results appear with the network down, inference is fully on-device.

Step 4: tuning

  • Responses too slow: switch to a smaller quantized model, or move the inference backend to GPU; also check that no other model process is hogging VRAM.
  • Suggestions too chatty: lower the trigger frequency (adjust the completion delay in settings) so it doesn't pop up every two keystrokes.
  • Suggestions low quality: completion depends heavily on the current file's preceding context. Open the file and scroll a few hundred lines down first — quality improves noticeably.
  • Want it off temporarily: no need to uninstall — toggle completion off in FlyText settings and back on when needed.

5. When local completion is worth it

  • Strong-compliance industries (finance, government, defense): source code is a sensitive asset; sending it out is a violation. This is the hardest case for local.
  • Intranets and isolated networks: there's physically no internet — cloud solutions are out entirely.
  • Customer sites / travel: unstable networks make cloud completion stutter, which is more annoying than having none.
  • Cost-sensitive teams: one-time hardware spend vs per-user monthly subscriptions — the more seats, the better local looks.

Conversely, if you develop in a fully open environment and nothing restricts code egress, cloud LLM completion is still clearly better today — don't go local for local's sake.

Bottom line

Local AI completion is fundamentally a trade: a slice of completion quality in exchange for the certainty that code never leaves the machine.

For those who need that certainty, it isn't a compromise — it's the only workable option. And for those who don't: just don't install FlyAI. It's always optional — without it, FlyText remains the 2 MB editor that opens huge files instantly.

Try local AI autocomplete

Install the 2 MB FlyText first, add FlyAI only if you need it. Works offline; code never leaves your machine.

FAQ

Does FlyAI secretly download models from the internet?

Models ship once with the installer; after installation, inference is fully offline. The test is simple: if completion works with the network disconnected, nothing depends on external requests.

Can I use FlyText without FlyAI?

Yes, with no feature impact whatsoever. FlyAI is an optional component that handles exactly one thing: AI completion.

My laptop has no discrete GPU — can I still use it?

It runs, but responses will be slower. 16 GB+ of RAM is recommended, along with accepting 1–2 s of completion latency.

Will local completion slow down editing huge files?

The two compete for memory and compute. When editing GB-scale files, it's wise to turn completion off temporarily; on lightweight files, running both at once has no noticeable impact.

Which programming languages does it support?

Quality follows the training corpus of the selected model. Mainstream languages (C/C++, Python, JavaScript/TypeScript, Java, Go, etc.) do well; niche languages are comparatively weaker.