feat(ai): add OpenCode Go and OpenCode Free backends to gptel

This commit is contained in:
kj
2026-08-05 19:17:07 -03:00
parent 6338c94415
commit ac4ef40e9a

View File

@@ -52,6 +52,38 @@
"minimax-m2.5:cloud" "minimax-m2.5:cloud"
"qwen3-coder-next:cloud"))) "qwen3-coder-next:cloud")))
;; Backend opencode-go: suscripción OpenCode Go vía endpoint OpenAI-compatible
(defun kj-opencode-go-key ()
"Return the OpenCode Go API key from opencode's auth file."
(let ((auth (with-temp-buffer
(insert-file-contents "~/.local/share/opencode/auth.json")
(json-parse-buffer :object-type 'alist))))
(alist-get 'key (alist-get 'opencode-go auth))))
(gptel-make-openai "OpenCode Go"
:host "opencode.ai"
:endpoint "/zen/go/v1/chat/completions"
:key #'kj-opencode-go-key
:stream t
:models '(minimax-m3 minimax-m2.7 minimax-m2.5
kimi-k3 kimi-k2.7-code kimi-k2.6 kimi-k2.5
glm-5.2 glm-5.1 glm-5
deepseek-v4-pro deepseek-v4-flash
qwen3.7-max qwen3.8-max qwen3.7-plus qwen3.6-plus qwen3.5-plus
mimo-v2-pro mimo-v2-omni mimo-v2.5-pro mimo-v2.5
hy3 hy3-preview
gpt-5.6-luna grok-4.5))
;; Modelos gratuitos de OpenCode Go, servidos vía el endpoint /zen/v1
(gptel-make-openai "OpenCode Free"
:host "opencode.ai"
:endpoint "/zen/v1/chat/completions"
:key #'kj-opencode-go-key
:stream t
:models '(big-pickle longcat-2.0-free deepseek-v4-flash-free mimo-v2.5-free
north-mini-code-free nemotron-3-ultra-free
ling-3.0-flash-free laguna-s-2.1-free))
(setq gptel-default-mode 'markdown-mode (setq gptel-default-mode 'markdown-mode
gptel-prompt-prefix-alist gptel-prompt-prefix-alist
'((markdown-mode . "# User\n\n") '((markdown-mode . "# User\n\n")