Skip to main content

ToolCatalog

@forge/monorepo


@forge/monorepo / backend/src / ToolCatalog

Type Alias: ToolCatalog

ToolCatalog = object

Defined in: backend/src/tools/registry.ts:159

Properties

discoverable

readonly discoverable: readonly ToolCatalogEntry[]

Defined in: backend/src/tools/registry.ts:163

Everything else the caller may use — compact entries, schemas fetched via learn_tools.


meta

readonly meta: readonly ToolCatalogEntry[]

Defined in: backend/src/tools/registry.ts:165

Always-present meta-tools.


preloaded

readonly preloaded: readonly ToolDescriptor[]

Defined in: backend/src/tools/registry.ts:161

Preloaded tools carry full schemas — commonly required, loaded up front.


toolset?

readonly optional toolset?: TenantToolset

Defined in: backend/src/tools/registry.ts:187

The tenant's toolset as it was applied — AC-4's "visible in the capability declaration".

This catalogue is the declaration a client reads: it is the only place the platform states what an agent can do. A tenant setting that silently narrowed it, with nothing in the answer saying so, would be indistinguishable from tools that were never built.


truncation?

readonly optional truncation?: object

Defined in: backend/src/tools/registry.ts:173

Present only when a budget bound — REQ-045 (#204), task #210, AC-3.

On the catalogue as well as in the run event log, because the two have different readers: the event is for whoever reviews the run afterwards, and this is for the client rendering the catalogue now. A UI showing a shortened list with no indication it was shortened is the same invisible failure in a different place.

budgetTokens

readonly budgetTokens: number

dropped

readonly dropped: readonly string[]

findable

readonly findable: boolean

overBudget

readonly overBudget: boolean

residentTokens

readonly residentTokens: number