> ## Documentation Index
> Fetch the complete documentation index at: https://docs.generalrobotics.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Hello GRID Enterprise

> Get started with your first GRID simulation session

Welcome to the **Hello GRID** tutorial! This guide walks you through setting up and running your first GRID session using the GRID Enterprise platform.

<Note>By default, all commands target the `local` machine. For remote machines, use the `@<machine_name>` syntax.</Note>

## What You'll Learn

In this tutorial, you will:

* Initialize the GRID Enterprise platform
* Start a simulation session using AirGen
* Access the simulation, notebook, and visualization interfaces
* Capture and visualize sensor data
* Run an AI model on captured images
* Clean up your environment

***

## Setup and Initialization

<Steps>
  <Step title="Ensure Prerequisites">
    Before starting, ensure GRID Enterprise is installed on your machine. If not, follow the [installation guide](/grid/grid-enterprise/how-to-use/installation).

    You should also have your `license.json` and `resource_config.json` files configured in `~/.grid/`.
  </Step>

  <Step title="Launch the GRID CLI">
    Open your terminal and start the GRID CLI:

    ```bash theme={null}
    grid
    ```

    <Accordion title="Show Expected Output">
      ```text theme={null}
       .d8888b.  8888888b.  8888888 8888888b.
      d88P  Y88b 888   Y88b   888   888  "Y88b
      888    888 888    888   888   888    888
      888        888   d88P   888   888    888
      888  88888 8888888P"    888   888    888
      888    888 888 T88b     888   888    888
      Y88b  d88P 888  T88b    888   888  .d88P
       "Y8888P88 888   T88b 8888888 8888888P"

      General Robot Intelligence Development Platform - Enterprise version
      General Robotics Technology, Inc.

      Type help for list of commands.

      GRID #
      ```
    </Accordion>
  </Step>

  <Step title="Initialize the Containers">
    Authenticate with the registry and start the containers:

    ```bash theme={null}
    login @local
    init airgen @local
    ```

    <Accordion title="Show Expected Output">
      ```text theme={null}
      GRID # login @local
      Logging in to General Robotics – GRID registry...
      Login successful!

      GRID # init airgen @local
      Initializing assets …
      Assets initialized.
      Starting airgen on local …
      Checking container statuses...
      grid_core: ✓
      grid_server: ✓
      grid_sim_airgen: ✓
      Containers are active.
      ```
    </Accordion>

    <Note>First-time initialization downloads container images and may take several minutes.</Note>
  </Step>
</Steps>

***

## Starting Your First Session

<Steps>
  <Step title="Start a Session">
    Launch a session with a sample configuration:

    ```bash theme={null}
    session start hello_grid
    ```

    <Accordion title="Show Expected Output">
      ```text theme={null}
      GRID # session start hello_grid
      Using sample config at /home/grid/.grid/sample_session_airgen.json
      Starting session hello_grid on node local …
      Status: Initializing session...
      Status: Downloading content...
      Status: Session has been started successfully
      Session started successfully.
      ```
    </Accordion>

    Since no config file was specified, GRID generates a sample configuration automatically.
  </Step>

  <Step title="Open the Simulation">
    View the simulation in your browser:

    ```bash theme={null}
    open sim @local
    ```

    <Frame>
      <img src="https://mintcdn.com/scaledfoundations/bbcuyC2Oq40Jh0Ty/assets/images/sim.png?fit=max&auto=format&n=bbcuyC2Oq40Jh0Ty&q=85&s=122dc9a407b6030391444903606c67aa" alt="Simulation running in browser" width="2592" height="1746" data-path="assets/images/sim.png" />
    </Frame>
  </Step>

  <Step title="Open the Notebook Interface">
    Access Jupyter notebooks:

    ```bash theme={null}
    open nb @local
    ```

    <Frame>
      <img src="https://mintcdn.com/scaledfoundations/bbcuyC2Oq40Jh0Ty/assets/images/notebook.png?fit=max&auto=format&n=bbcuyC2Oq40Jh0Ty&q=85&s=b993dcfca8ef63b1f653a20c5cda19f5" alt="Notebook interface" width="3024" height="1758" data-path="assets/images/notebook.png" />
    </Frame>
  </Step>

  <Step title="Open Visualization">
    Launch the Rerun visualization interface:

    ```bash theme={null}
    open viz @local
    ```

    <Frame>
      <img src="https://mintcdn.com/scaledfoundations/bbcuyC2Oq40Jh0Ty/assets/images/rerun.png?fit=max&auto=format&n=bbcuyC2Oq40Jh0Ty&q=85&s=85ea67a8b9fe6fa98564413682edd9c4" alt="Rerun visualization" width="3024" height="1758" data-path="assets/images/rerun.png" />
    </Frame>
  </Step>

  <Step title="Check Active Sessions">
    Verify your session is running:

    ```bash theme={null}
    session list
    ```

    <Accordion title="Show Expected Output">
      ```text theme={null}
      +------------+-------+------------------------------+
      | Session    | Node  | Last active                  |
      +============+=======+==============================+
      | hello_grid | local | 2024-09-10T23:42:51.674976+00|
      +------------+-------+------------------------------+
      ```
    </Accordion>
  </Step>
</Steps>

***

## Data Capture and Visualization

With your session running, create a new notebook from the Jupyter interface and try capturing sensor data.

### Capture an Image

```python theme={null}
from grid.robot.wheeled.airgen_car import AirGenCar
robot = AirGenCar()

import airgen
image = robot.getImage("front_center", "rgb")

# Visualize in Rerun
from grid.utils.logger import log
log("rgb_image", image)
```

<Frame>
  <img src="https://mintcdn.com/scaledfoundations/SPchGUdKgmObHOPW/assets/images/data.png?fit=max&auto=format&n=SPchGUdKgmObHOPW&q=85&s=849178eec46ce0a6b94c750293e823e0" alt="Captured image visualized in Rerun" width="3024" height="1760" data-path="assets/images/data.png" />
</Frame>

### Run an AI Model

Use a pre-trained object detection model on your captured image:

```python theme={null}
from grid.model.perception.detection.owlv2 import OWLv2

det_model = OWLv2(use_local=True)
det_model.run(image.data, "ball")
```

<Frame>
  <img src="https://mintcdn.com/scaledfoundations/bbcuyC2Oq40Jh0Ty/assets/images/detection.png?fit=max&auto=format&n=bbcuyC2Oq40Jh0Ty&q=85&s=50deaa74d5eeec1b048a11fd3778b83a" alt="Object detection results" width="3024" height="1754" data-path="assets/images/detection.png" />
</Frame>

<Note>
  GRID includes dozens of pre-trained models for detection, segmentation, depth estimation, VLMs, and more. See the [AI Models](/models/overview) documentation.
</Note>

***

## Cleanup

<Steps>
  <Step title="Stop the Session">
    ```bash theme={null}
    session stop hello_grid
    ```

    <Accordion title="Show Expected Output">
      ```text theme={null}
      Stopping session hello_grid on node local …
      Session stopped.
      ```
    </Accordion>
  </Step>

  <Step title="Terminate the Containers">
    When finished for the day, shut down the containers:

    ```bash theme={null}
    terminate @local
    ```

    <Accordion title="Show Expected Output">
      ```text theme={null}
      Checking container statuses...
      grid_core: ✗
      grid_server: ✗
      grid_sim_airgen: ✗
      Containers stopped successfully.
      ```
    </Accordion>
  </Step>
</Steps>

***

## Congratulations!

You've completed the **Hello GRID** tutorial! You successfully:

* Initialized GRID containers
* Started a simulation session
* Accessed simulation, notebook, and visualization interfaces
* Captured sensor data and ran an AI model
* Cleaned up your environment

***

## Next Steps

<CardGroup cols={2}>
  <Card title="GRID CLI Reference" icon="terminal" href="./how-to-use/cli">
    Learn all available commands including `update assets` and `update samples`.
  </Card>

  <Card title="VS Code Integration" icon="code" href="./how-to-use/vscode-containers">
    Develop directly inside the GRID container with VS Code.
  </Card>

  <Card title="AirGen Simulator" icon="plane" href="/simulation/airgen/overview">
    Explore AirGen's features for aerial and ground robots.
  </Card>

  <Card title="AI Models" icon="brain" href="/models/overview">
    Discover all available AI models for perception and control.
  </Card>
</CardGroup>
