UStackUStack
Linchpin icon

Linchpin

Linchpin es un runtime self-hostable para agentes de IA: integra cualquier modelo (OpenRouter o Ollama), sin lock-in, con sesiones aisladas y gestión de herramientas/credenciales.

Linchpin

¿Qué es Linchpin?

Linchpin es un runtime autoalojable para agentes de IA que permite ejecutar con múltiples proveedores de modelos y modelos locales. Está diseñado para enrutar solicitudes a diferentes LLMs, ejecutar cada sesión de agente en un entorno aislado y proporcionar un conjunto controlado de herramientas integradas y externas.

Su propósito principal es reducir el lock-in de modelos/proveedores mientras ofrece a los agentes un contexto de ejecución sandbox y acceso gestionado a herramientas, credenciales y flujos de eventos.

Características clave

  • Cualquier modelo, un adaptador: Linchpin puede enrutar a unos 200 modelos en la nube (incluyendo Claude, GPT, Gemini, Llama, DeepSeek, Mistral y Qwen) vía OpenRouter, y usar Ollama para ejecutar modelos locales; puedes cambiar proveedores por agente.
  • Sesiones sandbox con contenedores Docker por sesión: Cada sesión se ejecuta en su propio contenedor Docker con Python, Node, git y ripgrep preinstalados para un entorno de herramientas consistente.
  • Redes configurables por entorno: La red puede configurarse en none para restricciones estrictas o open egress para configuraciones menos restrictivas.
  • Ocho herramientas de contenedor integradas: Los agentes pueden usar herramientas como bash, read, write, edit, glob, grep, web_fetch y web_search, con ejecución limitada dentro del contenedor.
  • Integración de herramientas MCP y HTTP: Linchpin puede conectar servidores Model Context Protocol (MCP) vía stdio, o cualquier endpoint HTTP; el conector gestiona el ciclo de vida del proceso e inyección de credenciales.
  • Bóvedas de credenciales encriptadas: Las credenciales se almacenan con cifrado Fernet; los agentes referencian secretos por nombre en sus configs, y se descifran al inicio de la sesión sin escribirse en disco en texto plano.
  • Streaming de eventos solo-apendible por sesión: Linchpin registra un log de eventos solo-apendible por sesión y soporta paginación por cursor; los clientes pueden suscribirse vía SSE para reproducir eventos pasados un cursor y luego transmitir actualizaciones en vivo.

Cómo usar Linchpin

  1. Elige tu ruta de modelo: Configura un agente para usar un modelo en la nube a través de OpenRouter (para selección de proveedor) y/o un modelo local vía Ollama.
  2. Ejecuta sesiones de agente en sandbox: Inicia sesiones sabiendo que cada una usa su propio contenedor Docker con herramientas de runtime preinstaladas; configura la red según tus necesidades (none vs open egress).
  3. Selecciona herramientas para el agente: Usa las herramientas integradas de Linchpin (bash, operaciones de archivos, búsqueda/búsqueda) y opcionalmente añade servidores MCP (vía stdio) o conecta a endpoints HTTP como herramientas externas.
  4. Proporciona credenciales de forma segura: Almacena credenciales en la bóveda encriptada Fernet de Linchpin y referéncialas por nombre en las configs de agentes.
  5. Transmite eventos a tu UI o servicio: Suscríbete vía SSE y usa paginación por cursor para reproducir eventos previos y seguir recibiendo actualizaciones.

Casos de uso

  • Despliegue de agentes multi-proveedor: Quieres ejecutar el mismo flujo de agente contra diferentes LLMs (por ejemplo, Claude para una tarea y GPT para otra) manteniendo consistente el resto de herramientas y sandbox.
  • Ejecuciones de agentes con modelos locales: Tienes modelos locales descargados y prefieres ejecutarlos vía Ollama, usando las mismas herramientas contenedorizadas y aislamiento de sesión independientemente de dónde se ejecute el modelo.
  • Flujos de código y archivos sandbox: Un agente que necesita editar y buscar archivos de proyecto o ejecutar comandos shell puede hacerlo dentro de su propio contenedor Docker, con red restringida cuando sea necesario.
  • Herramientas vía servidores MCP: Tienes servidores MCP existentes que exponen capacidades a agentes; Linchpin puede conectarse a ellos vía stdio y gestionar el ciclo de vida del conector e inyección de credenciales.
  • Feeds de eventos en vivo para UI: Estás construyendo una interfaz que necesita historial y actualizaciones en vivo; puedes reproducir entradas del log de eventos desde un cursor y luego continuar transmitiendo eventos en tiempo real vía SSE.

Preguntas frecuentes

  • ¿Requiere Linchpin un proveedor de modelos específico? No. Linchpin enruta a través de OpenRouter hacia muchos modelos en la nube y también puede ejecutar modelos locales vía Ollama, con la selección de proveedor configurable por agente.

  • ¿Cómo se aíslan las sesiones de los agentes? Cada sesión se ejecuta en su propio contenedor Docker con herramientas como Python y Node preinstaladas. La red puede restringirse (ninguna) o permitirse (egreso abierto) según el entorno.

  • ¿Qué herramientas pueden usar los agentes? Linchpin incluye ocho herramientas integradas (bash, read, write, edit, glob, grep, web_fetch, web_search) y puede integrar herramientas externas vía servidores MCP (stdio) o endpoints HTTP.

  • ¿Cómo maneja Linchpin las credenciales? Las credenciales se almacenan en un vault cifrado con Fernet y se referencian por nombre en las configs de los agentes. Se descifran al inicio de la sesión y no se escriben en disco en texto plano.

  • ¿Puedo transmitir la actividad del agente a un frontend? Sí. Linchpin mantiene un registro de eventos solo de apéndice por sesión y soporta suscripciones SSE que reproducen eventos pasados a partir de un cursor y luego transmiten eventos nuevos en vivo.

Alternativas

  • Runtimes de agentes autoalojados con sandboxing: Plataformas alternativas que ejecutan agentes en contenedores aislados también pueden ofrecer ejecución controlada de herramientas; la diferencia suele estar en cómo integran modelos y herramientas (enrutamiento de proveedores, soporte MCP/HTTP y modelo de streaming de eventos).
  • Frameworks de agentes solo locales: Frameworks enfocados en modelos locales (p. ej., aquellos construidos alrededor de inferencia local) pueden evitar el enrutamiento a proveedores externos, pero pueden ofrecer distintos niveles de cambio de proveedor y manejo gestionado de herramientas/credenciales.
  • Conectores de herramientas enfocados en MCP: Si tu necesidad principal es conectividad MCP, puedes encontrar alternativas que enfatizan la integración de herramientas MCP; comparado con Linchpin, deberías evaluar cómo manejan el aislamiento de sesiones, almacenamiento de credenciales y streaming.
  • Implementaciones personalizadas de SSE/registro de eventos: Algunos equipos construyen su propio registro de eventos y streaming SSE alrededor de un sistema de agentes; el tradeoff es más esfuerzo de ingeniería para reproducir reproducción basada en cursor, registros de sesión solo de apéndice y comportamiento consistente de herramientas de agentes.