- packages/sdk: new types-only @open-pets/plugin-sdk — OpenPetsContext + the
ambient OpenPetsPlugin global, plus a mock-ctx contract test. Zero runtime
deps; published for editor autocomplete (npm i -D @open-pets/plugin-sdk).
- cli: `openpets plugin new <name>` scaffolds a plugin folder (manifest +
entry + README) so step zero is npx, not copy-paste.
- desktop: compile-time conformance guard tying the runtime plugin SDK
(namespaces + JS permission set) to the published @open-pets/plugin-sdk
contract, so the two can't drift.
- release-npm: include packages/sdk in the publish order.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>