Deja que tu agente toque producción.Quédate con las claves.
Sallyport guarda tus credenciales en una bóveda local y ejecuta las llamadas de API y los comandos SSH por el agente. Tú apruebas cada ejecución con un clic o Touch ID. No hay ningún comando que revele una clave guardada, ni tampoco botón de exportar.
brew install --cask olegsotnikov/tap/sallyportmacOS 14+ · Apple Silicon · Apache-2.0 · Gratis · sin cuenta · sin nube
Hecho para ingenieros que dejan que Claude Code, Cursor o Codex toquen infraestructura real
Aprueba desde donde ya estás
Esta clave exige aprobación en cada uso. La llamada espera tu decisión.
⏺ sallyport · http.request
PATCH api.cloudflare.com/client/v4/zones/…/dns_records
⎿ key cloudflare · flagged approval per call
⎿ esperando aprobación...
Aprobación necesaria
http.request → api.cloudflare.com
claude ← node ← zsh
Tu agente puede leer tus claves
Tokens de API en .env, claves SSH en disco, permisos OAuth en archivos de configuración. El agente y cada paquete que instala pueden leerlo todo, y un solo README envenenado basta para sacarlo por la puerta.
Secretos a la vista
Tokens en .env y variables del shell, claves SSH en disco, tokens OAuth en archivos de configuración. Los puede leer el agente, sus procesos secundarios y lo que sea que npm instaló hoy.
La inyección de prompts se convierte en robo
Una página o un README malicioso le dice al agente que envíe un token a otro sitio, y el agente obedece. Se creó para seguir instrucciones.
Te enteras por la factura
Sin una pasarela no queda registro de qué llamadas hizo el agente, adónde las envió ni qué llevaban. Las claves robadas aparecen semanas después, cuando le conviene a otro.
Esto no es hipotético
Mayo de 2026
Ataque a npm de TanStack
84 versiones maliciosas en 42 paquetes recopilaron credenciales de la nube, tokens de GitHub y claves SSH al instalarse, y luego se propagaron a través de los propios paquetes de sus víctimas.
Finales de 2025
Gusano Shai-Hulud
Paquetes npm comprometidos robaban secretos al instalarse y usaban las credenciales robadas para infectar la siguiente tanda de paquetes.
Agosto de 2025
Nx S1ngularity
Una herramienta de compilación envenenada rastreaba las máquinas de los desarrolladores en busca de secretos, probaba herramientas de IA locales y sacaba el botín a través de la CLI de GitHub.
Los tres recopilaron claves de variables de entorno y archivos en disco. Sallyport mantiene fuera de ambos las claves utilizables.
Tu agente no necesita las claves
El agente envía una solicitud: llama a esta API, ejecuta este comando en ese host. Sallyport adjunta la credencial dentro de la aplicación, ejecuta la llamada y devuelve el resultado. La clave nunca aparece en el entorno del agente, y un registro sellado muestra qué se ejecutó y quién lo aprobó.
Escalera de decisión fija
Cada acción sube por la misma escalera compilada. No hay lenguaje de políticas que configurar mal ni motor de reglas que se pudra; una lista permitida opcional puede omitir la solicitud de sesión para las identidades de código en las que confías.
El modelo de confianza
puerta de la bóveda
La bóveda es absoluta
La bóveda empieza bloqueada. Secure Enclave y Touch ID protegen el acceso a sus datos. Hasta que la desbloqueas, Sallyport deniega todas las acciones.
claves por llamada
Las claves marcadas siempre piden confirmación
Una clave marcada con "Aprobación por llamada" exige un clic o Touch ID en cada uso, incluso dentro de una sesión aprobada.
puerta de sesión
Una aprobación por ejecución del agente
Un nuevo proceso de agente muestra una tarjeta con su autoridad de firma de código. La aprobación dura hasta que el proceso termina, la revocas o bloqueas la bóveda.
observación
Ejecuta y registra
Con la aprobación por sesión desactivada, las acciones se ejecutan sin tarjetas de sesión y permanecen en el registro.
Puerta de la bóveda, clave por llamada, puerta de sesión, observación.
Todo viene en una sola app firmada
Una sola app firmada para Mac contiene la bóveda, las aprobaciones y el registro. No hay cuenta que crear ni servicio en la nube detrás.
Puerta de bóveda absoluta
Mientras está bloqueada, Sallyport deniega todas las acciones del agente y las operaciones de gestión salvo el estado.
Cifrado en reposo
La bóveda cifra nombres de claves, proveedores, hosts vinculados, inventario SSH, ajustes y valores secretos.
Procedencia del proceso
Cada tarjeta muestra la autoridad de firma de código y la cadena de procesos del solicitante, incluidos los procesos sin firmar.
Touch ID para los cambios
Los cambios de configuración pueden exigir Touch ID. Un clic sintético no satisface la solicitud biométrica.
Registro cifrado al escribir
Sallyport cifra las ejecuciones del agente y la actividad de cada llamada al escribirlas, y enlaza el texto cifrado mediante una cadena de hashes.
SSH que ve el comando
Sallyport ve el comando SSH completo, comprueba la clave del host y sella una grabación de la sesión. La clave privada permanece en la aplicación.
Modo observación
El modo observación elimina las tarjetas de sesión, pero mantiene la puerta de la bóveda, la aprobación por llamada y el registro.
Sin recuperación
La bóveda no permite exportar ni revelar datos y no tiene clave de recuperación. Si la pierdes, vuelve a emitir las credenciales con sus proveedores.
HTTP, SSH y MCP
El agente se conecta a Sallyport como un servidor MCP normal. Todas las acciones siguen la misma escalera y llegan al mismo registro.
API HTTP
http.request → api.github.comLa app hace la llamada HTTPS e inyecta la credencial solo durante la ejecución. Las redirecciones a otro host no la incluyen.
SSH
ssh.exec → deploy@prod-03Un helper sin estado abre la conexión. La app gestiona las firmas SSH, fija las claves de host y sella una grabación de la sesión; la clave privada no entra en el helper.
Servidores MCP
github.create_issueEjecuta servidores MCP locales por stdio o remotos a través de la misma puerta. Sallyport sella y renueva los tokens OAuth 2.1.
Lo que está en juego
84
versiones maliciosas de paquetes en un solo ataque de npm que cazaba credenciales
0
cuentas, servicios en la nube o telemetría: Sallyport se ejecuta por completo en tu Mac
1 toque
Touch ID aprueba una llamada marcada; un clic sintético no puede falsificarlo
~2 min
de brew install a tu primera llamada controlada
Lo que Sallyport no promete
A las herramientas de seguridad les encanta prometer de más, así que aquí dejamos nuestro límite por escrito.
Límites
Una sesión aprobada puede actuar mal
La aprobación de sesión autoriza el proceso, no el significado de cada solicitud. Usa la aprobación por llamada para las claves que exijan una revisión individual.
No detiene código nativo con tus permisos
Sallyport no es un antivirus. El código que se ejecuta con tus permisos puede atacar la app o el sistema operativo.
No revisa por ti
Las tarjetas muestran la autoridad de firma de código y la cadena de procesos del solicitante. Tú debes revisar la solicitud.
Preguntas frecuentes
¿Qué licencia usa Sallyport?
¿Dónde se guardan mis secretos?
¿Envía datos a Sallyport?
¿Cuáles son los requisitos del sistema?
¿Qué ocurre mientras la bóveda está bloqueada?
¿Funciona con Claude Code y otros agentes?
¿Puede el agente ver mis claves?
¿Qué ocurre si pierdo el acceso a mi Mac?
Tu agente está a una inyección de prompts de tus claves.
Descarga gratis. Apple Silicon, macOS 14 o posterior. Sin cuenta, nunca.
brew install --cask olegsotnikov/tap/sallyportmacOS 14+ · Apple Silicon