ai: { mode: 'agent' } (default)| Setting | Value |
|---|---|
Headless | Yes |
Viewport | Fixed to screenshotSize (default 800x800) |
DevUI | Off in Playwright, on in normal browser |
Normal browser | Opens via server.open |
import { defineConfig } from 'vite';
import { iwsdkDev } from '@iwsdk/vite-plugin-dev';
export default defineConfig({
plugins: [
iwsdkDev({
emulator: { device: 'metaQuest3' },
ai: { mode: 'agent', screenshotSize: { width: 500, height: 500 } },
}),
],
});
screenshotSize. Screenshots are captured at exactly that resolution — no resizing needed. This keeps token usage predictable.ai: { mode: 'oversight' }| Setting | Value |
|---|---|
Headless | No |
Viewport | Freely resizable |
DevUI | Off |
Normal browser | Does not open (Playwright is the visible browser) |
import { defineConfig } from 'vite';
import { iwsdkDev } from '@iwsdk/vite-plugin-dev';
export default defineConfig({
plugins: [
iwsdkDev({
emulator: { device: 'metaQuest3' },
ai: { mode: 'oversight' },
}),
],
});
screenshotSize bounds (default 800x800), preserving aspect ratio. A 1920x1080 window with an 800x800 bound produces an 800x450 screenshot.ai: { mode: 'collaborate' }| Setting | Value |
|---|---|
Headless | No |
Viewport | Freely resizable |
DevUI | On |
Normal browser | Does not open (Playwright is the visible browser) |
import { defineConfig } from 'vite';
import { iwsdkDev } from '@iwsdk/vite-plugin-dev';
export default defineConfig({
plugins: [
iwsdkDev({
emulator: { device: 'metaQuest3' },
ai: { mode: 'collaborate' },
}),
],
});
screenshotSize, preserving aspect ratio.server.open, so you get DevUI there by default. In oversight and collaborate modes, Playwright is the visible browser and server.open is suppressed — but if you navigate to the dev server URL in a separate browser window, that tab will still have DevUI enabled.| Agent | Oversight | Collaborate | |
|---|---|---|---|
headless | true | false | false |
viewport | Fixed ( screenshotSize) | null (resizable) | null (resizable) |
devUI | false | false | true |
server.open | Unchanged | false | false |
Screenshot | Exact size | Downscaled to fit | Downscaled to fit |
interface AiOptions {
mode?: 'agent' | 'oversight' | 'collaborate'; // default: 'agent'
tools?: AiTool[]; // default: ['claude']
screenshotSize?: { width?: number; height?: number }; // default: 800x800
}
mode — Selects the usage mode. All internal settings (headless, devUI, viewport, server.open) are derived from the mode.tools — Which AI tools to generate MCP config files for. Options: 'claude', 'cursor', 'copilot', 'codex'.screenshotSize — In agent mode, this sets the Playwright viewport directly. In oversight/collaborate, screenshots are downscaled to fit within this bounding box. If only one dimension is provided, the other mirrors it (producing a square).ai entirely to disable all AI features (no Playwright, no MCP configs).