SSH
Execute commands on remote machines directly over SSH. No agent required — connects to any SSH server with password or key authentication. Replaces EXEC / SPAWN / KILL for all remote and local shell execution.
[pending] — SSH is designed and specified. Runtime implementation is in progress.
Single command
SSH "root" AT "123.45.67.89" PASSWORD "mypassword" ENTER `ls /var/www` SET ?result
AFTER EMIT ?result(stdout)
Key-based authentication
SSH "deploy" AT "123.45.67.89" KEY "/root/keys/id_rsa" ENTER `git pull` SET ?result
AFTER EMIT ?result(stdout)
Custom port
SSH "admin" AT "123.45.67.89" ON "2222" PASSWORD "mypassword" ENTER `uptime` SET ?result
AFTER EMIT ?result(stdout)
Multi-command block
SSH "deploy" AT "123.45.67.89" KEY "/root/keys/id_rsa"
OPEN NEST
ENTER `cd /var/www/myapp`
AFTER ENTER `git pull`
AFTER ENTER `npm install --production`
AFTER ENTER `pm2 restart all`
CLOSE NEST SET ?result
AFTER EMIT ?result(stdout)
File transfer — OQL storage to remote
SSH "deploy" AT "123.45.67.89" KEY "/root/keys/id_rsa"
UPLOAD "/root/config.json" TO "/var/www/myapp/config.json"
File transfer — remote to OQL storage
SSH "root" AT "123.45.67.89" PASSWORD "mypassword"
DOWNLOAD "/var/log/app.log" INTO "/mounted/logs/app.log" SET ?path
AFTER EMIT ?path
Machine-to-machine transfer via in-scope SCP
Use ENTER with scp to transfer files between two remote machines — does not involve OQL virtual storage.
SSH "root" AT "123.45.67.89" PASSWORD "mypassword"
ENTER `scp /data/backup.tar.gz user@192.168.1.5:/backups/`
SET ?result
Checking exit code
SSH "root" AT "123.45.67.89" PASSWORD "mypassword" ENTER `systemctl is-active nginx` SET ?r
AFTER IF ?r(exit_code) IS EQUAL TO 0
OPEN NEST EMIT "nginx is running" CLOSE NEST
ELSE OPEN NEST EMIT "nginx is down" CLOSE NEST
Return value
SSH returns an object for every ENTER call:
| Field | Type | Description |
|---|---|---|
stdout | string | Standard output from the command |
stderr | string | Standard error from the command |
exit_code | number | Process exit code — 0 is success |
Verb reference
| Verb | Description |
|---|---|
SSH "user" AT "host" PASSWORD "pass" ENTER `cmd` SET ?r | Single command via password auth. Default port 22. |
SSH "user" AT "host" KEY "/root/key" ENTER `cmd` SET ?r | Single command via key auth. |
SSH "user" AT "host" [AUTH] ON "port" ENTER `cmd` SET ?r | Custom port. |
SSH "user" AT "host" [AUTH] OPEN NEST ENTER `...` AFTER ENTER `...` CLOSE NEST SET ?r | Multi-command block — commands run sequentially in the same session. |
SSH "user" AT "host" [AUTH] UPLOAD "/root/src" TO "/remote/dst" | Copy file from OQL virtual storage to remote machine. |
SSH "user" AT "host" [AUTH] DOWNLOAD "/remote/src" INTO "/mounted/dst" SET ?path | Copy file from remote machine into OQL virtual storage. |