ToolCatalog
@forge/monorepo / backend/src / ToolCatalog
Type Alias: ToolCatalog
ToolCatalog =
object
Defined in: backend/src/tools/registry.ts:159
Properties
discoverable
readonlydiscoverable: readonlyToolCatalogEntry[]
Defined in: backend/src/tools/registry.ts:163
Everything else the caller may use — compact entries, schemas fetched via learn_tools.
meta
readonlymeta: readonlyToolCatalogEntry[]
Defined in: backend/src/tools/registry.ts:165
Always-present meta-tools.
preloaded
readonlypreloaded: readonlyToolDescriptor[]
Defined in: backend/src/tools/registry.ts:161
Preloaded tools carry full schemas — commonly required, loaded up front.
toolset?
readonlyoptionaltoolset?: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?
readonlyoptionaltruncation?: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
readonlybudgetTokens:number
dropped
readonlydropped: readonlystring[]
findable
readonlyfindable:boolean
overBudget
readonlyoverBudget:boolean
residentTokens
readonlyresidentTokens:number