Las capturas muestran la interfaz en inglés; los diagramas siguen el idioma de la guía. Los nombres de los controles pueden variar según el idioma de la app.
AppleScript — Referencia de comandos
Consulta las mismas descripciones de comandos y ejemplos que puedes copiar desde Automatización en la app para Mac. Las referencias incluyen los comandos existentes y las novedades de 2.0.17.

Se sincronizan todas las explicaciones y los scripts completos desde la referencia integrada en la app. Sustituye los nombres e ID de ejemplo antes de ejecutar. Los ejemplos pueden modificar conexiones y ajustes reales; no ejecutes toda la página como un script.
Referencia de comandos
Usa la frase de comando que se muestra. Escribe entre comillas el nombre de la conexión o la etiqueta del grupo.
start
Inicia Secure Pipes sin mostrar la ventana.
tell application "Secure Pipes" to start
show
Muestra la ventana de Secure Pipes.
tell application "Secure Pipes" to show
hide
Oculta la ventana mientras Secure Pipes y sus conexiones siguen activos.
tell application "Secure Pipes" to hide
shutdown
Cierra Secure Pipes y detiene las conexiones activas.
tell application "Secure Pipes" to shutdown
list connections
Lista las conexiones guardadas.
tell application "Secure Pipes" to list connections
list connection groups
Lista las etiquetas usadas como grupos de conexiones.
tell application "Secure Pipes" to list connection groups
connect connection "Build Tunnel (Local Forward)"
Inicia una conexión guardada.
tell application "Secure Pipes" to connect connection "Build Tunnel (Local Forward)"
disconnect connection "Build Tunnel (Local Forward)"
Detiene una conexión guardada.
tell application "Secure Pipes" to disconnect connection "Build Tunnel (Local Forward)"
connection status "Build Tunnel (Local Forward)"
Consulta el estado actual de la conexión.
tell application "Secure Pipes" to connection status "Build Tunnel (Local Forward)"
connect group "engineering"
Inicia un grupo con sus ajustes guardados.
tell application "Secure Pipes" to connect group "engineering"
disconnect group "engineering"
Detiene el grupo y las conexiones de sus miembros.
tell application "Secure Pipes" to disconnect group "engineering"
Usa el UUID de la conexión para que los scripts sigan funcionando después de cambiarle el nombre. También se admiten nombres únicos y nombres completos con su tipo. Si hay nombres duplicados, usa un UUID.
Escritorio remoto
list remote desktops
Listar las conexiones RDP/VNC guardadas.
tell application "Secure Pipes" to list remote desktops
get remote desktop "<ID>"
Leer una conexión por ID, sin credenciales.
tell application "Secure Pipes" to get remote desktop "DESKTOP-ID"
create remote desktop <JSON>
Crear con name y values. Usa hostProfileUUID para un host predefinido.
tell application "Secure Pipes" to create remote desktop "{\"name\":\"Office desktop\",\"values\":{\"hostProfileUUID\":\"PRESET-HOST-ID\",\"remoteDesktopType\":\"rdp\",\"remoteDesktopUsername\":\"alice\",\"remoteHost\":\"192.168.1.91\"}}"
tell application "Secure Pipes" to create remote desktop "{\"name\":\"Office VNC\",\"values\":{\"hostProfileUUID\":\"PRESET-HOST-ID\",\"remoteDesktopType\":\"vnc\",\"remoteDesktopVNCOpenMode\":\"screenSharing\"}}"
update remote desktop <JSON>
Actualizar por id; name y values son opcionales.
tell application "Secure Pipes" to update remote desktop "{\"id\":\"DESKTOP-ID\",\"values\":{\"remoteDesktopOptions\":{\"screen mode id\":1,\"audiomode\":2}}}"
open remote desktop "<ID>"
Iniciar el túnel SSH si es necesario y abrir el cliente RDP/VNC guardado.
tell application "Secure Pipes" to open remote desktop "DESKTOP-ID"
delete remote desktop "<ID>"
Eliminar por ID una conexión desconectada.
tell application "Secure Pipes" to delete remote desktop "DESKTOP-ID"
Se pueden escribir nombres de usuario, pero nunca se devuelven. Configura las contraseñas SSH y los archivos de identidad en Secure Pipes; introduce la contraseña del escritorio en el cliente.
Tareas programadas
Crear y controlar acciones programadas. Las lecturas nunca devuelven contraseñas ni contenido de claves privadas.
list task plans
Listar planes como JSON sin datos sensibles.
tell application "Secure Pipes" to list task plans
get task plan "work-start"
Leer por ID un plan como JSON sin datos sensibles.
tell application "Secure Pipes" to get task plan "work-start"
create task plan <JSON>
Crear un plan validado con ID de conexión/grupo en las acciones, sin credenciales.
tell application "Secure Pipes"
create task plan "{\"id\":\"work-start\",\"hour\":9,\"minute\":0,\"repeat\":2,\"actions\":[{\"type\":\"start_group\",\"id\":\"work\"}]}"
end tell
update task plan <JSON>
Actualizar con ID existente y campos que cambiar.
tell application "Secure Pipes"
update task plan "{\"id\":\"work-start\",\"hour\":8,\"minute\":45,\"repeat\":2,\"actions\":[{\"type\":\"start_group\",\"id\":\"work\"}]}"
end tell
set task plan enabled "work-start"
Activar/desactivar sin cambiar la programación. Parámetro true por defecto.
tell application "Secure Pipes" to set task plan enabled "work-start" enabled false
tell application "Secure Pipes" to set task plan enabled "work-start" enabled true
run task plan "work-start"
Ejecutar un plan inmediatamente y devolver el resultado JSON.
tell application "Secure Pipes" to run task plan "work-start"
delete task plan "work-start"
Eliminar un plan por ID.
tell application "Secure Pipes" to delete task plan "work-start"
JSON admite repeat 0–6, días personalizados, rangos ISO 8601 o YYYY-MM-DD y acciones validadas. Obtén ID con list connections y list connection groups primero.
Reglas y escenarios de uso
Use un ID o un nombre único para modificar reglas o cambiar de escenario. Al cambiar, las conexiones activas se cierran y se vuelven a establecer. Al eliminar un escenario se conservan sus reglas; las que no pertenezcan a otro escenario pasan a ser comunes.
list proxy rules
Enumera las reglas en orden con ID, nombre, estado, acción e ID de escenarios.
tell application "Secure Pipes" to list proxy rules
list scenarios
Enumera los escenarios, incluido Universal, con ID, nombre y estado activo.
tell application "Secure Pipes" to list scenarios
current scenario
Muestra el nombre del escenario actualmente activo.
tell application "Secure Pipes" to current scenario
switch scenario "Office"
Cambia de escenario por ID o nombre único y reconecta las conexiones afectadas con las reglas elegidas.
tell application "Secure Pipes" to switch scenario "Office"
enable proxy rule "Work websites"
Activa una regla por ID o nombre único.
tell application "Secure Pipes" to enable proxy rule "Work websites"
disable proxy rule "Work websites"
Desactiva una regla sin eliminarla.
tell application "Secure Pipes" to disable proxy rule "Work websites"
set rule scenarios "Work websites" scenarios {"Office", "Travel"}
Sustituye los escenarios asignados a una regla. Universal la convierte en regla universal.
tell application "Secure Pipes" to set rule scenarios "Work websites" scenarios {"Office", "Travel"}
create scenario "Travel"
Crea un escenario con nombre único y devuelve su ID.
tell application "Secure Pipes" to create scenario "Travel"
rename scenario "Travel" to "Mobile work"
Cambia el nombre de un escenario conservando sus asignaciones de reglas.
tell application "Secure Pipes" to rename scenario "Travel" to "Mobile work"
delete scenario "Travel"
Elimina un escenario sin borrar sus reglas. Las reglas sin otro escenario pasan a ser universales.
tell application "Secure Pipes" to delete scenario "Travel"
Ejemplo completo
tell application "Secure Pipes"
set savedRules to list proxy rules
set savedScenarios to list scenarios
set selectedScenario to current scenario
switch scenario "Office"
enable proxy rule "Work websites"
disable proxy rule "Work websites"
set rule scenarios "Work websites" scenarios {"Office", "Travel"}
set rule scenarios "Work websites" scenarios {}
set newScenarioID to create scenario "Travel"
rename scenario newScenarioID to "Mobile work"
delete scenario newScenarioID
end tell
Proxy y uso compartido de red
El uso compartido utiliza la dirección, el puerto y la autenticación guardados. Al iniciarlo se abre la ventana de confirmación cuando hace falta. El modo de puerta de enlace sigue requiriendo la confirmación de riesgos y la autorización de macOS.
list proxy servers
Enumera los servidores proxy configurados con ID, nombre, tipo y dirección, sin credenciales.
tell application "Secure Pipes" to list proxy servers
transparent proxy status
Muestra el estado del proxy transparente, el de la extensión del sistema y si coinciden las versiones.
tell application "Secure Pipes" to transparent proxy status
initialize transparent proxy
Instala o repara la extensión del sistema. macOS puede solicitar autorización; no inicia el proxy transparente.
tell application "Secure Pipes" to initialize transparent proxy
start transparent proxy
Inicia el proxy transparente con las reglas de enrutamiento actuales cuando la extensión esté lista.
tell application "Secure Pipes" to start transparent proxy
stop transparent proxy
Detiene el proxy transparente. El uso compartido de red depende de este servicio.
tell application "Secure Pipes" to stop transparent proxy
network sharing status
Muestra los estados del uso compartido y la puerta de enlace. Durante la ejecución, los modos son los activos; al detenerse, los guardados.
tell application "Secure Pipes" to network sharing status
set sharing modes "both"
Selecciona proxy, puerta de enlace, ambos o desactivado para el próximo inicio manual. Detenga el uso compartido antes de cambiar de modo.
tell application "Secure Pipes" to set sharing modes "both"
start network sharing
Inicia los modos seleccionados con la dirección, el puerto y la autenticación guardados. Puede requerir confirmación.
tell application "Secure Pipes" to start network sharing
stop network sharing
Detiene la puerta de enlace y el listener del proxy compartido. El proxy transparente sigue funcionando.
tell application "Secure Pipes" to stop network sharing
Ejemplo completo
tell application "Secure Pipes"
set servers to list proxy servers
set proxyState to transparent proxy status
initialize transparent proxy
start transparent proxy
set sharing modes "both"
set sharingState to network sharing status
start network sharing
stop network sharing
stop transparent proxy
end tell
Conexiones, actividad y registros
Usa los ID de las listas para consultar elementos con precisión. Los detalles se devuelven como texto JSON.
group status "engineering"
Muestra el resultado del grupo y el estado de cada miembro.
tell application "Secure Pipes" to group status "engineering"
wait for connection "Build Tunnel" timeout 30
Espera a que la conexión esté lista; un fallo o tiempo agotado devuelve un error.
tell application "Secure Pipes" to wait for connection "Build Tunnel" timeout 30
preview route "example.com" port 443
Predice la regla local del escenario actual; no prueba la conectividad.
tell application "Secure Pipes" to preview route "example.com" port 443 application "com.apple.Safari" transport "TCP"
test proxy server "proxy-id"
Prueba un proxy guardado y devuelve el resultado, el motivo y la duración.
tell application "Secure Pipes" to test proxy server "proxy-id"
list active flows "PROXY"
Muestra la actividad del proxy; LAN muestra el uso compartido y ALL ambos.
tell application "Secure Pipes" to list active flows "PROXY"
list active flows "LAN"
Muestra las conexiones de red compartida.
tell application "Secure Pipes" to list active flows "LAN"
end active flow "flow-id"
Cierra un flujo conectado mediante su ID.
tell application "Secure Pipes" to end active flow "flow-id"
list recent logs
Muestra hasta 200 registros recientes depurados, primero los más nuevos.
tell application "Secure Pipes" to list recent logs
log detail "log-id"
Muestra el registro reciente completo mediante su ID.
tell application "Secure Pipes" to log detail "log-id"
Ejemplos en Terminal
Ejecuta un comando AppleScript desde Terminal con osascript. macOS puede pedirte que permitas a Terminal controlar Secure Pipes.
Listar grupos de conexiones
osascript -e 'tell application "Secure Pipes" to list connection groups'
Resultado de ejemplo
engineering, on-call
Las etiquetas determinan los miembros del grupo. El inicio sigue el orden, el modo paralelo o secuencial y la política de errores guardados.
Iniciar o detener un grupo
osascript -e 'tell application "Secure Pipes" to connect group "engineering"'
osascript -e 'tell application "Secure Pipes" to disconnect group "engineering"'
Consultar y controlar una conexión
osascript -e 'tell application "Secure Pipes" to list connections'
osascript -e 'tell application "Secure Pipes" to connection status "Build Tunnel (Local Forward)"'
osascript -e 'tell application "Secure Pipes" to connect connection "Build Tunnel (Local Forward)"'
Ejecutar desde Terminal
Guarda el archivo y pasa su ruta a osascript:
osascript ~/Scripts/Connect\ Tunnel.applescript
Ejecutar desde un archivo de script
Guarda un ejemplo con la extensión .applescript y ejecútalo en Editor de Scripts o con osascript.
Conectar por nombre
Sustituye el nombre de ejemplo por uno devuelto por list connections.
on run
-- Leave this blank to skip opening a URL after connecting.
set postConnectURL to ""
-- Get the saved connections.
tell application "Secure Pipes"
set availableConnections to list connections
end tell
if (count of availableConnections) is 0 then return
set selectedConnection to choose from list availableConnections
if selectedConnection is false then return
set targetConnection to item 1 of selectedConnection
-- Start the selected connection and wait up to 90 seconds.
tell application "Secure Pipes"
connect connection targetConnection
set currentState to "connecting"
repeat with attempt from 1 to 90
set currentState to connection status targetConnection
if currentState is "connected" then exit repeat
if currentState is "authentication failed" or currentState is "unknown host key" or currentState is "host key changed" or currentState is "invalid" or currentState is "error" then exit repeat
delay 1
end repeat
end tell
-- Open the URL only if the connection comes up.
if currentState is "connected" and postConnectURL is not "" then
open location postConnectURL
end if
return currentState
end run
Elegir e iniciar un grupo
Muestra las etiquetas disponibles, permite elegir un grupo e inicia todas sus conexiones.
on run
-- Get the groups saved in Secure Pipes.
tell application "Secure Pipes"
set availableGroups to list connection groups
end tell
-- Let the user know if there are no groups to choose from.
if (count of availableGroups) is 0 then
display dialog "No tagged connection groups are available." buttons {"OK"}
return
end if
-- Ask which group to start.
set selectedGroup to choose from list availableGroups
if selectedGroup is false then return
set targetGroup to item 1 of selectedGroup
tell application "Secure Pipes"
connect group targetGroup
end tell
end run
Permiso de automatización
Si macOS lo solicita, permite que la app que ejecuta el script, como Terminal o Editor de Scripts, controle Secure Pipes en Ajustes del Sistema > Privacidad y seguridad > Automatización.
Basado en Secure Pipes 2.0.17 · Actualizado el 9 de noviembre de 2026