Secciones de la base de conocimientos ▾
Navegación
▸ Empiece aquí Por rolesCategorías
- Cursor + Gonka AI — LLM barato para codificación
- Claude Code + Gonka AI — LLM para terminal
- OpenClaw + Gonka AI — Agentes de IA accesibles
- OpenCode: tu propio modelo en la terminal
- Continue.dev + Gonka AI — AI para VS Code/JetBrains
- Cline + Gonka AI — Agente de IA en VS Code
- Aider + Gonka AI — Programación en pareja con IA
- LangChain + Gonka AI — Aplicaciones de IA por centavos
- n8n + Gonka AI — Automatización con IA barata
- Open WebUI + Gonka AI — Su propio ChatGPT
- LibreChat + Gonka AI — ChatGPT de código abierto
- Hermes Agent + DeepSeek en la red Gonka: agente autónomo por centavos
- Kilo Code + Gonka AI — agente de IA en VS Code
- Roo Code + Gonka AI — agente de IA autónomo en VS Code
- LlamaIndex + Gonka AI — Aplicaciones RAG por centavos
- PydanticAI + Gonka — Agentes de IA tipados por centavos
- Vercel AI SDK + Gonka AI — Aplicaciones de IA en TypeScript por centavos
- TanStack AI + Gonka — Aplicaciones de IA en TypeScript por centavos
- API inicio rápido — curl, Python, TypeScript
- JoinGonka Gateway — Resumen completo
- Management Keys — SaaS en Gonka
- La API de IA más barata: comparación de proveedores 2026
- Cómo comprar tokens de AI y una clave API: 3 métodos en 2026
- Límite de solicitudes de Cursor Pro alcanzado — análisis y una alternativa barata
- Claude Code más barato — análisis de factura y cambio de servicio
- Cline quema dinero — por qué el agente gasta tanto
- OpenClaw sale caro: por qué el agente quema tokens y cómo ahorrar
- OpenRouter: alternativa barata — comparativa con JoinGonka Gateway
- El mejor modelo de IA para codificación en 2026: comparativa y precios
- Alternativa barata a GitHub Copilot sin límites
- Alternativa barata a Windsurf sin créditos ni límites
- La API más barata para agentes de IA en 2026
- ZCode: inferencia GLM barata en lugar de GLM Coding Plan
- JetBrains IDE + JoinGonka Gateway — tu propio endpoint en lugar de créditos
- GitHub Copilot BYOK: tus modelos en lugar de la cuota
- Zed + JoinGonka Gateway — inferencia económica en el editor
- Pi + JoinGonka Gateway — agente terminal con inferencia económica
- Codex CLI: su propia clave en lugar de suscripción
- DeepSeek Harness: tu propio proveedor a través de JoinGonka Gateway
- MiniMax Code: agente MiniMax con tu propia clave a través de Gonka
- Warp + JoinGonka Gateway: agente de terminal en tu propio endpoint
- Trae + JoinGonka Gateway — modelos de la red Gonka en AI-IDE
- Cherry Studio + JoinGonka Gateway — cliente de IA de escritorio
- omp (Oh My Pi) + JoinGonka Gateway: agente con roles de modelos
- OpenHands + JoinGonka Gateway: agente en su propio endpoint
- Qwen Code tras el cierre de qwen-oauth: trabajando a través de JoinGonka Gateway
- Goose + JoinGonka Gateway: su propio proveedor y clave en keyring
- Crush + JoinGonka Gateway: agente Charm en modelos de la red Gonka
- Zoo Code + JoinGonka Gateway: migración de Roo Code a modelos Gonka
- Kimi Code CLI: agente de Moonshot AI con su propia clave a través de Gonka
- Factory Droid + JoinGonka Gateway: BYOK en modelos de la red Gonka
- MiMo Code + JoinGonka Gateway: agente Xiaomi en modelos de red Gonka
Herramientas
omp (Oh My Pi) + JoinGonka Gateway: agente con roles de modelos
omp (Oh My Pi) es un agente de codificación de terminal, un fork del minimalista Pi, al que se le ha añadido todo lo necesario para un trabajo intenso: servidores de lenguaje (LSP) en cada entrada de archivo, gestión de un depurador real, subagentes en copias de trabajo aisladas, celdas permanentes de Python y JavaScript. El núcleo está escrito en Rust, y el mismo binario funciona en macOS, Linux y Windows.
Los proveedores en omp se describen de forma declarativa: cualquier endpoint que hable OpenAI Chat Completions se añade con una decena de líneas en ~/.omp/agent/models.yml. JoinGonka Gateway es exactamente así, por lo que la conexión se reduce a un comando de instalador o a dos archivos YAML cortos. Después de esto, el agente funciona con los modelos de la red descentralizada Gonka — DeepSeek V4 Flash, GLM-5.3 Flash y MiniMax M2.7 — a un precio único: $0.0069 por millón de tokens de entrada.
La principal diferencia de omp con respecto a su predecesor son los roles de modelos: las acciones comunes, el análisis profundo, el modo de planificación y las tareas de fondo se pueden delegar a diferentes modelos y protegerse con una cadena de respaldo. A continuación, se detalla el camino rápido, la configuración manual, la tabla de «qué modelo para qué rol» y el análisis de errores. Los comandos y mensajes han sido verificados mediante una ejecución real de omp 18.2.8 a través del gateway el 21 de septiembre de 2026. Tras confirmar la dirección, se acreditarán 3M de tokens gratuitos en la cuenta, suficientes para repetir todo esto por su cuenta.
Inicio rápido: instalación y un solo comando
Paso 1: instalar omp. Los métodos oficiales del README del proyecto:
# macOS and Linux
curl -fsSL https://omp.sh/install | sh
# Homebrew
brew install can1357/tap/omp
# via Bun (requires Bun 1.3.14 or newer)
bun install -g @oh-my-pi/pi-coding-agent
# Windows (PowerShell)
irm https://omp.sh/install.ps1 | iexPaso 2: obtener una clave. Regístrate en gate.joingonka.ai/register, confirma tu dirección y crea una clave con el prefijo jg- en la sección «Claves API». Una sola clave y un solo saldo sirven para todos los modelos de la red.
Paso 3: ejecutar el instalador.
npx @joingonka/setup --tool ompEl instalador te pedirá la clave — no se pasa en los argumentos de la línea de comandos para que no quede en el historial del shell — y hará cuatro cosas:
- registrará el proveedor
joingonkaen~/.omp/agent/models.yml: la dirección del gateway, el protocoloopenai-completions, la clave como literal y tres modelos de la red con sus ventanas de contexto y límites de respuesta reales; el archivo recibirá permisos600; - establecerá el modelo por defecto —
modelRoles.defaulten~/.omp/agent/config.yml— en DeepSeek V4 Flash, pero solo si el rol está vacío o apunta a un modelo que ya no está en la red: no se apropia de tu elección, sino que te indica cómo cambiarla; - antes de escribir, hará una copia de seguridad del archivo anterior, y dejará el resto de proveedores, roles y comentarios tal como estaban;
- al final enviará una petición real al gateway y te dirá claramente si la clave, la dirección y el modelo han sido aceptados.
Otro modelo por defecto se define con el flag --model con la abreviatura deepseek, glm o minimax — el modelo indicado explícitamente siempre se escribe. Para dotfiles y servidores hay un modo sin preguntas, en el que la clave se toma de una variable de entorno:
JOINGONKA_API_KEY=jg-your-key npx @joingonka/setup --tool omp --model glm --non-interactiveEl instalador tiene en cuenta por sí mismo las ubicaciones no estándar de los configs: un perfil con nombre (OMP_PROFILE) y un directorio de agente movido (PI_CODING_AGENT_DIR). El heredado models.json lo migra a models.yml igual que lo haría el propio omp — los proveedores anteriores no desaparecerán. Y si junto a él hay un settings.json antiguo sin config.yml, el instalador no creará config.yml para que omp no se salte su propia migración de ajustes: te pedirá que ejecutes omp una vez y repitas el comando.
Configuración manual: dos archivos YAML
Todo lo que hace el instalador se puede escribir a mano. Son dos archivos, y cada uno tiene su función: models.yml describe los proveedores y los modelos, config.yml guarda los ajustes, incluido qué modelo ocupa cada rol.
# ~/.omp/agent/models.yml
providers:
joingonka:
baseUrl: https://gate.joingonka.ai/v1
api: openai-completions
apiKey: jg-your-key
models:
- id: deepseek-ai/DeepSeek-V4-Flash-0731
name: DeepSeek V4 Flash (Gonka)
input: [text]
contextWindow: 380000
maxTokens: 32768
reasoning: true
- id: zai-org/GLM-5.3-Flash
name: GLM-5.3 Flash (Gonka)
input: [text]
contextWindow: 390000
maxTokens: 8192
reasoning: true
- id: MiniMaxAI/MiniMax-M2.7
name: MiniMax M2.7 (Gonka)
input: [text]
contextWindow: 200000
maxTokens: 8192# ~/.omp/agent/config.yml
modelRoles:
default: joingonka/deepseek-ai/DeepSeek-V4-Flash-0731| Campo | Valor | Lo importante |
|---|---|---|
baseUrl | https://gate.joingonka.ai/v1 | Obligatorio con /v1 al final: la ruta /chat/completions la añade omp por su cuenta |
api | openai-completions | Transporte Chat Completions: con él se ha verificado toda esta guía |
apiKey | tu clave jg-… | omp primero busca una variable de entorno con ese nombre y, si no la encuentra, toma la cadena como la clave misma. Un valor que empieza por ! es un comando cuya salida se convertirá en la clave |
contextWindow, maxTokens | según la lista de modelos de arriba | Sin ellos omp sustituye 128000 y 16384, valores que no corresponden a los modelos de la red. A partir de la ventana de contexto, el agente calcula cuándo toca comprimir el historial |
input | [text] | Los modelos de la red aceptan texto |
reasoning | true | Marca de modelo razonador: el instalador la pone en DeepSeek V4 Flash y GLM-5.3 Flash, mientras que la entrada de MiniMax M2.7 prescinde de ella |
La clave como literal es la opción más problemática: omp arranca desde cualquier entorno, y basta con proteger el archivo con chmod 600 ~/.omp/agent/models.yml. Si prefieres mantener la clave fuera del archivo, escribe en apiKey el nombre de una variable, por ejemplo JOINGONKA_API_KEY, y expórtala en la shell desde la que lanzas omp: ese es precisamente el orden de resolución de la clave que describe la documentación del proyecto.
El campo opcional cost (precio por millón de tokens) solo hace falta para estimar el coste de la sesión en la interfaz de omp. El instalador escribe ahí el precio real de la pasarela en el momento de la instalación; en una configuración manual puedes omitir el campo: esa estimación no tiene nada que ver con tu factura, el consumo real lo muestra tu panel.
El selector de modelo se escribe como provider/model-id. El nombre del proveedor se separa por la primera barra, así que los identificadores de la red que llevan su propia barra se escriben tal cual: joingonka/deepseek-ai/DeepSeek-V4-Flash-0731. En lugar de editar config.yml, puedes asignar el rol desde la interfaz, con el comando /model dentro de la sesión o en el asistente omp setup.
Roles de los modelos: qué modelo para qué trabajo
En omp, no se selecciona un solo modelo para todo, sino que se asignan por roles; esta es la principal palanca de configuración. Los roles integrados para el diálogo son: default, smol, slow, plan, commit, task, tiny, memory, advisor y vision. No es necesario asignarlos todos: los smol y slow no definidos toman primero el modelo del rol default, los subagentes sin el rol task funcionan con el modelo de la sesión actual, y commit y tiny siguen a smol. Una configuración de una sola línea con default es totalmente funcional.
Dividir los roles entre los modelos de la red no se hace por ahorro —el precio de DeepSeek V4 Flash, GLM-5.3 Flash y MiniMax M2.7 es el mismo—, sino por comportamiento y capacidad: un modelo de razonamiento planifica mejor, un modelo de respuesta larga escribe mejor, y no hay razón para poner tareas triviales en segundo plano en la misma cola que la tarea principal.
| Rol | Qué se ejecuta en él | Modelo de red | Por qué |
|---|---|---|---|
default | movimientos normales del agente: lectura, ediciones, comandos | DeepSeek V4 Flash | Contexto de 380K y límite de respuesta de 32768: margen para sesiones largas con herramientas; es el que establece el instalador |
smol, task, commit | subtareas rápidas, subagentes, análisis de cambios para commits | no definir: por herencia llegarán a DeepSeek V4 Flash | Todos invocan herramientas, y un modelo «barato» separado no ahorra nada dado que el precio es único |
slow | análisis profundo: lógica compleja, búsqueda de causas | GLM-5.3 Flash | Razona antes de responder; límite de respuesta de 8192, y parte de él se destina al razonamiento: para textos largos, vuelva a DeepSeek V4 Flash |
plan | modo de planificación | GLM-5.3 Flash | Un plan es un texto corto donde el hilo de pensamiento es más importante que el volumen |
tiny | títulos de sesión y clasificación de servicio: consultas cortas sin herramientas | MiniMax M2.7 | El modelo tiene la mayor capacidad de la red y el fondo no compite por espacios con la tarea principal |
advisor | segundo modelo que lee cada movimiento del principal e inserta notas | GLM-5.3 Flash, opcional | Es útil que el asesor sea diferente al ejecutor; se activa con el comando /advisor on |
vision | tareas con imágenes | no definir | Los modelos de red son de texto: deje el rol al proveedor con el modelo de vision |
# ~/.omp/agent/config.yml
modelRoles:
default: joingonka/deepseek-ai/DeepSeek-V4-Flash-0731
slow: joingonka/zai-org/GLM-5.3-Flash
plan: joingonka/zai-org/GLM-5.3-Flash
tiny: joingonka/MiniMaxAI/MiniMax-M2.7
retry:
fallbackChains:
default:
- joingonka/zai-org/GLM-5.3-FlashEl bloque retry.fallbackChains es un seguro para horas pico: cuando el modelo principal responde persistentemente con 429, omp transfiere el resto del movimiento a la siguiente entrada de la cadena y, tras una pausa, regresa al principal. La clave de la cadena puede ser un rol, un modelo específico o el proveedor completo (joingonka/*).
Para una ejecución única, el rol se redefine con una bandera: omp --model slow inicia una sesión con el modelo del rol slow, mientras que --smol, --slow y --plan sustituyen el modelo del propio rol. Dentro de la sesión, Ctrl+P alterna entre los modelos de roles y /model abre la selección; en la pestaña Roles ahí mismo se asignan los roles y sus alternativas.
Al valor del rol se le puede añadir un nivel de razonamiento: :low, :medium, :high. Esta es la sintaxis de omp, y cómo un modelo específico interpreta el nivel depende del modelo mismo: en GLM-5.3 Flash, por ejemplo, es un interruptor binario; detalles en la revisión del modelo. Y un detalle útil más: los roles pueden redefinirse para un solo repositorio mediante un archivo <repo>/.omp/config.yml con el mismo bloque modelRoles. Los proveedores y las claves permanecen en el directorio personal, por lo que la clave no terminará en el repositorio.
Verificación: qué debería suceder
Primero, verifica que omp detecta el proveedor:
omp models joingonkaLa respuesta es una tabla de tres filas con las ventanas de contexto y los límites de respuesta de models.yml, redondeados a miles (la salida está recortada: omp tiene además las columnas thinking e images):
joingonka (3)
model context max-out
deepseek-ai/DeepSeek-V4-Flash-0731 380K 33K
MiniMaxAI/MiniMax-M2.7 200K 8.2K
zai-org/GLM-5.3-Flash 390K 8.2KDespués, una ejecución puntual sin interfaz. Coloca en un directorio vacío un archivo con un error evidente y pídele que lo encuentre:
omp -p "Read calc.py and tell me in one sentence whether it has a bug."El agente debe invocar por sí mismo la herramienta de lectura y responder al grano, indicando la expresión donde está el error. En nuestra ejecución del 21 de septiembre de 2026, este ciclo —consulta, llamada a la herramienta, resultado, respuesta— lo superaron sin problemas DeepSeek V4 Flash y GLM-5.3 Flash; sobre MiniMax M2.7, hablamos en la última fila de la tabla de abajo.
La tercera comprobación es del lado de la pasarela: en el panel, dentro de la sección «Uso», la consulta aparecerá en el desglose «Por modelos», y en el bloque «Por claves» se actualizará la hora de la última consulta. Si ahí no hay nada, omp está llamando a otro proveedor: revisa qué hay asignado a los roles con el comando omp config get modelRoles.
Si algo ha fallado, el diagnóstico suele leerse directamente en el mensaje:
| Qué se ve | Qué significa | Qué hacer |
|---|---|---|
Bun runtime must be >= 1.3.14 | omp se instaló mediante Bun, pero el propio Bun es antiguo | Actualiza Bun (bun upgrade) o instala el binario ya listo: curl -fsSL https://omp.sh/install | sh -s — --binary |
401 Invalid API key | La pasarela no aceptó la clave | Verifica apiKey: la clave completa, sin espacios ni comillas mal escritas. Si ahí hay un nombre de variable, debe estar exportada en el shell desde el que se lanzó omp |
405 Not Allowed y una página HTML de nginx | En baseUrl se perdió el sufijo | La dirección debe terminar en /v1 |
404 Invalid URL (POST /v1/v1/chat/completions) | En baseUrl hay una cola de más | Deja exactamente https://gate.joingonka.ai/v1: el resto lo añade omp por su cuenta |
400 Model … not found. Available: … | Error tipográfico en el id del modelo | La propia pasarela enumera los identificadores disponibles; la lista completa está en GET https://gate.joingonka.ai/v1/models |
Warning: models.yml validation failed — custom providers disabled, seguido de No models matching "joingonka" | El archivo no pasó la validación: error tipográfico en el nombre de un campo obligatorio o YAML corrupto. Aun así, omp sigue funcionando con los modelos integrados | La causa aparece en la línea siguiente a la advertencia; corrige el campo y repite omp models joingonka |
429 | La clave agotó el límite de consultas por minuto o el modelo se quedó sin capacidad en hora punta | omp reintenta la consulta por sí solo con pausas crecientes. Si se alarga, cambia de modelo con /model o configura retry.fallbackChains; el estado de la red se ve en la página de estado |
402 | El saldo se ha quedado sin fondos | Recarga la cuenta en la sección «Facturación»; la clave sigue siendo válida |
El turno terminó y no hay respuesta visible (en modo -p, una cadena vacía) | Lo observamos el 21 de septiembre de 2026 con MiniMax M2.7 en turnos posteriores a la llamada a una herramienta: la respuesta llegó dentro del bloque de razonamiento y omp la mostró como pensamiento | Asigna a los roles con herramientas DeepSeek V4 Flash o GLM-5.3 Flash, y deja MiniMax M2.7 para tareas cortas sin herramientas |
Cuánto cuesta
La herramienta agente gasta tokens de forma diferente a un chat: por cada frase suya, omp añade un prompt del sistema y descripciones de las herramientas, y la tarea generalmente requiere varios pasos. En nuestra ejecución, incluso con una sola herramienta de lectura habilitada, cada paso consumía alrededor de 3500 tokens de entrada; con el conjunto completo será más. Por lo tanto, aquí el precio por token es lo que decide.
A través de JoinGonka Gateway, los tokens cuestan $0.0069 por millón de entrada y $0.021 por millón de salida; el precio es el mismo para todos los modelos de la red y se completa en esta página desde una fuente en tiempo real.
| Escenario | Consumo | Vía Gateway |
|---|---|---|
| Tarea única: leer archivo, encontrar error | desde 7K tokens | centavos de dólar |
| Día de trabajo activo | 3-7M tokens | unidades de centavos |
| Mes de desarrollo activo | ~150M tokens | alrededor de un dólar |
Las estimaciones en la columna derecha se basan en los precios de septiembre de 2026. A modo de comparación, cómo se puede pagar por los modelos en omp:
| Método | Modelo de pago | Qué limita |
|---|---|---|
Suscripción a coding plan (acceso vía /login) | monto fijo mensual | cuotas y ventanas de renovación de límites del proveedor |
| Clave del proveedor directamente | por tokens según lista de precios del proveedor | la cuenta crece con la longitud de las sesiones; el precio depende del modelo elegido |
| JoinGonka Gateway | por tokens, saldo prepagado | el consumo es visible en el panel; no hay suscripciones ni cuotas mensuales |
La barra de estado de omp muestra una estimación del costo de la sesión. Se calcula según el campo cost de models.yml: el instalador ingresa allí el precio de la puerta de enlace en el momento de la instalación, y el precio en dólares en la red fluctúa con el tipo de cambio de GNK, por lo que la estimación es solo una referencia. El consumo exacto y el saldo se encuentran en el panel, en las secciones "Uso" y "Facturación". La razón por la que la elección predeterminada recayó en DeepSeek V4 Flash se explica en detalle en el análisis del modelo.
Qué considerar en el trabajo
Modo de confirmaciones. Por defecto, omp funciona en modo yolo: aprueba por sí solo la lectura, la escritura y la ejecución de comandos. En tu propio proyecto esto es cómodo; en código ajeno, es motivo para endurecer el modo o pasar a un contenedor:
omp config set tools.approvalMode writeEn el modo write, el agente pide permiso solo para ejecutar comandos; en always-ask, también para escribir. Para una sola ejecución, lo mismo se define con el flag --approval-mode. Esto es una propiedad del propio omp y no depende del proveedor del modelo.
Pi y omp son parientes con configuraciones distintas. La configuración de una herramienta no se transfiere a la otra: sus directorios, formatos y nombres de campos son propios de cada una.
| Pi | omp | |
|---|---|---|
| Directorio de configuración | ~/.pi/agent | ~/.omp/agent |
| Proveedores | models.json | models.yml |
| Modelo por defecto | settings.json: defaultProvider y defaultModel | config.yml: modelRoles.default |
| Selección del modelo según la tarea | /model en la sesión | roles modelRoles y cadenas retry.fallbackChains |
| Comprobación | pi --list-models | omp models joingonka |
| Instalador | --tool pi | --tool omp |
Varios entornos. Un perfil con nombre (omp --profile work o la variable OMP_PROFILE) traslada toda la configuración a ~/.omp/profiles/<name>/agent: resulta cómodo para separar claves laborales y personales. El directorio actual del agente se imprime con omp config path.
Si necesitas el agente en el editor. omp puede funcionar dentro de Zed mediante el protocolo ACP: es el mismo agente con la misma configuración, no hace falta volver a definir el proveedor ni los roles.
npx @joingonka/setup --tool omp, o mediante dos archivos: proveedor joingonka en ~/.omp/agent/models.yml (baseUrl con /v1, api: openai-completions, clave jg-…, modelos con contextWindow y maxTokens correctos) y modelRoles.default en config.yml. A partir de ahí, funciona la palanca principal de omp: los roles; DeepSeek V4 Flash para pasos habituales, GLM-5.3 Flash para análisis y planificación, MiniMax M2.7 para tareas de fondo, y la cadena fallbackChains para horas punta. Verificación: omp models joingonka y la sección "Uso" en el panel; el precio de todos los modelos de la red es el mismo, por lo que los roles se eligen según el comportamiento, no según el presupuesto.¿Quieres saber más?
Explora otras secciones o empieza a ganar GNK ahora mismo.
Obtener clave y tokens gratuitos →