Every plugin must ship a coderclaw.plugin.json file in the plugin root.
CoderClaw uses this manifest to validate configuration without executing plugin
code. Missing or invalid manifests are treated as plugin errors and block
config validation.
See the full plugin system guide: Plugins.
{
"id": "voice-call",
"configSchema": {
"type": "object",
"additionalProperties": false,
"properties": {}
}
}
Required keys:
id (string): canonical plugin id.configSchema (object): JSON Schema for plugin config (inline).Optional keys:
kind (string): plugin kind (example: "memory").channels (array): channel ids registered by this plugin (example: ["matrix"]).providers (array): provider ids registered by this plugin.skills (array): skill directories to load (relative to the plugin root).name (string): display name for the plugin.description (string): short plugin summary.uiHints (object): config field labels/placeholders/sensitive flags for UI rendering.version (string): plugin version (informational).{ "type": "object", "additionalProperties": false }).channels.* keys are errors, unless the channel id is declared by
a plugin manifest.plugins.entries.<id>, plugins.allow, plugins.deny, and plugins.slots.*
must reference discoverable plugin ids. Unknown ids are errors.allow-build-scripts
pnpm rebuild <package>).