π Quick Start
Install the plugin globally using the omp plugin install command. Log in via /login makora and use /model makora to switch to Makora models.
# Install the plugin globally
omp plugin install omp-makora-provider
# Prompt for and validate API key
omp /login makora
# Select a Makora model
omp /model makoraπ§ Configuration
The provider dynamically merges model discovery metadata from the Makora API with hardcoded overrides and custom endpoints. Provide API credentials explicitly via the MAKORA_OPTIMIZE_TOKEN environment variable if bypassing the OMP login interface.
| File | Purpose |
|---|---|
models.json | Auto-generated Makora API models list; NEVER edit manually. |
patch.json | Overrides for limits, compat, and reasoning toggles. |
custom-models.json | Custom models utilizing per-slug endpoint overrides (baseUrl). |
π¦ Dependencies & Ecosystem
All models are hosted on OpenAI-compatible vLLM endpoints via inference.makora.com.
- DeepSeek V4 (Pro/Flash): Reasoning enabled via payload rewrite; returns
reasoningorreasoning_content. Max 32768 tokens. - GLM 5.1 & 5.2 FP8: Native tool calling, but 5.1 requires client-side repair due to vLLM parser failures. Max 16384 tokens.
- Kimi K2.6 & K2.7 Code: Vision capable (5 images max per request).
- Qwen 3.6 (27B/35B):
enable_thinkingtriggered via payload rewrite. Tool calling repaired client-side. - MiniMax M3 MXFP8: Vision capable (5 images max). Returns
reasoning_content.
π‘ Best Practices & Patterns
- Output Safe Caps: Always define
maxTokensinpatch.json. Makora API discovery does not emit output token limits automatically. - Payload Rewriting (
before_provider_request): Map API-standard reasoning flags (e.g., DeepSeekβsthinking: {type}) into vLLM-nativechat_template_kwargsdynamically before request dispatch. - Context Stripping: Strip
tool_callsarrays from past assistant messages and reconstruct them into native XML before forwarding to GLM 5.1. This prevents the ZAI vLLM server from crashing with a500: 'str object' has no attribute 'items'exception.
π¨ Gotchas / Anti-patterns
- Developer Role Ban: The
developersystem prompt role is entirely unsupported by Makoraβs vLLM chat templates. It will be silently dropped; you MUST setcompat.supportsDeveloperRole: false. - Broken Streaming Tool Parsers: vLLM fails to parse tool calls correctly for Kimi K2.6, Qwen 3.6, and GLM 5.1 in streaming mode. The plugin forces
tool_choice: "none"andskip_special_tokens: false, manually capturing raw<|tool_call_begin|>or<function=...>XML tags via themessage_endhook. - DeepSeek V4 Flash Silent Nulls: Sending
include_reasoning: truealone returnsreasoning: null. You MUST pair it withchat_template_kwargs: { thinking: true }. - CoT Leaks: Disabling reasoning on GLM 5.1 may still leak Chain-of-Thought output into the standard
contentblock terminated by a```marker.
π Research / References
- OMP Makora Provider NPM
- Makora Inference API
- vLLM Issue #31319 (Chain of thought leakage)