Overview
Once the Mentor tab is enabled on a lab profile, the Lab Client renders an embedded mentor experience and keeps it continuously aware of the learner's lab session. This article explains what that integration provides and what mentor providers need to know to connect.
For how to turn the tab on, see Configure the Mentor Tab on a Lab Profile. For a feature overview, see Mentor: Contextual In-Lab Assistance.
The Mentor tab in the lab
The Mentor tab appears beside Instructions, Resources, and Help in both the current and classic Lab Client layouts. Keyboard tab navigation includes the Mentor tab in its normal order, so learners can reach it the same way as any other tab.
Live lab context
The Lab Client shares the learner's current state with the mentor service so responses can be specific to the moment:
- Identity and session — who the learner is and their role (student, instructor, or lab author), plus organization details.
- Current instruction page — the page the learner is viewing, updated as they turn pages.
- Active environment — the connected virtual machine or container, updated when the learner switches machines in a multi-VM lab.
- Locale and color mode — the interface language and light/dark setting, updated when the learner changes color mode.
The mentor receives this context when it loads and then receives updates automatically as the learner navigates, switches environments, or changes color mode.
What the mentor can do for the learner
With the learner's permission and within the lab session, a connected mentor can:
- Navigate instructions — send the learner to a specific instructions page.
- Type into the environment — enter a suggested command or text into the active VM console on the learner's behalf.
- Capture the screen for context — request a screenshot of the active environment (VM, terminal, or container) or of the full Lab Client interface, so the mentor can see what the learner sees before responding. Terminal screenshots are supported for Docker container, SSH, and PowerShell endpoint labs.
Continuity and notifications
- Session persistence — the mentor conversation is tied to the lab instance, so it survives page refreshes, tab switches, and save-and-resume cycles.
- Unread badge — when a mentor reply arrives while the learner is on another tab, an unread indicator appears on the Mentor tab.
Information for mentor providers
For customers that would like to either update their own chat assistant to integrate with Mentor, or build their own Mentor, Skillable provides a full Mentor SDK./Framework. The SDK is available from here AI Mentor Integration Sandbox. The link is not public and access has to be requested, please contact your account team to request access and provide them your Github handle.
The Lab Client communicates with the mentor service using a standards-based browser messaging contract (postMessage). Any provider that implements the contract can be embedded by setting the Mentor Service URL on the lab profile — no Lab Client changes are needed to add or swap a provider.
Key points for provider integration:
- The Lab Client sends an initialization message with the full lab context when the mentor loads, then sends context, page, and theme updates as the session changes.
- The mentor service can send requests back to the Lab Client to navigate instructions, type into the environment, and request screenshots and environment information.
- All inbound messages are validated for origin, protocol version, and source; messages that do not match the configured mentor are rejected.
- Mentor backends can verify that requests originate from a genuine Skillable lab and authenticated learner using signed launch tokens published by the Lab Client. The token audience is bound per lab profile.
Providers should obtain the current mentor integration specification from Skillable for the exact message names, payloads, and token verification details.
Related
- Mentor: Contextual In-Lab Assistance
- Configure the Mentor Tab on a Lab Profile
- Customizing Labs with the Lab Client API