# Usando links profundos para abrir o GitHub aplicativo Copilot

Use links profundos para iniciar o GitHub Copilot app direto do terminal, de tíquetes e de ferramentas internas, para que as pessoas possam entrar diretamente no repositório, pull request, automação ou sessão corretos.

Os links profundos ajudam as pessoas a iniciar o trabalho no GitHub Copilot app com menos troca de contexto. Por exemplo, você pode compartilhar prompts de inicialização, incluir links para o aplicativo em arquivos markdown, iniciar o aplicativo a partir de scripts de terminal ou adicionar um botão para abrir o aplicativo em ferramentas externas.

Você pode abrir o GitHub Copilot app direto de links do navegador que envolvem um link do aplicativo no inicializador hospedado. O inicializador hospedado abre o aplicativo quando possível e mostra uma página alternativa se o navegador não puder transferir o controle para o aplicativo. Para obter uma lista completa de links de aplicativo com suporte, consulte [links de aplicativo disponíveis](#available-app-links).

## Por que usar links profundos

Use links profundos quando quiser mover de uma página da Web ou fluxo de trabalho diretamente para uma página ou tarefa específica no aplicativo. Os casos de uso comuns incluem:

* Inicie as sessões com um prompt de inicialização pré-preenchido.
* Compartilhe prompts de automação para que os colegas de equipe possam abri-los e reutilizá-los rapidamente.
* Adicione botões de inicialização em documentos internos ou arquivos de markdown para abrir fluxos de trabalho comuns.
* Inicie o aplicativo a partir de comandos de terminal ou scripts como parte de fluxos de trabalho locais.
* Abra o aplicativo direto de produtos de terceiros, como sistemas de tíquetes ou problemas.

## Formato de URL do inicializador

Use a URL do inicializador hospedado com o link completo do aplicativo codificado no parâmetro de consulta `open`. O inicializador hospedado abre o aplicativo quando possível e mostra uma página alternativa se o navegador não puder transferir o controle para o aplicativo.

```text
https://github.com/copilot/app/launch?open=ENCODED_APP_LINK
```

Use `encodeURIComponent`, ou o equivalente em sua linguagem de programação, para codificar o link completo do aplicativo. Se o link do aplicativo incluir parâmetros de consulta, codifique esses valores de parâmetro de consulta antes de codificar o link completo do aplicativo.`open`

Por exemplo, para abrir um repositório, o link do aplicativo é:

```text
ghapp://github.com/OWNER/REPO
```

Codificado na URL do iniciador, isso se torna:

```text
https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fgithub.com%2FOWNER%2FREPO
```

Os links públicos devem usar o esquema oficial `ghapp://` . O aplicativo também aceita links `github-app://` e `gh://` por compatibilidade, mas os links gerados e documentados devem usar `ghapp://`.

## Abrir um repositório ou item de trabalho

Para abrir uma página no GitHub Copilot app, crie uma URL de inicialização usando o link do aplicativo da página que você deseja abrir.

* Para abrir um repositório, use este link de aplicativo:

   ```text
   ghapp://github.com/OWNER/REPO
   ```

   Codificado na URL do iniciador, isso se torna:

   ```text
   https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fgithub.com%2FOWNER%2FREPO
   ```

* Para abrir um problema, use este link do aplicativo:

   ```text
   ghapp://github.com/OWNER/REPO/issues/NUMBER
   ```

   Codificado na URL do iniciador, isso se torna:

   ```text
   https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fgithub.com%2FOWNER%2FREPO%2Fissues%2F123
   ```

* Para abrir uma solicitação de pull, use este link do aplicativo:

   ```text
   ghapp://github.com/OWNER/REPO/pull/NUMBER
   ```

   Codificado na URL do iniciador, isso se torna:

   ```text
   https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fgithub.com%2FOWNER%2FREPO%2Fpull%2F123
   ```

* Para retomar uma tarefa de agente, use este link de aplicativo:

   ```text
   ghapp://github.com/OWNER/REPO/tasks/TASK_ID
   ```

   Codificado na URL do iniciador, isso se torna:

   ```text
   https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fgithub.com%2FOWNER%2FREPO%2Ftasks%2FTASK_ID
   ```

   Use o ID da tarefa GitHub para `TASK_ID`. Não use uma ID de sessão de runtime ou uma URL de sessão local do aplicativo para links que retomem tarefas de agente do GitHubCopilot.

## Abrir sessões

Para iniciar uma nova sessão direto de um link profundo, use `ghapp://session/new` com parâmetros de consulta para pré-preencher o repositório, a ramificação, a pull request, o prompt ou o modo. Para obter parâmetros disponíveis, consulte [os parâmetros de sessão](#session-parameters).

Por exemplo, para iniciar uma nova sessão interativa com um repositório e um prompt de inicialização, use este link do aplicativo:

```text
ghapp://session/new?repo=OWNER%2FREPO&mode=interactive&prompt=Investigate%20failing%20tests
```

Codificado na URL do iniciador, isso se torna:

```text
https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fsession%2Fnew%3Frepo%3DOWNER%252FREPO%26mode%3Dinteractive%26prompt%3DInvestigate%2520failing%2520tests
```

### Parâmetros de sessão

Os links `ghapp://session/new` e `ghapp://session/new/OWNER/REPO` aceitam os seguintes parâmetros de consulta.

| Parâmetro | Obrigatório | Observações |
| --- | --- | --- |
| `repo` | Obrigatório para `ghapp://session/new`; opcional para `ghapp://session/new/OWNER/REPO` | Repositório em `OWNER/REPO` formato. |
| `pr` | No | Número de pull request positivo. Não é possível combinar com `branch`. |
| `branch` | No | Ramificação de base para a nova sessão. Não é possível combinar com `pr`. |
| `prompt` | No | Prompt de início. Não inclua segredos ou conteúdo confidencial do usuário em URLs. |
| `mode` | No | Uma opção entre `plan`, `interactive` ou `autopilot`. |

## Abrir automações

Para abrir as automações ou criar um rascunho de automação direto de um link profundo, use os links do aplicativo de automação. Para obter parâmetros disponíveis ao criar um novo rascunho de automação, consulte [os parâmetros de Automação](#automation-parameters).

* Para abrir a página Automações, use este link do aplicativo:

   ```text
   ghapp://automations
   ```

   Codificado na URL do iniciador, isso se torna:

   ```text
   https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fautomations
   ```

* Para abrir um novo rascunho de automação, use este link do aplicativo:

   ```text
   ghapp://automations/new?name=Daily%20triage&trigger=daily&time=09%3A00&prompt=Summarize%20new%20issues
   ```

   Codificado na URL do iniciador, isso se torna:

   ```text
   https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fautomations%2Fnew%3Fname%3DDaily%2520triage%26trigger%3Ddaily%26time%3D09%253A00%26prompt%3DSummarize%2520new%2520issues
   ```

* Para abrir uma automação existente, use este link de aplicativo:

   ```text
   ghapp://automations/AUTOMATION_ID
   ```

   Codificado na URL do iniciador, isso se torna:

   ```text
   https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fautomations%2FAUTOMATION_ID
   ```

* Para abrir uma automação de nuvem, adicione `mode=cloud` ao link do aplicativo antes de codificar:

   ```text
   ghapp://automations/AUTOMATION_ID?mode=cloud
   ```

   Codificado na URL do iniciador, isso se torna:

   ```text
   https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fautomations%2FAUTOMATION_ID%3Fmode%3Dcloud
   ```

### Parâmetros de automação

O `ghapp://automations/new` link abre a nova caixa de diálogo de automação. Ele não cria a automação até que o usuário examine a caixa de diálogo e confirme no aplicativo. Não inclua segredos ou conteúdo confidencial do usuário em prompts inseridos em URLs.

| Parâmetro | Aplica-se a | Observações |
| --- | --- | --- |
| `name` | `ghapp://automations/new` | Nome da automação. |
| `prompt` | `ghapp://automations/new` | Comando de automação. Não inclua segredos ou conteúdo confidencial do usuário em URLs. |
| `trigger` | `ghapp://automations/new` | Um de `manual`, `hourly`, `daily`ou `weekly`. Valores inválidos são ignorados. 
`interval` também é aceito como um alias. |
| `time` | `ghapp://automations/new` | Hora em formato local de 24 horas `HH:mm`. Aceitação para os gatilhos `daily` e `weekly`. Os gatilhos diários também aceitam horários separados por vírgulas ou repetidos quando todas as entradas compartilham o mesmo minuto, por exemplo `time=08:00,13:00`. Valores inválidos são ignorados. |
| `day` | `ghapp://automations/new` | Dia semanal como `0`-`6` (`0` = domingo) ou um nome de dia da semana. Valores inválidos são ignorados. 
`schedule_day` também é aceito como um alias, e gatilhos semanais aceitam valores separados por vírgulas ou repetidos, como `schedule_day=1,3,5`. |
| `mode` | 
`ghapp://automations/AUTOMATION_ID` e `ghapp://automations/AUTOMATION_ID/RUN_ID` | Use `cloud` para automações de nuvem. Omita ou use `local` para automações locais. |

## Abrir fluxos do plug-in

Para abrir os fluxos de instalação de plug-in ou do marketplace direto de um link profundo, use os links de app de plug-in. Para parâmetros disponíveis, consulte [os parâmetros do Plug-in](#plugin-parameters).

Por exemplo, para abrir o formulário de instalação do plug-in com uma fonte pré-preenchida, use este link de aplicativo:

```text
ghapp://plugins/install?source=my-plugin%40acme
```

Codificado na URL do iniciador, isso se torna:

```text
https://github.com/copilot/app/launch?open=ghapp%3A%2F%2Fplugins%2Finstall%3Fsource%3Dmy-plugin%2540acme
```

### Parâmetros de plug-in

Os links de plugin abrem a visualização **Plugins** na seção **Personalizar** com um formulário pré-preenchido. Eles não instalam um plug-in ou adicionam um marketplace até que o usuário confirme no aplicativo.

| Link | Parâmetro | Obrigatório | Observações |
| --- | --- | --- | --- |
| `ghapp://plugins/install` | `source` | Yes | Origem do plug-in no `PLUGIN@MARKETPLACE` formato. Codifique o valor usando codificação de URL, por exemplo `source=my-plugin%40acme`. |
| `ghapp://plugins/marketplace/add` | `source` | Yes | Fonte do Marketplace como `OWNER/REPO` ou uma URL do Git. Codifique o valor usando codificação de URL, por exemplo `source=acme%2Fplugins`. |

## Links de aplicativo disponíveis

Os links de aplicativo a seguir podem ser encapsulados no inicializador hospedado. Cadeias de caracteres de consulta e hashes são preservados quando o aplicativo abre o link.

| Forma do link do aplicativo | Abre | Observações |
| --- | --- | --- |
| `ghapp://` | Página Inicial | Abre a rota inicial do aplicativo. |
| `ghapp://chats` | Conversas | Abre chats. |
| `ghapp://mywork` | Meu trabalho | Abre problemas e pull requests em Meu trabalho. |
| `ghapp://github.com/OWNER/REPO` | Configuração do repositório | Abre ou clona o repositório. |
| `ghapp://github.com/OWNER/REPO/issues/NUMBER` | Issue | Abre o item na seção Meu trabalho se o repositório já foi adicionado como projeto. |
| `ghapp://github.com/OWNER/REPO/pull/NUMBER` | Solicitação de pull | Abre a solicitação pull em Meu trabalho quando o repositório já está adicionado como um projeto. Os segmentos opcionais do caminho à direita são preservados. |
| `ghapp://github.com/OWNER/REPO/tasks/TASK_ID` | Tarefa do agente | Retoma uma tarefa de agente do GitHubCopilot. Use a ID da GitHub tarefa, não uma ID de sessão local do aplicativo. |
| `ghapp://automations` | Automations | Abre Automações. |
| `ghapp://automations/new` | Novo rascunho de automação | Abre a nova caixa de diálogo de automação com parâmetros de consulta com suporte pré-preenchidos. Consulte [os parâmetros de Automação](#automation-parameters). |
| `ghapp://automations/AUTOMATION_ID` | Automação | Abre uma automação local por padrão. Adicionar `?mode=cloud` para uma automação de nuvem. |
| `ghapp://automations/AUTOMATION_ID/RUN_ID` | Execução automatizada | Abre uma automação local executada por padrão. Adicionar `?mode=cloud` para uma execução de automação de nuvem. |
| `ghapp://recent` | Espaços de trabalho recentes | Abre os espaços de trabalho recentes. |
| `ghapp://sessions/SESSION_ID` | Sessão do aplicativo | Abre um espaço de trabalho ou sessão local ao aplicativo. Não use essa forma para retomar as tarefas de agente do Copilot do GitHub. |
| `ghapp://clone/OWNER/REPO` | Configuração do repositório | Mostra uma confirmação antes de clonar ou abrir a instalação do repositório. |
| `ghapp://repo/OWNER/REPO` | Configuração do repositório | Mostra uma confirmação antes de clonar ou abrir a instalação do repositório. |
| `ghapp://session/new` | Nova sessão | Mostra uma confirmação antes de criar uma sessão. Use parâmetros de consulta para fornecer o repositório, a solicitação de pull, o branch, o prompt ou o modo de sessão. Consulte [os parâmetros de sessão](#session-parameters). |
| `ghapp://session/new/OWNER/REPO` | Nova sessão para um repositório | Mostra uma confirmação antes de criar uma sessão para o repositório. Consulte [os parâmetros de sessão](#session-parameters). |
| `ghapp://plugins/install` | Formulário de instalação do plug-in | Mostra uma confirmação e, em seguida, abre o modo de exibição **Plug-ins** na guia **Personalizar** com o formulário de instalação pré-preenchido. Consulte [os parâmetros do Plug-in](#plugin-parameters). |
| `ghapp://plugins/marketplace/add` | Formulário da loja de plugins | Mostra uma confirmação e, em seguida, abre o modo de exibição **Plug-ins** na guia **Personalizar** com o formulário do marketplace pré-preenchido. Consulte [os parâmetros do Plug-in](#plugin-parameters). |