Use when testing UI changes, verifying builds work, or validating extension behavior on PoE trade website or Storybook
Installation
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
The DEV indicator in the panel header shows reload status:
Green dot: Background reload script is connected and working
Red dot: Disconnected - extension needs reload or background script issue
Yellow dot: Checking connection status
Check DEV Indicator
// Look for DEV indicator in panel headerconst snapshot = awaitaccessibilitySnapshot({ page: state.tradePage, search: /DEV/i });
console.log(snapshot);
The indicator should show "DEV" text with a colored dot. If you see the DEV indicator but it's red:
Try refreshing the trade page manually
Check chrome://extensions for errors
Reload the extension in chrome://extensions
Verify Auto-Reload Works
Make a small code change (e.g., add a console.log)
Run bun run dev again
Watch the trade page - it should auto-reload within 1-2 seconds
Verify the DEV indicator is still green after reload
Step 4: Test UI Components
Testing in Storybook (Preferred for Component Development)
Start Storybook if not running:
bun run storybook
Navigate to specific stories:
// Navigate to a component storyawait state.storybookPage.goto('http://localhost:6006/?path=/story/panel--default');
await state.storybookPage.waitForLoadState('networkidle');
const snapshot = awaitaccessibilitySnapshot({ page: state.storybookPage });
console.log(snapshot);
Testing on PoE Trade Website
Check the extension panel is visible:
// Get snapshot of extension elementsconst snapshot = awaitaccessibilitySnapshot({ page: state.tradePage, search: /paste|history|bookmark/i });
console.log(snapshot);
Interact with panel tabs:
// Click a tab in the extension panelawait state.tradePage.locator('aria-ref=<ref>').click();
awaitaccessibilitySnapshot({ page: state.tradePage, showDiffSinceLastCall: true });
Step 5: Test Item Paste Functionality
Paste an Item
const itemText = `Item Class: Body Armours
Rarity: Rare
Damnation Shell
Expert Hexer's Robe
--------
Energy Shield: 135
--------
Requirements:
Level: 65
Int: 134
--------
Item Level: 74
--------
+35 to maximum Life
+42% to Fire Resistance
+28% to Lightning Resistance`;
const pasteInput = state.tradePage.locator('input[placeholder*="Paste"]');
await pasteInput.click();
await pasteInput.evaluate((el, text) => {
el.value = '';
const event = newClipboardEvent('paste', {
clipboardData: newDataTransfer(),
bubbles: true
});
event.clipboardData.setData('text/plain', text);
el.dispatchEvent(event);
}, itemText);