@happyvertical/smrt-workbench
A shared developer workbench for s-m-r-t packages and consumer projects: package metadata, route modules, previews, scripts, docs, and manifests in one browser host.
What it gives you
A shared developer workbench for s-m-r-t packages and consumer projects: package metadata, route modules, previews, scripts, docs, and manifests in one browser host.
- 01Consumer projects add a workbench script that runs smrt workbench dev after installing smrt-cli and this package
- 02Read-only for command execution: scripts and validation commands are shown as copyable text
- 03Package-owned workbench modules export route modules and metadata through defineWorkbenchModule
What it composes
The workbench mounts package route modules, smrt-playground previews, package metadata, scripts, docs, manifests, and knowledge summaries in a single shared host. smrt-playground keeps preview discovery and rendering; smrt-dev-mcp keeps knowledge freshness and review bundles.
Three views
A workspace root shows every workspace package, and a package directory focuses the host on that package. A consumer project shows installed package metadata plus local project knowledge. Yarn consumers must use the node-modules linker, because the browser host is served from the installed package directory.
Package UI
Components in this package
Import these public components directly. When the package also exports playground entries, the next tab renders its real components with package-owned example data.
Package previews
No playground module yet
This package does not currently export a ./playground module. Its component names and import path remain available in the Components tab.
Intentionally not registered
Generated interface
REST
The exact route set comes from each model's @smrt({ api }) policy
and the application manifest—not from a second controller definition.
Developer tooling without models. It renders other packages’ surfaces and generates none of its own.
Generated interface
MCP
AI tools are generated from the methods you explicitly include. Their inputs are validated against the same model metadata used by REST and CLI.
Developer tooling without models. It renders other packages’ surfaces and generates none of its own.
Browser-native agent interface
WebMCP
The generated web definitions carry the same tool names, descriptions, and JSON Schema
inputs as MCP. smrt-web registers them with document.modelContext.
Developer tooling without models. It renders other packages’ surfaces and generates none of its own.
Generated interface
CLI
The app CLI turns manifest resources into predictable operator commands while keeping package-specific actions close to their models.
Developer tooling without models. It renders other packages’ surfaces and generates none of its own.