# GitHub Copilot

Conecte o VS Code e o GitHub Copilot por meio da configuração OAuth hospedada quando o host oferecer suporte.

- Canonical: https://docs.xmemo.dev/pt-br/docs/mcp/copilot
- Locale: pt-BR
- Content-Locale: pt-BR
- Canonical-Content-Digest: 89da3a37e97e05ec3cbc29a8fa3f11b3cedd4385b04602234bbe99594d360d2a
- Edition-Digest: e2acf1d2e82bc8c706dafd88de595c0a415065c0ca39574ee4f6add65504167d
- Source-Revision: sha256:79ae0e28c58efc497cff8929ba46d7fb7bcfdbf5c9e0b86c939e6f7182cd270b

## Pré-requisitos

Use o VS Code com GitHub Copilot Chat e suporte a MCP. Interface e pré-requisitos:

- Interface concreta: VS Code com extensão GitHub Copilot Chat (caminho OAuth do editor).
- Arquivo de configuração: %APPDATA%\Code\User\mcp.json (Windows), ~/Library/Application Support/Code/User/mcp.json (macOS) ou ~/.config/Code/User/mcp.json (Linux).
- Usa a chave servers em vez de mcpServers.
- Endpoint: https://xmemo.dev/mcp.
- Conta: Conta válida do XMemo em https://xmemo.dev.

## Instalação / configuração

Edite a configuração de usuário do VS Code mcp.json sob a chave servers e adicione a URL hospedada do XMemo. Não use a configuração do Copilot CLI aqui; seu caminho direto possui sua própria rota (/docs/mcp/copilot-cli):

- Mantenha a entrada do editor apenas com URL.
- A primeira chamada de ferramenta abre o OAuth no navegador.
- Não adicione um cabeçalho Authorization a esta entrada do VS Code.

## Definir a credencial

Nenhuma chave — conclua o OAuth no navegador no VS Code / GitHub Copilot Chat. Não defina XMEMO_KEY nem cole um token de portador em mcp.json:

```text
No XMEMO_KEY
Complete browser OAuth in VS Code / GitHub Copilot Chat
```

## Gerar / confirmar XMEMO_AGENT_INSTANCE_ID

A listagem OAuth revisada do VS Code não possui cabeçalho de identidade no lado do cliente. Não adicione XMEMO_AGENT_INSTANCE_ID a mcp.json; confirme que este caminho OAuth usa sua atribuição gerenciada pela concessão.

## Preservar o bloco de configuração existente

Use o bloco de configuração revisado do VS Code / GitHub Copilot. Preserve a chave servers e o formato OAuth apenas de URL; não copie a configuração de portador do Copilot CLI nele:

```json
{
  "servers": {
    "xmemo": {
      "type": "http",
      "url": "https://xmemo.dev/mcp"
    }
  }
}
```

## Reiniciar o cliente

Recarregue a janela do VS Code (Developer: Reload Window) ou reinicie a conexão MCP após salvar mcp.json para que o Copilot leia a definição atual do servidor.

## Testar com uma chamada real de recall

Faça a primeira chamada MCP somente leitura. Esta é uma invocação real de recall, não um espaço reservado para verificação de integridade, e não grava na memória.

```text
recall({ query: "connection check", limit: 1 })
```

## Resposta esperada (formato literal)

Uma chamada bem-sucedida retorna o formato de texto classificado público abaixo; a referência e o conteúdo são valores reais do espaço de memória autorizado.

```text
### XMemo Memory Results:
1. Reference: <opaque-memory-id> | Location: <location>
   > <memory content>
```

## Primeira tarefa útil: Ciclo de vida de memória sintética

Exercite a tarefa completa de memória sintética dentro do GitHub Copilot Chat:

- 1. Salvar fato sintético: Peça ao Copilot Chat para lembrar da convenção ("Demo project timestamps use UTC.") em "projects/demo-onboarding/conventions".
- 2. Transição sem estado: Abra uma nova sessão de chat no GitHub Copilot ou recarregue a janela do VS Code.
- 3. Recall com atribuição de fonte: Consulte "demo project timestamp format". Confirme Reference e Location retornados.
- 4. Corrigir memória: Atualize a convenção para a formatação ISO 8601 usando update_memory.
- 5. Limpeza opcional: Realize exclusão lógica da convenção por meio de forget quando a verificação for concluída.

## Recursos e ferramentas de perfil

O GitHub Copilot no VS Code tem acesso a ferramentas qualificadas por perfil definidas no contrato de documentação do MCP para o perfil generic-public:

- Ferramentas de memória principais: remember, recall, update_memory, forget, read_memory, explain_memory, search_memory, recall_context.
- Ferramentas de espaço de trabalho: get_mcp_identity, get_project_summary, project, todo, open_project_workspace, open_todo_board, ledger, open_ledger.

## Limitações e limites

Limites operacionais para o GitHub Copilot no VS Code:

- Isolamento do espaço de trabalho: As operações são estritamente confinadas ao espaço de trabalho do usuário autorizado.
- Separação editor/CLI: A sessão OAuth do VS Code não se propaga para ferramentas de terminal externas.
- Não misturar cabeçalhos: Não adicione cabeçalhos Authorization à entrada servers em mcp.json.

## Erros comuns

O VS Code / GitHub Copilot Chat usa o caminho OAuth do navegador e não deve ser depurado com as configurações de token do Copilot CLI:

- invalid_grant — O código de autorização OAuth é inválido, expirou ou já foi usado: reconecte o servidor MCP do VS Code e autorize novamente.
- invalid_target — O recurso OAuth não corresponde a este servidor MCP: reconecte usando https://xmemo.dev/mcp.
- 403 insufficient_scope — A concessão não inclui memory:read: aprove o escopo necessário e reconecte.

## Atualização e remoção

Procedimentos de manutenção para o GitHub Copilot:

- Atualização: Recarregue a janela do VS Code após atualizar a configuração.
- Remoção: Remova o bloco xmemo de mcp.json e recarregue a janela do VS Code.

## VS Code / GitHub Copilot

OAuth client: keep only the hosted server URL in mcp.json; first tool call opens browser OAuth, so no XMEMO_KEY or Authorization header belongs in this file.

```
{
  "servers": {
    "XMemo": {
      "type": "http",
      "url": "https://xmemo.dev/mcp"
    }
  }
}
```
