UStackUStack
Linchpin icon

Linchpin

Linchpin é um runtime self-hosted para agentes de IA: use qualquer modelo (OpenRouter ou Ollama) sem lock-in, com sessões sandbox e gestão de ferramentas/credenciais.

Linchpin

O que é Linchpin?

Linchpin é um runtime self-hosted para agentes de IA que suporta execução com diversos provedores de modelos e modelos locais. Ele é projetado para rotear requisições a diferentes LLMs, executar cada sessão de agente em um ambiente isolado e fornecer um conjunto controlado de ferramentas integradas e externas.

Seu propósito principal é reduzir o lock-in de modelos/provedores, ao mesmo tempo em que oferece aos agentes um contexto de execução sandbox e acesso gerenciado a ferramentas, credenciais e streams de eventos.

Principais Recursos

  • Qualquer modelo, um adaptador: Linchpin roteia para cerca de 200 modelos em nuvem (incluindo Claude, GPT, Gemini, Llama, DeepSeek, Mistral e Qwen) via OpenRouter, e usa Ollama para executar modelos locais; você pode alternar provedores por agente.
  • Sessões sandbox com contêineres Docker por sessão: Cada sessão roda em seu próprio contêiner Docker com Python, Node, git e ripgrep pré-instalados, para um ambiente de ferramentas consistente.
  • Rede configurável por ambiente: A rede pode ser definida como none para restrições rigorosas ou open egress para configurações menos restritivas.
  • Oito ferramentas de contêiner integradas: Agentes podem usar ferramentas como bash, read, write, edit, glob, grep, web_fetch e web_search, com execução restrita ao contêiner.
  • Integração de ferramentas MCP e HTTP: Linchpin conecta servidores Model Context Protocol (MCP) via stdio ou qualquer endpoint HTTP; o conector gerencia o ciclo de vida do processo e injeção de credenciais.
  • Cofres de credenciais criptografados: Credenciais são armazenadas com criptografia Fernet; agentes referenciam segredos por nome em suas configs, que são descriptografados no início da sessão sem escrita em disco em texto plano.
  • Streaming de eventos append-only por sessão: Linchpin registra um log de eventos append-only por sessão e suporta paginação por cursor; clientes podem se inscrever via SSE para reproduzir eventos a partir de um cursor e depois receber atualizações ao vivo.

Como Usar Linchpin

  1. Escolha seu caminho de modelo: Configure um agente para usar um modelo em nuvem via OpenRouter (para seleção de provedor) e/ou um modelo local via Ollama.
  2. Execute sessões de agente no sandbox: Inicie sessões sabendo que cada uma usa seu próprio contêiner Docker com ferramentas de runtime pré-instaladas; defina rede conforme as necessidades do ambiente (none vs open egress).
  3. Selecione ferramentas para o agente: Use as ferramentas integradas do Linchpin (bash, operações de arquivo, busca/busca) e opcionalmente adicione servidores MCP (via stdio) ou conecte a endpoints HTTP como ferramentas externas.
  4. Forneça credenciais de forma segura: Armazene credenciais no cofre criptografado Fernet do Linchpin e referencie segredos por nome nas configs do agente.
  5. Faça streaming de eventos para sua UI ou serviço: Inscreva-se via SSE e use paginação por cursor para reproduzir eventos anteriores e continuar recebendo atualizações.

Casos de Uso

  • Implantação de agentes multi-provedor: Você quer executar o mesmo fluxo de agente contra diferentes LLMs (por exemplo, Claude para uma tarefa e GPT para outra), mantendo o restante da configuração de ferramentas e sandbox consistente.
  • Execuções de agentes com modelos locais: Você tem modelos baixados localmente e prefere executá-los via Ollama, usando as mesmas ferramentas containerizadas e isolamento de sessão independentemente de onde o modelo roda.
  • Fluxos de código e arquivos sandbox: Um agente que precisa editar e buscar arquivos de projeto ou executar comandos shell pode fazê-lo dentro de seu próprio contêiner Docker, com rede restrita quando necessário.
  • Ferramentas via servidores MCP: Você tem servidores MCP existentes que expõem capacidades a agentes; Linchpin pode se conectar a eles via stdio e gerenciar ciclo de vida do conector e injeção de credenciais.
  • Feeds de eventos ao vivo para UI: Você está construindo uma interface que precisa de histórico e atualizações ao vivo; pode reproduzir entradas do log de eventos a partir de um cursor e depois continuar o streaming em tempo real via SSE.

FAQ

  • O Linchpin exige um provedor de modelo específico? Não. O Linchpin roteia via OpenRouter para muitos modelos em nuvem e também pode executar modelos locais via Ollama, com seleção de provedor configurável por agente.

  • Como as sessões de agentes são isoladas? Cada sessão executa em seu próprio contêiner Docker com ferramentas como Python e Node pré-instaladas. A rede pode ser restrita (nenhuma) ou permitida (egresso aberto) dependendo do ambiente.

  • Quais ferramentas os agentes podem usar? O Linchpin inclui oito ferramentas integradas (bash, read, write, edit, glob, grep, web_fetch, web_search) e pode integrar ferramentas externas via servidores MCP (stdio) ou endpoints HTTP.

  • Como o Linchpin gerencia credenciais? As credenciais são armazenadas em um cofre criptografado com Fernet e referenciadas por nome nas configurações de agentes. Elas são descriptografadas no início da sessão e não são gravadas em disco em texto plano.

  • Posso transmitir a atividade do agente para um frontend? Sim. O Linchpin mantém um log de eventos apenas-appendível por sessão e suporta assinaturas SSE que reproduzem eventos passados a partir de um cursor e depois transmitem novos eventos ao vivo.

Alternativas

  • Runtimes de agentes self-hosted com sandboxing: Plataformas alternativas que executam agentes em contêineres isolados também podem fornecer execução controlada de ferramentas; a diferença está frequentemente em como integram modelos e ferramentas (roteamento de provedores, suporte MCP/HTTP e modelo de streaming de eventos).
  • Frameworks de agentes apenas locais: Frameworks focados em modelos locais (ex.: aqueles construídos em torno de inferência local) podem evitar roteamento de provedores externos, mas podem oferecer níveis diferentes de troca de provedores e gerenciamento de ferramentas/credenciais.
  • Conectores de ferramentas focados em MCP: Se sua principal necessidade é conectividade MCP, você pode encontrar alternativas que enfatizam integração de ferramentas MCP; comparado ao Linchpin, seria necessário avaliar como elas lidam com isolamento de sessões, armazenamento de credenciais e streaming.
  • Implementações personalizadas de SSE/log de eventos: Algumas equipes constroem seu próprio log de eventos e streaming SSE em torno de um sistema de agentes; o tradeoff é mais esforço de engenharia para reproduzir replay baseado em cursor, logs de sessão apenas-appendíveis e comportamento consistente de ferramentas de agentes.