Computers
ChatBotKit Computers are Linux machines that belong to you rather than to a single conversation. Shell abilities normally run in a short-lived sandbox that is created for a conversation and thrown away when the conversation goes quiet. Connect those abilities to a Computer and they run on it instead, so the tools an agent installs and the files it writes are there the next time it works on the same machine.
What Are Computers?
A Computer is a machine your agents can use, much like a person uses a workstation:
- Shell computers are headless Linux machines for running commands, scripts and file operations.
- Desktop computers are Linux machines with a graphical desktop. Agents can still run commands on them, and you can open the desktop in your browser to watch what is happening or take over - to sign in to a website, for example.
You choose the kind when you create the Computer. It cannot be changed afterwards, so create a new Computer if you need the other kind.
Plan Availability
Computers are available on the Pro Plus plan and above. Each plan allows a set number of Computers per account, and Computers created by sub-accounts count towards the parent account. The Free, Trial, Basic and Pro plans do not include Computers. See the pricing page for the number your plan includes.
When the account has as many Computers as its plan allows, creating another one - from the dashboard, the API, the SDKs or by importing or cloning a blueprint that contains Computers - fails with a limits error. Delete a Computer you no longer need or upgrade your plan to make room. Computers you already have are never removed when your plan changes; you can keep using them, but you cannot create new ones above your plan's allowance.
Creating a Computer
- Open the Computers section of the dashboard at chatbotkit.com/computers.
- Click Create Computer.
- Give it a name and, optionally, a description.
- Choose Shell or Desktop.
- Click Create.
A new Computer starts out stopped. It is started automatically the first time an agent uses it, or you can start it yourself from its page.
Connecting a Computer to Shell Abilities
Shell abilities - such as running a command, reading or writing a file, or the Install Shell Tools pack - run on a Computer when you link it:
- Open the ability in its skillset.
- Enter the Computer's ID in the Referenced Computer field.
- Save the ability.
In the Blueprint Designer, drag a Computer onto the canvas and connect a shell ability's computer handle to it.
Abilities without a Computer keep working exactly as before, in a sandbox that belongs to the conversation. Several abilities, and several bots, can share one Computer.
Managing a Computer
The Computer's page in the dashboard lets you:
- Start it ahead of time, or Stop it to release its machine when you are done.
- Restart it when it stops responding. Restarting stops the machine and starts it again, even if the old machine is already gone.
- Run a quick command from the Console to check on it.
- See which abilities run on it.
The same Start, Stop and Restart buttons, and Open Desktop for a desktop Computer, are in the Computer's panel in the Blueprint Designer once the blueprint is saved.
Opening a Desktop in Your Browser
On a desktop Computer's page, or in its panel in the Blueprint Designer, click Open Desktop. The desktop opens in a window on the same page, where you can see the screen and use the mouse and keyboard.
- Click Pop out to move the desktop to its own browser tab, which suits longer tasks. If the desktop does not appear in the window, use Pop out.
- The desktop link is valid for a short time - ten minutes by default.
- Anyone who has the link can see and control the desktop until it expires, so share it only with people you trust.
- Click Open Desktop again for a new link rather than saving an old one.
Sharing a Desktop in Slack and Other Channels
An agent working on a desktop Computer can share it from inside the conversation - in Slack, Microsoft Teams, Telegram, WhatsApp and other channels as well as the chat widget. Add the Share Desktop ability (shell/desktop/share) to the skillset and link it to the desktop Computer. When the agent uses it, it posts a short-lived link that opens the desktop, together with a screenshot of the screen as it is at that moment.
- In Slack the link appears as a card: the screenshot, an Open desktop button and the time the link expires.
- In other channels the agent sends the link and the screenshot as an ordinary message.
- The link lasts ten minutes by default and at most an hour, and the screenshot link expires at the same time. Anyone who has the link can see and control the desktop until it expires, so only use this ability in channels where everyone may do so.
Good to Know
- Files on a Computer are not a backup. A Computer that is stopped, or left idle for a long time, can come back as a fresh machine. Keep important files in a Space or download them.
- Spaces and conversation files are not attached to Computers. One Computer serves many conversations, so it does not mount the files of any single one. Agents can still use space abilities alongside shell abilities.
- Computers are private to your account. A Computer can only be used by abilities in your own account, even when a skillset is shared.
- Cloning a blueprint creates new Computers. A copy never shares the original's machine.
Troubleshooting
The ability says the computer no longer exists
The Computer linked to the ability was deleted. Link another Computer, or clear the Computer field to go back to the conversation sandbox.
Open Desktop is not offered
Only desktop Computers have a screen to open. Create a desktop Computer if you need one.
Desktop computers are not available
Some deployments of the platform only provide shell Computers. If opening or using a desktop Computer reports that desktops are not available, use a shell Computer instead.