Снимки показывают английский интерфейс; схемы отображаются на языке руководства. Названия элементов в приложении могут отличаться в зависимости от выбранного языка.
AppleScript — Справочник команд
Описания команд и примеры для копирования соответствуют разделу автоматизации в приложении для Mac. Справочники включают существующие команды и дополнения версии 2.0.17.

Описания всех команд и полные примеры синхронизированы со встроенной справкой Mac. Перед запуском замените имена и ID из примеров. Они могут менять реальные подключения и настройки; не запускайте всю страницу как один сценарий.
Справочник команд
Используйте приведённую фразу команды. Имя подключения или тег группы указывайте в кавычках.
start
Запускает Secure Pipes без отображения окна.
tell application "Secure Pipes" to start
show
Показывает окно Secure Pipes.
tell application "Secure Pipes" to show
hide
Скрывает окно, оставляя Secure Pipes и подключения запущенными.
tell application "Secure Pipes" to hide
shutdown
Завершает Secure Pipes и останавливает активные подключения.
tell application "Secure Pipes" to shutdown
list connections
Показывает список сохранённых подключений.
tell application "Secure Pipes" to list connections
list connection groups
Показывает теги, используемые как группы подключений.
tell application "Secure Pipes" to list connection groups
connect connection "Build Tunnel (Local Forward)"
Запускает сохранённое подключение.
tell application "Secure Pipes" to connect connection "Build Tunnel (Local Forward)"
disconnect connection "Build Tunnel (Local Forward)"
Останавливает сохранённое подключение.
tell application "Secure Pipes" to disconnect connection "Build Tunnel (Local Forward)"
connection status "Build Tunnel (Local Forward)"
Возвращает текущее состояние подключения.
tell application "Secure Pipes" to connection status "Build Tunnel (Local Forward)"
connect group "engineering"
Запускает группу с сохранёнными настройками.
tell application "Secure Pipes" to connect group "engineering"
disconnect group "engineering"
Останавливает группу и подключения её участников.
tell application "Secure Pipes" to disconnect group "engineering"
Используйте UUID подключения в скриптах, чтобы они работали и после переименования. Также поддерживаются уникальные имена и полные имена с типом. При совпадении имён используйте UUID.
Удалённый рабочий стол
list remote desktops
Список сохранённых подключений RDP/VNC.
tell application "Secure Pipes" to list remote desktops
get remote desktop "<ID>"
Получить подключение по ID без учётных данных.
tell application "Secure Pipes" to get remote desktop "DESKTOP-ID"
create remote desktop <JSON>
Создать с помощью name и values. Для заданного хоста укажите hostProfileUUID.
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>
Обновить по id; name и values необязательны.
tell application "Secure Pipes" to update remote desktop "{\"id\":\"DESKTOP-ID\",\"values\":{\"remoteDesktopOptions\":{\"screen mode id\":1,\"audiomode\":2}}}"
open remote desktop "<ID>"
При необходимости запустить SSH-туннель, затем открыть сохранённый клиент RDP/VNC.
tell application "Secure Pipes" to open remote desktop "DESKTOP-ID"
delete remote desktop "<ID>"
Удалить отключённое подключение по ID.
tell application "Secure Pipes" to delete remote desktop "DESKTOP-ID"
Имена пользователей можно записывать, но они никогда не возвращаются. Пароли SSH и файлы ключей задаются в Secure Pipes; пароль рабочего стола вводится в клиенте.
Планы заданий
Создавать и контролировать задания. Чтение никогда не возвращает пароли или содержимое закрытых ключей.
list task plans
Показать планы как JSON без конфиденциальных данных.
tell application "Secure Pipes" to list task plans
get task plan "work-start"
Прочитать план по ID как JSON без конфиденциальных данных.
tell application "Secure Pipes" to get task plan "work-start"
create task plan <JSON>
Создать проверенный план с ID подключений/групп в действиях, без учётных данных.
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>
Обновить по существующему ID и изменяемым полям.
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"
Включить/отключить без изменения расписания. Параметр по умолчанию true.
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"
Выполнить план сейчас и вернуть результат JSON.
tell application "Secure Pipes" to run task plan "work-start"
delete task plan "work-start"
Удалить сохранённый план по ID.
tell application "Secure Pipes" to delete task plan "work-start"
JSON поддерживает repeat 0–6, выбранные дни, диапазоны ISO 8601 или YYYY-MM-DD и проверенные действия. Сначала получите ID через list connections и list connection groups.
Правила и сценарии использования
Для изменения правил или переключения сценария используйте ID либо уникальное имя. При переключении активные подключения разрываются и устанавливаются заново. При удалении сценария его правила сохраняются; правила без других сценариев становятся общими.
list proxy rules
Показывает правила по порядку с ID, именем, состоянием, действием и ID сценариев.
tell application "Secure Pipes" to list proxy rules
list scenarios
Показывает сценарии, включая Universal, с ID, именем и состоянием активности.
tell application "Secure Pipes" to list scenarios
current scenario
Показывает имя активного сценария.
tell application "Secure Pipes" to current scenario
switch scenario "Office"
Переключает сценарий по ID или уникальному имени и переподключает затронутые соединения по выбранным правилам.
tell application "Secure Pipes" to switch scenario "Office"
enable proxy rule "Work websites"
Включает правило по ID или уникальному имени.
tell application "Secure Pipes" to enable proxy rule "Work websites"
disable proxy rule "Work websites"
Отключает правило, не удаляя его.
tell application "Secure Pipes" to disable proxy rule "Work websites"
set rule scenarios "Work websites" scenarios {"Office", "Travel"}
Заменяет назначенные правилу сценарии. Universal делает правило универсальным.
tell application "Secure Pipes" to set rule scenarios "Work websites" scenarios {"Office", "Travel"}
create scenario "Travel"
Создаёт сценарий с уникальным именем и возвращает его ID.
tell application "Secure Pipes" to create scenario "Travel"
rename scenario "Travel" to "Mobile work"
Переименовывает сценарий, сохраняя назначения правил.
tell application "Secure Pipes" to rename scenario "Travel" to "Mobile work"
delete scenario "Travel"
Удаляет сценарий, но сохраняет его правила. Правила без других сценариев становятся универсальными.
tell application "Secure Pipes" to delete scenario "Travel"
Полный пример
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
Прокси и общий доступ к сети
Общий доступ использует сохранённые адрес, порт и параметры аутентификации. При необходимости открывается окно подтверждения. Для режима шлюза по-прежнему нужны подтверждение рисков и разрешение macOS.
list proxy servers
Показывает настроенные прокси-серверы: ID, имя, тип и адрес, без учётных данных.
tell application "Secure Pipes" to list proxy servers
transparent proxy status
Показывает состояние прозрачного прокси и системного расширения, а также соответствие версий.
tell application "Secure Pipes" to transparent proxy status
initialize transparent proxy
Устанавливает или восстанавливает системное расширение. macOS может запросить разрешение; прозрачный прокси не запускается.
tell application "Secure Pipes" to initialize transparent proxy
start transparent proxy
Запускает прозрачный прокси с текущими правилами маршрутизации после подготовки расширения.
tell application "Secure Pipes" to start transparent proxy
stop transparent proxy
Останавливает прозрачный прокси. Общий доступ к сети зависит от этой службы.
tell application "Secure Pipes" to stop transparent proxy
network sharing status
Показывает состояние общего доступа и шлюза. Во время работы отображаются действующие режимы, после остановки — сохранённые.
tell application "Secure Pipes" to network sharing status
set sharing modes "both"
Выбирает прокси, шлюз, оба режима или отключение для следующего ручного запуска. Перед сменой режима остановите общий доступ.
tell application "Secure Pipes" to set sharing modes "both"
start network sharing
Запускает выбранные режимы с сохранёнными адресом, портом и параметрами аутентификации. Может потребоваться подтверждение.
tell application "Secure Pipes" to start network sharing
stop network sharing
Останавливает шлюз и общий прокси-сервер. Прозрачный прокси продолжает работать.
tell application "Secure Pipes" to stop network sharing
Полный пример
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
Подключения, активность и журналы
Используйте ID из списков для точного поиска. Подробности возвращаются как текст JSON.
group status "engineering"
Показывает результат группы и состояние каждого участника.
tell application "Secure Pipes" to group status "engineering"
wait for connection "Build Tunnel" timeout 30
Ждёт готовности подключения; сбой или тайм-аут возвращает ошибку.
tell application "Secure Pipes" to wait for connection "Build Tunnel" timeout 30
preview route "example.com" port 443
Предсказывает локальное правило в текущем сценарии; доступность не проверяется.
tell application "Secure Pipes" to preview route "example.com" port 443 application "com.apple.Safari" transport "TCP"
test proxy server "proxy-id"
Проверяет сохранённый прокси и возвращает результат, причину и время.
tell application "Secure Pipes" to test proxy server "proxy-id"
list active flows "PROXY"
Показывает активность прокси; LAN — общий доступ, ALL — оба вида.
tell application "Secure Pipes" to list active flows "PROXY"
list active flows "LAN"
Показывает подключения общего доступа к сети.
tell application "Secure Pipes" to list active flows "LAN"
end active flow "flow-id"
Закрывает активный поток по его ID.
tell application "Secure Pipes" to end active flow "flow-id"
list recent logs
Показывает до 200 последних очищенных записей журнала, начиная с новых.
tell application "Secure Pipes" to list recent logs
log detail "log-id"
Показывает полную недавнюю запись журнала по ID.
tell application "Secure Pipes" to log detail "log-id"
Примеры для Терминала
Выполните команду AppleScript в Терминале с помощью osascript. macOS может запросить разрешение на управление Secure Pipes из Терминала.
Список групп подключений
osascript -e 'tell application "Secure Pipes" to list connection groups'
Пример результата
engineering, on-call
Теги определяют состав группы. Запуск учитывает сохранённый порядок, параллельный или последовательный режим и обработку ошибок.
Запуск или остановка группы
osascript -e 'tell application "Secure Pipes" to connect group "engineering"'
osascript -e 'tell application "Secure Pipes" to disconnect group "engineering"'
Просмотр и управление подключением
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)"'
Запуск из Терминала
Сохраните файл и передайте его путь команде osascript:
osascript ~/Scripts/Connect\ Tunnel.applescript
Запуск из файла сценария
Сохраните пример с расширением .applescript и запустите его в редакторе сценариев или через osascript.
Подключение по имени
Замените пример именем из списка 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
Выбор и запуск группы
Показывает доступные теги, позволяет выбрать группу и запускает все подключения в ней.
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
Разрешение на автоматизацию
Если macOS запросит разрешение, разрешите приложению, запускающему сценарий (например, Терминалу или редактору сценариев), управлять Secure Pipes в разделе «Системные настройки» > «Конфиденциальность и безопасность» > «Автоматизация».
На основе Secure Pipes 2.0.17 · Обновлено 9 ноября 2026 г.