← Files UiprobeARCHIVED FILE
.codex-plugin/plugin.json
4.88 KB · Nov 12, 2026 · 19:35 UTC
{
"name": "uiprobe",
"version": "0.1.0",
"description": "Automatically detect spacing, typography, color, and layout differences between your Figma design and live website.",
"author": {
"name": "Uiprobe",
"url": "https://www.uiprobe.io"
},
"homepage": "https://www.uiprobe.io",
"repository": "https://github.com/uiprobe/chatgpt-codex-plugin",
"license": "MIT",
"keywords": [
"figma",
"design",
"visual-qa",
"frontend",
"mcp"
],
"interface": {
"displayName": "Uiprobe",
"shortDescription": "Compare your site with Figma",
"longDescription": "Uiprobe automatically catches visual differences between your Figma designs and live web pages: layout and spacing, typography, color, size, and content. Every finding shows the expected value and the actual value.\n\nGive ChatGPT a Figma frame URL and a page URL, and it runs the comparison and goes through the findings with you. In Codex, it can find the element in your code, fix it and run the probe again to see what's still off.\n\nSign in with Figma at app.uiprobe.io first. The page has to be reachable from the internet.",
"developerName": "Uiprobe",
"category": "Developer Tools",
"capabilities": [
"Interactive",
"Read",
"Write"
],
"websiteURL": "https://www.uiprobe.io",
"supportURL": "https://www.uiprobe.io/help/support",
"privacyPolicyURL": "https://www.uiprobe.io/legal/privacy",
"termsOfServiceURL": "https://www.uiprobe.io/legal/terms",
"defaultPrompt": [
"Compare my Figma frame with my live page.",
"Which findings are in my latest probe?",
"Rerun my last probe."
],
"brandColor": "#007AFF",
"brandColorDark": "#007AFF",
"composerIcon": "./assets/uiprobe-icon.svg",
"logo": "./assets/uiprobe-icon.svg"
},
"mcpServers": "./.mcp.json",
"extensions": {
"com.openai": {
"review": {
"test_cases": {
"positive": [
{
"description": "Create a probe that compares a Figma frame with a live page.",
"prompt": "Compare this Figma frame with this page: https://www.figma.com/design/MSoPJiiADXlWEsiG5q9Vcd/Figma-example?node-id=1-8 https://www.uiprobe.io/examples/demo-probe-mixed-findings",
"tools_triggered": "run_probe, or rerun_probe when a probe for this frame and page already exists, then get_probe_status, get_probe",
"expected_behavior": "A list of findings, each with a link to the finding in the Uiprobe viewer."
},
{
"description": "List the user's probes.",
"prompt": "Which probes do I have?",
"tools_triggered": "list_probes",
"expected_behavior": "The sample probe, and no tool that writes."
},
{
"description": "Read the findings of the user's latest probe.",
"prompt": "What's different between my design and the page in my latest probe?",
"tools_triggered": "list_probes, get_probe",
"expected_behavior": "The findings, each with what the design specifies and what the page renders."
},
{
"description": "Look at one finding through crops of the design and the page.",
"prompt": "Show me the biggest spacing difference in that probe.",
"tools_triggered": "get_probe, get_finding_images",
"expected_behavior": "ChatGPT describes what the design and the page show for that finding, based on the crops, with a link to the finding in the viewer."
},
{
"description": "Run an existing probe again.",
"prompt": "Rerun that probe.",
"tools_triggered": "list_probes, rerun_probe",
"expected_behavior": "A new version of the same probe, not a new probe."
}
],
"negative": [
{
"description": "Unrelated coding: no design or page is involved, so there is nothing to compare.",
"prompt": "Write the CSS for a pricing card."
},
{
"description": "Out of scope: Uiprobe compares designs with pages; it doesn't create designs.",
"prompt": "Design a new landing page in Figma for me."
},
{
"description": "Deletion: no tool deletes probes, so the answer points to the Uiprobe web app.",
"prompt": "Delete all my probes."
}
]
},
"demo_recording_url": "https://youtu.be/klqglJWr4qc",
"commerce": false
},
"publication": {
"release_notes": "First submission. Eight tools to run, rerun, list and read probes, view finding images, and dismiss and restore findings, plus skills to summarise a probe's findings, triage them, check a pull request's pages and fix design differences in code."
}
}
},
"apps": "./.app.json"
}
SHA-256: b04381d557e3b7643bee65aa6166bd7a37bd3ef011ef240dca7521b3c8146e07