Minor Changes
-
#3081
da171b3Thanks @ascorbic! - Adds repository-level automated plugin releases.emdash-plugin release setupwrites one shared.github/workflows/emdash-release.ymlat the Git repository root, including when setup runs from a nested package. The workflow resolves<slug>@<version>tags to a unique plugin manifest, rejects version mismatches before attestation, and requests its first repository connection through GitHub OpenID Connect without an Actions secret.Prepare later packages with
emdash-plugin profile setup --dir <package-directory>. Their first release reuses approved repository workflow scopes when the signed package profile names the same repository. Tag and manual-run scopes accumulate after publisher confirmation instead of replacing each other. Existing package approvals remain package-scoped until the publisher explicitly confirms a repository connection; existing generated workflows and the legacy optional connection-invitation input remain supported. -
#3081
da171b3Thanks @ascorbic! - Updatesemdash-plugin initto produce a validated, package-manager-aware plugin project. Interactive setup shows the resolved publisher, author, security contact, repository, target, and package manager before writing. Non-interactive setup requires explicit ownership flags unless--use-detectedopts into the active publisher session and local Git metadata.Generated projects pin the plugin CLI version, use bounded EmDash dependencies, include validation and publishing scripts, and add
AGENTS.mdwith a localcreating-pluginsskill..agents/skillsand.claude/skillslink to the same canonical skill directory, while.claude/CLAUDE.mdlinks toAGENTS.md. pnpm projects include the reviewedesbuildinstall policy and use an explicitSandboxedPluginannotation so declaration output remains portable. The scaffolder validates the complete manifest and parent paths before writing and stages new projects atomically. -
#3084
b581ff8Thanks @ascorbic! - Adds a workerd-backed Vitest host for sandboxed plugin tests and includes it in projects created byemdash-plugin init.emdashPluginTest()builds the plugin and configures D1, Worker Loader, and the productionPluginBridge;createPluginTestHost()invokes hooks and routes through the production sandbox boundary and provides helpers for content fixtures, plugin storage, and KV assertions. -
#3093
ea2ccd5Thanks @ascorbic! - Adds Changesets-aware automated plugin releases.emdash-plugin release setupdetects a root.changeset/config.jsonand offers to follow Changesets releases,<slug>@<version>tags, or manual runs. Use--trigger auto|changesets|tags|manualin non-interactive setup.The Changesets variant accepts the official Changesets Action published-package JSON through a reusable workflow. It supports mixed monorepos where npm package names differ from EmDash plugin IDs, ignores ordinary npm packages, verifies every reported plugin version, and publishes matching plugins as a matrix. Private EmDash-only packages produce a setup warning unless Changesets versions and tags them.