Key Concepts
A short glossary of the building blocks you will meet across Null Autos. Most features map directly to one of these objects.
Tenant
A tenant is your organization on the platform, the top-level boundary that owns everything else. Each tenant has its own identity boundary (SSO), its own users, and its own isolated resources. Other tenants cannot see your emulators, snapshots, or data. See Multi-Tenancy.
User
A user is an authenticated identity that belongs to one tenant. Users sign in through SSO and can also authenticate from CI and cloud workspaces. What a user can do is governed by permissions and group membership.
Emulator
An emulator is a cloud-hosted Android Automotive virtual device. It is a
high-fidelity emulator that runs on a virtualization-capable node and is reachable
from your browser (video over WebRTC), over adb, and over the Vehicle HAL
interface. Every emulator is created from a snapshot. See
Emulators.
Snapshot
A snapshot is a point-in-time disk image stored on fast storage. Snapshots are produced by your AOSP and Android builds and serve two purposes:
- Fast emulator boot: new emulators clone a snapshot instead of building from scratch.
- Warm builds: CI jobs restore prior build state to avoid cold starts.
Snapshots form a tree (a snapshot can have a parent), and the platform manages their retention automatically. See Snapshots.
VHAL (Vehicle HAL)
The Vehicle Hardware Abstraction Layer is the Android Automotive interface for vehicle data: speed, RPM, fuel and battery, gear, HVAC, doors, lights, and more. Null Autos lets you read and write these properties to simulate vehicle states. See the VHAL guide.
Group
A group is a named set of users within a tenant. Groups are how you grant access to resources (like specific emulators or snapshots) to a team without managing each user individually.
Workspace
A workspace is a browser-based development environment running in the cloud, pre-loaded with Null Autos tooling. See Workspaces.
Targets, Endpoints & Applications
These model your device fleet beyond emulators:
- A target type describes an OS, architecture, and platform combination (for
example Android on
arm64). - A target is a buildable device definition tied to a source project.
- An endpoint is a machine, cloud or physical, that runs a target.
- An application is a software package deployed to one or more targets.
Control plane
The control plane is the platform's API server. It is the single point of entry for the portal, the CLI, and your own integrations. It provisions emulators, manages snapshots, enforces permissions, and streams logs and device data. See the Architecture.
nullctl
nullctl is the official command-line tool for the platform. See the
CLI reference.