From stackblitz-pack
Collects WebContainer diagnostics: boot state, filesystem, Node.js version/memory, processes, and browser support. Use when debugging StackBlitz SDK issues.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin stackblitz-packThis skill is limited to using the following tools:
Collect WebContainer diagnostic info: boot state, file system, process list.
Fixes StackBlitz/WebContainer errors: COOP/COEP headers, SharedArrayBuffer, boot failures, npm hangs, ENOENT. Includes diagnostics and TypeScript patterns for retries/singletons.
Generates Webflow API diagnostic bundle with SDK version, token validation, rate limits, site connectivity, CMS health, and logs for troubleshooting support tickets.
Collects Replit diagnostic bundle for debugging workspace, deployment, and database issues. Includes runtimes (Node/Python), env vars, packages (npm/pip), configs (.replit/nix), for support tickets.
Share bugs, ideas, or general feedback.
Collect WebContainer diagnostic info: boot state, file system, process list.
async function diagnoseWebContainer(wc: WebContainer) {
const report: Record<string, any> = {};
// File system check
try {
const entries = await wc.fs.readdir('/');
report.filesystem = { status: 'ok', rootEntries: entries.length };
} catch (e: any) {
report.filesystem = { status: 'error', message: e.message };
}
// Node.js check
try {
const proc = await wc.spawn('node', ['-e', 'console.log(JSON.stringify({version: process.version, arch: process.arch}))']);
let output = '';
proc.output.pipeTo(new WritableStream({ write(data) { output += data; } }));
await proc.exit;
report.node = JSON.parse(output);
} catch (e: any) {
report.node = { status: 'error', message: e.message };
}
// Memory check
try {
const proc = await wc.spawn('node', ['-e', 'console.log(JSON.stringify(process.memoryUsage()))']);
let output = '';
proc.output.pipeTo(new WritableStream({ write(data) { output += data; } }));
await proc.exit;
report.memory = JSON.parse(output);
} catch { report.memory = 'unavailable'; }
return report;
}
function checkBrowserSupport() {
return {
sharedArrayBuffer: typeof SharedArrayBuffer !== 'undefined',
crossOriginIsolated: window.crossOriginIsolated,
serviceWorker: 'serviceWorker' in navigator,
userAgent: navigator.userAgent,
};
}
| Check | Expected | Failed Action |
|---|---|---|
| SharedArrayBuffer | defined | Add COOP/COEP headers |
| crossOriginIsolated | true | Check all headers present |
| Node.js version | v18+ | WebContainer ships its own |
| Root FS entries | > 0 | Re-mount files |
For resource limits, see stackblitz-rate-limits.