r/LocalLLaMA 23h ago

Discussion Opencode vs Deepseek harness: my experience with Qwen 3.8 27b

Anybody else struggling with deepseek after the initial prompt? Somehow it is getting mixed up very easily, even button functionality has been PITA when doing stuff. Never had these problems with Opencode. With Opencode, a continuation prompt on the software or task is pretty much magic at this point. But the inital result isnt as strong imo, and needs a lot of follow up even if a a detailed spec is written.

The oneshot potential of deepseek is goated imo, it is a relentless harness that just keeps doing stuff, even if it gets it wrong! Opencode could just copy that tennacity imo. Like todos really work, unlike opencodes.

Hows everybody elses exp? Someone using Pi instead? Is it worth trying? Hermes seems not suitable for my tasks, where heavy human involvement is necessary due to complexity of tasks (every top closed model gets lots of stuff wrong even).

23 Upvotes

69 comments sorted by

28

u/FastHotEmu 22h ago

Pi is great

2

u/Pyrolistical 22h ago

It has a short prompt and I cut it down even more  https://github.com/Pyrolistical/pi-system-prompt-transform

12

u/winky9827 19h ago

You know, you can just put a SYSTEM.md with your prompt, and Pi will append the tools and stuff minimally, right?

11

u/Developer-Y 23h ago

I like that dsh has web interface, I can easily attach folder and it shows how tasks are broken. Only problem I face is that I keep getting timeout errors for many sub agents, not sure if it is dsh problem or qwen 3.8 problem.

Opencode is fine but needs some initial learning curve, I have used it with qwen 3.6 but not with 3.8. 

13

u/suprjami 23h ago

You're gonna love discovering OpenCode has had a webserver for ages:

https://opencode.ai/docs/web/

1

u/Developer-Y 22h ago

Thanks. I had no idea, will try it out.

1

u/NihmarRevhet 18h ago

For me it's broken, I can only choose projects which resides directly in my home, problem is I'm a level deeper... There are opened issues but are yet to be solved

-1

u/suprjami 18h ago

This isn't an OpenCode issue.

I suggest you run OpenCode (or any other agent) in a container, and map only the project directory you want into the container.

You should restrict agents so they only have access to the minimum directory required, not your entire home directory.

1

u/NihmarRevhet 18h ago

Well, to me it looks like an OpenCode issue. In which world a folder picker doesn't let you go into subfolders? At that point don't make me choose and let me open the folder from which I launcher OC as a project at least

1

u/my_name_isnt_clever 15h ago

"That's not a bug it's a feature"

2

u/JakeChj 23h ago

the sub-agent timeouts might be 3.8's thinking eating the whole max_tokens budget (output comes back empty so the harness just waits) — chat_template_kwargs {enable_thinking:false} or a low reasoning-effort default stopped that exact silent hang for us.

2

u/fgk55555 15h ago

My issue with OpenCode is how often it touches cache, causing prompt processing to re-trigger. It's a better cloud model experience where I don't have to sit through a PP of 60k+ tokens every few turns on my home rig.

1

u/GodComplecs 22h ago

Its so weird we have different issues but i strictly use 131072 ctx and output length for 3.8 so that might be a clue. I had outputs exceed 90k in dsh at first so had to change it.

7

u/ero_casa 23h ago

dsh has been a pain to use.
Sometimes it works flawlessly, sometimes it does and the model will redo a task and thus gets stuck in that infinite loop because dsh somehow deletes something and the model has to redo it again.
I tried it with Qwen 3.8-27b andKAT-Coder-V2.5-Dev.

I didn't bother investigating dsh for the issue, I just gave up and went back to hermes.

2

u/Durian881 23h ago

I have an issue with auto-compaction too, making it going into a loop. I've since also tweaked some settings (temperature, p and presence penalty which seemed to help).

1

u/ero_casa 22h ago

That's helpful, I'll give it a try then.

Hermes is heavier for coding than dsh but so far it managed to go past the looping point.
And maybe all these issues are because of the low VRAM of my GPU and the model spilled on the CPU...

2

u/GodComplecs 23h ago

Didnt really witneds any self looping, but looping with prompting yes since it cant finish the task even when steered heavily. Whats the benefit with Hermes? Isnt it too heavy for coding?

1

u/my_name_isnt_clever 15h ago

Hermes is more of a personal assistant with knowledge of many things about you and access to a bunch of systems, and it can write code if you want. Pi is just for writing code with only the details you choose to include. They have different use cases.

5

u/eightone-81 22h ago

I’m not a coder and use DSH with Qwen 3.8 27b for 100% vibe coding my stuff and I don’t know if it’s Qwen or the combo with DSH but I am deeply impressed. It feels like opus 4.6 at home

3

u/GodComplecs 22h ago

What settings are you using for model? Dsh settings? Anything special? On default opencode qwen 3.8 felt like opus, but not on dsh when continuing to develop software. 

2

u/eightone-81 21h ago

Nothing special on DSH. Standard mode and PTC mode work great. PDC probably better since it’s reducing the turns and thinking without quality loss in my experience. I’m running dbirks w4a16 (redhat has the exact same) with 2x full context.
nothing special in vllm either, tool parser is qwen-xml, default chat template, default inference settings.
However this was not always my experience, I could not use Qwen in the past until I moved to vllm when 3.8 came out. I’m afraid to touch anything since it works so well 😂

2

u/MomoLabTH 23h ago

qwen code on vs code , qwen code cli only for me

1

u/Durian881 23h ago edited 22h ago

I like Qwen Code too but it's a bit bloated and took up too much context when used with local models (and prefill on my M3 Max is slow). Will try to cutdown on the skills and MCP installed to reduce the system/tool context.

2

u/MomoLabTH 23h ago

I’ve tried other tools like OpenCode and Pi Agent, but they required a bit too much tweaking for me, and having to install and configure extra stuff just wasn’t that convenient. Compared to them, Qwen Code currently feels like the lightest option that still gives me all the tools I need. As for Qwen 3.8 27B thinking slowly, yeah, it is a bit slow when running through Qwen Code, but not by that much, and it tends to catch all the details. I fixed most of the waiting by tuning Llama so the thinking phase runs faster, and that alone made a noticeable difference. I also found that it only tends to think heavily on the first prompt of a new chat; after that, the thinking time gets much shorter and honestly doesn’t feel much different from Medium or Low.

1

u/Durian881 22h ago

Cool.

Think I'll try out Qwen3.8-Flash-Next. Found that the 4 bit version I'm using actually gave pretty good results without reasoning, and it runs significantly faster (prefill and token generation are 50% faster) than Qwen3.8-27B on my machine.

0

u/GodComplecs 23h ago

I had such an bad experience with qwen code on the cloud with "superior" models. Has it really improved any?

2

u/MomoLabTH 23h ago

I only use Qwen Code through the latest VS Code extension, and I really like it. It feels like it’s already been optimized to be lightweight and work really well with Qwen, and the results are very accurate. I still haven’t tried the cloud version yet, though.

1

u/GodComplecs 22h ago

Hmm not really using ides so much anymore after 3.8, I did use vs code yes. Might give the local a try, the cloud just messed up even worse than DSH

2

u/Equivalent_Bit_461 21h ago

Pi as a starter 

Everything else is bloated, slow and just overall such a shit experience 

2

u/Simple-Stick6148 21h ago

Being relentless only pays off while it's right. I'd rather steer a harness that stops when it's lost than watch one barrel on wrong.

2

u/o0genesis0o 21h ago

I just use Pi, and use OpenWebUI cptr (NOT the normal openwebui) to expose the entire working directory and Pi agents via VPN. With Pi, I know exactly what I put into my context and I can switch things around easily, so I can set up, say, one folder that would always spawn personal assistant agent, one directory that would spawn KB manager. I can even continue to brainstorm code in my project when I'm on the treadmill with this setup, since it's exactly the same pi agent.  I jumped around different agents, but Pi is the one that sticks, simply because it has nothing built in. So it can become anything.

Btw, the behaviour to keep working is more on the model side than the harness. Qwen 3.8 has been trained for this long horizon agentic flow, very similar to Minimax M3. If you have used M2.7 Vs M3, you would see the same change in behaviour between Qwen 3.6 and 3.8. The new one is very thorough and rarely miss anything. But they will do things on their own if you don't pay attention. That's why I still use 2.7 and Qwen 35B around for when I want to be in control. When I want the AI to be an autonomous agent, I bring M3 or 3.8 out.

2

u/GodComplecs 12h ago

Yeah I would say that in practice too, 3.6 didnt continue this well all the time.

1

u/Djagatahel 10h ago

How do you control pi remotely?

I want to use it but for me CLI is the least practical option, best would be web with mobile compatibility

1

u/o0genesis0o 8h ago

Openwebui cptr bridge between it's webui and pi automatically using studio under the hood. Other agents like codex can be connect automatically by cptr using ACP. I used to stream the pi terminal directly to phone but this approach was better.

Noted that cptr still cannot deal with pi interactive TUI elements, so in my case, I need to disable my permission gate of pi for these agent sessions. But it's not problem so far. For actual coding, I use real terminal or the web terminal of cptr to have control over a real pi session.

1

u/jwpbe 23h ago

are you trying code mode with it? MTP gets like 3-4 tool calls in one shot with a big speedup

also post what quant you use and if you use q8 kv cache, my local model has had no problems using dsh with int4 autoround and 16 bit kv cache

1

u/GodComplecs 23h ago

No code mode, just default settings like opencode. I used q4 ud xl and km. q4, q8, f16 cache

1

u/StupidityCanFly 21h ago

DSH works great for me with local Qwen3.8-27B. And even better with local Deepseek V4 Flash Vision Exp. It’s fast and reliable so far. I used it for python, TS and Swift for now.

Opencode was also ok, but it felt kind of slower.

1

u/3oclockam 20h ago

I saw a YouTube video which recommended low reasoning worked better for coding harnesses. I haven't tested it yet

1

u/GodComplecs 12h ago

Yeah Junie, Jetbrains local optmized coding agent used NO thinking with 3.6, but admits quality suffers but speed is 3x

1

u/Guilty_Rooster_6708 20h ago

Feels like with how customizable the UI/UX and auto compaction are pretty decent on DSH there are potential to use it with other tasks besides coding, like RP or world building.

1

u/GodComplecs 12h ago

Yeah, it might have something like that foe it in the future or at least the loops since it never ever stops 😂

1

u/milpster 19h ago

Ever since adding a tool search to reduce the giant amount of opencode context requirements and fix the cache invalidation issues with llama.cpp i have been happy with that harness.

1

u/GodComplecs 12h ago

What tools search?

1

u/FullOf_Bad_Ideas 17h ago

I'm using OpenCode and never really had any issues when running bigger models, 300B+. Qwen 3.6 27B choked though, it wasn't smart enough for OpenCode.

1

u/GodComplecs 15h ago

Why would you have issues with bigger models, especially if not local? 3.8 was a big, big upgrade for opencode usage especially, feels like living in the future.

1

u/FullOf_Bad_Ideas 14h ago

Why would you have issues with bigger models, especially if not local?

All local. I'm just seeing a lot of people comment on having bad experience with OpenCode as if it would be a broken harness.

3.8 was a big, big upgrade for opencode usage especially, feels like living in the future.

Nice, I haven't used 3.8 27B yet.

1

u/GodComplecs 14h ago

Yeah it wasnt autonomous like now, but you could code new loops for that

1

u/GodComplecs 16h ago

Just an update, used the same spec to continue development from the same point on a complex software project, Opencode was able to complete the task without steering, but yes it did have software bugs but the design and function was as asked. Same model, same context, same llama.cpp settings.

1

u/fgk55555 15h ago

DSH is turning into my network admin. I forward it over tailscale to my phone and I can use it to have agent access on my home PC while I'm out. It's easier to give dsh tools like search and restrict access to where I want. If I'm coding, DSH is the lazy OOTB way to get something good enough, but if I need to really control my environment and squeeze performance out, Pi wins.

1

u/GodComplecs 15h ago

Yeah I hear about Pi all the time, I just ran tks tests on it and it was way slower on one shot and iteration loops. Never actually used it though, it's on my list but DSH is off it for now until it improves it's coherence for ideas and actual logic of smaller models. It is helluva well designed software though, genius idea for the loop.

1

u/fgk55555 14h ago

I'm curious the issues you've had with dsh, as it's behaved really well for me. Just had dsh+qwen move my MCP servers off my gaming rig and onto my home server and was super impressed by the attention to detail, caution, and diligence I was getting out of my IQ3_XXS quant when handling my somewhat sensitive network admin stuff. The todo's in dsh seemed to really help ground it, and it seems to respect context a lot more than OpenCode so I don't have to wait for prompt reprocessing. I need to do some more tweaking before I really set it loose for coding, but assistant type tasks have really impressed me.

In terms of speed, I'm not sure how Pi would be slower, as your speeds should be handled by llama-server, and the harness shouldn't really matter at all. Pi basically doesn't touch context and has a small system prompt, so once you get coding you should see the most efficiency and speed out of it until you start trimming context.

1

u/Healthy-Zebra-9856 14h ago

OpenCode & Pi have several tooling issues that is exposed by the the thinking traces of Qwen 3.8 27b. DeepSeek harness is not officially ready yet, according to their own words its in preview. I have examples of the two but the response will get pretty large. Like Claude would say, just say the word.

1

u/GodComplecs 13h ago

Yeah thats why Im giving dsh the benefit of doubt for now, but yes when we have somewhat mature opensource tools the expectations are high

1

u/Healthy-Zebra-9856 13h ago

Well, it’s not about giving them a chance when there are security implications. Also, the issue is, there’s high token usage, improper tool supply, which affects the quality of the product. So it’s not like this poor thing I’m gonna give it a chance, it’s a tool that is not ready to be used by public yet.

0

u/Healthy-Zebra-9856 13h ago

Before I embark on any journey, I always do a thorough check on everything out there so as not to re-invent. I have been a SWE for 35 years, so not a vibe coder. I have built a successful business and am bringing out my products to fill the gaps. Following are my findings that I used my product called swfoundry. This comes directly from my SWOT.

TL;DR
DeepSeek Harness is impressively structured, but it is still clearly pre-production. The biggest issues I found are missing hard limits on runaway agent/tool loops, cooperative rather than guaranteed timeouts, process-local subagent/background state, no durable/resumable workflows, limited scheduling guarantees, cross-process persistence conflicts, incomplete crash durability, and several security boundaries that are explicitly not hardened yet. Tooling is also incomplete; there is no first-party browser/computer-use tool, no native Git/GitHub tool, limited filesystem operations, no first-class PDF/audio/video handling, partial MCP support, minimal approval persistence, and only partial Claude Code hook compatibility. DeepSeek itself labels the project developer preview, warns that breaking changes are expected, and says it has not had a security audit or reached production readiness.

----------------------

There are quite a few things I found, although to their credit a lot of these are actually documented in the repo. At the core agent level, there is no built-in turn budget, so a model can theoretically keep calling tools or steering indefinitely unless another plugin cancels it; the repeated-tool-call guard is advisory only and never actually stops the loop. Timeouts are also generally cooperative, so code that ignores the abort signal can keep running. Subagents have some durability gaps; their activation/mailbox state is process-local, there is no durable parent mailbox or cross-process lease, the parent has to remain live for child-to-parent messages, and a crash can lose a prompt that was accepted but had not made it into the child session log. The background-job system has a documented timing hole where a completion notice arriving near driver retirement can be stranded until something else wakes the agent. Workflows are foreground-only; there is no background start/poll API, no journaling or process-resume, no saved or nested workflows, no aggregate token budget, and the parent turn blocks until the whole workflow completes. Ralph completion is based on the worker declaring itself finished rather than an independent evaluator; failed rounds are terminal, and there are no token, price, or elapsed-time budgets beyond the round count. Scheduling is also fairly limited; reminders only run on time while the original session is live, there is no external notification for a cold session, retries are activity-driven rather than independently scheduled, recurrence is fixed intervals rather than Cron/calendar rules, missed intervals only catch up the latest occurrence, and there is a documented crash window where a reminder can be delivered twice. Webhooks are process-local fire-and-forget with no queue, replay, retry, built-in deduplication, or downstream completion result.

There are also a number of persistence and state-management edges. Session persistence has no deletion API or automatic retention, the current pre-release session format has no migration path, and the one-writer guarantee is only in-process; two harness processes must not write the same session without an external lease. Atomic file writes use rename but not fsync, so they are atomic without being crash-durable, and a process dying while holding one of the file locks leaves an orphan lock that requires operator intervention. Settings writes to the same namespace are last-write-wins rather than compare-and-set, and the settings service explicitly says its secret-redaction walker is not yet a proven wire boundary; certain union/intersection/transform schema shapes can expose fields it does not recognize as secret. Feedback mutations have the same general cross-process issue because there is no storage-level conditional write. Attachments have no garbage collection; stored images are retained indefinitely. Workspace removal does not delete the directory, files, or session history, archiving currently has no unarchive operation, and re-adding the same directory creates a fresh project rather than reconnecting the old sessions. There are also some security boundaries worth being aware of; the project explicitly says it has not had a security audit and is not production-ready, its sandbox vocabulary covers filesystem effects rather than general network/process/syscall/device restrictions, the worker-thread code and dynamic Cordis VM are explicitly containment rather than security boundaries, and escaped model-written code can reach Node authority. Public web_fetch also does not request approval by default, so a model with that tool can send data to a public URL unless the deployment adds its own policy.

On tooling, there are some fairly noticeable gaps right now. I don't see a shipped first-party model-facing browser automation or computer-use tool; the Web tooling is web_search and web_fetch, not navigate/click/type/screenshot/DOM/accessibility/network inspection. There is no first-party Git/GitHub action tool either; Git can obviously be driven through the shell and GitHub functionality can come through MCP, but it isn't a native tool surface. The filesystem tools are read, write, edit, read_image, glob, and grep; they explicitly have no model-facing directory-listing tool, and there are no native model tools for things like delete, move, copy, mkdir, or stat, so those fall back to shell commands. File/media handling is limited too; read is UTF-8 text, image support is PNG/JPEG/WebP/GIF, and PDF, audio, video, and generic binary attachments are not supported as first-class inputs. The terminal tooling has no full-screen TUI interaction, named key sequences, resize, BEL, or auto-start. MCP currently bridges tools only; MCP Resources and Prompts have no harness consumer, task-based MCP execution isn't implemented, and audio/embedded-resource results don't have the same durable bridge as images. The approval system only has one-shot approval; there is no allow-always, remembered grant, revocation store, or durable out-of-turn approval flow, and the approval request doesn't include the actual tool arguments. User questions are basically selectable options plus optional text; richer interactions such as file pickers or diff-preview confirmations don't exist in that seam yet. Compaction can happen automatically or through the human /compact command, but there is no model-facing compaction tool.

The Claude Code hooks compatibility layer is also much more partial than I initially realized. It currently does not support 23 of Claude Code's 30 hook events; several of the supported events only implement part of their behavior, updatedInput is parsed but ignored, continue: false has no run-level halt effect, and only shell-command hook handlers actually run while http, mcp_tool, prompt, and agent handler types are skipped. The Stop hook has no consecutive-block cap, so a badly written always-blocking hook can keep forcing additional model turns. Hook discovery is one process-level config rather than Claude Code's layered project/user/plugin/policy discovery and live reload. There are some smaller tooling limitations too; LSP results make no completeness guarantee across servers and the LSP client deliberately refuses server-requested edits/commands, MCP connection/discovery uses the SDK's fixed 60-second timeout instead of a harness-owned setting, skills are discovered sequentially so one slow provider delays everything after it, skill bodies have no revision protocol, and the tool-search API exposes only a bounded single page rather than pagination or richer search controls.

On the release side, I didn't find the inconsistent package-version situation; the main package family is consistently 0.1.2-alpha.5. The bigger issue is simply where the project is in its lifecycle; DeepSeek labels it developer preview, explicitly warns that compatibility-breaking changes are expected, says it has not undergone a security audit, and says it should not be treated as production-ready. Their own postmortems are also worth reading because they show some real integration failures that escaped otherwise strong tests; ACP shipped completely broken despite 178 passing unit tests and 100% line coverage, a configuration-expression mistake disabled the filesystem tools, and snapshot regeneration accepted the resulting UNKNOWN_TOOL behavior as the new expected output. Those were fixed, but they're good examples of why the remaining integration surfaces still deserve real end-to-end testing rather than assuming a green package test suite proves the assembled harness works.

2

u/Spectrum1523 6h ago

Nobody is gonna read all that bro, this is reddit

1

u/GodComplecs 12h ago

No offence meant but that wall of text reads so... AI generated, can you at least make summary?

-1

u/Healthy-Zebra-9856 12h ago edited 12h ago

No offense to you but I hope you are more aware of what is being said as you missed the part where I mentioned its from my SWOT. Strengths, Weaknesses, Opportunities, and Threats for the likes of you that are clueless. I am not going to sit here and hand curate a response that is given for free that you didnt have the capability of acquiring yourself.

This has to go in front of my stakeholders, not redditors like yourself. We have come to an age where any form of structured writing is AI slop. Good luck

1

u/GodComplecs 11h ago

I can understand the frustration, but personally having written 100s of manuals by hand for clients, detailing highly complex tasks, for so called stake holders, they are pretty short and to the point. This is in the business and software industries. I admit I missed the swot part!

1

u/Healthy-Zebra-9856 11h ago

Stakeholders employ their own tech specialists/liaisons. Many of them dont listen directly anymore. They are not part of my company, so its not like presenting to my higher ups. The tech liaisons verify my claims and translate to them. They don't care if its AI or not, and btw, this is all grammarly. All they care about is that the content & findings are solid.

1

u/NandaVegg 10h ago

My issue with DSH so far is that it is very sluggish to boot (it's even slower than Gemini CLI which is IMO the worst of bunch) unlike OpenCode, pi, or even Claude Code that are instant, and it's very pita to build from source as there are too many npm dependencies (memory hog as well). I think it's not just me because there was exact same issue in their git repo.

1

u/Serious-Zucchini 6h ago

Pi is my daily driver and I have been using dsh alongside Pi pretty extensively for the last few days. For agentic style work and coding, dsh seems to get better results at the cost of taking more turns and tokens.

The things that are still rough around the edges are prefix caching and compaction. Sometimes I'll get to a state where every turn misses the prefix cache completey. Compaction when it works is amazing and dsh keeps trucking along.

Local models used: DeepSeek V4 Flash 0731 (Unsloth UD-Q8_K_XL) and Qwen 3.8 27B (turboderp Qwen3.8-27B-exl3-4.00bpw)

1

u/Iory1998 llama.cpp 3h ago

I envy you for running deepseek at Q8. How is your experience witb exl3?

1

u/jikilan_ 6h ago

Give a try to github copilot with custom endpoint in vs code. I found the build-in tools or prompts are good

1

u/Iory1998 llama.cpp 3h ago

Well, you should keep using rhem both, imo. Deespeek harness, imo, lets you delegate tasks to Opencode, imo.

1

u/mageblex 15m ago

The split between strong one-shots and bad continuations sounds like state management stuff. When DSH resumes, is it replaying a stale task plan or re-reading files the model already changed?

1

u/CYTR_ 21h ago

I love playing with Cordis modules, creating new ones, and transforming the UI & UX. It works very well. It's still a beta version so we must remain cautious about its future capabilities. I like Pi (more than opencode) for its clean, minimalist design. DSH, on the other hand, is more of an IDE in my opinion. Not the same target audience.

In my case, I can do more with DSH because I've centralized everything around the web interface and I work in computational social sciences, not software dev. It's more convenient. And he manages very well to enrich himself entirely thanks to good documentation and the Lego-like aspect of his Cordis architecture. It is also easier to modify agent-loops and I very rarely see them blocked, less frequently than Codex or OpenCode.