deploy
Installation
SKILL.md
Deploy Julian
Deploy Julian to an exe.xyz VM. Two paths: provision a new VM or update an existing one. The instance registry at deploy/instances.json tracks which VMs have been provisioned.
Target VM
Determine the target VM name:
- If
$ARGUMENTSis provided, use it as the VM name (e.g.,/julian:deploy screen-test) - If no arguments, derive from current git branch:
julian-<branch>(e.g., branchscreen→julian-screen) - Strip any characters not valid in hostnames (keep alphanumeric and hyphens)
PRODUCTION SAFETY: If the resolved VM name is exactly julian (the production instance), STOP and warn the user before proceeding. Only proceed after explicit confirmation.
Routing: Provision or Update?
Read deploy/instances.json. If the target VM name exists in the registry, run the Update path. Otherwise, run the Provision path.
If deploy/instances.json doesn't exist, create it as {}.