Repo Dispatch
29 de julio de 2026
anomalyco/opencode

OpenCode: un agente de código abierto que busca ser independiente del proveedor

anomalyco/opencode · 192.837★ · 24.630 forks

Todo lo que hay que saber sobre anomalyco/opencode: un agente de programación de terminal y escritorio, configurable mediante archivos, agentes, habilidades, complementos y proveedores de modelos intercambiables.


Qué es OpenCode

OpenCode es el agente de programación de código abierto de Anomaly. Su núcleo ofrece una interfaz de terminal y una aplicación de escritorio en beta; el usuario puede conectar proveedores de modelos, ejecutar herramientas locales, consultar servidores MCP y extender el comportamiento con archivos de proyecto o complementos.

El README ofrece instalación por script, npm, Homebrew, Nix, Scoop, Chocolatey, pacman y otros gestores. La interfaz parte de dos agentes principales: build, con acceso completo para desarrollar, y plan, orientado al análisis y configurado para denegar ediciones y pedir permiso antes de comandos de shell. También incluye el subagente general, invocable como @general.

No es un modelo ni un proveedor de inferencia por si mismo. Puede conectarse a proveedores de terceros, modelos locales y a los servicios opcionales del equipo, OpenCode Zen y OpenCode Go. La documentación indica que Zen es una lista de modelos que el equipo ha probado con OpenCode; no es obligatorio para ejecutar el programa.

Núcleo de terminal conectado por cables modulares intercambiables a distintos proveedores de modelos de IA.

El origen: de un primer commit a una alternativa abierta

El primer commit recuperable del historial es initial, firmado por Kujtim Hoxha (kujtimiihoxha) el 21 de marzo de 2025. La API de GitHub fecha la creación del repositorio el 30 de abril de 2025. En junio y julio de 2025, los envios de Hacker News enlazaban el proyecto como sst/opencode; en la investigación actual el repositorio publico es anomalyco/opencode. Esa cronología permite verificar la continuidad del proyecto, aunque las fuentes recuperadas no explican el motivo del cambio de organización.

La presentación publica gano visibilidad con el hilo de Hacker News 44482504, enviado por indigodaddy el 6 de julio de 2025: 319 puntos y 91 comentarios. La tensión que acompano la propuesta fue la dependencia de las suscripciones de los proveedores: el 20 de marzo de 2026, el hilo 47460525, enviado por rbanffy, alcanzo 1.274 puntos y 618 comentarios tras una controversia sobre el uso de suscripciones de Claude fuera de Claude Code. El repositorio siguio soportando la API de Anthropic, pero las fuentes distinguen el uso por API del uso de una suscripción en un cliente de terceros.

El contexto explica parte de la narrativa: OpenCode se posiciona como una interfaz abierta y configurable, no como una copia de un único cliente nativo. Esa independencia no elimina los costes ni las condiciones de cada proveedor: solo separa el agente de la cuenta, modelo y ruta de inferencia elegidos por el usuario.

Diagrama de un commit inicial que se ramifica en un árbol luminoso de miles de forks y menciones en Hacker News.

Filosofía y principios

La documentación y las reglas del repositorio dejan ver varios principios operativos:

  • Separar el agente del proveedor. La configuración admite modelos, proveedores, rutas base y modelos locales; el usuario puede cambiar de proveedor sin cambiar de interfaz.
  • Control explícito de herramientas. plan opera con permisos restrictivos por defecto, y las habilidades tienen reglas allow, deny y ask configurables por patrón.
  • Personalizacion como archivos versionables. Agentes, comandos, habilidades y complementos pueden vivir en .opencode/ del proyecto o en el directorio global del usuario.
  • Compatibilidad practica. Para habilidades, busca tanto .opencode/skills como las rutas compatibles .claude/skills y .agents/skills, hasta el límite del árbol de trabajo Git.
  • Prioridad de mantenimiento. Las instrucciones de desarrollo del repositorio establecen estabilidad, simplicidad y rendimiento como orden de prioridad para la aplicación.

Son principios de diseño observables en la documentación y el código de configuración, no promesas de que cada combinación de modelos, complementos y permisos sea segura o adecuada para todos los equipos.

Matriz de permisos con los tres estados allow, deny y ask, y una mano robótica esperando aprobación antes de ejecutar un comando de shell.

Cómo funciona

Instalación, sesión y agentes

La instalación directa documentada es curl -fsSL https://opencode.ai/install | bash; también se publica el paquete opencode-ai. Después de abrir la interfaz, Tab cambia entre build y plan; @general solicita el subagente general. El comando /connect sirve para añadir credenciales de proveedor y /models muestra los modelos recomendados por Zen cuando se usa ese servicio.

El modo plan es un control de flujo concreto: explora y propone sin editar archivos por defecto; para comandos de shell solicita aprobación. El modo build queda destinado a las operaciones de desarrollo con acceso a herramientas.

Ilustración conceptual de los dos agentes: uno en cian analiza el código sin tocarlo mientras el otro, en naranja, edita activamente las líneas en pantalla.

Configuración y extensibilidad

opencode.json u opencode.jsonc describe modelo, proveedor, permisos, comandos y complementos. Las fuentes se combinan, no se reemplazan: configuración remota de .well-known/opencode, global, definida por variable de entorno, del proyecto, directorios .opencode/ y contenido insertado en tiempo de ejecución, en ese orden de precedencia.

Los comandos personalizados son archivos Markdown con frontmatter en .opencode/commands/ o una entrada command en el JSON. Por ejemplo, un archivo puede definir un comando /test, un agente y un modelo, y convertir el cuerpo Markdown en la instrucción enviada al modelo.

Las habilidades usan un directorio por habilidad y un archivo SKILL.md con name y description en YAML. OpenCode las anuncia a través de su herramienta skill y carga el contenido solo cuando el agente lo solicita. Los permisos permiten aprobar, denegar u ocultar habilidades por nombre o patrón. Los complementos pueden ser archivos TypeScript o JavaScript locales, o paquetes npm indicados en la configuración; la documentación publica una lista de extensiones comunitarias.

También soporta servidores MCP locales y remotos. La propia documentación advierte que cada servidor incorpora herramientas y contexto a la sesión, por lo que activar muchos, en particular algunos servidores de GitHub, puede agotar el contexto disponible.

Archivos de configuración flotantes — opencode.json, SKILL.md y .opencode/commands — fusionándose en un solo haz de luz central.

Estado oficial y semioficial

OpenCode es el proyecto oficial de Anomaly en el sentido directo: anomalyco/opencode, su README y opencode.ai son las fuentes primarias del producto. El repositorio se distribuye por canales de empaquetado que el README etiqueta de forma distinta: anomalyco/tap/opencode figura como formula recomendada y actualizada, mientras que brew install opencode figura como formula oficial de Homebrew con actualizaciones menos frecuentes.

No se recuperó evidencia de que OpenCode sea un complemento aceptado en un mercado oficial de Anthropic, OpenAI, Google o Microsoft, ni de una certificación de esos proveedores. Por tanto, no debe interpretarse como una función oficial de Claude Code, Codex o Gemini. La compatibilidad con sus APIs, planes o complementos de terceros es otra cosa y depende de las condiciones del proveedor.

Su estado semioficial dentro de su propia comunidad es mas claro: Anomaly mantiene documentación, Discord, SDKs, el catálogo models.dev, un banco opencode-bench y una página oficial de ecosistema a la que se pueden proponer proyectos mediante solicitudes de cambios. La popularidad y la cantidad de integraciones sugieren una plataforma de facto para extensiones de OpenCode, pero no existe una designación formal de estándar en las fuentes consultadas.

El ecosistema

Mapa del ecosistema con un núcleo hexagonal central rodeado de nodos satélite luminosos que representan SDKs, herramientas y forks comunitarios.

Repositorios mantenidos por Anomaly

Las cifras de esta sección proceden de la API de GitHub el 1 de agosto de 2026.

  • anomalyco/models.dev: base abierta de datos de modelos de IA, 6.209 estrellas. La guía de contribución de OpenCode pide proponer primero allí la incorporación de un proveedor nuevo.
  • anomalyco/opentui: biblioteca para interfaces de terminal, 12.848 estrellas; constituye una pieza visible de la base de interfaz de la organización.
  • anomalyco/opencode-bench: repositorio de evaluación, 78 estrellas.
  • anomalyco/opencode-sdk-python, anomalyco/opencode-sdk-go y anomalyco/opencode-sdk-js: SDKs con 267, 146 y 90 estrellas, respectivamente.
  • anomalyco/terminal-control y anomalyco/browser-control: herramientas de control local de terminal y navegador, con 382 y 320 estrellas.
  • anomalyco/sst: herramienta para construir aplicaciones de pila completa sobre infraestructura propia, 26.211 estrellas. Su relevancia histórica se observa en las URL sst/opencode de los primeros envios de Hacker News, no en una afirmación no verificada de dependencia actual.

Extensiones, clientes y catálogos comunitarios

La página oficial de ecosistema enumera, entre otros, estos proyectos externos:

  • awesome-opencode/awesome-opencode, catálogo curado de complementos, temas, agentes y recursos, 9.290 estrellas.
  • nickjvandyke/opencode.nvim, integración para Neovim, 3.732 estrellas.
  • daytonaio/daytona, cuyo complemento ejecuta sesiones en entornos aislados con sincronización Git y vistas previas; el repositorio de Daytona tiene 72.079 estrellas.
  • H2Shami/opencode-helicone-session, que añade cabeceras de sesión para agrupar solicitudes en Helicone, 15 estrellas.
  • opencode-vibeguard, para sustituir secretos e información personal antes de llamadas al modelo y restaurarlos localmente; opencode-dynamic-context-pruning, para podar salidas obsoletas; y opencode-worktree, para automatizar árboles de trabajo Git. Los tres están listados por la documentación oficial; no se afirma una auditoría ni soporte del equipo de OpenCode para ellos.
  • OpenChamber, aplicación web, escritorio y extensión de VS Code; OpenCode-Obsidian, integración con Obsidian; portal, interfaz móvil sobre Tailscale o VPN; y kimaki, bot de Discord construido sobre el SDK.
  • El listado oficial también incluye opencode-tavily, opencode-firecrawl, opencode-sentry-monitor, opencode-wakatime y opencode-scheduler para investigación web, observabilidad, registro de actividad y tareas programadas.

Derivados y bifurcaciones

La API de bifurcaciones, ordenada por estrellas, recuperó ejemplos de puertos y variaciones comunitarias: DNGriffin/whispercode (328 estrellas), winmin/evil-opencode (235), Latitudes-Dev/shuvcode (105), leohenon/opencode-vim (87), paviko/opencode-ide-plugin (41), OneOfLzx/opencode-sentinel (38, enfocado en restringir la conexión a servidores privados) y Chetic/opencode-offline (13, declarado como sin conexión). Son derivados no oficiales; sus descripciones proceden de sus propias fichas de GitHub.

La traducción no depende solo de bifurcaciones: el repositorio principal incluye README oficiales en español, alemán, francés, italiano, japonés, coreano, chino simplificado y tradicional, ruso, árabe, tailandes, turco, ucraniano, bengalí, griego, vietnamita y otros idiomas. Eso es localización de la documentación principal, no una colección de puertos independientes.

Bóveda digital que escanea y difumina fragmentos de código sensible antes de enviarlos a un modelo remoto, representando herramientas como vibeguard y sentinel.

Numeros del repo

Medición: 1 de agosto de 2026, API y página de GitHub.

MétricaValor
Estrellas191.953
Bifurcaciones24.491
Suscriptores reales735
Commits15.266
Incidencias abiertas informadas por la API4.890
Lenguaje principalTypeScript
LicenciaMIT
Creación del repositorio30 de abril de 2025
Última publicaciónv1.18.11, 1 de agosto de 2026
Ramas y etiquetas visibles en GitHub1.151 y 1.083

La versión v1.18.11 corrige bucles de reconexion de MCP por SSE y configuraciones de proveedor con campos de razonamiento intercalados; sus notas también enumeran correcciones de escritorio. Los principales contribuidores que devolvió la API fueron thdxr (2.246 contribuciones), adamdotdevin (2.013), opencode-agent[bot] (1.478), rekram1-node (1.423) y kitlangton (1.081).

El total de commits procede del enlace de historial de la página de GitHub y coincide con la consulta de la página final de commits. El campo watchers_count de la respuesta general de GitHub duplica las estrellas; por eso se informa subscribers_count como suscriptores reales. El campo open_issues_count puede mezclar incidencias y solicitudes de cambios abiertas, de modo que no equivale necesariamente al número de incidencias visibles por separado.

Gráficos de barras holográficos gigantes con la cifra de estrellas del repositorio flotando sobre una ciudad nocturna futurista.

Cómo contribuir

La contribución esta documentada y tiene filtros claros:

  1. Elegir correcciones, proveedores, LSP, formateadores, mejoras de rendimiento de LLM, peculiaridades de entorno o documentación; también revisar las etiquetas help wanted, good first issue, bug y perf.
  2. Comentar una incidencia antes de abordarla para que un mantenedor pueda asignarla.
  3. Solicitar revisión de diseño antes de implementar funciones de interfaz o de núcleo. Las solicitudes que ignoran esa regla probablemente se cierren.
  4. Para un proveedor nuevo, abrir primero una solicitud en anomalyco/models.dev.
  5. Para desarrollar localmente, usar Bun 1.3 o posterior, ejecutar bun install y bun dev; bun dev <directorio> permite probar otro repositorio.
  6. Seguir la rama predeterminada dev, nombres de rama cortos y mensajes convencionales como feat(scope): resumen o fix(scope): resumen.

El repositorio incluye pruebas, automatización de publicación y reglas internas para mantener los límites entre paquetes. Esta documentación no equivale a una garantía de aceptación de cada solicitud de cambios.

Cómo lo recibió la comunidad

La recepción recuperada combina apreciación por la flexibilidad con objeciones sobre coste, seguridad y capacidad de respuesta del mantenimiento:

  • En el hilo principal 47460525, pimeys elogió los atajos, los modos plan y construcción, el cambio rápido de modelos, MCP y habilidades; lo consideró mas agradable de usar que otras alternativas. El hilo completo, enviado por rbanffy, tenía 1.274 puntos y 618 comentarios. Es una experiencia personal, no una comparativa controlada.
  • En ese mismo hilo, khimaros dijo que lo usa como interfaz principal para modelos de llama.cpp, Claude y Gemini, valoro la integración LSP y enlazo su complemento khimaros/opencode-evolve. Es un ejemplo concreto de uso con modelos locales y extensiones, no una garantía de compatibilidad general.
  • mharrison escribió que OpenCode sustituyó a Aider en su flujo y que lo usa con Qwen local cuando se agotan otros límites. A la vez, reconocio que los modelos locales le resultaban menos agiles. La observación muestra entusiasmo por la portabilidad, pero también un límite práctico de la inferencia local.
  • La crítica principal del hilo fue económica y contractual. stavros indicó que una pequeña función por API le costó 6 dolares y estimó que desarrollar con Opus podría resultar mucho mas caro que su suscripción. pczy puntualizo que la API seguia permitida a precio comercial, mientras que una suscripción de Claude Code no se permitia en clientes de terceros. El contraste no prueba precios universales, pero documenta la tensión entre libertad de cliente y facturación del proveedor.
  • También hubo reservas sobre seguridad. riedel califico de interesante el sistema de herramientas, pero dijo que no lograba obtener comportamiento fiable al generar herramientas y que percibia poca seguridad por defecto. nacs cuestionó la aplicación web alojada; flexagoon respondio que conecta con un servidor OpenCode local y no equivale a que todas las solicitudes se reenvien. Son afirmaciones contrapuestas de usuarios, no una auditoria de seguridad.
  • Fuera del hilo principal, 46539718, enviado por AlexAltea, titulaba una vulnerabilidad crítica de ejecución remota no autenticada y sumó 3 puntos y 2 comentarios. En otro comentario de Hacker News, bel8 afirmo que se corrigió en la versión v1.0.216 de diciembre de 2025. Esta investigación no recuperó una auditoría independiente ni el informe técnico completo, así que no usa esos envios para certificar el estado de seguridad actual.
  • La carga de mantenimiento también es visible: ixxie, en un comentario de Hacker News, comparo el gran volumen de incidencias y solicitudes de cambios de OpenCode con el proceso restrictivo de Pi. La API del 1 de agosto aun devolvia 4.890 elementos en open_issues_count; por su semántica, ese número no permite concluir cuantos son errores, peticiones o solicitudes de cambios.

OpenCode frente a otras propuestas

PropuestaCoincidencia verificableDiferencia verificable
Aider-AI/aiderAmbos se presentan como asistentes de programación en terminal. Aider tenía 47.859 estrellas en la API consultada.OpenCode documenta agentes build y plan, habilidades con compatibilidad de rutas y un sistema de complementos y MCP. El comentario de __mharrison__ explica por que lo sustituyo en su flujo, pero no mide calidad de código.
earendil-works/piLa API identifica Pi como kit de agente con API unificada de LLM, bucle de agente, TUI y CLI de código; tenía 81.859 estrellas.La comparación de ixxie se centra en el proceso de admisión de incidencias y solicitudes de cambios de Pi, no en una equivalencia de características. OpenCode, por su parte, publica modos build y plan, SDKs y un catálogo oficial de extensiones.
OpenHands/OpenHandsAmbos son proyectos abiertos para desarrollo asistido por IA; OpenHands se describe como desarrollo dirigido por IA y tenía 82.778 estrellas.Las fuentes recuperadas para OpenCode detallan una interfaz centrada en terminal, configuración local y extensiones; la comparación no infiere que sus arquitecturas o entornos de ejecución sean equivalentes.
Claude Code y CodexEl hilo de Hacker News los menciona como alternativas que los usuarios combinan o comparan con OpenCode.Son productos del proveedor correspondiente; OpenCode no aparece en las fuentes como complemento oficial de sus mercados. Su propuesta es permitir elegir proveedor y modelo mediante configuración propia.

Casos de uso y a quién puede ayudar este repositorio

  • Desarrolladores que quieren separar el agente del proveedor de modelos pueden trabajar desde la terminal o la aplicación de escritorio de OpenCode y definir modelos, rutas base, permisos y complementos en opencode.json u opencode.jsonc. El agente plan sirve para explorar y proponer cambios sin editar por defecto; build queda para las tareas con acceso a herramientas.
  • Equipos que versionan instrucciones de proyecto pueden guardar comandos Markdown, agentes y habilidades en .opencode/. OpenCode busca habilidades también en .claude/skills y .agents/skills, por lo que una biblioteca existente puede reutilizarse sin copiarla a un formato nuevo. Los permisos allow, deny y ask permiten controlar qué habilidades se anuncian o requieren aprobación.
  • Quienes integran herramientas de desarrollo alrededor de un agente pueden conectar servidores MCP, complementos locales o de npm y los SDKs del proyecto. El catálogo oficial incluye, entre otros, extensiones para árboles de trabajo, poda de contexto, investigación web y observabilidad; opencode-bench ofrece una pieza separada para evaluación.

Cada servidor MCP y complemento añade herramientas y contexto a la sesión. Conviene activar solo los necesarios, revisar el código y los permisos de las extensiones, y aplicar aislamiento y límites de red propios cuando el flujo acceda a repositorios o servicios sensibles.

Recursos


Nota: este artículo combina el README, la documentación y el historial de OpenCode, la API y página de GitHub, y conversaciones de Hacker News consultadas el 1 de agosto de 2026. Las cifras cambian con el tiempo.