Skip to content

Visao geral da arquitetura

O Triggerfish e uma plataforma segura de agentes de IA multicanal com um unico invariante fundamental:

SEGURANCA A seguranca e deterministica e esta abaixo do LLM. Cada

decisao de seguranca e tomada por codigo puro que o LLM nao pode contornar, anular ou influenciar. O LLM tem zero autoridade -- ele solicita acoes; a camada de politicas decide. :::

Esta pagina oferece uma visao geral de como o Triggerfish funciona. Cada componente principal possui um link para uma pagina dedicada com mais detalhes.

Arquitetura do sistema

Arquitetura do sistema: os canais fluem pelo Channel Router ate o Gateway, que coordena o Session Manager, o Policy Engine e o Agent Loop

Fluxo de dados

Cada mensagem segue este caminho pelo sistema:

Fluxo de dados: pipeline de 9 etapas desde a mensagem de entrada, passando pelos hooks de politicas, ate a entrega de saida

Em cada ponto de aplicacao, a decisao e deterministica -- a mesma entrada sempre produz o mesmo resultado. Nao ha chamadas ao LLM dentro dos hooks, nao ha aleatoriedade e nao ha como o LLM influenciar o resultado.

Componentes principais

Sistema de classificacao

Os dados fluem por quatro niveis ordenados: RESTRICTED > CONFIDENTIAL > INTERNAL > PUBLIC. A regra fundamental e no write-down: os dados so podem fluir para um nivel de classificacao igual ou superior. Uma sessao CONFIDENTIAL nao pode enviar dados para um canal PUBLIC. Sem excecoes. Sem anulacao pelo LLM.

Leia mais sobre o sistema de classificacao.

Motor de politicas e hooks

Oito hooks de aplicacao deterministica interceptam cada acao em pontos criticos do fluxo de dados. Os hooks sao funcoes puras: sincronas, registradas e infalsificaveis. O motor de politicas suporta regras fixas (nunca configuraveis), regras ajustaveis por administradores e escotilhas de escape declarativas em YAML para empresas.

Leia mais sobre o motor de politicas.

Sessoes e taint

Cada conversa e uma sessao com rastreamento de taint independente. Quando uma sessao acessa dados classificados, seu taint escala para esse nivel e nunca pode diminuir dentro da sessao. Uma reinicializacao completa limpa o taint E o historico de conversa. Cada elemento de dados carrega metadados de procedencia por meio de um sistema de rastreamento de linhagem.

Leia mais sobre sessoes e taint.

Gateway

O Gateway e o plano de controle central -- um servico local de longa execucao que gerencia sessoes, canais, ferramentas, eventos e processos de agentes por meio de um endpoint WebSocket JSON-RPC. Ele coordena o servico de notificacoes, o agendador cron, a ingestao de webhooks e o roteamento de canais.

Leia mais sobre o Gateway.

Armazenamento

Todos os dados com estado fluem por uma abstracao unificada StorageProvider. Chaves com namespace (sessions:, taint:, lineage:, audit:) mantem as responsabilidades separadas enquanto permitem trocar backends sem alterar a logica de negocio. O padrao e SQLite WAL em ~/.triggerfish/data/triggerfish.db.

Leia mais sobre o armazenamento.

Defesa em profundidade

A seguranca e implementada em camadas por meio de 13 mecanismos independentes, desde a autenticacao de canais e o acesso a dados com permissoes, passando pelo taint de sessao, hooks de politicas, sandboxing de plugins, sandboxing de ferramentas do sistema de arquivos, ate o registro de auditoria. Nenhuma camada e suficiente sozinha; juntas formam uma defesa que degrada de forma controlada mesmo se uma camada for comprometida.

Leia mais sobre a defesa em profundidade.

Principios de design

PrincipioO que significa
Aplicacao deterministicaOs hooks de politicas usam funcoes puras. Sem chamadas ao LLM, sem aleatoriedade. A mesma entrada sempre produz a mesma decisao.
Propagacao de taintTodos os dados carregam metadados de classificacao. O taint de sessao so pode escalar, nunca diminuir.
No write-downOs dados nao podem fluir para um nivel de classificacao inferior. Nunca.
Auditar tudoTodas as decisoes de politicas sao registradas com contexto completo: timestamp, tipo de hook, ID de sessao, entrada, resultado, regras avaliadas.
Hooks infalsificaveisO LLM nao pode contornar, modificar ou influenciar as decisoes dos hooks de politicas. Os hooks sao executados em codigo abaixo da camada do LLM.
Isolamento de sessoesCada sessao rastreia o taint de forma independente. Sessoes em segundo plano iniciam com taint PUBLIC limpo. Os workspaces dos agentes sao totalmente isolados.
Abstracao de armazenamentoNenhum modulo cria seu proprio armazenamento. Toda a persistencia flui por meio do StorageProvider.

Stack tecnologico

ComponenteTecnologia
RuntimeDeno 2.x (TypeScript em modo estrito)
Plugins de PythonPyodide (WASM)
TestesRunner de testes integrado do Deno
CanaisBaileys (WhatsApp), grammY (Telegram), Bolt (Slack), discord.js (Discord)
Automacao de navegadorpuppeteer-core (CDP)
VozWhisper (STT local), ElevenLabs/OpenAI (TTS)
ArmazenamentoSQLite WAL (padrao), backends empresariais (Postgres, S3)
SegredosChaveiro do SO (pessoal), integracao com vault (empresarial)

O Triggerfish nao requer ferramentas de build externas, nem Docker, nem

dependencia de nuvem. Ele roda localmente, processa os dados localmente e da ao usuario soberania total sobre seus dados. :::