First Run
A guided walkthrough from a fresh install to your first successful playbook execution.
http://localhost:3000 before continuing.Step 1 — Create your admin account
The first user to register on a fresh install automatically becomes the organization admin. Navigate to http://localhost:3000 and click Create account.
You will be asked to choose an organization name. This is your team or company name — it can be changed later in Settings → Organization.
Step 2 — Add an SSH key
Go to Settings → SSH Keys → Add key. You can either paste an existing private key or generate a new key pair directly in the UI.
If you generate a key in the UI, copy the public key shown in the modal and add it to ~/.ssh/authorized_keys on each target server.
ENCRYPTION_KEY. Back up both the key and the encryption key — if either is lost, you cannot recover access.Step 3 — Add a server
Navigate to Infrastructure → Servers → Add server and fill in:
- HostIP address or hostname of the target server
- PortSSH port (default: 22)
- UserSSH username (e.g. ubuntu, root, deploy)
- SSH KeySelect the key you added in Step 2
Click Test connection to verify that SculptOps can reach the server over SSH before saving.
Step 4 — Create an inventory
Go to Infrastructure → Inventories → New inventory. An inventory groups your servers so playbooks know which hosts to target.
Add a group (e.g. webservers), then drag your server into that group. You can add host variables at the group or host level — these are passed directly to Ansible as extra vars.
Step 5 — Write or import a playbook
Go to Playbooks → New playbook. The Monaco-based editor opens with a starter template. For a first test, a simple ping playbook is enough:
---
- name: Ping all hosts
hosts: all
gather_facts: false
tasks:
- name: Ping
ansible.builtin.ping:Save the playbook. A new version is created automatically on each save — you can browse and restore previous versions from the History tab.
Step 6 — Run the playbook
Click Run on the playbook. A dialog appears where you select:
- InventoryThe inventory group(s) to target
- Extra varsOptional JSON/YAML key-value pairs passed as --extra-vars
- Vault passwordOptional — required if the playbook uses encrypted vault variables
- Tags / Skip tagsLimit which tasks run (passed as --tags / --skip-tags)
Click Execute. You will be taken to the execution view where real-time output streams as the playbook runs. Lines are color-coded: green for ok, yellow for changed, red for failed.
What happens under the hood
SculptOps spawns a short-lived Docker container using the configured ANSIBLE_DOCKER_IMAGE, mounts your inventory and playbook, and runs ansible-playbook inside it. Output is streamed back to the browser via SSE. The container is removed when execution completes.
Executions → History.