5 puntos por GN⁺ 2025-08-01 | Aún no hay comentarios. | Compartir por WhatsApp
  • Es un agente de codificación con IA que funciona en la terminal y, al integrarse con diversos LLM (modelos de lenguaje grande), ayuda con la escritura de código, la automatización de flujos de trabajo y el mantenimiento del contexto del código, mejorando la productividad en programación
  • Permite elegir múltiples modelos o cambiar de modelo libremente durante una sesión y mantiene sesiones/contextos por proyecto
  • Proporciona funciones amigables para desarrolladores como la integración con LSP (Language Server Protocol), soporte extensible de MCP (Model Context Protocol) y características de exclusión como .gitignore y archivos de omisión dedicados
  • Se ejecuta en todos los entornos de terminal principales (macOS, Linux, Windows, FreeBSD, entre otros) y puede instalarse mediante gestores de paquetes, Go o binario, entre otros métodos
  • Soporta configuración intuitiva y personalización avanzada al mismo tiempo, con variables de entorno, configuración JSON, listas blancas de herramientas y un diseño pensado también para usuarios avanzados

Crush

  • Es un agente de codificación con IA para ejecutarse en el entorno de terminal, se integra con el LLM que prefiera el desarrollador y ayuda con la escritura, edición y automatización de código
  • Permite seleccionar y cambiar libremente entre varios modelos (Anthropic, OpenAI, Groq, OpenRouter, entre otros) y gestiona el contexto de forma independiente por sesión
  • A través de LSP (Language Server Protocol) obtiene contexto adicional según cada lenguaje para asistir de forma más inteligente en la escritura de código
  • A través de MCP (Model Context Protocol) puede recopilar y usar información adicional desde fuentes externas como sistemas externos, HTTP, línea de comandos y SSE

Funcionalidades principales

  • Soporte multi-modelo: integración con diversos LLM como OpenAI, Anthropic, Groq, OpenRouter, con posibilidad de agregar otros directamente
  • Trabajo basado en sesiones: separación y gestión de múltiples sesiones y contextos por proyecto
  • Cambio de modelo flexible: cambiar de modelo en cualquier momento durante la sesión, manteniendo el contexto existente
  • Integración de LSP: conexión del LSP de Go, TypeScript, Nix y otros lenguajes principales para reforzar el contexto del código
  • Escalabilidad: extensión fácil de funcionalidades adicionales mediante el protocolo MCP y fuentes externas HTTP/CLI/SSE
  • Amplio soporte de plataformas: funciona en terminales de los principales sistemas operativos, incluyendo macOS, Linux, Windows (WSL, PowerShell), FreeBSD, OpenBSD y NetBSD
  • Configuración intuitiva: listo para usar sin ajustes previos, con soporte de configuración JSON por proyecto o global cuando se requiera
  • Función de exclusión robusta: permite gestionar archivos/carpetas de contexto excluido mediante .gitignore y .crushignore
  • Lista blanca de herramientas: apoyo para aprobación previa y ejecución automática al correr herramientas; la bandera --yolo omite el prompt completo (usar con precaución)
  • Proveedor personalizado: agregar APIs compatibles con OpenAI y Anthropic libremente y definir opciones detalladas

Instalación y primer uso

  • Instalación disponible por diversos gestores de paquetes y por binario/Go, como Homebrew, NPM, Arch, Nix, Debian/Ubuntu, Fedora/RHEL, entre otros
  • Al primer inicio es necesario ingresar la API Key del LLM preferido (OpenAI, Anthropic, Groq, etc.), que también puede establecerse mediante variables de entorno
  • LLM representativos que se pueden integrar por variables de entorno: OPENAI_API_KEY, ANTHROPIC_API_KEY, GROQ_API_KEY, OPENROUTER_API_KEY, GEMINI_API_KEY, VERTEXAI_PROJECT, entre otros

Ejemplos de configuración

  • Aplicar opciones avanzadas mediante archivos JSON globales o por proyecto (./.crush.json, ./crush.json, $HOME/.config/crush/crush.json)
  • Configuración de LSP: es posible definir el comando por cada lenguaje
    {  
      "lsp": {  
        "go": { "command": "gopls" },  
        "typescript": { "command": "typescript-language-server", "args": ["--stdio"] }  
      }  
    }  
    
  • Configuración de MCP: ejemplo de extensión externa basada en HTTP/CLI/SSE
    {  
      "mcp": {  
        "filesystem": {  
          "type": "stdio",  
          "command": "node",  
          "args": ["/path/to/mcp-server.js"]  
        }  
      }  
    }  
    
  • Exclusión de archivos y aprobación de herramientas
    • Excluir archivos/carpetas específicas con .crushignore
    • Omitir el prompt con lista blanca de herramientas o con la bandera --yolo

Funciones para usuarios avanzados

  • Registro de proveedor personalizado: añadir APIs compatibles con OpenAI/Anthropic, y definir opciones detalladas como precio y contexto
  • Registro: logs por proyecto y comandos CLI como crush logs y crush logs --follow para revisarlos en tiempo real
  • Opciones de depuración: activar logs detallados con la bandera --debug o desde la configuración

Aún no hay comentarios.

Aún no hay comentarios.