Library
REF 05 Cheat Sheet · Reference

Assignment tab types

Six tab types group naturally by what they connect to: internal (your declared infrastructure), content (files or virtual browsers), external (URLs outside your track).

terminal Internal

Shell on a declared container or VM. Native PowerShell on Windows VMs — no Guacamole needed.

type: terminal hostname: workstation cmd: su - iggy # optional workdir: /root/workshop # optional
Gotcha: without cmd:, the shell opens as root. Use cmd: su - <user> to drop into a non-root account, or cmd: screen -xRR to auto-attach to a multi-pane session.
service Internal

HTTP server on a declared host port. Routes through Instruqt's proxy.

type: service hostname: workstation port: 5000 path: /docs # optional custom_response_headers: # optional - "Content-Security-Policy:"
Gotcha: client-side fetch() calls must use relative paths only. The browser cannot resolve internal Docker hostnames. For iframe-blocking apps: use custom_response_headers: to strip X-Frame-Options and Content-Security-Policy.
code Content

File or directory editor on a declared host. Path can be a single file or a folder tree.

type: code hostname: workstation path: /root/app.py workdir: /root # optional
Pattern: pair an editable starter file with a second code tab pointing at a completed reference as a built-in hint. path: as a directory renders a folder-tree explorer.
browser Content

Cloud console browser tied to a virtualbrowsers block.

type: browser hostname: aws-console
Gotcha: requires a matching virtualbrowsers entry in config.yml. Use this for provisioned cloud consoles, not arbitrary URLs.
external External

Embedded URL frame — an external site rendered inside the lab UI.

type: external url: https://docs.example.com
Use when: the destination is a vendor's own web app the platform shouldn't proxy or authenticate to.
website External

External URL tab. Supports ${_SANDBOX_ID} interpolation in the URL.

type: website url: https://example.com new_window: true # optional
Gotcha: URL must be HTTPS. An http:// URL causes instruqt track push to fail validation. Pair with new_window: true to pop a non-iframable site into its own window.
Across all tab types