18 puntos por GN⁺ 2025-12-23 | 2 comentarios | Compartir por WhatsApp
  • Claude Code, una herramienta de programación impulsada por IA que se ejecuta en la terminal, agregó en su versión más reciente la herramienta LSP (Language Server Protocol)
  • Esto permite funciones de inteligencia de código de nivel IDE como ir a la definición (go-to-definition), buscar referencias (find references) y mostrar documentación al pasar el cursor
  • El comando /terminal-setup ahora ofrece soporte oficial para las terminales Kitty, Alacritty, Zed y Warp
  • En la pantalla de /theme, ahora se puede activar o desactivar el resaltado de sintaxis con Ctrl+T
  • Se agregó una guía de configuración de terminal para los casos en que los atajos con Alt no funcionan en macOS, y la notación de atajos en macOS se unificó de alt a opt para que coincida con las teclas reales
  • Se mejoró la salida del comando /context, con agrupación de skills y agents por origen, organización basada en comandos con barra y ordenamiento según uso de tokens

2 comentarios

 
aqqnucs 2025-12-23

Estaba usando serena, pero al final lo integrado es lo correcto.

 
GN⁺ 2025-12-23
Comentarios de Hacker News
  • No entiendo por qué JetBrains no integró herramientas de refactorización en su sistema de IA
    Incluso tareas simples como renombrar una función podrían haberse resuelto con un contexto mucho más pequeño, en vez de editar cientos de archivos, así que es una lástima
    El soporte de LSP es un buen comienzo, pero sin capacidades de transformación de código sigue quedándose corto
    La calidad del LSP de JetBrains tampoco es mejor que la habitual

    • Últimamente JetBrains da la impresión de estar perdiendo el rumbo
      Después de quitar el modal de commits y subir los precios, empecé a pensar si debía dejar algo que he usado por más de 10 años
      También se puede ver un ejemplo reciente de errores en esta entrada del blog
    • Esto parece el clásico dilema del innovador
      JetBrains tiene el motor PSI que mejor entiende la semántica del código, pero sigue atado al paradigma donde una persona manipula el IDE directamente
      Claude Code y Cursor ven el editor como un lienzo que la IA puede manejar libremente, mientras que JetBrains trata la IA como un simple plugin de barra lateral
      Si no abre sus herramientas internas de refactorización a los agentes, la fricción para migrar a VS Code va a desaparecer
    • JetBrains debería dejar de obsesionarse con su propia IA, Junie, y enfocarse en integrarse con herramientas que ya están consolidadas
      Si no, VS Code se va a comer el mercado
    • El problema fue la arrogancia
      En otro tiempo tenía una gran barrera de entrada, pero VS Code la derribó
      No anticiparon para nada la ola de cambios y ahora parecen desorientados
    • Microsoft está cometiendo un error parecido
      No logró combinar bien Roslyn y Copilot
      Los analyzers de Roslyn no son simples linters, sino herramientas potentes capaces incluso de transformar código, así que frustra ver que la IA siga resolviendo todo con find/replace
      Si aparece un agente basado en Roslyn, la eficiencia al trabajar con codebases grandes se va a disparar
  • Soy muy positivo respecto a la combinación Claude Code / Codex CLI + LSP
    Probé Codex el fin de semana y me molestó que al renombrar funciones o mover símbolos se perdieran referencias, así que terminé creando yo mismo una skill que conecta Rope, una herramienta de refactorización para Python
    Quedé bastante satisfecho

    • Básicamente un ingeniero de OpenAI falló al renombrar una referencia por apretar el botón de Copilot en vez de la tecla F2
      Es realmente extraño que no tenga soporte de LSP
    • En la versión 5.1 de Codex no me gustó mucho, pero ahora me pregunto si ya será mejor que Claude Code
    • Sorprende que incluso dentro de OpenAI haya que construir este tipo de funciones por cuenta propia
      Eso muestra que todavía queda mucho por hacer en esta área
  • Como faltaba documentación oficial, comparto lo que averigüé por mi cuenta
    Hay que abrir el administrador de plugins de Claude Code con el comando /plugin, buscar lsp en la pestaña Discover, activarlo con la barra espaciadora y luego instalarlo con i

    • A mí también me sorprendió al principio que Claude preguntara si quería instalar el LSP de Go
      Luego busqué el changelog reciente y vi que era una función agregada hace 3 días
      Todavía está desactivada por ser experimental
    • Incluso en la versión más reciente no aparece nada al buscar mcp
      Parece que la función todavía está en una fase incompleta
      Ojalá más adelante Claude pueda detectar automáticamente el LSP
    • Para agregar un LSP personalizado, hay que envolverlo con el plugin wrapper de Claude Code
      La documentación relacionada está aquí
  • La UX de Claude Code de Anthropic es la peor entre los principales productos de IA
    Incluso algo tan simple como copiar y pegar texto resulta incómodo, y además ignoran el feedback de los usuarios
    En este estado no entiendo por qué debería usar esto en vez de ChatGPT

  • Llevo 6 meses usando OpenCode, que es open source, y ya ofrecía este tipo de funciones
    Sorprende lo lento que avanza el software cerrado
    Lo recomiendo porque se puede usar junto con una suscripción a Claude o Copilot

    • Quise preferir OpenCode por ser open source y por la independencia del proveedor, pero en la práctica Claude Code resultó más estable
      OpenCode tenía problemas de rendimiento, como uso de CPU al 100% mientras esperaba aprobación y fallos causados por popovers
      Aun así, Claude Code también tiene bugs como parpadeos al hacer scroll
    • No he logrado sacarle verdadero provecho a OpenCode
      Claude Code da buenos resultados de inmediato, mientras que en OpenCode incluso conectar modelos es difícil y la eficiencia es baja
      Probablemente sea porque el prompt tuning de Claude Code lleva más tiempo madurando
    • El open source puede moverse rápido porque su estructura de decisiones es simple
      No pierde tiempo convenciendo a múltiples stakeholders ni coordinando sprints
    • La experiencia de configuración de OpenCode es la más simple e intuitiva entre las herramientas CLI que he probado
      Aun así, suelen aparecer bugs menores y crashes
    • La velocidad de desarrollo de OpenCode es muy alta
      Si alguien anuncia AGI en la mañana, para la noche ya lo habrán integrado
      Yo también voy probando distintas herramientas, pero OpenCode sigue mejorando de forma constante
  • Me parece raro que tanta gente se emocione con herramientas en formato CLI
    Los agentes basados en IDE ya traen este tipo de funciones de fábrica, así que no sé si tiene sentido implementar diff o LSP en la terminal
    Cursor ya soporta esto desde hace mucho

    • El LSP fue diseñado originalmente para que un solo servidor pudiera ser compartido por varios clientes
      Para un CLI basta con hacer un cliente pequeño que se conecte al servidor LSP
      No hay razón para que solo los IDE monopolicen los beneficios del LSP
    • Incluso hay no desarrolladores que dicen que el CLI de Claude Code les resulta más natural
      La terminal no es solo un lugar para editar código, sino un espacio para orquestar toda la computadora
      Es parecido a por qué kubectl nunca evolucionó a una GUI
      Texto relacionado: It's on your computer
    • Me pregunto si los agentes dentro del IDE realmente pueden acceder al LSP
      Por ejemplo, Zed no puede aprovechar la información del LSP si no hay un servidor MCP
    • Tengo tanto mi editor como mi chatbot dentro de la terminal, así que no veo necesidad de moverme a un IDE
      Siento que el CLI es mejor que la UI incompleta de muchas apps de escritorio
    • La ventaja del CLI es la libertad de no quedar atado a un IDE específico
  • Como dije también en mi texto reciente, hay mucho desperdicio de tokens y de energía por ejecutar LLM de manera ineficiente
    La clave es hacer que los LLM puedan usar herramientas con más facilidad
    Ese principio aplica no solo a la programación, sino a cualquier área

    • Dentro de algunos años vamos a mirar con vergüenza el ecosistema ineficiente de herramientas que tenemos hoy
      Hay que considerar el daño ambiental causado por el desperdicio de energía, agua y recursos
    • Ya hubo intentos de resolver este problema
      Por ejemplo, existe un proyecto como Serena
  • Mi agente favorito, Crush, ya tiene soporte de LSP
    Pero en la práctica el agente no parece usarlo muy seguido
    Enlace al GitHub de Crush

    • Me pregunto si habría cambiado algo especificar en AGENT.md cuáles servidores LSP están instalados
  • Todavía no he visto muchos casos donde el LSP realmente se use
    Opus 4.5 tiene un timing de QA estable, y los chequeos de lint funcionan bien incluso fuera del IDE
    Cuando una definición está muy escondida, el LSP sí puede ser útil
    La lista de funciones LSP que ofrece Claude es la siguiente

    • goToDefinition, findReferences, hover, documentSymbol, workspaceSymbol, goToImplementation, prepareCallHierarchy, incomingCalls, outgoingCalls, etc.
  • El LSP debería ofrecer una API en forma de comandos de shell
    Eso facilitaría la integración con LLM y también sería útil para personas

    • Ya existe un frontend CLI como lsp-cli
      Pero que los LLM usen LSP mediante una herramienta dedicada es más eficiente que hacerlo solo con comandos de shell