Theia API Documentation v1.73.0
    Preparing search index...

    Contribution point for the Extensions view. Each contribution represents one artifact type (e.g. extension, mcp-server, future skill) and supplies entries to the relevant sections of the view.

    Contributions implement only the modes they participate in. A contribution that has no concept of "built-in", for example, simply omits resolveBuiltIn.

    Each returned TreeElement carries its own render(host) - the contribution controls how its entries look. The view groups results by contribution type (using displayName as the group header) when more than one contribution yields entries for a section.

    interface ExtensionsSourceContribution {
        displayName: string;
        onDidChange: Event<void>;
        priority?: number;
        searchToken: string;
        type: string;
        refresh?(): Promise<void>;
        resolveBuiltIn?(): | Iterable<TreeElement, any, any>
        | Promise<Iterable<TreeElement, any, any>>;
        resolveInstalled?(): | Iterable<TreeElement, any, any>
        | Promise<Iterable<TreeElement, any, any>>;
        resolveRecommended?(): | Iterable<TreeElement, any, any>
        | Promise<Iterable<TreeElement, any, any>>;
        resolveSearchResults?(
            query: string,
            context: SearchContext,
        ):
            | Iterable<SearchResult, any, any>
            | Promise<Iterable<SearchResult, any, any>>;
    }

    Implemented by

    Index

    Properties

    displayName: string

    Human-readable label used as the group header in the view.

    onDidChange: Event<void>

    Fired when the contribution's entries change (e.g. after install, refresh, or preference update).

    priority?: number

    Ordering hint when multiple contributions yield entries for the same section. Lower numbers come first. Defaults to 0.

    searchToken: string

    @-prefixed token recognised in the search query to scope results to this contribution alone. Composable with the existing @installed / @builtin / @recommended mode tokens (e.g. @installed @mcp shows installed servers of type mcp-server only). When no type token appears in the query, all contributions are shown.

    Contributors are expected to start the token with @; without the prefix the search model may treat the token as a plain word in the free-text part of the query.

    type: string

    Stable, machine-readable identifier for the artifact type.

    Methods

    • Entries matching a user search. Each result carries its own searchableText so the view can rank hits from all contributions against a single query. Omit if this type does not participate in search.

      Contributions may ignore query when their internal state already reflects the current query (e.g. the VSX adapter, whose model is kept in sync with the search bar via the singleton VSXExtensionsSearchModel). In that case the contribution is expected to yield its current result set and let the view's cross-contribution fuzzy ranker handle the actual ordering.

      Parameters

      Returns Iterable<SearchResult, any, any> | Promise<Iterable<SearchResult, any, any>>