← Volver al listado de tecnologías

Capitulo 4: Integracion con IA en Zed

Por: SiempreListo
zededitoriaagenteszetallmcopilot

Capitulo 4: Integracion con IA

Zed integra IA en todo el flujo de edicion: prediccion de codigo, transformaciones inline, agentes autonomos y soporte para multiples proveedores de modelos.

Anterior: Capitulo 3: LSP y Lenguajes | Siguiente: Capitulo 5: Colaboracion

Funcionalidades de IA en Zed

Zed ofrece tres niveles de asistencia con IA:

  1. Edit Prediction: Completado predictivo en cada pulsacion de tecla
  2. Inline Assistant: Transformaciones de codigo descritas en lenguaje natural
  3. Agent Panel: Agentes que leen, editan archivos y ejecutan comandos

Edit Prediction (Prediccion de Ediciones)

La prediccion de ediciones sugiere codigo en cada pulsacion de tecla. A diferencia del autocompletado tradicional, predice tu proxima edicion completa, no solo la siguiente palabra.

Proveedores Disponibles

ProveedorDescripcion
ZetaModelo open-source de Zed, entrenado con datos abiertos. Gratuito.
GitHub CopilotRequiere suscripcion a Copilot
SupermavenServicio de completado rapido
Mercury CoderPrediccion multi-linea
SweepPrediccion contextual
OllamaModelos locales sin conexion

Configurar Zeta (por defecto)

Zeta viene activado por defecto. No requiere API key ni configuracion adicional:

{
  "features": {
    "edit_prediction_provider": "zeta"
  }
}

Configurar Copilot

{
  "features": {
    "edit_prediction_provider": "copilot"
  }
}

Configurar Supermaven

{
  "features": {
    "edit_prediction_provider": "supermaven"
  }
}

Usar Predicciones

Inline Assistant (Asistente Inline)

El asistente inline te permite seleccionar codigo, describir un cambio en lenguaje natural y que el modelo reescriba la seleccion.

Uso Basico

  1. Selecciona el codigo que quieres transformar
  2. Presiona Ctrl+Enter para abrir el prompt inline
  3. Describe el cambio deseado
  4. El modelo reescribe la seleccion en el lugar

Ejemplos de Uso

# Selecciona una funcion y pide:
"Agrega manejo de errores con Result"

# Selecciona un struct y pide:
"Implementa Display trait para este struct"

# Selecciona un bloque y pide:
"Convierte esto a async/await"

# En la terminal, selecciona el prompt y pide:
"Comando para buscar archivos .rs modificados hoy"

Cursores Multiples

El inline assistant funciona con cursores multiples. Selecciona varias regiones con Cmd+D / Ctrl+D y aplica la misma transformacion a todas simultaneamente.

Configuracion del Inline Assistant

{
  "assistant": {
    "version": "2",
    "default_model": {
      "provider": "anthropic",
      "model": "claude-sonnet-4-20250514"
    }
  }
}

Agent Panel (Panel de Agentes)

El Agent Panel es un agente autonomo que puede leer archivos, editar codigo, ejecutar comandos en terminal, buscar en la web y acceder a diagnosticos.

Abrir el Agent Panel

Usa la paleta de comandos > “assistant: open agent” o el atajo correspondiente.

Capacidades del Agente

El agente tiene herramientas integradas:

Configuracion de Reglas

Puedes definir reglas para el agente en .zed/rules.md en tu proyecto:

# Reglas del Proyecto

- Usa TypeScript estricto
- Sigue el patron de arquitectura hexagonal
- Los tests deben usar vitest
- Escribe comentarios en español

Permisos de Herramientas

Controla que puede hacer el agente en settings:

{
  "assistant": {
    "tools": {
      "terminal": {
        "enabled": true,
        "requires_approval": true
      },
      "file_edit": {
        "enabled": true,
        "requires_approval": false
      }
    }
  }
}

Proveedores de IA

Anthropic (Claude)

{
  "language_models": {
    "anthropic": {
      "api_key": "tu-api-key",
      "version": "1"
    }
  },
  "assistant": {
    "default_model": {
      "provider": "anthropic",
      "model": "claude-sonnet-4-20250514"
    }
  }
}

OpenAI

{
  "language_models": {
    "openai": {
      "api_key": "tu-api-key",
      "version": "1"
    }
  },
  "assistant": {
    "default_model": {
      "provider": "openai",
      "model": "gpt-4o"
    }
  }
}

Google (Gemini)

{
  "language_models": {
    "google": {
      "api_key": "tu-api-key"
    }
  },
  "assistant": {
    "default_model": {
      "provider": "google",
      "model": "gemini-2.0-flash"
    }
  }
}

Ollama (Modelos Locales)

Ejecuta modelos de IA localmente sin enviar datos a la nube:

# Instalar Ollama
curl -fsSL https://ollama.com/install.sh | sh

# Descargar un modelo
ollama pull codellama
ollama pull deepseek-coder

Configuracion en Zed:

{
  "language_models": {
    "ollama": {
      "api_url": "http://localhost:11434"
    }
  },
  "assistant": {
    "default_model": {
      "provider": "ollama",
      "model": "deepseek-coder"
    }
  }
}

Usar Multiples Proveedores

Puedes configurar varios proveedores y cambiar entre ellos por tarea. El selector de modelo en el Agent Panel te permite elegir el modelo para cada conversacion.

MCP Servers (Model Context Protocol)

Extiende las capacidades del agente con servidores MCP que proporcionan herramientas adicionales.

Configuracion de MCP

En tu settings.json o .zed/settings.json:

{
  "context_servers": {
    "my-server": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem"],
      "env": {}
    }
  }
}

Servidores MCP Populares

Buenas Practicas con IA

  1. Se especifico en tus prompts: “Agrega validacion de email al campo input” es mejor que “mejora esto”
  2. Revisa siempre el codigo generado antes de aceptarlo
  3. Usa modelos locales con Ollama para codigo sensible
  4. Combina proveedores: Zeta para completado rapido, Claude para refactoring complejo
  5. Define reglas en .zed/rules.md para que el agente siga tus convenciones

Anterior: Capitulo 3: LSP y Lenguajes | Siguiente: Capitulo 5: Colaboracion