

The modular Inspector (alpha)

This page tells you all about the new modular Inspector (alpha). It highlights how to access it, how to use it and how to get the best out of it.


What’s new

We’ve built the modular Inspector with a focus on customization. This has allowed us to provide several significant improvements:

  • See more of the data that’s relevant to you

    The entire application is now query-based, meaning that you can restrict the data you get back from your deployment. This means you can see more of the data that’s relevant to your current use case. For example, you could restrict your query to only show you the players in a world by constraining your query to only return entities with a PlayerController component.

  • Customize how you see your data

    The entire application is now modular, and you can customize and link together the modules based on your current use case. This allows you to tailor your workspace (collection of modules) depending on what you require. For example, in order to analyze a playtest in real time, you could set up the workspace in a way that allows you to see and select all your players in one viewport, and then automatically follow them around in another, more detailed viewport (see the video below). In the future, you’ll be able to save the workspaces you create.

  • New ways to see your data


Getting started with the modular Inspector

In this video, we dig into accessing and using the modular Inspector:

Advanced uses of the modular Inspector

This second video shows you how to get the most out of the modular Inspector by walking you through an example of how to build a custom workspace:

Accessing the modular Inspector

You can access the modular Inspector for local and cloud deployments.

  • For a local deployment, access the modular Inspector at http://localhost:21000/inspector-v2/. (The SpatialOS CLI also prints out this URL when you launch a local deployment.) When running locally, the Inspector automatically downloads and caches the latest Inspector Client from the internet. If it can’t download the latest version (for example, because there is no internet connection or because of the firewall configuration), it uses the latest cached version instead.

  • For a cloud deployment, access the modular Inspector by opting in from the old Inspector:

    Try the new modular Inspector button

Queries and constraints

Queries and constraints are a new concept in the modular Inspector. You can find them in the query editor module, and you use them to define and restrict which entity data is streamed from your deployment.

Query editor module


Different constraint types

Compositional constraints


Constraint type How it works

Spatial constraints


Constraint type How it works

Entity and component constraints


Constraint type How it works

Non-conditional constraints


Constraint type How it works
TrueConstraint This constraint always returns all entities.
FalseConstraint This constraint always returns no data.

Using constraints

Constraints live in the query editor module. You can only create one query per query editor module. You can add, modify, remove, or move constraints to make up the query.

Adding a constraint

Add a constraint by clicking the (+) button in the query editor module. From there you can choose which type of constraint you want to add.

Modifying a constraint

You can modify a constraint by typing into the text boxes that define it.

Removing a constraint

You can remove a constraint by clicking its drop-down menu and selecting Delete. Note that you can’t remove dynamic constraints - instead, you need to delete the connection that’s inputting the dynamic constraint into the query editor module (turn on Edit Mode and then click the icon in the centre of the connection).

Moving a constraint


Dynamic constraints



Streaming components

In the query editor, you can choose which components you’re interested in. Only these components and their values are returned in your query. This is helpful if you’re interested in only a particular subset of components, and helps you manage the amount of entity data that is being processed and streamed.

Known limitations



Search results

Was this page helpful?

Thanks for letting us know!

Thanks for your feedback

Need more help? Ask on the forums