Interface: ExternalManifest
Defined in: core/externalExtensions.ts:69
An external extension's manifest: its plugin.json, the plugin's own metadata (Claude Code's
fields, which its validator checks) and the kit's data (metadata["agent-kit"], which it doesn't read).
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
author? | ExtensionAuthor | - | core/externalExtensions.ts:73 |
capabilities | ExtensionCapability[] | What it lets the agent do, described for the person (#62): skills and tools together. | core/externalExtensions.ts:82 |
catalog? | object | How a catalog shows it (#59): its logo (square) and banner (wide), paths inside its folder, as its manifest gives them. | core/externalExtensions.ts:105 |
catalog.banner? | string | - | core/externalExtensions.ts:105 |
catalog.logo? | string | - | core/externalExtensions.ts:105 |
description | string | - | core/externalExtensions.ts:71 |
help? | string | What it says about itself in a session, for the agent to tell the person (SessionFacts). | core/externalExtensions.ts:101 |
homepage? | string | - | core/externalExtensions.ts:74 |
keywords? | string[] | - | core/externalExtensions.ts:77 |
kit? | string | The agent-kit versions it works with, e.g. ">=0.19.0 <0.21.0". | core/externalExtensions.ts:84 |
labels | Record<string, Partial<Record<Language, ExternalToolLabel>>> | Its tools' chat labels, by short name (of any of its servers) and language (English when the kit's isn't there). | core/externalExtensions.ts:99 |
license? | string | - | core/externalExtensions.ts:76 |
name | string | - | core/externalExtensions.ts:70 |
provides | string[] | What it lets the agent use: its provides and its capabilities' ids. | core/externalExtensions.ts:79 |
readOnlyTools? | string[] | Its tools that only read (short names, of any of its servers): plan mode lets them through. Without the key, plan mode asks its servers which (their tools' readOnlyHint); with it, the list is the whole answer, even empty. | core/externalExtensions.ts:97 |
repository? | string | - | core/externalExtensions.ts:75 |
requirements | ExtensionRequirement[] | Programs it needs on this computer (#63): checked when it loads, never installed. Without one the whole extension needs, it's off; without one only some capabilities need, those are. | core/externalExtensions.ts:89 |
requires | string[] | - | core/externalExtensions.ts:80 |
servers | Record<string, PluginServer> | Its MCP servers, by name (mcp__<name>__<tool>), from the plugin's .mcp.json or plugin.json. | core/externalExtensions.ts:91 |
userConfig | Record<string, ExtensionOption> | Its options (userConfig, as Claude Code declares them, #55): its servers take them as ${user_config.KEY}. | core/externalExtensions.ts:103 |
version? | string | - | core/externalExtensions.ts:72 |