OPENCODE + OCI GENERATIVE AI

É possível utilizar vários modelos LLM através da Oracle Cloud, modelos bem interessantes por sinal, segue alguns deles:
openai.gpt-oss-120b
openai.gpt-oss-20b
meta.llama-4-maverick-17b-128e-instruct-fp8
meta.llama-4-scout-17b-16e-instruct
meta.llama-3.3-70b-instruct
xai.grok-4.7
xai.grok-4.6
xai.grok-4.3
xai.grok-4.20-reasoning
xai.grok-4.20-non-reasoning
xai.grok-4.20-multi-agent
E se pudéssemos utilizar esses modelos no Claude Code?
No Claude Code não sei como podemos utilizar, mas no OpenCode eu sei.
Para quem ainda não conhece, o OpenCode pertence à mesma categoria de ferramentas como Claude Code, Codex e outros agentes de programação. Ele não limita o usuário aos modelos de um único provedor. Assim, é possível escolher e alternar entre diferentes LLMs.
Aí que a OCI Generative AI entra; anteriormente listei os modelos que estão disponíveis sob demanda na OCI e a parte interessante é que podemos fazer a integração com o OpenCode e esses modelos automaticamente estarão disponíveis no OpenCode, onde poderemos realizar as atividades necessárias. Mas antes, precisamos realizar algumas configurações de permissões, geração de chaves e habilitar a região de Chicago no tenancy, pois é lá que está a maioria dos modelos sob demanda da OCI.
Primeiro, habilite a região de Chicago no seu OCI:
Posteriormente, vamos até:
Criei um compartimento chamado LLM; sugiro criar um compartimento próprio para poder limitar melhor as policies lá na frente.
A criação da API KEY é next, next e pronto; pode deixar tudo como padrão.
Copie seu OCID e a chave da sua API‑key.
OCID começa com ocid1.generativeaiapikey.oc1.us-chicago-1.....
E a chave começa com sk-...........
Agora vamos ao Project e criar um projeto chamado OPENCODE; aqui pode ser tudo padrão, next, next e pronto.
Calma, falta pouco; agora vamos para Policies.
Lembre‑se do OCID da sua private key; agora que vamos usar, é o OCID e não o keyId.
Prefixo dela: [ocid1.generativeaiapikey.oc1.us](http://ocid1.generativeaiapikey.oc1.us)-chicago-1.....
E seu compartment ID: ocid1.compartment.oc1..aa....
Vamos criar a policy no compartimento root.
Regra 1:
allow any-user to manage generative-ai-response in compartment id ocid1.compartment.oc1.XXXXXXXXXXXXXXXXXXXXXXXX where ALL {request.principal.type='generativeaiapikey', request.principal.id='ocid1.generativeaiapikey.oc1.us-chicago-1.XXXXXXXXXXXXXXXXXXXXXXXXXX'}
Regra 2:
allow any-user to use generative-ai-chat in compartment id ocid1.compartment.oc1..XXXXXXXXXXXXXXXXXXXXXXXX where ALL {request.principal.type='generativeaiapikey', request.principal.id='ocid1.generativeaiapikey.oc1.us-chicago-1.XXXXXXXXXXXXXXXXXXXXXXXX'}
Só relembrando, API Keys e Project foram criados no compartimento LLM e a Policy no root.
Esse procedimento vale tanto para o OpenCode CLI quanto para o Desktop.
No meu caso estou utilizando macOS, então baixe a versão no site:
Depois de instalado, entre no seguinte diretório:
/Users/seu_user/.config/opencode
E aí você vai criar 2 arquivos:
opencode.jsonc
oci-api-key
Conteúdo do arquivo opencode.jsonc:
{
"$schema": "https://opencode.ai/config.json",
"model": "oci/openai.gpt-oss-120b",
"providers": {
"oci": {
"name": "Oracle OCI Chicago",
"package": "@opencode/ai/providers/openai-compatible",
"settings": {
"baseURL": "https://inference.generativeai.us-chicago-1.oci.oraclecloud.com/20231130/actions/v1",
"apiKey": "{file:~/.config/opencode/oci-api-key}"
},
"models": {
"openai.gpt-oss-120b": {
"modelID": "openai.gpt-oss-120b",
"name": "OCI GPT-OSS 120B",
"capabilities": {
"tools": true,
"input": ["text"],
"output": ["text"]
}
},
"openai.gpt-oss-20b": {
"modelID": "openai.gpt-oss-20b",
"name": "OCI GPT-OSS 20B",
"capabilities": {
"tools": true,
"input": ["text"],
"output": ["text"]
}
}
}
}
},
"experimental": {
"policies": [
{
"action": "provider.use",
"resource": "*",
"effect": "deny"
},
{
"action": "provider.use",
"resource": "oci",
"effect": "allow"
}
]
}
}
Conteúdo do arquivo oci-api-key (sua chave da API):
sk-...........
Pronto, pessoal, posteriormente seu OpenCode estará assim:
Também os outros modelos estarão disponíveis:
Pronto, pessoal, agora você utilizará créditos da OCI; cuidados com os gastos rs. Ainda estou estudando uma forma de limitar; se alguém souber, me dê um toque.
Espero que este artigo possa te ajudar em automações futuras. Qualquer coisa, só chamar no linkedin 🙂





