| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345 |
- ---
- title: Introducción
- description: Comience a usar OpenCode.
- ---
- import { Tabs, TabItem } from "@astrojs/starlight/components"
- import config from "../../../../config.mjs"
- export const console = config.console
- [**OpenCode**](/) es un agente de codigo de IA de código abierto. Está disponible como interfaz basada en terminal, aplicación de escritorio o extensión IDE.
- 
- Comencemos.
- ---
- #### Requisitos previos
- Para usar OpenCode en la terminal, necesitará:
- 1. Un emulador de terminal moderno como:
- - [WezTerm](https://wezterm.org), multiplataforma
- - [Alacritty](https://alacritty.org), multiplataforma
- - [Ghostty](https://ghostty.org), Linux y macOS
- - [Kitty](https://sw.kovidgoyal.net/kitty/), Linux y macOS
- 2. Claves de API de los proveedores de LLM que quiera usar.
- ---
- ## Instalar
- La forma más sencilla de instalar OpenCode es mediante el script de instalación.
- ```bash
- curl -fsSL https://opencode.ai/install | bash
- ```
- También puedes instalarlo con alguno de los siguientes métodos:
- - **Usando Node.js**
- <Tabs>
- <TabItem label="npm">
- ```bash
- npm install -g opencode-ai
- ```
- </TabItem>
- <TabItem label="Bun">
- ```bash
- bun install -g opencode-ai
- ```
- </TabItem>
- <TabItem label="pnpm">
- ```bash
- pnpm install -g opencode-ai
- ```
- </TabItem>
- <TabItem label="Yarn">
- ```bash
- yarn global add opencode-ai
- ```
- </TabItem>
- </Tabs>
- - **Usando Homebrew en macOS y Linux**
- ```bash
- brew install anomalyco/tap/opencode
- ```
- > Recomendamos utilizar el tap OpenCode para las versiones más actualizadas. La fórmula oficial `brew install opencode` la mantiene el equipo Homebrew y se actualiza con menos frecuencia.
- - **Usando Paru en Arch Linux**
- ```bash
- sudo pacman -S opencode # Arch Linux (Stable)
- paru -S opencode-bin # Arch Linux (Latest from AUR)
- ```
- #### Windows
- :::tip[Recomendado: Usar WSL]
- Para obtener la mejor experiencia en Windows, recomendamos utilizar [Windows Subsystem for Linux (WSL)](/docs/windows-wsl). Ofrece mejor rendimiento y compatibilidad total con las funciones de OpenCode.
- :::
- - **Usando Chocolatey**
- ```bash
- choco install opencode
- ```
- - **Usando Scoop**
- ```bash
- scoop install opencode
- ```
- - **Usando NPM**
- ```bash
- npm install -g opencode-ai
- ```
- - **Usando Mise**
- ```bash
- mise use -g github:anomalyco/opencode
- ```
- - **Usando Docker**
- ```bash
- docker run -it --rm ghcr.io/anomalyco/opencode
- ```
- El soporte para instalar OpenCode en Windows usando Bun todavía está en desarrollo.
- También puede obtener el binario desde [Versiones](https://github.com/anomalyco/opencode/releases).
- ---
- ## Configuración
- Con OpenCode, puede usar cualquier proveedor de LLM configurando sus claves de API.
- Si es nuevo en el uso de proveedores de LLM, le recomendamos usar [OpenCode Zen](/docs/zen).
- Es una selección de modelos probados y verificados por el equipo de OpenCode.
- 1. Ejecute el comando `/connect` en la TUI, seleccione opencode y diríjase a [opencode.ai/auth](https://opencode.ai/auth).
- ```txt
- /connect
- ```
- 2. Inicie sesión, agregue sus datos de facturación y copie su clave de API.
- 3. Pega tu clave de API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- También puede seleccionar otro proveedor. [Más información](/docs/providers#directory).
- ---
- ## Inicializar
- Ahora que ya configuró un proveedor, vaya al proyecto en el que quiera trabajar.
- ```bash
- cd /path/to/project
- ```
- Luego, ejecute OpenCode.
- ```bash
- opencode
- ```
- A continuación, inicialice OpenCode para el proyecto con el siguiente comando:
- ```bash frame="none"
- /init
- ```
- OpenCode analizará su proyecto y creará un archivo AGENTS.md en la raíz.
- :::tip
- Asegúrese de versionar en Git el archivo AGENTS.md de su proyecto.
- :::
- Esto ayuda a OpenCode a comprender la estructura del proyecto y los patrones de código que se usan en él.
- ---
- ## Usar
- Ahora ya está listo para usar OpenCode en su proyecto. Puede pedirle desde explicaciones del código hasta cambios concretos.
- Si es la primera vez que usa un agente de codigo con IA, estos ejemplos pueden servirle como punto de partida.
- ---
- ### Hacer preguntas
- Puede pedirle a OpenCode que le explique el código base.
- :::tip
- Utilice la tecla `@` para realizar una búsqueda aproximada de archivos dentro del proyecto.
- :::
- ```txt frame="none" "@packages/functions/src/api/index.ts"
- ¿Cómo se maneja la autenticación en @packages/functions/src/api/index.ts
- ```
- Esto resulta útil cuando hay una parte del código base en la que usted no ha trabajado.
- ---
- ### Agregar funcionalidades
- Puede pedirle a OpenCode que agregue nuevas funcionalidades a su proyecto. Aun así, primero recomendamos pedirle que cree un plan.
- 1. **Crear un plan**
- OpenCode tiene un modo Plan que desactiva temporalmente su capacidad de hacer cambios y, en su lugar, propone _cómo_ implementará la funcionalidad.
- Cambie a este modo con la tecla **Tab.** Verá un indicador en la esquina inferior derecha.
- ```bash frame="none" title="Switch to Plan mode"
- <TAB>
- ```
- Ahora describa lo que quiere que haga.
- ```txt frame="none"
- Cuando un usuario elimine una nota, queremos marcarla como eliminada en la base de datos.
- Luego, cree una pantalla que muestre todas las notas eliminadas recientemente.
- Desde esa pantalla, el usuario podrá restaurar una nota o eliminarla de forma permanente.
- ```
- Procure darle a OpenCode suficiente contexto para que entienda exactamente lo que necesita. Ayuda hablarle como si estuviera hablando con un desarrollador junior de su equipo.
- :::tip
- Déle a OpenCode todo el contexto y los ejemplos que pueda para ayudarle a comprender lo que desea.
- :::
- 2. **Iterar sobre el plan**
- Una vez que OpenCode le proponga un plan, puede darle comentarios o agregar más detalles.
- ```txt frame="none"
- Queremos diseñar esta nueva pantalla usando un diseño que ya hemos usado antes.
- [Imagen #1] Revise esta imagen y úsela como referencia.
- ```
- :::tip
- Arrastre y suelte imágenes en la terminal para agregarlas al mensaje.
- :::
- OpenCode puede analizar cualquier imagen que usted le proporcione y añadirla al contexto del mensaje. Puede hacerlo arrastrando y soltando una imagen en la terminal.
- 3. **Implementar la funcionalidad**
- Cuando esté conforme con el plan, vuelva al modo _Build_ presionando de nuevo la tecla Tab.
- ```bash frame="none"
- <TAB>
- ```
- Luego, pídale que haga los cambios.
- ```bash frame="none"
- Perfecto. Continúe y realice los cambios.
- ```
- ---
- ### Realizar cambios
- Para cambios más sencillos, puede pedirle a OpenCode que los implemente directamente, sin revisar antes un plan.
- ```txt frame="none" "@packages/functions/src/settings.ts" "@packages/functions/src/notes.ts"
- Necesitamos agregar autenticación a la ruta /settings. Revise cómo se maneja esto
- en la ruta /notes en @packages/functions/src/notes.ts e implemente
- la misma lógica en @packages/functions/src/settings.ts.
- ```
- Procure dar suficientes detalles para que OpenCode pueda tomar las decisiones correctas al hacer los cambios
- ---
- ### Deshacer cambios
- Supongamos que le pide a OpenCode que haga algunos cambios.
- ```txt frame="none" "@packages/functions/src/api/index.ts"
- ¿Puede refactorizar la función en @packages/functions/src/api/index.ts?
- ```
- Pero luego se da cuenta de que no era lo que quería. Puede **deshacer** los cambios usando el comando `/undo`.
- ```bash frame="none"
- /undo
- ```
- OpenCode revertirá los cambios que hizo y volverá a mostrar su mensaje original.
- ```txt frame="none" "@packages/functions/src/api/index.ts"
- ¿Puede refactorizar la función en @packages/functions/src/api/index.ts?
- ```
- Desde ahí, puede modificar el mensaje y pedirle a OpenCode que lo intente de nuevo.
- :::tip
- Puede ejecutar `/undo` varias veces para deshacer varios cambios.
- :::
- También puede rehacer los cambios usando el comando `/redo.`
- ```bash frame="none"
- /redo
- ```
- ---
- ## Compartir
- Las conversaciones que tenga con OpenCode pueden [compartirse con su
- equipo](/docs/share).
- ```bash frame="none"
- /share
- ```
- Esto creará un enlace a la conversación actual y lo copiará en su portapapeles.
- :::note
- Las conversaciones no se comparten de forma predeterminada.
- :::
- Aquí tiene una [conversación de ejemplo](https://opencode.ai/s/4XP1fce5) con OpenCode.
- ---
- ## Personalizar
- Y eso es todo. Ya conoce lo básico para empezar a usar OpenCode.
- Para personalizarlo, recomendamos [elegir un tema](/docs/themes), [personalizar las combinaciones de teclas](/docs/keybinds), [configurar formateadores de código](/docs/formatters), [crear comandos personalizados](/docs/commands) o explorar la [configuración OpenCode](/docs/config).
|