autonomy demo gazebo

Demo Gazebo lite simulation with policy-gated robot-state tool calls

Synopsis

Demonstrates AutonomyOps policy governance over a Gazebo simulation
robot-state loop.

Container path (default):
  Runs demo/docker-compose.gazebo.yml via docker compose up --build.
  The orchestrator, policy-gated runtime, and lite sim loop all start as
  Docker containers.  The sim loop cycles through six tool kinds per tick:
    tool.gazebo.step / tool.ros2.topic.publish / telemetry.emit /
    tool.gazebo.get_model_state / tool.ros2.topic.publish / tool.shell
  The first five are allowed by the Gazebo policy; tool.shell is denied.

  PASS gazebo-sim-up context=container is emitted when the stack exits.

  Requires Docker.  Run from the repository root so the compose file at
  demo/docker-compose.gazebo.yml is discoverable.

Local path (--local):
  Builds a policy bundle from demo/bundles/gazebo/policies/ in-process,
  starts a temporary ToolServer on a random port, and replays the same
  six-call scenario.  No Docker, no control plane, no network required.

  PASS gazebo-demo-start / gazebo-allow-demonstrated /
       gazebo-deny-demonstrated / gazebo-demo-complete are emitted with
  context=sim as each phase succeeds.

  Run from the repository root so the policy source directory is reachable.
  When the default policy directory is unavailable (e.g. no registry access),
  supply a pre-built bundle tarball with --policy-path <file.tar>.

Usage

autonomy demo gazebo [flags]

Options

      --lite                 lite mode: no GPU, no real Gazebo, no ROS (default for container path; always true for --local)
      --local                in-process simulation without Docker (Linux-first; loads policy from demo/bundles/gazebo/policies/)
      --policy-path string   policy source for --local: Rego directory or pre-built .tar bundle (default: demo/bundles/gazebo/policies/)

See also

  • autonomy demo — Run self-contained demos that require no Docker or control plane