Esta guía explica cómo preparar un entorno básico para trabajar con Zed, Codex y repositorios de GitHub desde la terminal, especialmente cuando la organización usa SSO.
Zed se descarga desde:
https://zed.dev
También se puede ir directo a la página de descarga:
https://zed.dev/download
En Linux, la forma más simple suele ser usar el script oficial:
curl -f https://zed.dev/install.sh | shDespués de instalarlo, se puede abrir desde el menú de aplicaciones o desde la terminal:
zedEn macOS, descargar el archivo .dmg desde la página oficial, abrirlo y arrastrar Zed a Applications.
En Windows, descargar el instalador desde la página oficial y seguir el asistente de instalación.
ACP significa Agent Client Protocol. Es el sistema que permite conectar agentes externos de código, como Codex, Claude Agent, Gemini CLI u otros, dentro de Zed.
Para abrir el ACP Registry:
- Abrir Zed.
- Abrir la Command Palette.
- Buscar:
zed: acp registry
- Entrar al ACP Registry.
- Buscar el agente que se quiera usar.
También se puede acceder desde el Agent Panel usando el botón para agregar agentes.
Codex puede usarse como agente dentro de Zed mediante ACP.
Pasos generales:
- Abrir Zed.
- Abrir el Agent Panel.
- Ir al botón para crear un nuevo thread o agregar agente.
- Elegir Codex.
- Si aparece dentro del ACP Registry, instalarlo desde ahí.
- Abrir un nuevo thread de Codex.
Si Codex ya viene disponible en la versión instalada de Zed, no hace falta configurar nada extra.
Para usar Codex, hay que tener acceso a una cuenta compatible.
Dependiendo de la configuración disponible, puede pedir una de estas dos cosas:
- Iniciar sesión con la cuenta correspondiente.
- Configurar una API key.
Si se usa API key, normalmente se puede exportar como variable de entorno:
export OPENAI_API_KEY="tu_api_key"Para dejarla persistente en la shell, agregarla al archivo correspondiente.
En bash:
vim ~/.bashrcEn zsh:
vim ~/.zshrcAgregar:
export OPENAI_API_KEY="tu_api_key"Después recargar la configuración:
source ~/.bashrco:
source ~/.zshrcPara trabajar con GitHub desde la terminal, lo más cómodo es usar SSH.
Primero revisar si ya existe una llave:
ls ~/.sshSi no existe una llave id_ed25519, crearla:
ssh-keygen -t ed25519 -C "tu_email@example.com"Cuando pregunte dónde guardarla, se puede aceptar la ruta por defecto:
~/.ssh/id_ed25519
Cuando pida passphrase, se puede agregar una contraseña o dejarla vacía.
La llave pública es la que se agrega a GitHub.
Mostrarla en la terminal:
cat ~/.ssh/id_ed25519.pubCopiar todo el contenido que aparece.
Importante: copiar la llave pública, no la privada.
La pública termina en .pub.
La privada no se comparte nunca.
En GitHub:
- Ir a
Settings. - Entrar en
SSH and GPG keys. - Click en
New SSH key. - Poner un título descriptivo, por ejemplo:
Laptop personal
- Pegar la llave pública.
- Guardar.
Después se puede probar la conexión:
ssh -T git@github.comSi está todo bien, GitHub debería responder con un mensaje indicando que autenticó correctamente.
Algunas organizaciones tienen SSO activo. En ese caso, aunque la llave SSH esté bien cargada en GitHub, todavía puede faltar autorizarla para esa organización.
Síntomas típicos:
The organization has enabled or enforced SAML SSO.
O también puede pasar que GitHub diga que no hay acceso al repositorio aunque la llave funcione.
Para revisar y autorizar la llave:
- Ir a GitHub.
- Entrar en
Settings. - Entrar en
SSH and GPG keys. - Buscar la llave agregada.
- Si aparece la opción
Configure SSO, abrirla. - Autorizar la llave para la organización correspondiente.
Si no aparece Configure SSO, puede ser por alguno de estos motivos:
- La organización no usa SSO.
- Todavía no se inició sesión en el SSO de esa organización desde el navegador.
- La cuenta no tiene acceso a esa organización.
- La llave ya está autorizada.
Para clonar un repositorio privado o de una organización, conviene usar la URL SSH.
El formato es:
git clone git@github.com:organizacion/repositorio.gitEjemplo genérico:
git clone git@github.com:acme/backend.gitEntrar al repo:
cd backendVerificar el remote:
git remote -vDebería verse algo parecido a esto:
origin git@github.com:acme/backend.git (fetch)
origin git@github.com:acme/backend.git (push)
Primero revisar la rama actual:
git branch --show-currentAgregar cambios:
git add .Crear un commit:
git commit -m "Initial commit"Subir la rama:
git push origin mainSi la rama local todavía no está asociada al remote:
git push -u origin mainSi la rama se llama distinto:
git push -u origin nombre-de-la-ramaA veces el código ya existe en la computadora, pero todavía no tiene remote configurado.
Entrar a la carpeta del proyecto:
cd proyectoVerificar si ya es un repo Git:
git statusSi no es un repo Git, inicializarlo:
git initVerificar si tiene remotes:
git remote -vSi no devuelve nada, agregar origin:
git remote add origin git@github.com:organizacion/repositorio.gitVerificar:
git remote -vDebería mostrar:
origin git@github.com:organizacion/repositorio.git (fetch)
origin git@github.com:organizacion/repositorio.git (push)
Después subir el código:
git add .
git commit -m "Initial commit"
git push -u origin mainSi el repo ya tiene remote, pero está usando HTTPS, se puede cambiar a SSH.
Ver el remote actual:
git remote -vSi aparece algo así:
origin https://github.com/organizacion/repositorio.git
Cambiarlo a SSH:
git remote set-url origin git@github.com:organizacion/repositorio.gitVerificar:
git remote -vSi al ejecutar:
git remote set-url origin git@github.com:organizacion/repositorio.gitaparece:
error: No such remote 'origin'
significa que ese repo no tiene un remote llamado origin.
Revisar los remotes actuales:
git remote -vSi no aparece nada, agregar origin:
git remote add origin git@github.com:organizacion/repositorio.gitSi aparece otro remote, por ejemplo upstream, se puede usar ese nombre:
git push upstream mainO renombrarlo a origin:
git remote rename upstream originDespués:
git push -u origin mainInstalar Zed:
curl -f https://zed.dev/install.sh | shGenerar llave SSH:
ssh-keygen -t ed25519 -C "tu_email@example.com"Copiar llave pública:
cat ~/.ssh/id_ed25519.pubProbar conexión con GitHub:
ssh -T git@github.comClonar repo por SSH:
git clone git@github.com:organizacion/repositorio.gitAgregar remote si no existe:
git remote add origin git@github.com:organizacion/repositorio.gitCambiar remote HTTPS a SSH:
git remote set-url origin git@github.com:organizacion/repositorio.gitSubir rama actual:
git push -u origin $(git branch --show-current)- Zed instalado.
- ACP Registry abierto en Zed.
- Codex agregado como agente.
- Cuenta o API key de Codex configurada.
- Llave
id_ed25519generada. - Llave pública agregada a GitHub.
- Llave autorizada con SSO si la organización lo requiere.
- Repositorio clonado usando SSH.
- Remote
originconfigurado si el código ya existía localmente. - Push funcionando desde la terminal.