A drop-in replacement chat template for Qwen/Qwen3.6-27B tuned for open-source agentic coding harnesses. A developer has released a drop-in replacement chat template for Qwen/Qwen3.6-27B that fixes six critical bugs affecting open-source agentic coding harnesses. The fork addresses issues including multi-turn tool argument collapse caused by the upstream template's `preserve_thinking=false` default, rejection of the `developer` message role used by modern coding tools, and crashes from tool call arguments arriving as JSON strings. The template also patches the upstream's failure to recognize malformed `` tags and wasteful token usage from passing OpenAI envelope tool definitions verbatim. | { --------------------------------------------------------------------- | | | custom pub chat template qwen36.jinja | | | ===================================== | | | A public, harness-friendly fork of Qwen's Qwen3.6-27B chat template, | | | tuned for open-source agentic coding harnesses like: | | | - anomalyco/opencode https://github.com/anomalyco/opencode | | | - earendil-works/pi https://github.com/earendil-works/pi | | | - openclaw, OpenHarness, similar Claude-Code-style harnesses | | | WHY THIS FORK EXISTS | | | -------------------- | | | The upstream chat template at Qwen/Qwen3.6-27B is correct for chat | | | use, but six real edge cases bite agentic coding harnesses pointing | | | at a self-hosted SGLang / vLLM / llama.cpp endpoint serving Qwen3.6: | | | 1. Multi-turn tool argument collapse. After 2-3 turns of calling the | | | same tool, the model emits arguments: {} despite its prior | | | reasoning correctly identifying the parameters. Root cause: the | | | upstream template defaults preserve thinking=false, which means | | | prior-turn