> ## Documentation Index
> Fetch the complete documentation index at: https://symphony-docs.fcamara.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Plug-in para IDE (Continue.dev)

> Use os modelos e agentes do Symphony diretamente no VS Code ou em IDEs JetBrains com o Continue.dev.

## O que é

O **Continue.dev** é uma ferramenta de código aberto que permite conversar com os modelos (LLMs) do **Symphony** diretamente dentro do **Visual Studio Code** ou de IDEs **JetBrains** (IntelliJ IDEA, PyCharm, WebStorm etc.). Assim você usa os agentes e modelos do Symphony sem sair do seu editor de código.

## Pré-requisitos

* VS Code **ou** uma IDE JetBrains instalada.
* Conta ativa no **AI Symphony** com permissão de uso de modelos.
* Uma **chave de API** do Symphony (veja o [Passo 2](#passo-2-configurar-as-llms)).

## Passo 1 — Instalar o Continue.dev

<Tabs>
  <Tab title="VS Code">
    1. Abra o **Visual Studio Code**.
    2. No menu lateral esquerdo, clique em **Extensões** (ícone de blocos ou **Ctrl + Shift + X**).
    3. Pesquise por: **Continue - open-source AI code assistant** (desenvolvedor: *Continue.dev*).
    4. Clique em **Instalar**.

    Ou instale diretamente pelo [Marketplace do VS Code](https://marketplace.visualstudio.com/items?itemName=Continue.continue).
  </Tab>

  <Tab title="JetBrains">
    1. Abra sua IDE JetBrains (ex.: IntelliJ IDEA, PyCharm, WebStorm).
    2. Pressione **Ctrl + Alt + S** para abrir as **Configurações (Settings)**.
    3. No menu lateral, clique em **Plugins**.
    4. No campo de busca do **Marketplace**, pesquise por **Continue**.
    5. Clique em **Instalar** na extensão *Continue*.

    Ou instale diretamente pelo [Marketplace da JetBrains](https://plugins.jetbrains.com/plugin/22707-continue).
  </Tab>
</Tabs>

<Warning>
  **Versão compatível.** Atualmente o Symphony é compatível com a versão **1.3.33** do Continue.dev. Para instalar exatamente essa versão:

  1. Clique na **seta ao lado do botão "Uninstall"**.
  2. Selecione **"Install Specific Version"**.
  3. Digite a versão **1.3.33** e confirme a instalação.
  4. Se necessário, **reinicie** o VS Code.
  5. Clique no **ícone de chat** localizado ao lado da barra de busca.
  6. Arraste o painel do **Continue.dev** (lado esquerdo) para dentro do chat aberto (lado direito).
</Warning>

## Passo 2 — Configurar as LLMs

No painel do **Continue**, clique em **"Local Config"**. Em seguida, clique na **engrenagem** ao lado de *Local Config* para abrir o arquivo de configuração.

Substitua o conteúdo do `config.yaml` pelo modelo abaixo, **atentando‑se aos modelos que você tem autorizados e disponíveis** no Symphony — se usar um modelo ao qual sua chave não tem acesso, a resposta retornará erro.

<Info>
  **Atualização (após 08/04/2026):** é obrigatório acrescentar, em cada modelo, `requestOptions → headers → X-Enterprise-Id` para a extensão funcionar.
</Info>

```yaml config.yaml theme={null}
name: Symphony Config
version: 1.0.8
schema: v1
models:
  # === AGENTE GERAL ===
  - name: Symphony
    provider: openai
    model: symphony
    apiBase: https://symphony.fcamara.com/api
    apiKey: SUA_API_KEY_AQUI
    requestOptions:
      headers:
        X-Enterprise-Id: fcamara-0000-0000-0000-000000000001

  # === AGENTES CUSTOMIZADOS (exemplos) ===
  - name: "[Dev] Code Vader"
    provider: openai
    model: fc-code-assistant
    apiBase: https://symphony.fcamara.com/api
    apiKey: SUA_API_KEY_AQUI
    requestOptions:
      headers:
        X-Enterprise-Id: fcamara-0000-0000-0000-000000000001

  - name: "Doc Strange"
    provider: openai
    model: documentacao-funcional
    apiBase: https://symphony.fcamara.com/api
    apiKey: SUA_API_KEY_AQUI
    requestOptions:
      headers:
        X-Enterprise-Id: fcamara-0000-0000-0000-000000000001
    defaultCompletionOptions:
      contextLength: 150000
    capabilities:
      - tool_use

  - name: "[Dev] Michelangelus - Autocomplete"
    provider: openai
    model: michelangelus
    apiBase: https://symphony.fcamara.com/api
    apiKey: SUA_API_KEY_AQUI
    requestOptions:
      headers:
        X-Enterprise-Id: fcamara-0000-0000-0000-000000000001
    roles:
      - autocomplete
      - edit

  # === GPT / GEMINI / GROK (exemplos) ===
  - name: GPT 5.4 Mini
    provider: openai
    model: azure.gpt-5.4-mini
    apiBase: https://symphony.fcamara.com/api
    apiKey: SUA_API_KEY_AQUI
    requestOptions:
      headers:
        X-Enterprise-Id: fcamara-0000-0000-0000-000000000001

  - name: Gemini 3.1 Pro Preview
    provider: openai
    model: FC.gemini-3.1-pro-preview
    apiBase: https://symphony.fcamara.com/api
    apiKey: SUA_API_KEY_AQUI
    requestOptions:
      headers:
        X-Enterprise-Id: fcamara-0000-0000-0000-000000000001

context:
  - provider: code
  - provider: docs
  - provider: diff
  - provider: terminal
  - provider: problems
  - provider: folder
  - provider: codebase
```

<Tip>
  Use um modelo por bloco em `models:`, repetindo a estrutura (`name`, `provider`, `model`, `apiBase`, `apiKey` e `requestOptions.headers.X-Enterprise-Id`). Os campos `roles` (ex.: `autocomplete`, `edit`) e `capabilities` (ex.: `tool_use`) são opcionais.
</Tip>

### Como obter sua chave de API no AI Symphony

<Steps>
  <Step title="Abra o AI Symphony">
    Acesse [symphony.fcamara.com.br](https://symphony.fcamara.com.br/).
  </Step>

  <Step title="Clique no seu nome de usuário">
    No canto inferior esquerdo.
  </Step>

  <Step title="Vá até Configurações" />

  <Step title="Acesse a aba Conexões (Chaves de API)">
    Em algumas versões, a chave aparece na aba **Conta**.
  </Step>

  <Step title="Crie e copie a chave">
    Clique em **Criar chave de API** (ou "API Key") e **copie** a chave gerada.
  </Step>

  <Step title="Cole no config.yaml">
    Volte ao `config.yaml` e cole a chave no campo `apiKey` de cada modelo.
  </Step>
</Steps>

<Warning>
  Cole a chave **completa**, sem espaços extras ou aspas desnecessárias. Nunca **versione** sua `apiKey` em repositórios — trate‑a como segredo.
</Warning>

### Como descobrir quais modelos você tem disponíveis

No **console do navegador** (com o Symphony aberto e logado), execute:

```javascript theme={null}
fetch('https://symphony.fcamara.com/api/models', { credentials: 'include' })
  .then(r => r.json())
  .then(data => {
    console.log('Modelos disponíveis:');
    data.data.forEach(m => console.log(`- ${m.id} (${m.name})`));
  });
```

O retorno lista os **ids** que você pode usar no campo `model` do `config.yaml`.

## Passo 3 — Usar o Continue.dev

Com tudo configurado, você pode:

* Fazer **perguntas sobre o seu código**.
* Pedir para **completar uma função**.
* **Explicar** trechos complexos.
* **Refatorar** ou **gerar testes** automaticamente.

## Testar a rota com sua chave (cURL)

Para validar a conexão (por exemplo, no Postman), use:

```bash theme={null}
curl -X POST https://symphony.fcamara.com/api/chat/completions \
  -H "Authorization: Bearer SUA_CHAVE_AQUI" \
  -H "X-Enterprise-Id: fcamara-0000-0000-0000-000000000001" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "azure.gpt-5.3-chat",
    "messages": [{"role": "user", "content": "ok"}],
    "stream": false
  }'
```

<Note>
  Para detalhes completos da API (campos do corpo, headers, erros e exemplos em Python), veja [Conectar ao Symphony via API](/desenvolvedores/conectar-api).
</Note>

## Boas práticas

* Mantenha a extensão na versão compatível (**1.3.33**) para evitar incompatibilidades.
* Use no `config.yaml` **apenas modelos que sua chave tem permissão** de acessar.
* Nunca **versione** sua `apiKey` em repositórios — trate‑a como segredo.
* Confira o `X-Enterprise-Id` correto da sua empresa.

## Perguntas frequentes

<AccordionGroup>
  <Accordion title="A extensão não responde / dá erro de modelo.">
    Verifique se o `model` existe para a sua chave (rode o snippet de listagem de modelos) e se o header `X-Enterprise-Id` está presente em cada modelo.
  </Accordion>

  <Accordion title="Posso usar agentes customizados do Symphony?">
    Sim. Use o `model` correspondente ao agente (ex.: `fc-code-assistant`) no `config.yaml`.
  </Accordion>

  <Accordion title="Funciona em JetBrains e VS Code?">
    Sim, o processo de configuração do `config.yaml` é o mesmo.
  </Accordion>
</AccordionGroup>

## Limitações conhecidas

* Compatível com a versão **1.3.33** do Continue.dev.
* Após 08/04/2026, o header **`X-Enterprise-Id`** é obrigatório em cada modelo do `config.yaml`.
* A disponibilidade de cada modelo depende das permissões da sua conta/empresa no Symphony.

## Mais informações

* Documentação do Continue: [Continue Docs](https://docs.continue.dev/getting-started/install#signing-in).
* Repositório da extensão: [Continue no GitHub](https://github.com/continuedev).
