Interface: ExternalManifest
Defined in: core/externalExtensions.ts:68
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:72 |
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:98 |
catalog.banner? | string | - | core/externalExtensions.ts:98 |
catalog.logo? | string | - | core/externalExtensions.ts:98 |
description | string | - | core/externalExtensions.ts:70 |
help? | string | What it says about itself in a session, for the agent to tell the person (SessionFacts). | core/externalExtensions.ts:94 |
homepage? | string | - | core/externalExtensions.ts:73 |
keywords? | string[] | - | core/externalExtensions.ts:76 |
kit? | string | The agent-kit versions it works with, e.g. ">=0.19.0 <0.21.0". | core/externalExtensions.ts:80 |
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:92 |
license? | string | - | core/externalExtensions.ts:75 |
name | string | - | core/externalExtensions.ts:69 |
needs | string[] | Programs it needs on this computer, found on the PATH ("docker", "python3"): without one it's off, saying which. | core/externalExtensions.ts:82 |
provides | string[] | - | core/externalExtensions.ts:77 |
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:90 |
repository? | string | - | core/externalExtensions.ts:74 |
requires | string[] | - | core/externalExtensions.ts:78 |
servers | Record<string, PluginServer> | Its MCP servers, by name (mcp__<name>__<tool>), from the plugin's .mcp.json or plugin.json. | core/externalExtensions.ts:84 |
userConfig | Record<string, ExtensionOption> | Its options (userConfig, as Claude Code declares them, #55): its servers take them as ${user_config.KEY}. | core/externalExtensions.ts:96 |
version? | string | - | core/externalExtensions.ts:71 |