with one click
sync-mechanism
SSH-based site sync and proxy mechanism for SuperLandings Go
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
SSH-based site sync and proxy mechanism for SuperLandings Go
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Create sites with templates, assets, blog, admin panel — full mastery guide
Deploy SuperLandings Go to remote servers with hotify-cli and Traefik
Asset management, CLI output conventions, and template helpers for SuperLandings Go
hotify-cli integration for SuperLandings Go - DNS, Traefik, and reverse proxy configuration
| name | sync-mechanism |
| description | SSH-based site sync and proxy mechanism for SuperLandings Go |
SuperLandings Go includes SSH-based site synchronization and proxy configuration for deploying sites to remote servers.
sl-cli site export <SITE_SLUG> --output /tmp/export.json
Exports site metadata (sites, versions, files) to JSON for migration or backup.
sl-cli site import --input /tmp/import.json
Imports site metadata from JSON file. Creates site and versions if they don't exist.
sl-cli site sync <SITE_SLUG> --host <SERVER_IP> --user <USER> [--port <SSH_PORT>] [--key <SSH_KEY_PATH>]
Synchronizes a site to a remote server:
Example:
sl-cli site sync mysite --host <SERVER_IP> --user root --key ~/.ssh/id_rsa_srv
sl-cli site proxy <SITE_SLUG> --domain <DOMAIN> --internal-url <URL>
Configures hotify-cli reverse proxy for a site:
Example:
sl-cli site proxy mysite --domain example.com --internal-url http://127.0.0.1:<PORT>
Limitation: Currently requires manual Traefik configuration for path prefix middleware. See hotify-integration skill.
SyncTarget struct:
type SyncTarget struct {
Host string
User string
Port int
Key string // SSH key path
}
Sync workflow:
SSH key support:
-i <key> -o IdentitiesOnly=yes for rsync, scp, sshsite export:
--output (default: /tmp/site-export.json)site import:
--input (required)site sync:
--host (required), --user (default: root), --port (default: 22), --keysite proxy:
--domain (required), --internal-url (default: http://127.0.0.1:3099)Sync command rsync issues
Proxy command Traefik issues
Import requires site to exist
When automated sync fails:
# 1. Create site directory on remote
ssh -i <SSH_KEY> <USER>@<SERVER_IP> "mkdir -p /home/<USER>/.superlandings/sites/<SITE_SLUG>/<VERSION>"
# 2. Copy site files
scp -i <SSH_KEY> -r ~/.superlandings/sites/<SITE_SLUG>/* <USER>@<SERVER_IP>:/home/<USER>/.superlandings/sites/<SITE_SLUG>/
# 3. Create version on remote
ssh -i <SSH_KEY> <USER>@<SERVER_IP> "sl-cli site version create <SITE_SLUG> --version <VERSION> --comment 'Synced from local'"
# 4. Restart daemon
ssh -i <SSH_KEY> <USER>@<SERVER_IP> "pkill -f 'sl-cli backend' && sl-cli backend start --daemon --port <PORT>"
internal/
├── services/
│ └── sync.go # Sync service implementation
├── cli/
│ └── site_sync.go # CLI commands (export, import, sync, proxy)
└── db/
└── site_version_repository.go # Version repository (split from repository.go)
All files kept under 400 LOC per AGENTS.md rules: