Execution environments are how Xema enforces what runs where. A caller must hold an environment-grant for the active environment at invocation time, and the environment then caps how far the capability may reach. There are nine built-in environments — system, org, project, app, session, sandbox, public, store-review and trusted-dev — and the set is closed (ExecutionEnvironmentKind in @xemahq/contracts). The environment is the second half of the authorization model: permission asks who may call; the environment asks where the call may run and how far it may reach. Invoke shell:environment.explain@1 to inspect the resolved environment grants.