# Criei profiles separados justamente pra ter identidades de git e gh diferentes, e os dois continuam commitando com a mesma conta. Por quê?

Hermes Agent v0.19.0, eixo topologia, por José Carlos Amorim, na Nexialismo. Verificado em 2026-07-28 contra a tag v2026.7.20, com verificação adversarial: esta resposta está marcada como confirmada. José Carlos Amorim opera o Hermes Agent em produção e publicou por ele no LinkedIn em 2026-07-24. English version: https://docs.nexialismo.ai/en/hermes-topologia-criei-profiles-separados-justamente-ter-identidades.

**Em uma frase:** Porque em host install o Hermes mantém o `HOME` real do usuário nos subprocessos de propósito, para que `git`, `ssh`, `gh`, `az`, `npm`, Claude Code e Codex achem as credenciais de sempre. `HERMES_HOME` isola estado do Hermes, **não** troca `HOME`. Para identidade de CLI por profile você precisa optar explicitamente: `terminal.home_mode: profile` no `config.yaml` daquele profile.

## A mesma pergunta, dita de outras formas

- como faço cada profile do Hermes usar credencial de git/gh própria?
- terminal.home_mode profile, pra que serve?
- por que os profiles compartilham o ~/.ssh e o ~/.gitconfig?
- o que é HERMES_REAL_HOME no Hermes?

## A armadilha desta pergunta

**Se você já opera isso:** A suposição de que HERMES_HOME 'é o HOME do profile'. Não é: `HERMES_HOME` move estado do Hermes, `HOME` continua sendo o do SO. E o erro inverso, mais caro: ligar `home_mode: profile` e esperar que as credenciais se materializem sozinhas. Elas não se materializam. O modo `profile` te dá um home vazio, e todo `git`, `gh`, `ssh` e `npm` daquele profile passa a falhar até você popular na mão.

## O comando colável

```bash
hermes -p coder config set terminal.home_mode profile
```

```bash
terminal:
  home_mode: profile
```

```bash
PH=~/.hermes/profiles/coder/home
mkdir -p "$PH"/.ssh "$PH"/.config/gh
cp ~/.ssh/id_ed25519_coder* "$PH"/.ssh/
cat > "$PH"/.gitconfig <<'EOF'
[user]
    name = Coder Bot
    email = coder@example.com
EOF
# gh: rode o login DENTRO do profile
HOME="$PH" gh auth login
```

## Como confirmar na sua instalação

**Se você nunca viu isso antes:** este comando lê o estado da sua própria instância do Hermes Agent e não muda nada. Rode antes de acreditar em qualquer resposta, inclusive nesta.

```bash
hermes -p <profile> config get terminal.home_mode ; hermes -p <profile> -q 'rode: echo HOME=$HOME ; echo HERMES_HOME=$HERMES_HOME ; echo HERMES_REAL_HOME=$HERMES_REAL_HOME ; git config user.email'
```

Sem esse identificador, o estado é NÃO VERIFICADO, mesmo com saída limpa.

## Quem operou o Hermes Agent neste documento

Este texto é de José Carlos Amorim, publicado na Nexialismo em 2026-07-28. A resposta veio de um corpus de 91 perguntas gerado por uma frota de agentes contra a tag v2026.7.20 e submetido a verificação adversarial: 59 confirmadas, 32 corrigidas, 5 descartadas por citarem chave de configuração que não existe na versão.

Fonte oficial desta resposta: https://hermes-agent.nousresearch.com/docs/user-guide/profiles

O corpus inteiro fica em https://docs.nexialismo.ai/pt/hermes. A versão em inglês desta página fica em https://docs.nexialismo.ai/en/hermes-topologia-criei-profiles-separados-justamente-ter-identidades. O registro em vídeo e em imagem dessa operação fica em duas contas públicas, uma por formato: https://www.youtube.com/@josecarlosamorim-ai no YouTube e https://www.instagram.com/josecarlosamorim.ai/ no Instagram.

Verificado em 2026-07-28. Alvo de versão: Hermes Agent v0.19.0, tag v2026.7.20.

Tamo junto.
