Remix.run Logo
▲ forgingahead 3 hours ago

What are people using for a local offline harness? I've heard that OpenCode has lax approach to security and has some default dial home settings. Aider? Want to use Qwen3.8-27b locally for coding on 24gb VRAM. Best option?

▲pianopatrick 2 hours ago | parent | next [-]

I wrote my own harness designed to feel like a unix util. If you're worried about security, mine is a single file shell script less than 1,000 loc. It only depends on llama-cli and a few posix shell tools. So it has no way to dial anywhere and no security problems hiding in some dependency.

But it's not optimized for coding specifically. It can edit files fine using Aider style edits. I've used it to write to do lists as a test. But I more designed it with the idea to be my personal debugging tool if I ran into any weird things while using Linux on a laptop.

github.com/patrickjh/ssa

▲badsectoracula 3 hours ago | parent | prev | next [-]

I'm using Qwen 3.8 27B with Unsloth's UD-Q4_K_XL quantization[0] via llama.cpp with 131k context - full command line:

llama-server --model Qwen3.8-27B-UD-Q4_K_XL.gguf --ctx-size 131072 --parallel 1 --cache-type-k q8_0 --cache-type-v q8_0 --host 0.0.0.0 --port 8080 --spec-type draft-dflash --spec-draft-model dflash-Qwen3.8-27B-Q4_0.gguf --spec-draft-n-max 3 --spec-draft-type-k q8_0 --spec-draft-type-v q8_0 --mmproj mmproj-BF16.gguf --no-mmproj-offload --image-min-tokens 2048 --reasoning-preserve

It just barely fits in my RX 7900 XTX's 24GB of VRAM (TBH i'm not sure if dflash is much better than MTP - which is included as part of the GGUF - and MTP saves ~1GB of VRAM). I'm using Linux with Xorg/Window Maker as my DE so it uses no VRAM at all (Qt-based stuff - and i guess modern Gtk too - tend to use some VRAM for themselves, even opening Kate shows up in amdgpu_top :-P). The above gives me on average ~50 tokens/sec generation (drops to about 35 when the context is close to full) and ~700 tokens/sec prompt processing, which while not particularly speedy is fine for agentic stuff as i just give the AI a task and leave it in the background doing things. To save some VRAM i run the multimodal projector for vision on the CPU (the --no-mmproj-offload) and only one task is ever executed at the same time (--parallel 1). Also the kvcache is quantized to q8_0 - supposedly this makes the model a bit dumber, though the extra VRAM needed for the full f16 kvcache makes it more than ten times slower :-P (and AFAIK dense models like the 27B aren't as affected by it as MoE models are).

I'm using Pi[1] (a slightly older version that i've had remain offline and disabled the telemetry) for now (will replace it at some point since i'm not a fan of the ~500MB dependency tree, the almost-dark patterns for online access/telemetry and the increasingly worrying push for the devs' services, but i do like how it approaches compaction and that for the most part it doesn't need any handholding when some error happens - which is ideal for "let the AI do something and check it some time later").

It is running inside a container so it doesn't get any access to my real stuff (mainly to avoid the LLM making any mess - of which it sometimes does in the container, but well, it is contained :-P). In the container Pi gives the LLM some basic tools - read, write, edit and bash - and the last one is basically used to do most of the work (i've also made a bunch of tools the LLM can use via the CLI).

[0] https://huggingface.co/unsloth/Qwen3.8-27B-GGUF/blob/main/Qw...

[1] https://pi.dev/

▲orsorna 2 hours ago | parent [-]

+1 to the RX 7900 XTX and also the RX 7900 XT model (20gb), much more affordable if you're trying to dip your toes into localgen

▲badsectoracula an hour ago | parent [-]

Yeah though AFAIK it is discontinued now (or at least i can't find it in the local price aggregator). I think R9700 is a decent alternative, a bit slower (256bit bus vs 384bit bus) but has 32GB of RAM, still isn't too overpriced (at least compared to Nvidia alternatives) and has an opensource stack too (which is why i went with AMD in recent years).

▲verdverm 2 hours ago | parent | prev [-]

I'm in the same boat. I was the primary advocate for fixing the config security regressions in the OpenCode tool (separate from the console hack days after the fix). My impression is that they are improving quality across the board. I will not being updating to v2 because I do not jive with the new UX. I would recommend checking it out, it's the best open harness I've used so far, though I'm only interesed in TUIs.

I'm currently using the Pi harness as well, it's closer to OpenCode v1 with a few plugins. However, I have zero faith in their security or maturity after several communications with the CEO. Pi is also developed by an Israeli team, if that is something that matters to you, re: Mossad concerns or Palestinians rights.

I'm going to go back to my own custom harness and do a full rewrite, now that I have seen what 6+ other harnesses offer.

▲cvanelteren 2 hours ago | parent | next [-]

Last time I checked Pi is developed by Austrians?

▲verdverm an hour ago | parent [-]

We may both be partially right, the main dev I interacted with has Tel Aviv on his GitHub (also 'Hanna' being around the project, but apparently that is a surname not a first name, and a mistaken extrapolation on my part)

https://github.com/davidbrai

https://github.com/earendil-works/pi/issues/10895

The lack of professionalism or seriousness was mainly in a private email chain with Armin. He added a single comment to this issue after that chain which was the gist of a couple of his replies, less snarky. Either way, the interaction left me disappointed, not a founder who seems interested in listening or learning imo.

▲octoberfranklin 2 hours ago | parent | prev [-]

Security is not the harness' job, it's the sandbox's job. These are two different tools, you need both of them.

▲verdverm an hour ago | parent [-]

harness have a say in security too, sandboxes are one part of posture, but not the only one

You can decide for yourself: https://github.com/earendil-works/pi/issues/10895

Anthropic, OpenAi, and OpenCode all support this feature, we have non-developers to support and MDM is widely used.

For comparison, this excellent reply from Aiden on the OpenCode team: https://github.com/anomalyco/opencode/pull/54921#issuecommen...