Postman se instalou no Codex e Claude Code: como checar
Relato no GitHub diz que o Postman desktop instalou sozinho plugins no Codex e no Claude Code, com hook e MCP. Veja os arquivos, o script e como remover.
Um usuário do Postman abriu em 25 de outubro de 2026 uma issue no repositório oficial de suporte do app relatando que, ao abrir o Postman desktop 12.33.4 no Mac, o programa instalou sozinho um plugin no Codex e outro no Claude Code, registrou um hook que roda a cada início de sessão do agente, ligou uma conexão MCP remota e colocou o Postman CLI em ~/.local/bin. Ninguém clicou em "instalar". A issue ficou quase parada por uma semana e explodiu em 3 de novembro, quando chegou ao topo do Hacker News.
Este texto separa o que está documentado do que ainda é relato, mostra os arquivos que você deve olhar no seu computador e traz um script de leitura (não apaga nada) que testamos aqui antes de publicar. Se você usa Postman e algum agente de IA para programar, vale tirar dez minutos hoje.
O que o relato mostra, com evidência
O autor da issue anexou trechos dos próprios arquivos. O mais forte é o log do Postman, em ~/Library/Application Support/Postman/logs/main.log, que registra a instalação com a origem auto-existing-upgrade, ou seja, uma instalação automática para quem já tinha o app:
PostmanAgentPluginService~install: script completed
{"source":"auto-existing-upgrade","results":["claude-code:installed","codex:installed"],"installer":"script"}
Além do log, ele mostrou:
- Codex: o arquivo global
~/.codex/config.tomlganhou um marketplace apontando para o repositório postmanlabs/postman-plugin, o pluginpostman@postmanativado e um bloco[hooks.state]com umtrusted_hashpara o hook de início de sessão. - O hook: o arquivo do plugin registra um comando no evento SessionStart que imprime instruções para o agente. Entre elas, carregar a skill de engenharia de API do Postman "antes de responder a qualquer tarefa não trivial de API". É por isso que o Codex dele passou a puxar o Postman em tarefas que não tinham nada a ver com o app.
- MCP remoto: uma conexão com
https://mcp.postman.com/mcp, que falhava com "Auth required" a cada início do Codex. - Claude Code: o plugin
postman@claude-plugins-officialligado em~/.claude/settings.jsone registrado em~/.claude/plugins/installed_plugins.json, versão 2.0.1, no escopo do usuário.
O próprio autor deixa claro um limite: o relato mostra instalação e mudança de instruções sem consentimento, mas não afirma vazamento de dados. Alguns títulos que circularam falam em "compartilhar todos os dados de API", e isso não está na issue.
O hook que se aprova sozinho
O ponto mais sério não é o plugin em si, e sim a confiança. O Codex só roda hooks de plugin depois que o usuário aprova cada um; essa aprovação fica gravada como um hash em config.toml. O README oficial do plugin diz, com todas as letras, que no Codex "a instalação também aprova o hook de início de sessão do Postman" e que "não há um prompt separado para o hook". O autor da issue aponta no código do instalador a função que faz essa aprovação depois de instalar.
Na prática, uma ferramenta de terceiros decide por você que as instruções dela entram em toda sessão do seu agente. É o mesmo tipo de fronteira que discutimos no caso da extensão falsa do Claude Code no Cursor: o agente confia no que está na configuração dele, então quem escreve nessa configuração manda no agente.
O que mais apareceu nos comentários
Até a madrugada de 4 de novembro (horário de Brasília), a thread tinha mais de 30 comentários. Três merecem atenção, sempre como relato de usuário:
- Outro usuário diz que o mesmo caminho aconteceu numa versão mais nova: o app atualizou de 12.31.3 para 12.35.1 ao abrir e, na sequência, instalou o CLI e os plugins do Claude Code e do Codex. Ou seja, não parece ser algo só da 12.33.4.
- Um terceiro encontrou o plugin também no GitHub Copilot CLI, em
~/.copilot/settings.json, e diz que a opção de desinstalar dentro do Postman não removeu a entrada do Copilot. - Uma conta que fala em nome do Postman respondeu que o CLI e os plugins vêm junto com o app para facilitar a configuração, que isso é mencionado na página de download e no fluxo de atualização, e que a empresa vai deixar o opt-in mais claro e revisar a aprovação do hook. Não conseguimos confirmar o vínculo dessa conta com a empresa, e até a publicação não havia comunicado no blog oficial.
Como checar o seu computador
Os caminhos abaixo são os citados na issue. Vale para macOS e Linux; no Windows, os mesmos arquivos ficam dentro da sua pasta de usuário (%USERPROFILE%\.codex, %USERPROFILE%\.claude).

O script só lê arquivos e mostra as linhas que citam o Postman. Salve como checar-postman.sh, rode bash checar-postman.sh e leia a saída:
#!/usr/bin/env bash
# Procura sinais da integração do Postman nos agentes de IA do usuário atual.
# Só lê arquivos; não apaga nada.
H="${HOME}"
CX="${CODEX_HOME:-$H/.codex}"
achou=0
olhar() { # arquivo, padrão, descrição
if [ -f "$1" ] && grep -qiE "$2" "$1"; then
echo "[ACHOU] $3"; grep -niE "$2" "$1" | sed 's/^/ /'; achou=1
fi
}
olhar "$CX/config.toml" 'postman' "Codex: $CX/config.toml"
olhar "$H/.claude/settings.json" 'postman' "Claude Code: ~/.claude/settings.json"
olhar "$H/.claude/plugins/installed_plugins.json" 'postman' "Claude Code: installed_plugins.json"
olhar "$H/.copilot/settings.json" 'postman' "Copilot CLI: ~/.copilot/settings.json"
for f in "$H/.local/bin/postman" "$H/.local/bin/postman-cli"; do
[ -e "$f" ] && { echo "[ACHOU] CLI: $f"; ls -l "$f" | sed 's/^/ /'; achou=1; }
done
LOG="$H/Library/Application Support/Postman/logs/main.log"
[ -f "$LOG" ] || LOG="$H/.config/Postman/logs/main.log"
olhar "$LOG" 'auto-existing-upgrade|PostmanAgentPluginService' "Log do Postman: $LOG"
[ "$achou" = 0 ] && echo "Nada do Postman nos lugares conferidos."
exit 0
Testamos o script em 3 de novembro, com bash 5.2 e GNU grep 3.11, em duas pastas de usuário de teste: uma vazia e outra montada com os mesmos trechos que o autor da issue publicou. Na pasta vazia a saída é só "Nada do Postman nos lugares conferidos.". Na outra, ele acha os cinco pontos:
[ACHOU] Codex: /home/teste/.codex/config.toml
3:[marketplaces.postman]
5:source = "https://github.com/postmanlabs/postman-plugin.git"
7:[plugins."postman@postman"]
10:[hooks.state."postman@postman:hooks/codex-hooks.json:session_start:0:0"]
[ACHOU] Claude Code: ~/.claude/settings.json
1:{"enabledPlugins":{"postman@claude-plugins-official":true}}
[ACHOU] Claude Code: installed_plugins.json
[ACHOU] CLI: /home/teste/.local/bin/postman
[ACHOU] Log do Postman: .../Postman/logs/main.log
Não testamos num Mac com o Postman real instalado. O caminho do log no Linux (~/.config/Postman) é o padrão de apps Electron e pode variar; se o script não achar o log, procure a pasta de logs do Postman no seu sistema.
Como remover, do jeito oficial e à mão
O README do plugin documenta um instalador com dois subcomandos úteis: status, que mostra em quais agentes ele está, e remove, que desinstala. A opção --agent limita a um agente só.
npx @postman/postman-plugin status npx @postman/postman-plugin remove
Lembre que o npx baixa e executa a versão mais recente do pacote do npm (a 0.6.0 saiu em 3 de novembro). Se a sua desconfiança é justamente o instalador, faça a remoção à mão:
- Feche o Codex, o Claude Code e o Postman antes de editar, para nenhum deles regravar o arquivo.
- Codex: faça uma cópia de
~/.codex/config.tomle apague os blocos[marketplaces.postman],[plugins."postman@postman"]e o[hooks.state."postman@postman:..."]inteiro. O que importa é tirar o hash de confiança; sem ele o hook não é aprovado. - Claude Code: remova
"postman@claude-plugins-official": truedeenabledPluginsem~/.claude/settings.json, ou use o gerenciador de plugins do próprio Claude Code. - Copilot CLI: se o script achou algo em
~/.copilot/settings.json, remova a entradapostmandeextraKnownMarketplacesepostman@postmandeenabledPlugins. - CLI: se você não usa o Postman CLI, apague o executável em
~/.local/bine a pasta de bibliotecas criada junto, conferindo as datas comls -l. - Rode o script de novo e abra o agente para ver se as mensagens de autenticação do MCP do Postman sumiram.
Se o Postman continuar instalado, ele pode refazer tudo na próxima atualização. Os usuários da thread citam uma opção no menu de ajuda do app para desinstalar o plugin dos agentes, mas, como vimos acima, há relato de que ela não limpa o Copilot. Confira os arquivos depois de cada atualização até o Postman publicar a mudança prometida.
O que isso ensina para quem usa agentes de IA
A configuração do agente virou uma superfície de ataque, e de propaganda. Quem consegue escrever em ~/.codex ou ~/.claude decide quais instruções o agente lê antes de você digitar a primeira palavra. Três hábitos simples ajudam:
- Versione a configuração. Um
git initdentro de~/.codexe~/.claude(sem os arquivos de credencial) faz qualquer mudança aparecer numgit diff. - Leia o que o hook imprime. Hook de início de sessão é texto que entra no contexto do agente. Trate como você trataria uma dependência nova, do jeito que mostramos em dependência com cadeado.
- Conecte MCP só quando precisar. Cada servidor MCP é uma porta a mais com acesso ao que o agente vê. E chave de API que passa por ali merece limite de gasto, como explicamos no caso da Northflank.
Atualizado em 4 de novembro de 2026, às 0h. Este post segue a issue #14370, o README do postman-plugin e o pacote no npm. Vamos atualizar quando o Postman publicar uma posição oficial.