Interface: Extension
Defined in: core/extensions.ts:76
An internal extension: its plugin (whose manifest gives its name, description and capabilities), what it needs from the session, and what it brings.
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
external? | boolean | Installed rather than shipped in a package (#37): its subagents get no Bash, and no plugin hook runs. | core/extensions.ts:82 |
name | string | Its name, the same as its plugin's (plugin.json's name). | core/extensions.ts:78 |
plugin | string | Its plugin's root: .claude-plugin/plugin.json, and its skills and commands, if any. | core/extensions.ts:80 |
Methods
contribute()
contribute(context): Promise<ExtensionContribution>;
Defined in: core/extensions.ts:86
What it brings to the session, once it's active.
Parameters
| Parameter | Type |
|---|---|
context | ExtensionContext |
Returns
Promise<ExtensionContribution>
missing()?
optional missing(context): string | undefined;
Defined in: core/extensions.ts:84
Why it can't run in this session (e.g. "needs knowledgeDir in the config"), or undefined when it can.
Parameters
| Parameter | Type |
|---|---|
context | ExtensionContext |
Returns
string | undefined