{"version":"2.1.299","anchor":"plugin-default-types-contract-file-and-clearer-path-not-foun","canonical_anchor":"plugin-default-types-contract-file-and-clearer-path-not-foun","heading":"Plugins can supply their types contract from a default file","tier":"notice","area":"Plugins","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.299\/e\/plugin-default-types-contract-file-and-clearer-path-not-foun","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.299","markdown":"### Plugins can supply their types contract from a default file\n\nPlugins without a `types` field can now provide their types contract in a default file, and missing-path errors read more clearly\n\n**What**\n\nA plugin (an add-on package) can describe the types it uses in a types contract. Before, Claude Code read this contract only when the plugin's manifest, its description file, had a `types` field. It can now also read the contract from a conventional default file when that field is missing. The validator, the check that reports problems with a plugin, now reports what that file declares, or says the file could not be taken as the types contract.\n\nFor plugins with no plugin name set, the error for a missing path now begins \"Plugin path not found:\". It used to name the component, as in \" path not found\".\n\n**Why**\n\nPlugin authors can leave the `types` field out and still get a types contract checked. When a path is missing, the error message is clearer.\n\n- Area: Plugins\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 2\/5\n- Scope: individual\n- Heads-up: no"}