Content
78%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
A well-engineered overview: lean, EmDash-specific throughout, with a logical build sequence and an exemplary one-level-deep reference structure verified against the real bundle. The gaps are minor: no emdash-plugin.jsonc declaration snippet, some duplicated reference listings, and validation loops deferred to references.
Suggestions
Add a minimal emdash-plugin.jsonc snippet (e.g. declaring content:read and network:request with allowedHosts) next to the plugin.ts example so capability declaration is copy-paste ready.
De-duplicate the reference listings: keep the in-section 'Read [X]' pointers and trim the repeated entries in the References index, or vice versa.
Include a short private-route example using pluginRoute() and pluginResponse() to make the routes section as executable as the scaffold section.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The body is dense and assumes competence ("Source types and production-boundary tests take precedence over examples", "Patch does not imply read") with no explanation of concepts Claude already knows. Not 5 because the 27-row capability table inline and the reference list duplicated between 'Declare access' and the 'References' section are tokens that could be trimmed or consolidated. | 4 / 5 |
Actionability | Concrete and mostly executable: a runnable scaffold command block ("pnpm dlx @emdash-cms/plugin-cli init my-plugin"), a complete src/plugin.ts example, named test hosts (createPluginTestHost(), createPluginRuntimeTestHost()), and specific inspector calls (host.http.respond(), host.http.requests()). Not 5 because "Declare every host API in emdash-plugin.jsonc" and the routes section lack a copy-paste-ready snippet. | 4 / 5 |
Workflow Clarity | Sections follow a coherent build sequence (choose format → scaffold → declare access → routes/hooks/admin UI → runner parity → test), and validation is present: "pnpm run test" immediately after scaffold, two named test hosts with scoped use cases, and "Dispose every host after use". Not 5 because the body has no explicit validate-and-fix loop for capability/manifest errors (deferred to references), and not 3 since checkpoints are explicitly named rather than implicit. | 4 / 5 |
Progressive Disclosure | All 12 referenced files exist, are exactly one level deep, and are linked from the section where each topic arises ("Read [Hooks](./references/hooks.md)") plus a consolidated References index; the overview/detail split is appropriate. Verified against the actual bundle: no nested or dangling references, and the single sibling cross-link (block-kit → portable-text-blocks) stays flat. | 5 / 5 |
Total | 17 / 20 Passed |