Skip to main content

Interface: ExtensionDescriptor<TPayload>

Defined in: packages/agentos/src/extensions/types.ts:82

Unified descriptor contract consumed by the extension registry. Concrete descriptor types (e.g., tools, guardrails) extend this shape with payloads specific to their domain.

Extended by

Type Parameters

TPayload

TPayload = unknown

Properties

enableByDefault?

optional enableByDefault: boolean

Defined in: packages/agentos/src/extensions/types.ts:101

Flag indicating whether the descriptor should be enabled by default when discovered. Manifests or overrides can still disable it explicitly.


id

id: string

Defined in: packages/agentos/src/extensions/types.ts:87

Unique identifier for the descriptor within its kind. Subsequent descriptors with the same id stack on top of previous entries.


kind

kind: string

Defined in: packages/agentos/src/extensions/types.ts:91

High-level category of the descriptor (tool, guardrail, etc.).


metadata?

optional metadata: Record<string, unknown>

Defined in: packages/agentos/src/extensions/types.ts:105

Arbitrary metadata for tooling or pack-specific usage.


onActivate()?

optional onActivate: (context) => void | Promise<void>

Defined in: packages/agentos/src/extensions/types.ts:118

Optional lifecycle hook invoked when the descriptor becomes the active entry for its id.

Parameters

context

ExtensionLifecycleContext

Returns

void | Promise<void>


onDeactivate()?

optional onDeactivate: (context) => void | Promise<void>

Defined in: packages/agentos/src/extensions/types.ts:123

Optional lifecycle hook invoked when the descriptor is superseded or removed.

Parameters

context

ExtensionLifecycleContext

Returns

void | Promise<void>


payload

payload: TPayload

Defined in: packages/agentos/src/extensions/types.ts:109

The payload consumed by the runtime (e.g., tool factory function).


priority?

optional priority: number

Defined in: packages/agentos/src/extensions/types.ts:96

Optional priority used during manifest loading. Higher numbers load later, allowing them to supersede earlier descriptors with the same id.


requiredSecrets?

optional requiredSecrets: ExtensionSecretRequirement[]

Defined in: packages/agentos/src/extensions/types.ts:128

Declares the secrets (API keys, credentials) the descriptor needs in order to function.


source?

optional source: ExtensionSourceMetadata

Defined in: packages/agentos/src/extensions/types.ts:113

Provenance information for the descriptor.