A fully enriched context contribution ready for the AI.

This is the "output" of context gathering — includes the provider's contribution plus UI context information added by the registry.

Hierarchy

Properties

ancestorContext: LimeWebComponentContext

The component's LimeWebComponentContext at the time of gathering.

The LimeWebComponentContext injected into the component by the framework. Describes the component's own limetype/id and, via the parent chain, its ancestors in the UI hierarchy.

Example

A company record open in the main view:

{ "limetype": "company", "id": 3184 }

Example

A deal opened in the side-panel from a company's deal list:

{
"limetype": "deal",
"id": 2045,
"parent": { "limetype": "deal", "id": null }
}

Here parent represents the deal list the component is nested in. Note: the ancestor chain may be incomplete — in this example the company context is not included as a grandparent.

data?: Record<string, JsonValue>

Structured data about the current state.

This data will be serialized and included in the AI prompt context. Keep the data focused and relevant to avoid filling the context window with noise.

Example

data: {
currentObject: {
limetype: 'deal',
id: 123,
descriptive: 'Acme Corp - Enterprise License'
},
availableRelations: ['company', 'person', 'activity']
}
purpose?: string

Describes the purpose of this component and what it shows.

Use this to help the AI understand what the component is for, how users interact with it, and what the data represents. This is typically hardcoded by component developers.

Do NOT use this to restate structured data in natural language. The AI can read the data directly.

Example

// Good: explains what the component is and does
purpose: 'Shows a single aggregated value from a filter. ' +
'Clicking navigates to the explorer with that filter applied.'

// Good: explains how to interpret the data
purpose: 'Displays deals in a pipeline view grouped by stage. ' +
'Users drag deals between columns to change their stage.'

// Bad: restates structured data
purpose: 'The user is viewing deal 123.' // Use data instead