> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/pt-br/useful-resources/gh0stzk-bspwm-dotfiles.md).

# Setup Hacker no Arch Linux com BSPWM

Guia de setup hacker no Arch Linux com dotfiles gh0stzk BSPWM, instalação rápida, temas, Polybar, Rofi, ZSH, Neovim, comandos e atalhos de teclado.

[gh0stzk/dotfiles](https://github.com/gh0stzk/dotfiles) é um ambiente de desktop BSPWM completo para Arch Linux e distribuições baseadas em Arch. Ele inclui temas, barras, launchers, configurações de terminal, ZSH, Neovim, applets do Rofi, papéis de parede e scripts auxiliares para alternar estilos rapidamente.

<figure><img src="https://user-images.githubusercontent.com/67278339/221605474-21d65156-0cf7-485c-bd1a-40792c37817e.png" alt="gh0stzk BSPWM dotfiles desktop screenshot with terminal and Linux fetch output"><figcaption><p>Exemplo de ambiente de desktop BSPWM do README do projeto.</p></figcaption></figure>

{% hint style="warning" %}
Instale isto apenas em uma máquina de laboratório pessoal ou em uma estação de trabalho Linux recém-instalada. Dotfiles substituem muitos arquivos de configuração do usuário, então revise o instalador e faça backup da sua configuração atual antes de executá-lo.
{% endhint %}

## Onde se Encaixa

Isto pertence em `Recursos Úteis` porque é um recurso de configuração de estação de trabalho, não uma ferramenta de pentest. Use-o quando quiser um ambiente BSPWM limpo baseado em Arch para anotações diárias, laboratórios, trabalho em CTF, desenvolvimento e fluxos de trabalho com muito terminal.

## O que ele oferece

| Componente             | O que isso significa                                                                                                |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------- |
| BSPWM                  | Gerenciador de janelas tiling para uma área de trabalho rápida controlada pelo teclado.                             |
| 18 temas               | Estilos visuais prontos que podem ser alternados rapidamente.                                                       |
| Polybar                | Barra da área de trabalho com áreas de trabalho, módulos, informações do sistema e cores do tema.                   |
| Applets do Rofi        | Menus para aplicativos, energia, capturas de tela, área de transferência, rede, Bluetooth, papéis de parede e mais. |
| Terminais              | Suporte a temas para Alacritty, Kitty, Ghostty, ST e Xfce Terminal.                                                 |
| Configuração do ZSH    | Configuração rápida do shell com autocompletar, busca no histórico e pré-visualizações do fzf-tab.                  |
| Configuração do Neovim | Configuração de editor pronta com LSP, autocompletar, formatação, explorador, barra de status e dashboard.          |
| RiceEditor             | Aplicativo auxiliar para ajustar configurações visuais sem editar manualmente cada configuração.                    |

## Prévia Visual

O projeto é muito visual, então confira as capturas de tela e a demonstração antes de instalar.

<figure><img src="https://github.com/gh0stzk/dotfiles/assets/67278339/b11b5c58-b9ec-446b-8980-4f77bebb3432" alt="gh0stzk dotfiles theme selector screenshot"><figcaption><p>Seletor de tema.</p></figcaption></figure>

<figure><img src="https://github.com/user-attachments/assets/dbac8c47-f12c-4242-97d6-38ad1193f76b" alt="gh0stzk dotfiles wallpaper selector screenshot"><figcaption><p>Seletor de papel de parede.</p></figcaption></figure>

<figure><img src="https://github.com/user-attachments/assets/2ac910c8-171f-47eb-8210-1469b6f75cc2" alt="gh0stzk dotfiles RiceEditor screenshot"><figcaption><p>RiceEditor para personalização do tema.</p></figcaption></figure>

### Demonstração do Projeto

{% embed url="<https://github.com/user-attachments/assets/3eaae1e2-04dc-4a9b-8c91-139f85f5fb9e>" %}

### Passo a Passo da Instalação do Arch

Este vídeo do criador é útil se você quiser uma instalação limpa do Arch antes de aplicar os dotfiles.

{% embed url="<https://www.youtube.com/watch?v=mspY7Mpmcug>" %}

### Canal do Projeto

O canal do autor contém mais demonstrações de BSPWM, Polybar, Eww, Rofi e temas.

{% embed url="<https://www.youtube.com/@gh0stzk-dotfiles>" %}

## Antes de Instalar

O instalador oficial é destinado ao Arch Linux e distribuições baseadas em Arch. O README observa que distribuições sem systemd, como Artix, não são suportadas.

Ponto de partida recomendado:

| Requisito                      | Notas                                                                 |
| ------------------------------ | --------------------------------------------------------------------- |
| Distro Arch ou baseada em Arch | Instalação limpa é o mais seguro.                                     |
| Conta de usuário normal        | Não execute o instalador como root.                                   |
| Internet funcionando           | O instalador baixa pacotes e repositórios.                            |
| Gerenciador de login           | LightDM é recomendado pelo projeto.                                   |
| NetworkManager                 | Necessário para o applet de rede do Rofi.                             |
| Backup                         | Mantenha uma cópia de `~/.config` e dos arquivos do shell existentes. |

Comando útil de backup antes de testar:

```bash
mkdir -p "$HOME/dotfiles-backup"
cp -a "$HOME/.config" "$HOME/dotfiles-backup/config-$(date +%F)" 2>/dev/null
cp -a "$HOME/.zshrc" "$HOME/.gtkrc-2.0" "$HOME/.icons" "$HOME/dotfiles-backup/" 2>/dev/null
```

## Configuração Rápida do Arch

Use isto quando estiver começando de uma máquina ou VM Arch limpa e quiser o caminho prático mais curto.

### 1. Inicialize a ISO do Arch

Comece pela ISO oficial do Arch. Se você usar Wi-Fi, conecte-se primeiro:

```bash
iwctl
```

Dentro de `iwctl`:

```
device list
station wlan0 scan
station wlan0 get-networks
station wlan0 connect "SSID"
exit
```

Verifique a internet:

```bash
ping -c 3 archlinux.org
```

Sincronize a hora:

```bash
timedatectl set-ntp true
```

### 2. Instale o Arch rapidamente

O caminho rápido é `archinstall`:

```bash
archinstall
```

Escolhas recomendadas:

| Opção                       | Escolha                                                                      |
| --------------------------- | ---------------------------------------------------------------------------- |
| Layout do disco             | Padrão ou manual, dependendo da sua VM/disco.                                |
| Carregador de inicialização | `systemd-boot` para UEFI, GRUB se você preferir.                             |
| Perfil                      | Minimal já é suficiente; desktop é opcional.                                 |
| Network                     | NetworkManager.                                                              |
| Áudio                       | PipeWire.                                                                    |
| Usuário                     | Crie um usuário normal com acesso sudo.                                      |
| Pacotes extras              | `git curl base-devel xorg-server lightdm lightdm-gtk-greeter networkmanager` |

Após a instalação:

```bash
reinicie
```

### 3. Habilite o básico

Entre como seu usuário normal e então certifique-se de que os serviços básicos estejam prontos:

```bash
sudo pacman -Syu
sudo pacman -S --needed git curl base-devel xorg-server lightdm lightdm-gtk-greeter networkmanager
sudo systemctl enable --now NetworkManager
sudo systemctl enable lightdm
```

Reinicie mais uma vez se você acabou de ativar o LightDM:

```bash
sudo reboot
```

## Instalação dos Dotfiles

Abra um terminal no diretório home:

```bash
cd "$HOME"
```

Baixe o instalador oficial:

```bash
curl -LO http://gh0stzk.github.io/dotfiles/RiceInstaller
```

Revise o instalador antes de executá-lo:

```bash
less RiceInstaller
```

Dê permissão de execução:

```bash
chmod +x RiceInstaller
```

Execute-o como seu usuário normal:

```bash
./RiceInstaller
```

O instalador é interativo. Ele pode perguntar se você quer as configurações incluídas do Neovim e do Firefox. Leia cada prompt em vez de apenas apertar enter em tudo.

### Instalação em um bloco

Para uma instalação rápida de laboratório depois que você já tiver um Arch funcionando:

```bash
cd "$HOME"
curl -LO http://gh0stzk.github.io/dotfiles/RiceInstaller
less RiceInstaller
chmod +x RiceInstaller
./RiceInstaller
```

## O que o instalador faz

Em alto nível, o instalador:

1. Verifica se não está sendo executado como root.
2. Verifica se está sendo executado a partir de `$HOME`.
3. Adiciona o repositório de pacotes `gh0stzk-dotfiles` .
4. Adiciona o Chaotic-AUR.
5. Baixa os dotfiles.
6. Faz backup das configurações existentes do usuário quando necessário.
7. Instala o ambiente BSPWM.
8. Habilita o MPD para recursos de música.
9. Altera o shell para ZSH.

O script também move muitas pastas de configuração existentes para um diretório de backup antes de substituí-las. Ainda assim, mantenha seu próprio backup primeiro.

## Primeiro Login

Após a instalação:

1. Reinicie ou saia da sessão.
2. Selecione a sessão BSPWM no seu gerenciador de login.
3. Entre normalmente.
4. Espere a primeira inicialização terminar a autoconfiguração.
5. Teste o terminal, o Rofi, a Polybar, o seletor de tema e o seletor de papel de parede.

Se você estiver em uma máquina virtual e a área de trabalho parecer quebrada ou lenta, tente mudar o Picom de `glx` para `xrender` antes de assumir que a instalação falhou.

## Primeiras Coisas a Verificar

Após a primeira inicialização, verifique as variáveis relacionadas ao hardware. Abra:

```bash
~/.config/bspwm/config/system.ini
```

Verifique os valores para:

| Valor               | Por que isso importa                     |
| ------------------- | ---------------------------------------- |
| Interface de rede   | Módulos de rede na barra.                |
| Placa de vídeo      | Alguns módulos visuais e de status.      |
| Bateria e adaptador | Módulos de bateria e brilho do notebook. |

Se você estiver em um PC de mesa, a interface de rede normalmente é a principal com que se preocupar.

## Comandos Úteis

| Comando                             | Use                                                            |
| ----------------------------------- | -------------------------------------------------------------- |
| `RiceSelector`                      | Abra o seletor de tema.                                        |
| `RiceEditor`                        | Edite o tema atual visualmente.                                |
| `WallSelect`                        | Abra o seletor de papel de parede.                             |
| `Term --selecterm`                  | Escolha o aplicativo de terminal.                              |
| `OpenApps --menu`                   | Abra o iniciador de aplicativos.                               |
| `OpenApps --KeyHelp`                | Abra a folha de atalhos do teclado.                            |
| `OpenApps --screenshot`             | Abra a ferramenta de captura de tela.                          |
| `OpenApps --netmanager`             | Abra o applet do gerenciador de rede.                          |
| `OpenApps --bluetooth`              | Abra o applet de Bluetooth.                                    |
| `OpenApps --clipboard`              | Abra o gerenciador da área de transferência.                   |
| `OpenApps --powermenu`              | Abra o menu de energia.                                        |
| `OpenApps --keyboard`               | Abra o applet de layout do teclado.                            |
| `OpenApps --scratch`                | Abra o scratchpad.                                             |
| `HideBar -h`                        | Ocultar barras.                                                |
| `HideBar -u`                        | Mostrar barras.                                                |
| `SoftReload`                        | Recarregue o ambiente suavemente.                              |
| `ScreenLocker`                      | Bloqueie a tela.                                               |
| `bspc wm -r`                        | Recarregue o BSPWM.                                            |
| `pkill -USR1 -x sxhkd`              | Recarregue os atalhos do teclado.                              |
| `~/.config/bspwm/config/system.ini` | Variáveis de hardware/módulo para verificar após a instalação. |
| `~/.config/bspwm/config/sxhkdrc`    | Arquivo principal de atalhos de teclado.                       |

## Atalhos de Teclado Completos

O projeto mostra a folha de atalhos visual com `Alt + F1`. `Super` significa a tecla Windows na maioria dos teclados. A fonte da verdade é o `~/.config/bspwm/config/sxhkdrc`instalado; esta tabela segue o arquivo upstream atual e agrupa todos os atalhos para facilitar a leitura.

### Ajuda

| Teclas     | Ação                                 |
| ---------- | ------------------------------------ |
| `Alt + F1` | Mostrar folha de atalhos do teclado. |

### Apps Principais

| Teclas                 | Ação                             |
| ---------------------- | -------------------------------- |
| `Super + Return`       | Abrir terminal normal.           |
| `Super + Alt + Return` | Abrir terminal flutuante.        |
| `Super + Space`        | Abra o iniciador de aplicativos. |
| `Alt + Space`          | Abrir seletor de tema.           |
| `Super + B`            | Abrir navegador.                 |
| `Super + E`            | Abrir editor.                    |
| `Super + F`            | Abrir gerenciador de arquivos.   |
| `Super + Y`            | Abrir Yazi.                      |
| `Super + V`            | Abrir Neovim.                    |
| `Super + M`            | Abrir player de música/Ncmpcpp.  |
| `Super + P`            | Abrir Pavucontrol.               |
| `Super + T`            | Abrir Telegram.                  |
| `Super + W`            | Abrir WhatsApp.                  |
| `Super + R`            | Abrir RiceEditor.                |

### Applets do Rofi

| Teclas                                           | Ação                                    |
| ------------------------------------------------ | --------------------------------------- |
| `Super + Alt + T`                                | Seletor de terminal.                    |
| `Super + Alt + W`                                | Seletor de papel de parede.             |
| `Super + Alt + A`                                | Applet de montagem do Android.          |
| `Super + Alt + N`                                | Gerenciador de rede.                    |
| `Super + Alt + B`                                | Gerenciador de Bluetooth.               |
| `Super + Alt + C`                                | Gerenciador da área de transferência.   |
| `Super + Alt + S`                                | Ferramenta de captura de tela.          |
| `Super + Alt + P`                                | Menu de energia.                        |
| `Super + Alt + L`                                | Seletor de estilo do iniciador do Rofi. |
| `Super + Alt + K`                                | Applet de layout do teclado.            |
| `Super + Alt + X`                                | Applet do RofiPass/senha.               |
| `Clique com o botão direito na área de trabalho` | Abra o Jgmenu.                          |

### Sistema e Ambiente

| Teclas                   | Ação                                         |
| ------------------------ | -------------------------------------------- |
| `Super + Alt + O`        | Scratchpad.                                  |
| `Ctrl + Super + Alt + P` | Desligar o computador.                       |
| `Ctrl + Super + Alt + R` | Reiniciar o computador.                      |
| `Ctrl + Super + Alt + Q` | Encerrar sessão.                             |
| `Ctrl + Super + Alt + L` | Bloquear tela.                               |
| `Ctrl + Super + Alt + K` | Finalizar app com `xkill`.                   |
| `Ctrl + Super + Alt + S` | Recarregamento suave.                        |
| `Super + Alt + H`        | Ocultar barra.                               |
| `Super + Alt + U`        | Mostrar barra.                               |
| `Ctrl + Alt + Plus`      | Aumentar a transparência da janela em foco.  |
| `Ctrl + Alt + Minus`     | Diminuir a transparência da janela em foco.  |
| `Ctrl + Alt + T`         | Redefinir a transparência da janela em foco. |
| `XF86MonBrightnessUp`    | Aumentar brilho.                             |
| `XF86MonBrightnessDown`  | Diminuir brilho.                             |
| `XF86AudioRaiseVolume`   | Aumentar volume.                             |
| `XF86AudioLowerVolume`   | Diminuir volume.                             |
| `XF86AudioMute`          | Alternar mudo.                               |
| `XF86AudioNext`          | Próxima faixa de mídia.                      |
| `XF86AudioPrev`          | Faixa de mídia anterior.                     |
| `XF86AudioPlay`          | Tocar/pausar mídia.                          |
| `XF86AudioStop`          | Pare a mídia.                                |

### Núcleo do BSPWM

| Teclas              | Ação                                          |
| ------------------- | --------------------------------------------- |
| `Super + Alt + R`   | Recarregue o BSPWM.                           |
| `Super + X`         | Fechar o nó em foco.                          |
| `Super + Shift + X` | Finalizar o nó em foco.                       |
| `Super + Escape`    | Recarregar as associações de teclas do sxhkd. |

### Estados e Sinalizadores do Nó

| Teclas            | Ação                                         |
| ----------------- | -------------------------------------------- |
| `Alt + T`         | Definir o nó como empilhado.                 |
| `Alt + Shift + T` | Definir o nó como pseudoempilhado.           |
| `Alt + A`         | Definir o nó como flutuante.                 |
| `Alt + F`         | Definir o nó como tela cheia.                |
| `Alt + M`         | Alternar o sinalizador marcado.              |
| `Alt + X`         | Alternar o sinalizador bloqueado.            |
| `Alt + S`         | Alternar o sinalizador aderente.             |
| `Alt + P`         | Alternar o sinalizador privado.              |
| `Alt + H`         | Ocultar a janela em foco.                    |
| `Ctrl + Alt + H`  | Mostrar menu para restaurar janelas ocultas. |

### Áreas de Trabalho e Foco

| Teclas                                     | Ação                                                                     |
| ------------------------------------------ | ------------------------------------------------------------------------ |
| `Ctrl + Tab`                               | Girar a área de trabalho.                                                |
| `Super + Esquerda`                         | Mudar para a área de trabalho anterior.                                  |
| `Super + Direita`                          | Mudar para a próxima área de trabalho.                                   |
| `Super + 1` para `Super + 9`               | Focar a área de trabalho 1 a 9.                                          |
| `Super + 0`                                | Focar a área de trabalho 10.                                             |
| `Super + Ctrl + 1` para `Super + Ctrl + 9` | Enviar a janela em foco para a área de trabalho 1 a 9.                   |
| `Super + Ctrl + 0`                         | Enviar a janela em foco para a área de trabalho 10.                      |
| `Super + Ctrl + Esquerda`                  | Enviar a janela em foco para a área de trabalho anterior e acompanhá-la. |
| `Super + Ctrl + Direita`                   | Enviar a janela em foco para a próxima área de trabalho e acompanhá-la.  |
| `Alt + Tab`                                | Alternador de janelas.                                                   |
| `Super + Alt + Esquerda`                   | Focar a janela a oeste, usar a anterior como alternativa.                |
| `Super + Alt + Baixo`                      | Focar a janela ao sul.                                                   |
| `Super + Alt + Cima`                       | Focar a janela ao norte.                                                 |
| `Super + Alt + Direita`                    | Focar a janela a leste, usar a próxima como alternativa.                 |
| `Ctrl + Alt + Esquerda`                    | Mover a janela em foco para o oeste.                                     |
| `Ctrl + Alt + Baixo`                       | Mover a janela em foco para o sul.                                       |
| `Ctrl + Alt + Cima`                        | Mover a janela em foco para o norte.                                     |
| `Ctrl + Alt + Direita`                     | Mover a janela em foco para o leste.                                     |
| `Ctrl + Shift + Vírgula`                   | Focar o último nó.                                                       |
| `Ctrl + Shift + Ponto`                     | Focar a última área de trabalho.                                         |

### Pré-seleção

| Teclas             | Ação                                     |
| ------------------ | ---------------------------------------- |
| `Super + Ctrl + H` | Pré-selecionar divisão horizontal/leste. |
| `Super + Ctrl + V` | Pré-selecionar divisão vertical/sul.     |
| `Super + Ctrl + Q` | Cancelar a pré-seleção.                  |

### Mover e Redimensionar

| Teclas                     | Ação                                      |
| -------------------------- | ----------------------------------------- |
| `Super + Ctrl + B`         | Equilibrar os nós da área de trabalho.    |
| `Super + Alt + Mais`       | Aumentar o tamanho do nó empilhado.       |
| `Super + Alt + Menos`      | Diminuir o tamanho do nó empilhado.       |
| `Super + Ctrl + Mais`      | Aumentar o tamanho do nó flutuante.       |
| `Super + Ctrl + Menos`     | Diminuir o tamanho do nó flutuante.       |
| `Super + Shift + Esquerda` | Mover a janela flutuante para a esquerda. |
| `Super + Shift + Baixo`    | Mover a janela flutuante para baixo.      |
| `Super + Shift + Cima`     | Mover a janela flutuante para cima.       |
| `Super + Shift + Direita`  | Mover a janela flutuante para a direita.  |

### Operação Múltipla

| Teclas                           | Ação                                                                          |
| -------------------------------- | ----------------------------------------------------------------------------- |
| `Super + Ctrl + X`               | Fechar todos os nós na área de trabalho atual.                                |
| `Super + N`, depois `X`          | Fechar todas as janelas locais sem foco.                                      |
| `Super + N`, depois `K`          | Finalizar todas as janelas locais sem foco.                                   |
| `Super + N`, depois `M`          | Trazer todas as janelas marcadas para a área de trabalho em foco.             |
| `Super + N`, depois `1` para `9` | Trazer todas as janelas dessa área de trabalho para a área de trabalho atual. |

## Personalização Comum

### Alterar Tema

Use:

```
Alt + Space
```

Escolha um tema no seletor. O ambiente é atualizado sem precisar reiniciar a sessão inteira.

### Alterar Papel de Parede

Use:

```
Super + Alt + W
```

O projeto suporta papéis de parede aleatórios, diretórios personalizados, papéis de parede fixos, papéis de parede animados e comportamento de apresentação de slides.

### Editar Tema Atual

Use o RiceEditor quando quiser ajustar as configurações visuais sem editar manualmente cada módulo:

```
RiceEditor
```

As edições típicas incluem bordas, sombras, animações, transparência, comportamento do papel de parede e configurações de módulos específicos do tema.

## Solução de Problemas

| Problema                                   | O que verificar                                                                          |
| ------------------------------------------ | ---------------------------------------------------------------------------------------- |
| O login retorna ao gerenciador de exibição | Confirme que a sessão do BSPWM está instalada e verifique `~/.xsession-errors`.          |
| Os módulos da barra estão errados          | Verifique `~/.config/bspwm/config/system.ini`.                                           |
| O applet de rede não funciona              | Confirme que o NetworkManager está instalado e em execução.                              |
| A aparência gráfica da VM está quebrada    | Tente o backend do Picom em vez de `xrender` backend em vez de `glx`.                    |
| Os atalhos de teclado falham               | Verifique `sxhkd` está em execução e verifique `~/.config/bspwm/config/sxhkdrc`.         |
| O tema parece desalinhado                  | O projeto foi projetado para 1600x900 e 96 DPI; ajuste para o seu monitor.               |
| As configurações existentes desapareceram  | Verifique a pasta de backup criada pelo instalador e os seus próprios `dotfiles-backup`. |

## Notas para Reinstalação Limpa

Para a tentativa mais segura:

1. Faça backup dos seus arquivos atuais.
2. Remova ou mova os diretórios antigos de dotfiles.
3. Baixe novamente o mais recente `RiceInstaller`.
4. Revise o script novamente.
5. Execute-o a partir de `$HOME` como um usuário normal.

Não execute instaladores modificados aleatórios de forks de terceiros, a menos que você tenha revisado o diff.

## Referências

* [repositório oficial gh0stzk/dotfiles](https://github.com/gh0stzk/dotfiles)
* [RiceInstaller](https://github.com/gh0stzk/dotfiles/blob/master/RiceInstaller)
* [Primeiros passos após a instalação](https://github.com/gh0stzk/dotfiles/wiki/First-steps-after-installation)
* [wiki de atalhos de teclado](https://github.com/gh0stzk/dotfiles/wiki/Keyboard-Shortcuts)
* [arquivo de associações de teclas atual do sxhkdrc](https://github.com/gh0stzk/dotfiles/blob/master/config/bspwm/config/sxhkdrc)
* [wiki de configuração de papéis de parede](https://github.com/gh0stzk/dotfiles/wiki/Wallpapers-Configuration)
* [ArchWiki: bspwm](https://wiki.archlinux.org/title/Bspwm)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://hacking-notes.jord4n.pro/pt-br/useful-resources/gh0stzk-bspwm-dotfiles.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
