visual-review-workbench
by Olorinm
README.md
# Visual Review Workbench
A portable [Agent Plugins 1.0.0](https://agent-plugins.org/specification) package for reviewing real frontend UI variants.
The plugin combines:
- An Agent Skill that defines the visual-review workflow and comparison rules.
- One MCP tool that opens, refreshes, verifies, captures, and closes review surfaces.
- Dependency-free Node.js scripts that implement the review shell.
## Package boundaries
This package contains only reusable review infrastructure. It intentionally excludes:
- Product source code and product-specific review routes.
- Screenshots, recordings, captured application state, and business fixtures.
- Local usernames, absolute machine paths, browser profiles, credentials, and environment files.
- Repository commits, worktrees, and generated review output.
Project-specific adapters are generated at runtime inside the project being reviewed. Generated review output belongs in a temporary or project-selected directory, never in this plugin package.
## Components
```text
visual-review-workbench/
├── plugin.json
├── mcp.json
├── skills/
│ └── review-frontend-variants/
│ ├── SKILL.md
│ ├── references/
│ └── scripts/
├── server/
│ └── index.mjs
└── scripts/
```
The MCP server exposes one tool: `visual_review_workbench`.
Its `action` field supports `open`, `refresh`, `verify`, `capture`, and `close`. Route scaffolding, fixture capture, measurement, and recording remain internal scripts directed by the skill instead of expanding the public tool surface.
Browser-backed commands require Playwright to be resolvable from the target project or plugin runtime. Static generation and serving use only Node.js built-ins.
## Validate
```bash
npm test
```
To add organization-specific deny terms to the portability audit:
```bash
PORTABILITY_DENY_TERMS="internal-product,example-user" npm run check:portable
```
## Runtime paths
The package never embeds installation paths. The client supplies `PLUGIN_ROOT` and `PLUGIN_DATA` according to the Agent Plugins specification. MCP subprocess state and server logs use `PLUGIN_DATA`; target-project paths are accepted only as runtime tool arguments.
This server cannot be deployed
Maintenance
ActivitySlowing
ResponsivenessNo issues