# Class LittleGhost::Network::ExternalGateway

Documentation version: Edge

Canonical HTML: https://littleghostai.org/docs/LittleGhost/Network/ExternalGateway.html

Exposes an application-managed proxy to an isolated sandbox without claiming
ownership of its lifecycle or attesting what it enforces. The application owns
proxy policy, credentials, readiness, logging, and cleanup.

## Inheritance

`LittleGhost::Network::ExternalGateway < LittleGhost::Network::Gateway`

## Attributes

<a id="attribute-i-environment"></a>
### `environment` (R)

Returns child-scoped proxy and trust variables.

<a id="attribute-i-proxy_mount_path"></a>
### `proxy_mount_path` (R)

Returns the proxy socket path visible inside the sandbox.

<a id="attribute-i-runtime_paths"></a>
### `runtime_paths` (R)

Named process-only workspace paths used by the gateway.

## Class methods

<a id="method-c-new"></a>
### `.new`

```ruby
.new(policy:, workspace:, runtime_paths:, proxy_mount_path:, environment: {}, validate: nil)
```

Builds a gateway around existing process-only workspace paths and a physical
proxy socket path. No path remapping is performed.

## Instance methods

<a id="method-i-open"></a>
### `#open`

```ruby
#open(run: nil)
```

Pins application-managed mount roots without taking lifecycle ownership.

<a id="method-i-validate-21"></a>
### `#validate!`

```ruby
#validate!()
```

Runs the application's readiness assertion before each child process.
