---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/orchestration/forge/functions/forgeOrchestrationTools.md
---

# Function: forgeOrchestrationTools()

```ts
function forgeOrchestrationTools(
  runtime: ForgeOrchestrationRuntime,
  options: ForgeOrchestrationOptions,
): Record<string, Tool>;
```

Defined in: [src/batteries/orchestration/forge.ts:619](https://github.com/NHTIO/ADK/blob/v1.20260906.0/src/src/batteries/orchestration/forge.ts#L619)

Forge the model-facing orchestration tools for a configured runtime and tier.

## Parameters

| Parameter | Type                                                                      | Description                                                                  |
| --------- | ------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
| `runtime` | [`ForgeOrchestrationRuntime`](../interfaces/ForgeOrchestrationRuntime.md) | The store, tier-C allowlist, predicate cells, templates, and actor identity. |
| `options` | [`ForgeOrchestrationOptions`](../interfaces/ForgeOrchestrationOptions.md) | Tier, per-tool overrides, and an optional mutating-tool gate.                |

## Returns

[`Record`](https://www.typescriptlang.org/docs/handbook/utility-types.html#recordkeys-type)<`string`, [`Tool`](../../../../forge/classes/Tool.md)>

The forged tools, keyed by name.

## Remarks

Returns a `Record<string, Tool>` keyed by the (post-override) tool name. Tier A (`'front'`)
yields the three conversational tools; tier B (`'authoring'`) yields the graph-mechanics tools.
Tier C is `runtime.invocable`, not a tool tier, and is the SAME object the tool registry is.

Where a `gate` is supplied it is run via [runToolGate](../../../tools/_shared/functions/runToolGate.md) before any MUTATING tool executes;
read-only tools are not gated. The wire↔IR conversion (hydrateRefs/
dehydrateRefs) happens inside this function and nowhere else.
