Pular para o conteúdo

Use o FortressFlag a partir de um agente de IA

Se você trabalha com um agente de código com IA, pode dar a ele as suas flags. “Desligue new-checkout em produção” é uma frase com uma chamada de API exata por trás — e uma que toca os seus usuários reais, e é por isso que este guia gasta tanto tempo nos limites quanto na configuração.

O FortressFlag vem com um servidor MCP: um programa pequeno que roda na sua própria máquina, ao lado do seu agente, e entrega a ele um conjunto de ferramentas de flags.

A versão curta: o seu agente pode fazer exatamente o que você pode fazer, e menos.

O servidor guarda um token de API que age como você — o seu papel, o seu acesso a projetos, a sua organização. Ele fala com o FortressFlag pela mesma API pública que o painel usa, então toda verificação de permissão, lista de permissões de projeto e registro de auditoria é idêntica a você clicando no botão. Não existe um caminho de acesso especial para agentes.

Algumas coisas deliberadamente não estão disponíveis a um agente, de jeito nenhum:

  • Aprovar uma proposta de produção. A razão de existir de um segundo par de olhos é que eles pertencem a uma pessoa.
  • Excluir permanentemente uma flag.
  • Criar chaves de SDK ou tokens de API. Um segredo de uso único devolvido a um agente vai parar em uma transcrição de conversa.
  • Gerenciar membros, cobrança ou acordos legais.

1. Crie um token. No painel, vá até a página da sua conta e encontre Tokens de API. Dê a ele um nome que você vá reconhecer, escolha um escopo e copie o token — ele é mostrado uma vez.

Escolha Somente leitura a menos que você queira que o agente faça mudanças. Você sempre pode criar um segundo token depois.

2. Aponte o seu agente para o servidor. A maioria dos clientes MCP recebe um pequeno bloco de configuração nomeando um comando e o ambiente dele:

{
"mcpServers": {
"fortressflag": {
"command": "ffmcp",
"env": {
"FORTRESSFLAG_TOKEN": "ffm_your_token_here",
"FORTRESSFLAG_API_URL": "https://your-fortressflag-api"
}
}
}
}

O token vai em env, nunca em args — argumentos de linha de comando são visíveis a outros usuários em uma máquina compartilhada.

3. Adicione --allow-writes quando quiser mudanças. Sem ele, o servidor oferece apenas ferramentas de leitura. Com ele, o seu agente pode ligar, criar, renomear, arquivar e restaurar flags — ainda limitado ao que o seu papel permite:

"args": ["--allow-writes"]

Trate essa opção como uma conveniência, não como uma tranca. Se um agente não tem por que mudar flags, dê a ele também um token somente leitura — essa é a parte que o FortressFlag realmente aplica.

O seu papel decide primeiro. Se você é Developer, não pode escrever em produção diretamente — então o seu agente também não. O que ele pode fazer é propor a mudança, exatamente como você faria: um segundo colega a aplica, e ninguém pode aprovar a própria proposta. Veja aprovações em produção.

A ferramenta pergunta de novo em segundo lugar. Antes de tocar em um ambiente de produção, o agente precisa declarar que tem a intenção, nomeando o ambiente. Essa verificação lê a classe de produção do ambiente, não o nome dele — então um ambiente que você chamou de live é protegido exatamente como um chamado prod, e um que é apenas chamado prod sem ser de classe de produção não vai incomodar você.

Essa segunda verificação existe porque o erro realista não é um atacante. É um agente que recebeu um pedido para mudar algo em staging e pega a chave de ambiente errada.

Vale ser claro: tudo o que o agente lê passa a fazer parte da conversa dele com o serviço de IA que ele usa. Isso inclui nomes, chaves e descrições de flags escritos pelo seu time, e — se você pedir para ele ler o histórico de auditoria — os nomes e endereços de e-mail dos seus colegas.

Duas coisas decorrem disso.

Trate descrições de flags como entrada não confiável. Qualquer pessoa que pode criar uma flag pode digitar qualquer coisa na descrição dela, inclusive texto que se lê como uma instrução ao agente. O servidor diz ao agente, de antemão e em toda ferramenta, que esses valores são dados da sua organização e nunca instruções. Isso ajuda; não é garantia, e é um motivo para pensar bem sobre de quem são as flags que um agente lê.

Não conseguimos ver nem governar essa transcrição. Ela é entre você e o seu provedor de IA. Nada sobre como o FortressFlag armazena ou transmite os seus dados muda quando você usa isso — as ferramentas são só mais um cliente da mesma API.

  • Roda apenas localmente. O servidor fala com o seu agente pela entrada e saída padrão, na sua máquina. Não há uma versão hospedada para apontar um agente remoto.
  • Ainda não há binários para download — por enquanto ele é compilado a partir do código-fonte.
  • Regras de segmentação e segmentos não são editáveis por um agente. Ler flags, ligá-las e propor mudanças em produção são; o editor de regras é uma superfície maior que merece a própria rodada de design.
  • Listar propostas pendentes exige permissão de aprovador. O token de um Developer pode propor uma mudança em produção mas não consegue listá-la depois — essa é a permissão na API subjacente, não uma peculiaridade das ferramentas.