23 puntos por GN⁺ 2025-11-28 | 1 comentarios | Compartir por WhatsApp
  • En los últimos 3 años, la evolución de las formas de expandir los LLM ha avanzado en distintas direcciones, como plugins, instrucciones de usuario, memoria, protocolos y skills
  • Los primeros ChatGPT Plugins intentaron habilitar el uso de herramientas de propósito general mediante llamadas a API, pero fracasaron por las limitaciones del modelo y una UX compleja
  • Después aparecieron Custom Instructions y Custom GPTs, que ofrecieron una personalización simple basada en prompts y una estructura de modelos personalizados compartibles
  • Model Context Protocol (MCP) y Claude Code hicieron posible una integración de herramientas compleja pero poderosa, y recientemente Agent Skills resurgió como una forma más simple de esa idea
  • Al final, la arquitectura de agentes que realiza tareas solo con herramientas de propósito general e instrucciones en lenguaje natural apunta a convertirse en la dirección central de la expansión de los LLM

Historia y cambios en la expansión de los LLM

  • La forma de usar los LLM evolucionó desde una simple entrada de texto hasta agentes capaces de controlar codebases y navegadores
    • Cómo dar soporte a la personalización del usuario pasó a ser un reto clave
    • Se probaron enfoques muy distintos, desde prompts de sistema simples hasta protocolos cliente-servidor complejos

ChatGPT Plugins (marzo de 2023)

  • OpenAI presentó ChatGPT Plugins, diseñados para que el LLM llamara endpoints REST mediante especificaciones OpenAPI
    • Apuntaban al uso de herramientas de propósito general a nivel AGI
  • Sin embargo, por las limitaciones de GPT-3.5 y del GPT-4 inicial, al explorar especificaciones de API a gran escala aparecían errores y pérdida de contexto
    • También fue un problema la UX incómoda, como la activación manual de plugins
  • Aun así, el plugin Code Interpreter (después Advanced Data Analysis) mostró el potencial de un poderoso entorno de ejecución en sandbox

Custom Instructions (julio de 2023)

  • Una función simple de prompts personalizados que redujo la complejidad de los plugins
    • Se añadía automáticamente a todas las conversaciones y resolvía el problema de repetir el mismo contexto una y otra vez
  • Más adelante sirvió como antecedente de archivos de reglas dentro de entornos de desarrollo como .cursorrules y CLAUDE.md

Custom GPTs (noviembre de 2023)

  • OpenAI convirtió la ingeniería de prompts en producto con Custom GPTs
    • Permitían agrupar persona, archivos y acciones para crear links compartibles de GPTs personalizados
  • Fue un retroceso desde el enfoque abierto de los plugins hacia apps de propósito único

Memory in ChatGPT (febrero de 2024)

  • El primer caso de transición hacia una función de personalización automática
    • Recordaba información mencionada en la conversación y la reflejaba automáticamente en contextos posteriores
    • Marcó el inicio de una arquitectura de agente persistente que mantiene estado de largo plazo sin que el usuario deba configurarlo manualmente

Cursor Rules (abril de 2024)

  • Cursor IDE introdujo la gestión de instrucciones a nivel de repositorio mediante el archivo .cursorrules
    • Ejemplos: “usar tabs”, “prohibido usar punto y coma”, “usar TypeScript”
  • Después se expandió a la estructura de carpetas .cursor/rules, permitiendo aplicar reglas por archivo y por directorio
  • También se añadió la capacidad de que el LLM decidiera por sí mismo cuándo aplicar una regla

Model Context Protocol (MCP, noviembre de 2024)

  • El MCP introducido por Anthropic ofrece una estructura para que el modelo use herramientas reales de forma estable
    • Mantiene la conexión cliente-servidor e intercambia definiciones de herramientas, recursos y prompts
  • No se trata solo de agregar contexto, sino de aportar capacidades reales (capabilities)
    • Ejemplos: leer repositorios, consultar bases de datos, desplegar en Vercel
  • Aunque su complejidad y costo de configuración son altos, se usa como capa base de ChatGPT Apps (anunciado en octubre de 2025)

Claude Code y los mecanismos de expansión (febrero de 2025)

  • Claude Code es un agente que integra varios métodos de expansión
    • Gestiona instrucciones del repositorio con CLAUDE.md
    • Integra herramientas con MCP
    • Soporta Slash Commands, Hooks, Sub-agents y Output Styles (próximo a ser retirado), entre otros
  • Aunque no está claro si algunas funciones se mantendrán, se le considera un modelo experimental e integrado de expansión de agentes

Agent Skills (octubre de 2025)

  • Una reencarnación de ChatGPT Plugins que usa una estructura de skills basada en carpetas sin protocolos complejos
    • Se compone del directorio skills/, SKILL.md, scripts y archivos de ejemplo
    • Lee el contenido completo solo cuando hace falta, resolviendo el problema del sobrecargo de la ventana de contexto (context bloat)
  • Ejemplo: una skill de pruebas de aplicaciones web basada en Playwright
    • SKILL.md incluye metadatos e instrucciones de uso
    • Los scripts se ejecutan directamente, y el LLM no carga innecesariamente el código en el contexto
  • Parte del supuesto de contar con acceso de propósito general a una computadora, y su punto clave es confiar en herramientas generales más que en herramientas especializadas

Perspectivas futuras

  • Agent Skills materializa el ideal de los plugins iniciales
    • Los modelos ya son lo bastante inteligentes como para realizar tareas solo con herramientas generales e instrucciones
  • Los agentes dejan de definirse como un simple loop de LLM para redefinirse como entidades de ejecución acopladas a una computadora
    • Ejemplos: Claude Code, Zo Computer y otros integran el LLM con la computadora
  • Se espera que, después de 2026, las aplicaciones basadas en LLM se expandan hacia arquitecturas de agentes con la computadora integrada
  • En conclusión, existe la posibilidad de que la expansión basada en lenguaje natural vuelva a ocupar el centro por encima de protocolos complejos como MCP

1 comentarios

 
GN⁺ 2025-11-28
Opinión de Hacker News
  • Creo que el lenguaje natural es demasiado ambiguo, así que extenderlo como lenguaje de programación es ineficiente
    La razón por la que las matemáticas tienen su propio lenguaje específico de dominio es precisamente para asegurar claridad

    • Antes trabajé en comunicación técnica, y el lenguaje natural también se puede pulir con bastante precisión si pasa por un bucle repetitivo de lectura–edición–revisión
      En inglés es tedioso, pero cuando te acostumbras puedes reducir la ambigüedad
    • Por eso creo que hace falta un progressive hardening que refuerce gradualmente la especificación
      El concepto está bien resumido en este documento
  • Creo que Skills es la idea que hizo realidad el sueño de los ChatGPT Plugins
    Ahora los modelos ya parecen lo bastante inteligentes como para que de verdad funcione
    Simon Willison también argumentó en este artículo que Skills es un cambio más grande que MCP, pero parece que todavía recibe menos atención por la inercia de MCP

    • Creo que Skills se siente menos interesante porque en la práctica se parece más a documentación que se carga de forma selectiva
      Pero tiene mucho más peso en el sentido de que elimina el andamiaje complejo que exige MCP
      Por ejemplo, al procesar transcripciones de una cuenta de Fathom, bastó con hacer un script de CLI y escribir SKILL.md
      También resolví pruebas de una API cliente de la misma manera
      Aun así, este enfoque parece recibir menos atención porque es menos vistoso y deja menos espacio para construir tooling grande
    • Creo que últimamente hay mucha fatiga con los LLM, así que la gente se entusiasma menos con Skills
      Además, Skills asume agentes capaces de ejecutar código arbitrario, así que la barrera de entrada es alta
    • Todavía no entiendo qué tiene de especial un directorio de Skills
      Desde antes ya le decía a Claude Code “lee X y haz Y”, así que me pregunto en qué se diferencia eso de Skills
    • La ejecución en sandbox de Claude Skills es demasiado ineficiente
      Es frustrante tener que seguir el trabajo dependiendo de I/O y de sentencias print
    • Skills parece ser como una versión para usuario final de MCP
      MCP es para construir sistemas, y Skills está limitado a Claude, así que el lock-in es fuerte
      También es una gran limitación que no se puedan referenciar ni componer skills entre sí
      Al final, si intentas resolver problemas de extensibilidad, reutilización o uso remoto, parece que terminas regresando a MCP
      Aun así, si Skills termina asentándose como otra vista de MCP, quizá más adelante aparezca algo como un convertidor de Skill→MCP
  • No entiendo qué tiene que ver que el modelo haya mejorado con la Bitter Lesson
    Sigue siendo una estructura donde se inyecta experiencia humana para compensar las limitaciones del modelo
    Una verdadera Bitter Lesson sería obtener mejores resultados solo aumentando recursos computacionales, sin intervención humana

    • Yo también entré pensando que ese sería el tema del artículo
  • Los Custom GPTs son una idea vieja, pero hace poco les encontré un uso práctico
    Hice un Custom GPT conectado a la API de Notion para las notas de reuniones y la gestión de pendientes de mi esposa, y en pocas horas ya funcionaba bastante bien
    Intenté integrarlo con la app Reminders, pero por restricciones de la API y permisos de la UI al final tuve que crear directamente un servidor MCP
    Lo dejé corriendo en una MacBook Pro vieja con Amphetamine activado y conectado por Tailnet y un túnel de Cloudflare para que se pudiera acceder desde ChatGPT
    Es complejo, pero tener un agente de IA como hub central resultó bastante valioso
    La implementación está resumida en este blog

  • Incluso ChatGPT 5.1 todavía alucina APIs que no existen, pero aun así poco a poco va mejorando
    Así como el mundo cambió cada vez que los humanos mejoraron su capacidad de procesar información, si los LLM aunque sea aumentan su probabilidad de acertar, el mundo volverá a cambiar

  • Entiendo totalmente eso de “quiero ponerme corto con MCP”
    MCP es difícil de manejar, pero hay muchas tareas en el mundo que necesitan interfaces seguras
    La razón de que su diseño inicial fuera complejo es que expuso tal cual la realidad del manejo de tokens en streaming
    Es complejo, pero aun así creo que sigue estando en el límite de un sistema simple que todavía funciona
    No va a ser reemplazado por completo, y si los modelos quieren manejar bien entornos de agentes, estructuras como MCP todavía van a ser necesarias por un tiempo

    • Al final MCP no deja de ser otro formato de API auto-descriptivo
      Hoy en día los modelos ya pueden interactuar suficientemente bien con solo una descripción simple de la API
      Si ya existe una API, cada vez hay menos motivos para construir además un servidor MCP
    • No entiendo por qué dicen que MCP es difícil
      Implementarlo está al nivel de JSON-RPC + API
      El ejemplo hello-world de Python FastMCP es casi idéntico a la versión en Flask
    • Parece que MCP llegó antes de tiempo
      Skills apareció como reacción a eso, y hacia adelante probablemente evolucione a una estructura donde el espacio de LLM y el espacio de código se autoensamblan
    • MCP no es más que otra historia de middleware, y esas cosas siempre han fracasado
  • Creo que Skills.md también va a terminar sufriendo el mismo problema de inflado de contexto que MCP
    Casi que sería mejor dejar solo scripts, sin explicaciones, y entrenar al LLM para que busque dentro de la carpeta lo que necesita

    • Creo que esto es un problema de ingeniería que se puede resolver
      Por ejemplo, bastaría con tener un subagente liviano que lea y seleccione skills
  • ChatGPT Apps, anunciadas este mes, se sienten casi iguales a los ChatGPT Plugin de hace 3 años
    La diferencia está solo en cómo se invoca el plugin: antes se elegía desde un menú desplegable, ahora basta con poner el nombre en el prompt
    Desde el punto de vista del usuario no parece una gran diferencia

  • Creo que deberíamos ver el prompt como un programa probabilístico, y hace falta un shell dedicado para invocarlo
    Agentes de programación como Claude Code o Codex son un ejemplo de eso
    Estoy investigando cómo separar esa función del IDE y desarrollarla como un shell independiente como llm-do

  • El verdadero núcleo de la expansión de los LLM es la integración con el shell
    Un LLM conectado al shell prácticamente puede hacer cualquier cosa

    • También puedes cavar una piscina con una cuchara, pero yo creo que es mejor usar una retroexcavadora (backhoe)