| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989 |
- ---
- title: Proveedores
- description: Usando cualquier proveedor LLM en OpenCode.
- ---
- import config from "../../../../config.mjs"
- export const console = config.console
- OpenCode usa el [AI SDK](https://ai-sdk.dev/) y [Models.dev](https://models.dev) para admitir **75+ proveedores LLM** y admite la ejecución de modelos locales.
- Para agregar un proveedor necesita:
- 1. Agregue las claves API para el proveedor usando el comando `/connect`.
- 2. Configure el proveedor en su configuración OpenCode.
- ---
- ### Credenciales
- Cuando agrega las claves API de un proveedor con el comando `/connect`, se almacenan
- en `~/.local/share/opencode/auth.json`.
- ---
- ### Configuración
- Puedes personalizar los proveedores a través de la sección `provider` en tu OpenCode
- configuración.
- ---
- #### URL base
- Puede personalizar la URL base para cualquier proveedor configurando la opción `baseURL`. Esto resulta útil cuando se utilizan servicios proxy o puntos finales personalizados.
- ```json title="opencode.json" {6}
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "anthropic": {
- "options": {
- "baseURL": "https://api.anthropic.com/v1"
- }
- }
- }
- }
- ```
- ---
- ## OpenCode Zen
- OpenCode Zen es una lista de modelos proporcionados por el equipo OpenCode que han sido
- probado y verificado para funcionar bien con OpenCode. [Más información](/docs/zen).
- :::tip
- Si eres nuevo, te recomendamos comenzar con OpenCode Zen.
- :::
- 1. Ejecute el comando `/connect` en 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 API.
- 3. Pega tu clave API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute `/models` en TUI para ver la lista de modelos que recomendamos.
- ```txt
- /models
- ```
- Funciona como cualquier otro proveedor en OpenCode y su uso es completamente opcional.
- ---
- ## OpenCode Go
- OpenCode Go es un plan de suscripción de bajo costo que brinda acceso confiable a modelos de codificación abiertos populares proporcionados por el equipo de OpenCode que han sido
- probado y verificado para funcionar bien con OpenCode.
- 1. Ejecute el comando `/connect` en TUI, seleccione `OpenCode Go` y diríjase a [opencode.ai/auth](https://opencode.ai/zen).
- ```txt
- /connect
- ```
- 2. Inicie sesión, agregue sus datos de facturación y copie su clave API.
- 3. Pegue su clave API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute `/models` en TUI para ver la lista de modelos que recomendamos.
- ```txt
- /models
- ```
- Funciona como cualquier otro proveedor en OpenCode y su uso es completamente opcional.
- ---
- ## Directorio
- Veamos algunos de los proveedores en detalle. Si desea agregar un proveedor a la
- lista, no dude en abrir un PR.
- :::note
- ¿No ves un proveedor aquí? Envíe un PR.
- :::
- ---
- ### 302.AI
- 1. Dirígete a la [consola 302.AI](https://302.ai/), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **302.AI**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave 302.AI API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo.
- ```txt
- /models
- ```
- ---
- ### Amazon Bedrock
- Para usar Amazon Bedrock con OpenCode:
- 1. Dirígete al **Catálogo de modelos** en la consola Amazon Bedrock y solicita
- Accede a los modelos que desees.
- :::consejo
- Necesita tener acceso al modelo que desea en Amazon Bedrock.
- :::
- 2. **Configure la autenticación** utilizando uno de los siguientes métodos:
- #### Variables de entorno (Inicio rápido)
- Establezca una de estas variables de entorno mientras ejecuta opencode:
- ```bash
- # Option 1: Using AWS access keys
- AWS_ACCESS_KEY_ID=XXX AWS_SECRET_ACCESS_KEY=YYY opencode
- # Option 2: Using named AWS profile
- AWS_PROFILE=my-profile opencode
- # Option 3: Using Bedrock bearer token
- AWS_BEARER_TOKEN_BEDROCK=XXX opencode
- ```
- O agrégalos a tu perfil de bash:
- ```bash title="~/.bash_profile"
- export AWS_PROFILE=my-dev-profile
- export AWS_REGION=us-east-1
- ```
- #### Archivo de configuración (recomendado)
- Para una configuración persistente o específica del proyecto, utilice `opencode.json`:
- ```json title="opencode.json"
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "amazon-bedrock": {
- "options": {
- "region": "us-east-1",
- "profile": "my-aws-profile"
- }
- }
- }
- }
- ```
- **Opciones disponibles:**
- - `region` - AWS región (p. ej., `us-east-1`, `eu-west-1`)
- - `profile` - AWS perfil con nombre de `~/.aws/credentials`
- - `endpoint`: URL de punto de enlace personalizada para puntos de enlace de la VPC (alias para la opción genérica `baseURL`)
- :::consejo
- Las opciones del archivo de configuración tienen prioridad sobre las variables de entorno.
- :::
- #### Avanzado: puntos finales de la VPC
- Si utiliza puntos de enlace de VPC para Bedrock:
- ```json title="opencode.json"
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "amazon-bedrock": {
- "options": {
- "region": "us-east-1",
- "profile": "production",
- "endpoint": "https://bedrock-runtime.us-east-1.vpce-xxxxx.amazonaws.com"
- }
- }
- }
- }
- ```
- :::nota
- La opción `endpoint` es un alias para la opción genérica `baseURL`, que utiliza terminología específica de AWS. Si se especifican `endpoint` y `baseURL`, `endpoint` tiene prioridad.
- :::
- #### Métodos de autenticación
- - **`AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY`**: Crear un usuario de IAM y generar claves de acceso en la Consola AWS
- - **`AWS_PROFILE`**: Utilice perfiles con nombre de `~/.aws/credentials`. Primero configure con `aws configure --profile my-profile` o `aws sso login`
- - **`AWS_BEARER_TOKEN_BEDROCK`**: Genera claves API a largo plazo desde la consola Amazon Bedrock
- - **`AWS_WEB_IDENTITY_TOKEN_FILE` / `AWS_ROLE_ARN`**: Para EKS IRSA (Roles IAM para Cuentas de Servicio) u otros entornos de Kubernetes con federación OIDC. Kubernetes inyecta automáticamente estas variables de entorno cuando se utilizan anotaciones de cuentas de servicio.
- #### Prioridad de autenticación
- Amazon Bedrock utiliza la siguiente prioridad de autenticación:
- 1. **Bearer token** - variable de entorno `AWS_BEARER_TOKEN_BEDROCK` o token del comando `/connect`
- 2. **AWS Cadena de credenciales**: perfil, claves de acceso, credenciales compartidas, roles de IAM, tokens de identidad web (EKS IRSA), metadatos de instancia
- :::nota
- Cuando se define un bearer token (a traves de `/connect` o `AWS_BEARER_TOKEN_BEDROCK`), tiene prioridad sobre todos los metodos de credenciales de AWS, incluidos los perfiles configurados.
- :::
- 3. Ejecute el comando `/models` para seleccionar el modelo que desee.
- ```txt
- /models
- ```
- :::note
- Para perfiles de inferencia personalizados, utilice el modelo y el nombre del proveedor en la clave y establezca la propiedad `id` en arn. Esto garantiza un almacenamiento en caché correcto:
- ```json title="opencode.json"
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "amazon-bedrock": {
- // ...
- "models": {
- "anthropic-claude-sonnet-4.5": {
- "id": "arn:aws:bedrock:us-east-1:xxx:application-inference-profile/yyy"
- }
- }
- }
- }
- }
- ```
- :::
- ---
- ### Anthropic
- 1. Una vez que se haya registrado, ejecute el comando `/connect` y seleccione Anthropic.
- ```txt
- /connect
- ```
- 2. Aquí puedes seleccionar la opción **Claude Pro/Max** y se abrirá tu navegador.
- y pedirle que se autentique.
- ```txt
- ┌ Select auth method
- │
- │ Claude Pro/Max
- │ Create an API Key
- │ Manually enter API Key
- └
- ```
- 3. Ahora todos los modelos Anthropic deberían estar disponibles cuando use el comando `/models`.
- ```txt
- /models
- ```
- :::info
- El uso de su suscripción Claude Pro/Max en OpenCode no está oficialmente respaldado por [Anthropic](https://anthropic.com).
- :::
- ##### Usando las teclas API
- También puede seleccionar **Crear una clave API** si no tiene una suscripción Pro/Max. También abrirá su navegador y le pedirá que inicie sesión en Anthropic y le dará un código que puede pegar en su terminal.
- O si ya tienes una clave API, puedes seleccionar **Ingresar manualmente la clave API** y pegarla en tu terminal.
- ---
- ### Atomic Chat
- Puedes configurar opencode para usar modelos locales mediante [Atomic Chat](https://atomic.chat), una aplicación de escritorio que ejecuta LLMs locales detrás de un servidor API compatible con OpenAI (endpoint por defecto `http://127.0.0.1:1337/v1`).
- ```json title="opencode.json" "atomic-chat" {5, 6, 8, 10-14}
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "atomic-chat": {
- "npm": "@ai-sdk/openai-compatible",
- "name": "Atomic Chat (local)",
- "options": {
- "baseURL": "http://127.0.0.1:1337/v1"
- },
- "models": {
- "<your-model-id>": {
- "name": "<your-model-name>"
- }
- }
- }
- }
- }
- ```
- En este ejemplo:
- - `atomic-chat` es el identificador personalizado del proveedor. Puede ser cualquier cadena que quieras.
- - `npm` especifica el paquete que se usará para este proveedor. Aquí se usa `@ai-sdk/openai-compatible` para cualquier API compatible con OpenAI.
- - `name` es el nombre que se muestra para el proveedor en la interfaz.
- - `options.baseURL` es el endpoint del servidor local. Cambia el host y el puerto según tu configuración de Atomic Chat.
- - `models` es un mapa de IDs de modelos a sus nombres de pantalla. Cada ID debe coincidir con el `id` devuelto por `GET /v1/models` — ejecuta `curl http://127.0.0.1:1337/v1/models` para listar los IDs cargados actualmente en Atomic Chat.
- :::tip
- Si las llamadas a herramientas no funcionan bien, elige un modelo cargado con buen soporte para tool calling (por ejemplo, una variante Qwen-Coder o DeepSeek-Coder).
- :::
- ---
- ### Azure OpenAI
- :::note
- Si encuentra errores del tipo "Lo siento, pero no puedo ayudar con esa solicitud", intente cambiar el filtro de contenido de **DefaultV2** a **Default** en su recurso de Azure.
- :::
- 1. Diríjase al [portal de Azure](https://portal.azure.com/) y cree un recurso **Azure OpenAI**. Necesitarás:
- - **Nombre del recurso**: esto pasa a formar parte de su punto final API (`https://RESOURCE_NAME.openai.azure.com/`)
- - **Clave API**: `KEY 1` o `KEY 2` de su recurso
- 2. Vaya a [Azure AI Foundry](https://ai.azure.com/) e implemente un modelo.
- :::nota
- El nombre de la implementación debe coincidir con el nombre del modelo para que opencode funcione correctamente.
- :::
- 3. Ejecute el comando `/connect` y busque **Azure**.
- ```txt
- /connect
- ```
- 4. Ingrese su clave API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 5. Configure el nombre de su recurso como una variable de entorno:
- ```bash
- AZURE_RESOURCE_NAME=XXX opencode
- ```
- O agrégalo a tu perfil de bash:
- ```bash title="~/.bash_profile"
- export AZURE_RESOURCE_NAME=XXX
- ```
- 6. Ejecute el comando `/models` para seleccionar su modelo implementado.
- ```txt
- /models
- ```
- ---
- ### Servicios cognitivos de Azure
- 1. Diríjase al [portal de Azure](https://portal.azure.com/) y cree un recurso **Azure OpenAI**. Necesitarás:
- - **Nombre del recurso**: esto pasa a formar parte de su punto final API (`https://AZURE_COGNITIVE_SERVICES_RESOURCE_NAME.cognitiveservices.azure.com/`)
- - **Clave API**: `KEY 1` o `KEY 2` de su recurso
- 2. Vaya a [Azure AI Foundry](https://ai.azure.com/) e implemente un modelo.
- :::nota
- El nombre de la implementación debe coincidir con el nombre del modelo para que opencode funcione correctamente.
- :::
- 3. Ejecute el comando `/connect` y busque **Azure Cognitive Services**.
- ```txt
- /connect
- ```
- 4. Ingrese su clave API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 5. Configure el nombre de su recurso como una variable de entorno:
- ```bash
- AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX opencode
- ```
- O agrégalo a tu perfil de bash:
- ```bash title="~/.bash_profile"
- export AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX
- ```
- 6. Ejecute el comando `/models` para seleccionar su modelo implementado.
- ```txt
- /models
- ```
- ---
- ### Baseten
- 1. Dirígete a [Baseten](https://app.baseten.co/), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **Baseten**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Baseten API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo.
- ```txt
- /models
- ```
- ---
- ### Cerebras
- 1. Dirígete a la [consola Cerebras](https://inference.cerebras.ai/), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **Cerebras**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Cerebras API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _Qwen 3 Coder 480B_.
- ```txt
- /models
- ```
- ---
- ### Cloudflare AI Gateway
- Cloudflare AI Gateway le permite acceder a modelos de OpenAI, Anthropic, Workers AI y más a través de un punto final unificado. Con [Facturación unificada](https://developers.cloudflare.com/ai-gateway/features/unified-billing/) no necesita claves API independientes para cada proveedor.
- 1. Dirígete al [panel de Cloudflare](https://dash.cloudflare.com/), navega hasta **AI** > **AI Gateway** y crea una nueva puerta de enlace.
- 2. Configure su ID de cuenta y su ID de puerta de enlace como variables de entorno.
- ```bash title="~/.bash_profile"
- export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id
- export CLOUDFLARE_GATEWAY_ID=your-gateway-id
- ```
- 3. Ejecute el comando `/connect` y busque **Cloudflare AI Gateway**.
- ```txt
- /connect
- ```
- 4. Ingrese su token API de Cloudflare.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- O configúrelo como una variable de entorno.
- ```bash title="~/.bash_profile"
- export CLOUDFLARE_API_TOKEN=your-api-token
- ```
- 5. Ejecute el comando `/models` para seleccionar un modelo.
- ```txt
- /models
- ```
- También puede agregar modelos a través de su configuración opencode.
- ```json title="opencode.json"
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "cloudflare-ai-gateway": {
- "models": {
- "openai/gpt-4o": {},
- "anthropic/claude-sonnet-4": {}
- }
- }
- }
- }
- ```
- ---
- ### Córtecs
- 1. Dirígete a la [consola de Cortecs](https://cortecs.ai/), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **Cortecs**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Cortecs API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _Kimi K2 Instruct_.
- ```txt
- /models
- ```
- ---
- ### DeepSeek
- 1. Dirígete a la [consola de DeepSeek](https://platform.deepseek.com/), crea una cuenta y haz clic en **Crear nueva clave API**.
- 2. Ejecute el comando `/connect` y busque **DeepSeek**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave DeepSeek API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo de DeepSeek como _DeepSeek V4 Pro_.
- ```txt
- /models
- ```
- ---
- ### Deep Infra
- 1. Dirígete al [panel de Deep Infra](https://deepinfra.com/dash), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **Deep Infra**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Deep Infra API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo.
- ```txt
- /models
- ```
- ---
- ### FrogBot
- 1. Dirígete al [Panel de frogbot](https://app.frogbot.ai/signup), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **FrogBot**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave de frogbot API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo.
- ```txt
- /models
- ```
- ---
- ### Fireworks AI
- 1. Dirígete a la [Consola de Fireworks AI](https://app.fireworks.ai/), crea una cuenta y haz clic en **Crear clave API**.
- 2. Ejecute el comando `/connect` y busque **Fireworks AI**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave API de AI de Fireworks.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _Kimi K2 Instruct_.
- ```txt
- /models
- ```
- ---
- ### GitLab Duo
- GitLab Duo proporciona chat agente basado en IA con capacidades de llamada de herramientas nativas a través del proxy Anthropic de GitLab.
- 1. Ejecute el comando `/connect` y seleccione GitLab.
- ```txt
- /connect
- ```
- 2. Elija su método de autenticación:
- ```txt
- ┌ Select auth method
- │
- │ OAuth (Recommended)
- │ Personal Access Token
- │
- └
- ```
- #### Usando OAuth (recomendado)
- Seleccione **OAuth** y su navegador se abrirá para autorización.
- #### Uso del token de acceso personal
- 1. Vaya a [GitLab Configuración de usuario > Tokens de acceso](https://gitlab.com/-/user_settings/personal_access_tokens)
- 2. Haga clic en **Agregar nuevo token**
- 3. Nombre: `OpenCode`, Alcances: `api`
- 4. Copie el token (comienza con `glpat-`)
- 5. Introdúcelo en la terminal.
- 3. Ejecute el comando `/models` para ver los modelos disponibles.
- ```txt
- /models
- ```
- Hay tres modelos basados en Claude disponibles:
- - **duo-chat-haiku-4-5** (predeterminado) - Respuestas rápidas para tareas rápidas
- - **duo-chat-sonnet-4-5** - Rendimiento equilibrado para la mayoría de los flujos de trabajo
- - **duo-chat-opus-4-5** - Más capaz para análisis complejos
- :::note
- También puede especificar la variable de entorno 'GITLAB_TOKEN' si no desea
- para almacenar el token en el almacenamiento de autenticación opencode.
- :::
- ##### Autohospedado GitLab
- :::note[nota de cumplimiento]
- OpenCode utiliza un modelo pequeño para algunas tareas de IA, como generar el título de la sesión.
- Está configurado para usar gpt-5-nano de forma predeterminada, alojado por Zen. Para bloquear OpenCode
- Para usar solo su propia instancia alojada en GitLab, agregue lo siguiente a su
- Archivo `opencode.json`. También se recomienda desactivar el uso compartido de sesiones.
- ```json
- {
- "$schema": "https://opencode.ai/config.json",
- "small_model": "gitlab/duo-chat-haiku-4-5",
- "share": "disabled"
- }
- ```
- :::
- Para instancias GitLab autohospedadas:
- ```bash
- export GITLAB_INSTANCE_URL=https://gitlab.company.com
- export GITLAB_TOKEN=glpat-...
- ```
- Si su instancia ejecuta una puerta de enlace AI personalizada:
- ```bash
- GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com
- ```
- O agregue a su perfil de bash:
- ```bash title="~/.bash_profile"
- export GITLAB_INSTANCE_URL=https://gitlab.company.com
- export GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com
- export GITLAB_TOKEN=glpat-...
- ```
- :::note
- Su administrador GitLab debe habilitar lo siguiente:
- 1. [Plataforma de agente Duo](https://docs.gitlab.com/user/duo_agent_platform/turn_on_off/) para el usuario, grupo o instancia
- 2. Indicadores de funciones (a través de la consola Rails):
- - `agent_platform_claude_code`
- - `third_party_agents_enabled`
- :::
- ##### OAuth para instancias autohospedadas
- Para que Oauth funcione para su instancia autohospedada, debe crear
- una nueva aplicación (Configuración → Aplicaciones) con el
- URL de devolución de llamada `http://127.0.0.1:8080/callback` y siguientes ámbitos:
- - api (Acceda al API en su nombre)
- - read_user (Lee tu información personal)
- - read_repository (Permite acceso de solo lectura al repositorio)
- Luego exponga el ID de la aplicación como variable de entorno:
- ```bash
- export GITLAB_OAUTH_CLIENT_ID=your_application_id_here
- ```
- Más documentación en la página de inicio de [opencode-gitlab-auth](https://www.npmjs.com/package/opencode-gitlab-auth).
- ##### Configuración
- Personalizar a través de `opencode.json`:
- ```json title="opencode.json"
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "gitlab": {
- "options": {
- "instanceUrl": "https://gitlab.com"
- }
- }
- }
- }
- ```
- ##### Herramientas de API de GitLab (opcionales, pero muy recomendables)
- Para acceder a herramientas GitLab (solicitudes de fusión, problemas, canalizaciones, CI/CD, etc.):
- ```json title="opencode.json"
- {
- "$schema": "https://opencode.ai/config.json",
- "plugin": ["opencode-gitlab-plugin"]
- }
- ```
- Este complemento proporciona capacidades integrales de administración del repositorio GitLab que incluyen revisiones de MR, seguimiento de problemas, monitoreo de canalizaciones y más.
- ---
- ### GitHub Copilot
- Para utilizar su suscripción GitHub Copilot con opencode:
- :::note
- Algunos modelos pueden necesitar un [Pro+
- suscripción](https://github.com/features/copilot/plans) para usar.
- :::
- 1. Ejecute el comando `/connect` y busque GitHub Copilot.
- ```txt
- /connect
- ```
- 2. Navegue hasta [github.com/login/device](https://github.com/login/device) e ingrese el código.
- ```txt
- ┌ Login with GitHub Copilot
- │
- │ https://github.com/login/device
- │
- │ Enter code: 8F43-6FCF
- │
- │
- └ Waiting for authorization...
- ```
- 3. Ahora ejecute el comando `/models` para seleccionar el modelo que desea.
- ```txt
- /models
- ```
- ---
- ### Google Vertex AI
- Para utilizar Google Vertex AI con OpenCode:
- 1. Dirígete a **Model Garden** en Google Cloud Console y verifica el
- Modelos disponibles en su región.
- :::note
- Debes tener un proyecto de Google Cloud con Vertex AI API habilitado.
- :::
- 2. Establezca las variables de entorno requeridas:
- - `GOOGLE_CLOUD_PROJECT`: tu ID de proyecto de Google Cloud
- - `VERTEX_LOCATION` (opcional): la región para Vertex AI (por defecto es `global`)
- - Autenticación (elija una):
- - `GOOGLE_APPLICATION_CREDENTIALS`: ruta al archivo clave JSON de su cuenta de servicio
- - Autenticar usando gcloud CLI: `gcloud auth application-default login`
- Configúrelos mientras ejecuta opencode.
- ```bash
- GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json GOOGLE_CLOUD_PROJECT=your-project-id opencode
- ```
- O agréguelos a su perfil de bash.
- ```bash title="~/.bash_profile"
- export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
- export GOOGLE_CLOUD_PROJECT=your-project-id
- export VERTEX_LOCATION=global
- ```
- :::tip
- La región `global` mejora la disponibilidad y reduce los errores sin costo adicional. Utilice puntos finales regionales (por ejemplo, `us-central1`) para los requisitos de residencia de datos. [Más información](https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models#regional_and_global_endpoints)
- :::
- 3. Ejecute el comando `/models` para seleccionar el modelo que desee.
- ```txt
- /models
- ```
- ---
- ### Groq
- 1. Dirígete a la [consola Groq](https://console.groq.com/), haz clic en **Crear clave API** y copia la clave.
- 2. Ejecute el comando `/connect` y busque Groq.
- ```txt
- /connect
- ```
- 3. Ingrese la clave API para el proveedor.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar el que desee.
- ```txt
- /models
- ```
- ---
- ### Hugging Face
- [Hugging Face Inference Providers](https://huggingface.co/docs/inference-providers) proporciona acceso a modelos abiertos compatibles con más de 17 proveedores.
- 1. Ve a [Hugging Face settings](https://huggingface.co/settings/tokens/new?ownUserPermissions=inference.serverless.write&tokenType=fineGrained) para crear un token con permisos para llamar a inference providers.
- 2. Ejecute el comando `/connect` y busque **Hugging Face**.
- ```txt
- /connect
- ```
- 3. Ingresa tu token de Hugging Face.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _Kimi-K2-Instruct_ o _GLM-4.6_.
- ```txt
- /models
- ```
- ---
- ### Helicone
- [Helicone](https://helicone.ai) es una plataforma de observabilidad LLM que proporciona registro, monitoreo y análisis para sus aplicaciones de IA. Helicone AI Gateway enruta sus solicitudes al proveedor apropiado automáticamente según el modelo.
- 1. Dirígete a [Helicone](https://helicone.ai), crea una cuenta y genera una clave API desde tu panel.
- 2. Ejecute el comando `/connect` y busque **Helicone**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Helicone API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo.
- ```txt
- /models
- ```
- Para obtener más proveedores y funciones avanzadas como almacenamiento en caché y limitación de velocidad, consulte la [documentación de Helicone](https://docs.helicone.ai).
- #### Configuraciones opcionales
- En caso de que vea una característica o modelo de Helicone que no esté configurado automáticamente a través de opencode, siempre podrá configurarlo usted mismo.
- Aquí está el [Directorio de modelos de Helicone](https://helicone.ai/models), lo necesitará para obtener las ID de los modelos que desea agregar.
- ```jsonc title="~/.config/opencode/opencode.jsonc"
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "helicone": {
- "npm": "@ai-sdk/openai-compatible",
- "name": "Helicone",
- "options": {
- "baseURL": "https://ai-gateway.helicone.ai",
- },
- "models": {
- "gpt-4o": {
- // Model ID (from Helicone's model directory page)
- "name": "GPT-4o", // Your own custom name for the model
- },
- "claude-sonnet-4-20250514": {
- "name": "Claude Sonnet 4",
- },
- },
- },
- },
- }
- ```
- #### Encabezados personalizados
- Helicone admite encabezados personalizados para funciones como almacenamiento en caché, seguimiento de usuarios y gestión de sesiones. Agréguelos a la configuración de su proveedor usando `options.headers`:
- ```jsonc title="~/.config/opencode/opencode.jsonc"
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "helicone": {
- "npm": "@ai-sdk/openai-compatible",
- "name": "Helicone",
- "options": {
- "baseURL": "https://ai-gateway.helicone.ai",
- "headers": {
- "Helicone-Cache-Enabled": "true",
- "Helicone-User-Id": "opencode",
- },
- },
- },
- },
- }
- ```
- ##### Seguimiento de sesión
- La función [Sesiones](https://docs.helicone.ai/features/sessions) de Helicone le permite agrupar solicitudes LLM relacionadas. Utilice el complemento [opencode-helicone-session](https://github.com/H2Shami/opencode-helicone-session) para registrar automáticamente cada conversación OpenCode como una sesión en Helicone.
- ```bash
- npm install -g opencode-helicone-session
- ```
- Agréguelo a su configuración.
- ```json title="opencode.json"
- {
- "plugin": ["opencode-helicone-session"]
- }
- ```
- El complemento inyecta encabezados `Helicone-Session-Id` y `Helicone-Session-Name` en sus solicitudes. En la página Sesiones de Helicone, verá cada conversación OpenCode enumerada como una sesión separada.
- ##### Cabeceras comunes de Helicone
- | Encabezado | Descripción |
- | -------------------------- | --------------------------------------------------------------------------------- |
- | `Helicone-Cache-Enabled` | Habilitar el almacenamiento en caché de respuestas (`true`/`false`) |
- | `Helicone-User-Id` | Seguimiento de métricas por usuario |
- | `Helicone-Property-[Name]` | Agregar propiedades personalizadas (por ejemplo, `Helicone-Property-Environment`) |
- | `Helicone-Prompt-Id` | Solicitudes asociadas con versiones rápidas |
- Consulte el [Directorio de encabezados de Helicone](https://docs.helicone.ai/helicone-headers/header-directory) para conocer todos los encabezados disponibles.
- ---
- ### llama.cpp
- Puede configurar opencode para usar modelos locales a través de la utilidad llama-server de [llama.cpp](https://github.com/ggml-org/llama.cpp)
- ```json title="opencode.json" "llama.cpp" {5, 6, 8, 10-15}
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "llama.cpp": {
- "npm": "@ai-sdk/openai-compatible",
- "name": "llama-server (local)",
- "options": {
- "baseURL": "http://127.0.0.1:8080/v1"
- },
- "models": {
- "qwen3-coder:a3b": {
- "name": "Qwen3-Coder: a3b-30b (local)",
- "limit": {
- "context": 128000,
- "output": 65536
- }
- }
- }
- }
- }
- }
- ```
- En este ejemplo:
- - `llama.cpp` es el ID del proveedor personalizado. Puede ser cualquier cadena que desees.
- - `npm` especifica el paquete que se utilizará para este proveedor. Aquí, `@ai-sdk/openai-compatible` se utiliza para cualquier OpenAI compatible con API.
- - `name` es el nombre para mostrar del proveedor en la interfaz de usuario.
- - `options.baseURL` es el punto final del servidor local.
- - `models` es un mapa de ID de modelo para sus configuraciones. El nombre del modelo se mostrará en la lista de selección de modelos.
- ---
- ### IO.NET
- IO.NET ofrece 17 modelos optimizados para varios casos de uso:
- 1. Dirígete a la [consola IO.NET](https://ai.io.net/), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **IO.NET**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave IO.NET API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo.
- ```txt
- /models
- ```
- ---
- ### LM Studio
- Puede configurar opencode para usar modelos locales a través de LM Studio.
- ```json title="opencode.json" "lmstudio" {5, 6, 8, 10-14}
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "lmstudio": {
- "npm": "@ai-sdk/openai-compatible",
- "name": "LM Studio (local)",
- "options": {
- "baseURL": "http://127.0.0.1:1234/v1"
- },
- "models": {
- "google/gemma-3n-e4b": {
- "name": "Gemma 3n-e4b (local)"
- }
- }
- }
- }
- }
- ```
- En este ejemplo:
- - `lmstudio` es el ID del proveedor personalizado. Puede ser cualquier cadena que desees.
- - `npm` especifica el paquete que se utilizará para este proveedor. Aquí, `@ai-sdk/openai-compatible` se utiliza para cualquier OpenAI compatible con API.
- - `name` es el nombre para mostrar del proveedor en la interfaz de usuario.
- - `options.baseURL` es el punto final del servidor local.
- - `models` es un mapa de ID de modelo para sus configuraciones. El nombre del modelo se mostrará en la lista de selección de modelos.
- ---
- ### Moonshot AI
- Para usar Kimi K2 de Moonshot AI:
- 1. Dirígete a la [consola Moonshot AI](https://platform.moonshot.ai/console), crea una cuenta y haz clic en **Crear clave API**.
- 2. Ejecute el comando `/connect` y busque **Moonshot AI**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Moonshot API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar _Kimi K2_.
- ```txt
- /models
- ```
- ---
- ### MiniMax
- 1. Dirígete a la [Consola MiniMax API](https://platform.minimax.io/login), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **MiniMax**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave MiniMax API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _M2.1_.
- ```txt
- /models
- ```
- ---
- ### Nebius Token Factory
- 1. Dirígete a la [consola de Nebius Token Factory](https://tokenfactory.nebius.com/), crea una cuenta y haz clic en **Agregar clave**.
- 2. Ejecute el comando `/connect` y busque **Nebius Token Factory**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave API de Nebius Token Factory.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _Kimi K2 Instruct_.
- ```txt
- /models
- ```
- ---
- ### Ollama
- Puedes configurar opencode para usar modelos locales a través de Ollama.
- :::tip
- Ollama puede configurarse automáticamente para OpenCode. Consulte los [documentos de integración de Ollama](https://docs.ollama.com/integrations/opencode) para obtener más detalles.
- :::
- ```json title="opencode.json" "ollama" {5, 6, 8, 10-14}
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "ollama": {
- "npm": "@ai-sdk/openai-compatible",
- "name": "Ollama (local)",
- "options": {
- "baseURL": "http://localhost:11434/v1"
- },
- "models": {
- "llama2": {
- "name": "Llama 2"
- }
- }
- }
- }
- }
- ```
- En este ejemplo:
- - `ollama` es el ID del proveedor personalizado. Puede ser cualquier cadena que desees.
- - `npm` especifica el paquete que se utilizará para este proveedor. Aquí, `@ai-sdk/openai-compatible` se utiliza para cualquier OpenAI compatible con API.
- - `name` es el nombre para mostrar del proveedor en la interfaz de usuario.
- - `options.baseURL` es el punto final del servidor local.
- - `models` es un mapa de ID de modelo para sus configuraciones. El nombre del modelo se mostrará en la lista de selección de modelos.
- :::tip
- Si las llamadas a herramientas no funcionan, intente aumentar `num_ctx` en Ollama. Comience alrededor de 16k - 32k.
- :::
- ---
- ### Ollama Cloud
- Para usar Ollama Cloud con OpenCode:
- 1. Dirígete a [https://ollama.com/](https://ollama.com/) e inicia sesión o crea una cuenta.
- 2. Vaya a **Configuración** > **Claves** y haga clic en **Agregar clave API** para generar una nueva clave API.
- 3. Copie la clave API para usarla en OpenCode.
- 4. Ejecute el comando `/connect` y busque **Ollama Cloud**.
- ```txt
- /connect
- ```
- 5. Ingrese su clave Ollama Cloud API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 6. **Importante**: Antes de usar modelos en la nube en OpenCode, debe obtener la información del modelo localmente:
- ```bash
- ollama pull gpt-oss:20b-cloud
- ```
- 7. Ejecute el comando `/models` para seleccionar su modelo de Ollama Cloud.
- ```txt
- /models
- ```
- ---
- ### OpenAI
- Recomendamos registrarse en [ChatGPT Plus o Pro](https://chatgpt.com/pricing).
- 1. Una vez que se haya registrado, ejecute el comando `/connect` y seleccione OpenAI.
- ```txt
- /connect
- ```
- 2. Aquí puedes seleccionar la opción **ChatGPT Plus/Pro** y se abrirá tu navegador.
- y pedirle que se autentique.
- ```txt
- ┌ Select auth method
- │
- │ ChatGPT Plus/Pro
- │ Manually enter API Key
- │
- └
- ```
- 3. Ahora todos los modelos OpenAI deberían estar disponibles cuando use el comando `/models`.
- ```txt
- /models
- ```
- ##### Usando las teclas API
- Si ya tiene una clave API, puede seleccionar **Ingresar manualmente la clave API** y pegarla en su terminal.
- ---
- ### OpenCode Zen
- OpenCode Zen es una lista de modelos probados y verificados proporcionada por el equipo OpenCode. [Más información](/docs/zen).
- 1. Inicie sesión en **<a href={console}>OpenCode Zen</a>** y haga clic en **Crear API clave**.
- 2. Ejecute el comando `/connect` y busque **OpenCode Zen**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave OpenCode API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _Qwen 3 Coder 480B_.
- ```txt
- /models
- ```
- ---
- ### OpenRouter
- 1. Dirígete al [panel de OpenRouter](https://openrouter.ai/settings/keys), haz clic en **Crear clave API** y copia la clave.
- 2. Ejecute el comando `/connect` y busque OpenRouter.
- ```txt
- /connect
- ```
- 3. Ingrese la clave API para el proveedor.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Muchos modelos de OpenRouter están precargados de forma predeterminada, ejecute el comando `/models` para seleccionar el que desee.
- ```txt
- /models
- ```
- También puede agregar modelos adicionales a través de su configuración opencode.
- ```json title="opencode.json" {6}
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "openrouter": {
- "models": {
- "somecoolnewmodel": {}
- }
- }
- }
- }
- ```
- 5. También puedes personalizarlos a través de tu configuración opencode. A continuación se muestra un ejemplo de cómo especificar un proveedor.
- ```json title="opencode.json"
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "openrouter": {
- "models": {
- "moonshotai/kimi-k2": {
- "options": {
- "provider": {
- "order": ["baseten"],
- "allow_fallbacks": false
- }
- }
- }
- }
- }
- }
- }
- ```
- ---
- ### SAP AI Core
- SAP AI Core brinda acceso a más de 40 modelos de OpenAI, Anthropic, Google, Amazon, Meta, Mistral y AI21 a través de una plataforma unificada.
- 1. Vaya a su [SAP BTP Cockpit](https://account.hana.ondemand.com/), navegue hasta su instancia de servicio SAP AI Core y cree una clave de servicio.
- :::consejo
- La clave de servicio es un objeto JSON que contiene `clientid`, `clientsecret`, `url` y `serviceurls.AI_API_URL`. Puede encontrar su instancia de AI Core en **Servicios** > **Instancias y suscripciones** en BTP Cockpit.
- :::
- 2. Ejecute el comando `/connect` y busque **SAP AI Core**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave de servicio JSON.
- ```txt
- ┌ Service key
- │
- │
- └ enter
- ```
- O configure la variable de entorno `AICORE_SERVICE_KEY`:
- ```bash
- AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' opencode
- ```
- O agrégalo a tu perfil de bash:
- ```bash title="~/.bash_profile"
- export AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}'
- ```
- 4. Opcionalmente, configure el ID de implementación y el grupo de recursos:
- ```bash
- AICORE_DEPLOYMENT_ID=your-deployment-id AICORE_RESOURCE_GROUP=your-resource-group opencode
- ```
- :::note
- Estas configuraciones son opcionales y deben configurarse de acuerdo con su configuración de SAP AI Core.
- :::
- 5. Ejecute el comando `/models` para seleccionar entre más de 40 modelos disponibles.
- ```txt
- /models
- ```
- ---
- ### STACKIT
- STACKIT AI Model Serving proporciona un entorno de alojamiento soberano totalmente gestionado para modelos de IA, centrándose en LLM como Llama, Mistral y Qwen, con máxima soberanía de datos en infraestructura europea.
- 1. Diríjase al [Portal STACKIT](https://portal.stackit.cloud), navegue hasta **AI Model Serving** y cree un token de autenticación para su proyecto.
- :::tip
- Necesita una cuenta de cliente STACKIT, una cuenta de usuario y un proyecto antes de crear tokens de autenticación.
- :::
- 2. Ejecute el comando `/connect` y busque **STACKIT**.
- ```txt
- /connect
- ```
- 3. Ingrese su token de autenticación de STACKIT AI Model Serving.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar entre los modelos disponibles como _Qwen3-VL 235B_ o _Llama 3.3 70B_.
- ```txt
- /models
- ```
- ---
- ### OVHcloud AI Endpoints
- 1. Dirígete al [panel de OVHcloud](https://ovh.com/manager). Navegue a la sección `Public Cloud`, `AI & Machine Learning` > `AI Endpoints` y en la pestaña `API Keys`, haga clic en **Crear una nueva clave API**.
- 2. Ejecute el comando `/connect` y busque **OVHcloud AI Endpoints**.
- ```txt
- /connect
- ```
- 3. Introduzca la clave API de sus OVHcloud AI Endpoints.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _gpt-oss-120b_.
- ```txt
- /models
- ```
- ---
- ### Scaleway
- Para utilizar [API generativas de Scaleway](https://www.scaleway.com/en/docs/generative-apis/) con OpenCode:
- 1. Dirígete a la [Configuración de IAM de la consola Scaleway](https://console.scaleway.com/iam/api-keys) para generar una nueva clave API.
- 2. Ejecute el comando `/connect` y busque **Scaleway**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Scaleway API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _devstral-2-123b-instruct-2512_ o _gpt-oss-120b_.
- ```txt
- /models
- ```
- ---
- ### Together AI
- 1. Dirígete a la [consola de Together AI](https://api.together.ai), crea una cuenta y haz clic en **Agregar clave**.
- 2. Ejecute el comando `/connect` y busque **Together AI**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Together AI API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _Kimi K2 Instruct_.
- ```txt
- /models
- ```
- ---
- ### Venice AI
- 1. Dirígete a la [consola de Venice AI](https://venice.ai), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **Venice AI**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Venice AI API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _Llama 3.3 70B_.
- ```txt
- /models
- ```
- ---
- ### Vercel AI Gateway
- Vercel AI Gateway le permite acceder a modelos de OpenAI, Anthropic, Google, xAI y más a través de un punto final unificado. Los modelos se ofrecen a precio de lista sin margen de beneficio.
- 1. Dirígete al [panel de Vercel](https://vercel.com/), navega hasta la pestaña **AI Gateway** y haz clic en **API claves** para crear una nueva clave API.
- 2. Ejecute el comando `/connect` y busque **Vercel AI Gateway**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave Vercel AI Gateway API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo.
- ```txt
- /models
- ```
- También puede personalizar modelos a través de su configuración opencode. A continuación se muestra un ejemplo de cómo especificar el orden de enrutamiento del proveedor.
- ```json title="opencode.json"
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "vercel": {
- "models": {
- "anthropic/claude-sonnet-4": {
- "options": {
- "order": ["anthropic", "vertex"]
- }
- }
- }
- }
- }
- }
- ```
- Algunas opciones de enrutamiento útiles:
- | Opción | Descripción |
- | ------------------- | ----------------------------------------------------------------------- |
- | `order` | Secuencia de proveedores para probar |
- | `only` | Restringir a proveedores específicos |
- | `zeroDataRetention` | Utilice únicamente proveedores con políticas de retención de datos cero |
- ---
- ### xAI
- 1. Dirígete a la [consola xAI](https://console.x.ai/), crea una cuenta y genera una clave API.
- 2. Ejecute el comando `/connect` y busque **xAI**.
- ```txt
- /connect
- ```
- 3. Ingrese su clave xAI API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _Grok Beta_.
- ```txt
- /models
- ```
- ---
- ### Z.AI
- 1. Dirígete a la [consola Z.AI API](https://z.ai/manage-apikey/apikey-list), crea una cuenta y haz clic en **Crear una nueva clave API**.
- 2. Ejecute el comando `/connect` y busque **Z.AI**.
- ```txt
- /connect
- ```
- Si está suscrito al **Plan de codificación GLM**, seleccione **Plan de codificación Z.AI**.
- 3. Ingrese su clave Z.AI API.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Ejecute el comando `/models` para seleccionar un modelo como _GLM-4.7_.
- ```txt
- /models
- ```
- ---
- ### ZenMux
- 1. Dirígete al [panel de ZenMux](https://zenmux.ai/settings/keys), haz clic en **Crear clave API** y copia la clave.
- 2. Ejecute el comando `/connect` y busque ZenMux.
- ```txt
- /connect
- ```
- 3. Ingrese la clave API para el proveedor.
- ```txt
- ┌ API key
- │
- │
- └ enter
- ```
- 4. Muchos modelos de ZenMux están precargados de forma predeterminada, ejecute el comando `/models` para seleccionar el que desee.
- ```txt
- /models
- ```
- También puede agregar modelos adicionales a través de su configuración opencode.
- ```json title="opencode.json" {6}
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "zenmux": {
- "models": {
- "somecoolnewmodel": {}
- }
- }
- }
- }
- ```
- ---
- ## Proveedor personalizado
- Para agregar cualquier proveedor **compatible con OpenAI** que no aparezca en el comando `/connect`:
- :::tip
- Puede utilizar cualquier proveedor compatible con OpenAI con opencode. La mayoría de los proveedores de IA modernos ofrecen API compatibles con OpenAI.
- :::
- 1. Ejecute el comando `/connect` y desplácese hacia abajo hasta **Otro**.
- ```bash
- $ /connect
- ┌ Add credential
- │
- ◆ Select provider
- │ ...
- │ ● Other
- └
- ```
- 2. Ingrese una identificación única para el proveedor.
- ```bash
- $ /connect
- ┌ Add credential
- │
- ◇ Enter provider id
- │ myprovider
- └
- ```
- :::note
- Elija una identificación memorable, la usará en su archivo de configuración.
- :::
- 3. Ingrese su clave API para el proveedor.
- ```bash
- $ /connect
- ┌ Add credential
- │
- ▲ This only stores a credential for myprovider - you will need to configure it in opencode.json, check the docs for examples.
- │
- ◇ Enter your API key
- │ sk-...
- └
- ```
- 4. Cree o actualice su archivo `opencode.json` en el directorio de su proyecto:
- ```json title="opencode.json" ""myprovider"" {5-15}
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "myprovider": {
- "npm": "@ai-sdk/openai-compatible",
- "name": "My AI ProviderDisplay Name",
- "options": {
- "baseURL": "https://api.myprovider.com/v1"
- },
- "models": {
- "my-model-name": {
- "name": "My Model Display Name"
- }
- }
- }
- }
- }
- ```
- Aquí están las opciones de configuración:
- - **npm**: paquete AI SDK para usar, `@ai-sdk/openai-compatible` para proveedores compatibles con OpenAI
- - **nombre**: nombre para mostrar en la interfaz de usuario.
- - **modelos**: Modelos disponibles.
- - **options.baseURL**: API URL del punto final.
- - **options.apiKey**: Opcionalmente, configure la clave API, si no usa autenticación.
- - **options.headers**: Opcionalmente, configure encabezados personalizados.
- Más información sobre las opciones avanzadas en el siguiente ejemplo.
- 5. Ejecute el comando `/models` y su proveedor y modelos personalizados aparecerán en la lista de selección.
- ---
- ##### Ejemplo
- A continuación se muestra un ejemplo de configuración de las opciones `apiKey`, `headers` y modelo `limit`.
- ```json title="opencode.json" {9,11,17-20}
- {
- "$schema": "https://opencode.ai/config.json",
- "provider": {
- "myprovider": {
- "npm": "@ai-sdk/openai-compatible",
- "name": "My AI ProviderDisplay Name",
- "options": {
- "baseURL": "https://api.myprovider.com/v1",
- "apiKey": "{env:ANTHROPIC_API_KEY}",
- "headers": {
- "Authorization": "Bearer custom-token"
- }
- },
- "models": {
- "my-model-name": {
- "name": "My Model Display Name",
- "limit": {
- "context": 200000,
- "output": 65536
- }
- }
- }
- }
- }
- }
- ```
- Detalles de configuración:
- - **apiKey**: se configura usando la sintaxis de la variable `env`, [más información](/docs/config#env-vars).
- - **encabezados**: encabezados personalizados enviados con cada solicitud.
- - **limit.context**: tokens de entrada máximos que acepta el modelo.
- - **limit.output**: tokens máximos que el modelo puede generar.
- Los campos `limit` le permiten a OpenCode comprender cuánto contexto le queda. Los proveedores estándar los extraen de models.dev automáticamente.
- ---
- ## Solución de problemas
- Si tiene problemas para configurar un proveedor, verifique lo siguiente:
- 1. **Verifique la configuración de autenticación**: Ejecute `opencode auth list` para ver si las credenciales
- para el proveedor se agregan a su configuración.
- Esto no se aplica a proveedores como Amazon Bedrock, que dependen de variables de entorno para su autenticación.
- 2. Para proveedores personalizados, verifique la configuración opencode y:
- - Asegúrese de que el ID del proveedor utilizado en el comando `/connect` coincida con el ID en su configuración opencode.
- - Se utiliza el paquete npm correcto para el proveedor. Por ejemplo, utilice `@ai-sdk/cerebras` para Cerebras. Y para todos los demás proveedores compatibles con OpenAI, utilice `@ai-sdk/openai-compatible`.
- - Verifique que se utilice el punto final API correcto en el campo `options.baseURL`.
|