Skip to main content
Version: Current

Config Bot Tags

Config bot Tags

All tags on the config bot will be synced with the URL query parameters. This means that setting the #abc tag on the config bot to hello will update the URL to include abc=hello. It also means that putting miniGridPortal=myDimension into the query string will set the #miniGridPortal tag to myDimension.

bios

Config Bot

The BIOS option that was used to initialize CasualOS.

Possible values are:

ValueDescription
null

No BIOS option was used. This will cause a selection box to appear asking the user what their preference is. (Default)

local inst

A new local inst will be created. Bots are stored in the browser on the device.

local

Shorthand for "local inst".

studio inst

A new private inst will be generated in "My Studio". Bots are stored in the cloud and shared with studio members.

studio

Shorthand for "studio inst".

free inst

A new public inst will be generated. Bots are stored in the cloud and shared publicly, expires in 24h.

free

Shorthand for "free inst".

enter join code

The BIOS selection box will be shown with the "enter join code" option selected.

sign in

The BIOS selection box will be shown with the "sign in" option selected.

sign up

The BIOS selection box will be shown with the "sign up" option selected.

sign out

The BIOS selection box will be shown with the "sign out" option selected.

inst

Config Bot

The instance that is loaded into CasualOS.

staticInst

Config Bot

The static instance that is loaded into CasualOS. Not present if the inst is not a static inst.

joinCode

Config Bot

The join code that ab1 should use to join an inst. If specified, then the BIOS selection box will be skipped.

record

Config Bot

The name of the record that the inst was loaded from. Null if the inst was loaded as temporary and public.

owner

Config Bot

The place that the inst should be loaded from.

Possible values are:

ValueDescription
public

The inst will be loaded as temporary and public.

player

The inst will be loaded from the currently logged in user's default record.

Any Record Name

The inst will be loaded from the given record.

Any User ID

The inst will be loaded from the given user's player studio default record.

Any Studio ID

The inst will be loaded from the given studio's default record.

theme

Config Bot

The theme that CasualOS should use.

Possible values are:

ValueDescription
null

CasualOS is displayed with a color theme matching the system default. (Default)

light

CasualOS is displayed with a white-like-paper color theme.

dark

CasualOS is displayed with a dark theme.

Only available on the config bot.

gridPortal

Config Bot

The dimension that is loaded into the 'grid' portal in CasualOS. This is the portal that is loaded by default. Only available on the config bot.

miniGridPortal

Config Bot

The dimension that is loaded into the "mini" portal in CasualOS. Only available on the config bot.

sheetPortal

Config Bot

The dimension that is loaded into the "sheet" portal in CasualOS. Only available on the config bot.

systemPortal

Config Bot

The search value that is loaded into the "system" portal in CasualOS. Setting this to true will show every bot that has a #system tag in the system portal. Only available on the config bot.

systemTagName

Config Bot

The name of the tag that should be used when showing bots in the systemPortal. For example, setting #systemTagName on the configBot to "test" will cause the systemPortal to only show bots that have a "test" tag instead of a "system" tag.

Possible values are:

ValueDescription
null

The "system" tag is used. (Default)

Any String

The given tag is used.

Only available on the config bot.

Examples

  1. Use the "myCustomSystem" tag for the systemPortal instead of the "system" tag.
configBot.tags.systemPortalTagName = "myCustomSystem";

systemPortalBot

Config Bot

The ID of the bot that is selected in the systemPortal. Only available on the config bot.

systemPortalTag

Config Bot

The name of the tag that is selected in the systemPortal.

Defaults to system.

Only available on the config bot.

systemPortalTagSpace

Config Bot

The space of the tag that is selected in the systemPortal. If null, then the tag space is the same as the #systemPortalBot space. Only available on the config bot.

systemPortalSearch

Config Bot

The value that should be used to search across all the tags in all the bots in the inst. The results of the search will be displayed in the systemPortal. Only available on the config bot.

systemPortalDiff

The name of the tag should be used as a second system portal to compare with the tag specified by the #systemPortalTag (system by default).

If both the #systemPortal and #systemPortalDiff tags are specified, then the system portal will be shown comparing bots whose system matches.

For example, if #systemPortal is set to true and #systemPortalDiff is set to history, then a Bot that has #system set to my.system will be compared with another bot that has #history set to my.system. The result of this comparision will be shown in the system portal, indicating what was changed between the two bots.

systemPortalDiffBot

The ID of the bot that is currently selected in the system portal diff. Only available on the config bot.

systemPortalDiffTag

The name of the tag that is currently selected in the system portal diff. Only available on the config bot.

systemPortalDiffTagSpace

The space of the tag that is selected in the system portal diff. If null, then the tag space is the same as the #systemPortalDiffBot space. Only available on the config bot.

systemPortalPane

Config Bot

The pane that the user is currently viewing in the system portal.

Possible values are:

ValueDescription
null

The system portal figures out which pane to show based on the other system portal tags. (Default)

bots

The "bots" pane is shown.

sheet

The "sheet" pane is shown.

search

The "search" pane is shown.

diff

The "diff" pane is shown.

idePortal

Config Bot

The prefix that indicates which tags should be loaded into the "IDE" portal in CasualOS. Only available on the config bot.

mapPortal

Config Bot

The dimension that is loaded into the "map" portal in CasualOS.

The map portal displays a 3D globe representing earth. Bots represented in the map portal use longitude for X and latitude for Y and are 10 meters by 10 meters large by default.

Only available on the config bot.

miniMapPortal

Config Bot

The dimension that is loaded into the "mini map" portal in CasualOS.

The mini map portal displays a 3D globe representing earth. Bots represented in the mini map portal use longitude for X and latitude for Y and are 10 meters by 10 meters large by default.

Only available on the config bot.

Config Bot

The dimension that is loaded into the "menu" portal in CasualOS. Only available on the config bot.

leftWristPortal

Config Bot

The dimension that is loaded onto the left controller near the wrist when in VR. Only available on the config bot.

rightWristPortal

Config Bot

The dimension that is loaded onto the right controller near the wrist when in VR. Only available on the config bot.

meetPortal

Config Bot

The Jitsi Meet room code of the meeting that should be joined. This will join the current tab to the meeting and provide audiovisual communication between everyone that is joined.

This is similar to a Skype or Zoom call except that all data is encrypted and is deleted once you are done with it. Check out the Jitsi Meet privacy policy here.

Only available on the config bot.

botPortal

Config Bot

The ID of the bot whose data should be shown in the bot portal. This will show the raw JSON data of the bot in a raw text portal.

Only available on the config bot.

Open the botPortal for the current bot
configBot.tags.botPortal = thisBot.id;
Open the botPortal along the top of the screen
configBot.tags.botPortal = thisBot.id;
botPortalBot.tags.botPortalAnchorPoint = 'top';

tagPortal

Config Bot

The Bot ID and tag that should be edited in the tag portal. This will show just the code editor without the rest of the sheet and makes it possible to edit just a single tag at a time.

When you are setting the tag portal, you should format it so the bot ID and tag name are separated by a single period (.).

Only available on the config bot.

Examples:

  1. Open the tag portal for the abc tag on the config bot.
const tag = "abc";
configBot.tags.tagPortal = getID(configBot) + "." + tag;

tagPortalSpace

Config Bot

The space of the tag mask that should be edited in the tag portal. If not set, then the tag on the bot will be edited. If set, then the tag mask in the given space will be edited.

Only available on the config bot.

Examples:

  1. Open the tag portal for the abc tag mask in the tempLocal space on the config bot.
const tag = "abc";
configBot.tags.tagPortal = getID(configBot) + "." + tag;
configBot.tags.tagPortalSpace = "tempLocal";

codeToolsPortal

Config Bot

The dimension of bots that should be shown in the multi-line editor toolbar. This is useful for displaying small buttons that are easy to access while writing code.

Only available on the config bot.

Examples:

  1. Open the codeToolsPortal to the home dimension.
configBot.tags.codeToolsPortal = 'home';

imuPortal

Config Bot

Determines if the IMU portal should be constantly reading IMU (inertial measurement unit) data for the device. When set to true, CasualOS will start updating the imuPortalBot with the data from the IMU.

Note that not all devices support the IMU portal. In particular, laptops and desktop computers will likely not support the IMU portal while mobile devices probably will.

Only available on the config bot.

dataPortal

The data portal is a special portal that can be used in a web request to get bot data directly from the inst. Similar to webhooks, you specify the inst and data portal in the query string of the URL.

If given a bot ID, then the bot will be returned as JSON.

If no bot matches the given value, then it will be treated as a tag and all the values for the given tag will be returned.

If the tag ends with a common extension (like .html or .txt or .json), then the returned data will be tagged with the corresponding MIME type. This will let web browsers and other common software know what type of data they are dealing with and handle it correctly. (i.e. display a webpage) Alternatively, you can specify the dataPortalContentType query parameter to override the default content type.

If there is only one tag and it ends with an extension like specified above then the content directly from the tag will be returned.

Examples:

  1. Request the JSON of the Bot with the given ID:
https://auxplayer.org?inst=my-aux&dataPortal=bf68e5cc-993b-42fd-a142-a23de6d2cdcb
  1. Request all the #label tags values.
https://auxplayer.org?inst=my-aux&dataPortal=label
  1. Request a web page from the test.html tag.
https://auxplayer.org?inst=my-aux&dataPortal=test.html

mousePointerPosition

The 3D position of the player's mouse pointer.

See the documentation on Vectors for more info.

mousePointerRotation

The 3D rotation of the player's mouse pointer.

See the documentation on Rotations for more info.

mousePointerPortal

The portal that the player's mouse pointer is in.

leftPointerPosition

The 3D position of the player's left controller.

See the documentation on Vectors for more info.

leftPointerRotation

The 3D rotation of the player's left controller.

See the documentation on Rotations for more info.

leftPointerPortal

The portal that the player's left controller is in.

rightPointerPosition

The 3D position of the player's right controller.

See the documentation on Vectors for more info.

rightPointerRotation

The 3D rotation of the player's right controller.

See the documentation on Rotations for more info.

rightPointerPortal

The portal that the player's right controller is in.

mousePointer_left

The state that the left mouse button is currently in.

Possible values are:

ValueDescription
null

The button is not pressed. (default)

down

The button was just pressed.

held

The button is being held down.

mousePointer_right

The state that the right mouse button is currently in.

Possible values are:

ValueDescription
null

The button is not pressed. (default)

down

The button was just pressed.

held

The button is being held down.

mousePointer_middle

The state that the middle mouse button is currently in.

Possible values are:

ValueDescription
null

The button is not pressed. (default)

down

The button was just pressed.

held

The button is being held down.

rightPointer_primary

The state that the primary button on the right controller is currently in. The primary input on most contollers is the trigger button.

Possible values are:

ValueDescription
null

The button is not pressed. (default)

down

The button was just pressed.

held

The button is being held down.

rightPointer_squeeze

The state that the squeeze button on the right controller is currently in. Some controllers have buttons on the side that count as "squeezing" the controller.

Possible values are:

ValueDescription
null

The button is not pressed. (default)

down

The button was just pressed.

held

The button is being held down.

leftPointer_primary

The state that the primary button on the left controller is currently in. The primary input on most contollers is the trigger button.

Possible values are:

ValueDescription
null

The button is not pressed. (default)

down

The button was just pressed.

held

The button is being held down.

leftPointer_squeeze

The state that the squeeze button on the left controller is currently in. Some controllers have buttons on the side that count as "squeezing" the controller.

Possible values are:

ValueDescription
null

The button is not pressed. (default)

down

The button was just pressed.

held

The button is being held down.

keyboard_[key]

The state that the given key on the keyboard is currently in.

Possible values are:

ValueDescription
null

The key is not pressed. (default)

down

The key was just pressed.

held

The key is being held down.

touch_[index]

The state that the given touch index is in.

Possible values are:

ValueDescription
null

The touch is not pressed. (default)

down

The touch was just pressed.

held

The touch is being held down.

forceSignedScripts

Whether to force all shared scripts to have been signed by a certificate in order to be executed.

This option only takes effect if it is set in the query string of the URL. Additionally, changing the tag value has no effect.

If the inst is loaded with forceSignedScripts set to true, then scripts will be required to be signed for the entire session.

tempLocal and local spaces are exempt from this requirement.

Possible values are:

ValueDescription
false

Scripts do not have to be signed in order to be executed. (default)

true

Scripts have to be signed in order to be executed.

url

The URL that is currently specified in the tab.

Possible values are:

ValueDescription
Any String

The URL that is loaded in the tab.

The URL, but with the #owner query parameter replaced with the value of the #record tag on the config bot. This tag is useful for sharing an exact link to the current inst.

pageTitle

The title that should be displayed on the web browser tab.

Possible values are:

ValueDescription
Any String

The title that should be displayed.

editingBot

Config Bot

The ID of the bot that the user is currently editing. Only available on the config bot.

editingTag

Config Bot

The tag that the user is currently editing. Only available on the config bot.

cursorStartIndex

Config Bot

The selection start index of the player's cursor in the current #editingTag.

Note that when #cursorStartIndex is larger than #cursorEndIndex it means that the player has selected text from the right to the left. This is important because text will always be inserted at #cursorEndIndex.

Only available on the config bot.

cursorEndIndex

Config Bot

The selection end index of the player's cursor in the current #editingTag.

Note that when #cursorEndIndex is smaller than #cursorStartIndex it means that the player has selected text from the right to the left. This is important because text will always be inserted at #cursorEndIndex.

Only available on the config bot.