---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/interfaces/IsolatedServiceOptions.md
description: 'Options accepted by [`createIsolatedService`](https://adk.nht.io/api/@nhtio/adk/batteries/functions/createIsolatedService).'
---

# Interface: IsolatedServiceOptions

Defined in: [src/batteries/isolation/host.ts:45](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/host.ts#L45)

Options accepted by [createIsolatedService](../functions/createIsolatedService.md).

## Extends

* [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md)

## Extended by

* [`SpawnIsolatedOptions`](SpawnIsolatedOptions.md)

## Properties

| Property                                                 | Type                                                                    | Description                                                                                                                                                                                                               | Inherited from                                                                                                                               | Defined in                                                                                                                                        |
| -------------------------------------------------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
|  `autoRespawn?`         | { `policy`: [`CrashPolicy`](CrashPolicy.md); }                        | Opt-in automatic recovery: on a transport-reported crash, consult `policy.record()` and `recycle()` automatically when it returns `'respawn'`. Default: not set (crashes are surfaced, never auto-healed).                | -                                                                                                                                            | [src/batteries/isolation/host.ts:54](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/host.ts#L54)                     |
| `autoRespawn.policy`                                     | [`CrashPolicy`](CrashPolicy.md)                                         | -                                                                                                                                                                                                                         | -                                                                                                                                            | [src/batteries/isolation/host.ts:54](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/host.ts#L54)                     |
|  `debugPayloads?`     | `boolean`                                                               | Include payload bodies on `call:*`/`wire:*` reports (see [IsolationReport.payload](IsolationReport.md#property-payload)). Default `false` — payloads may be large/sensitive, so this is opt-in even when hooks are wired. | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`debugPayloads`](IsolationObservabilityHooks.md#property-debugpayloads)     | [src/batteries/isolation/observability.ts:135](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L135) |
|  `disposeGraceMs?`   | `number`                                                                | Grace period `dispose()` gives the guest to exit cleanly after `shutdown` before forcing `transport.terminate()`. Default `2000`.                                                                                         | -                                                                                                                                            | [src/batteries/isolation/host.ts:51](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/host.ts#L51)                     |
|  `encodables?`           | readonly { `name`: `string`; }\[]                                      | Classes to register with `@nhtio/encoder`'s custom-encodable round-trip on this side.                                                                                                                                     | -                                                                                                                                            | [src/batteries/isolation/host.ts:56](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/host.ts#L56)                     |
|  `onAbort?`                 | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `abort:sent` — the host sent an `abort` envelope for an in-flight call.                                                                                                                                                   | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onAbort`](IsolationObservabilityHooks.md#property-onabort)                 | [src/batteries/isolation/observability.ts:128](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L128) |
|  `onCall?`                   | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `call:start` / `call:settle` — a single request/response method call.                                                                                                                                                     | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onCall`](IsolationObservabilityHooks.md#property-oncall)                   | [src/batteries/isolation/observability.ts:124](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L124) |
|  `onCodecEscalate?` | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `codec:escalate` — the codec escalated an argument past the `'raw'` tier.                                                                                                                                                 | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onCodecEscalate`](IsolationObservabilityHooks.md#property-oncodecescalate) | [src/batteries/isolation/observability.ts:132](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L132) |
|  `onCrashReport?`     | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `crash` — the transport reported an unexpected guest exit/termination.                                                                                                                                                    | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onCrashReport`](IsolationObservabilityHooks.md#property-oncrashreport)     | [src/batteries/isolation/observability.ts:120](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L120) |
|  `onDispose?`             | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `dispose:start` / `dispose:done` — graceful-then-forced teardown.                                                                                                                                                         | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onDispose`](IsolationObservabilityHooks.md#property-ondispose)             | [src/batteries/isolation/observability.ts:116](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L116) |
|  `onIsolation?`         | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | Fires on EVERY report (the firehose).                                                                                                                                                                                     | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onIsolation`](IsolationObservabilityHooks.md#property-onisolation)         | [src/batteries/isolation/observability.ts:112](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L112) |
|  `onRecycle?`             | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `recycle:start` / `recycle:done` — terminate + reconnect through the same transport.                                                                                                                                      | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onRecycle`](IsolationObservabilityHooks.md#property-onrecycle)             | [src/batteries/isolation/observability.ts:118](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L118) |
|  `onRespawnAuto?`     | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `respawn:auto` — an `autoRespawn` crash-policy verdict was consulted and acted on.                                                                                                                                        | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onRespawnAuto`](IsolationObservabilityHooks.md#property-onrespawnauto)     | [src/batteries/isolation/observability.ts:122](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L122) |
|  `onSpawn?`                 | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `spawn:start` / `spawn:ready` / `spawn:error` — guest connect lifecycle.                                                                                                                                                  | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onSpawn`](IsolationObservabilityHooks.md#property-onspawn)                 | [src/batteries/isolation/observability.ts:114](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L114) |
|  `onStream?`               | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `stream:start` / `stream:end` / `stream:error` / `stream:cancel` — a streaming method call.                                                                                                                               | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onStream`](IsolationObservabilityHooks.md#property-onstream)               | [src/batteries/isolation/observability.ts:126](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L126) |
|  `onWire?`                   | [`IsolationReportCallback`](../type-aliases/IsolationReportCallback.md) | `wire:out` / `wire:in` — every envelope crossing the wire (verbose; opt in deliberately).                                                                                                                                 | [`IsolationObservabilityHooks`](IsolationObservabilityHooks.md).[`onWire`](IsolationObservabilityHooks.md#property-onwire)                   | [src/batteries/isolation/observability.ts:130](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L130) |
|  `readyTimeoutMs?`   | `number`                                                                | Max time to wait for the guest's `ready` envelope after `transport.connect()` resolves. Default `30_000`. Rejects the pending `connect`/first call with `E_ISOLATION_READY_TIMEOUT`.                                      | -                                                                                                                                            | [src/batteries/isolation/host.ts:48](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/host.ts#L48)                     |
