← Files VibeDoctorARCHIVED FILE
plugin.json
5.28 KB · Nov 2, 2026 · 13:02 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "vibedoctor",
"version": "1.0.0",
"description": "Code health for your VibeDoctor projects: findings from scans, checks of code you send, and a map of the codebase.",
"author": {
"name": "VibeDoctor",
"email": "911@vibedoctor.io",
"url": "https://vibedoctor.io"
},
"homepage": "https://vibedoctor.io/connectors",
"license": "Proprietary",
"keywords": [
"code health",
"code review",
"security",
"static analysis",
"developer tools"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "VibeDoctor",
"shortDescription": "Code health for your projects",
"longDescription": "VibeDoctor scans your GitHub repositories and websites and keeps a record of each project's code health. Connect it to see a project's scores and open findings, check code for security, dependency, quality and performance issues, explore a map of the codebase (what a function touches, what a change affects, which parts have no tests), and record why a finding is a false positive. It works with the projects in your VibeDoctor account; you sign in once and choose Allow.",
"developerName": "VibeDoctor",
"category": "Developer Tools",
"capabilities": [
"Read a project's code health and open findings",
"Check code for security, dependency, quality and performance issues",
"Map the codebase: modules, callers, change impact, test coverage",
"Answer questions about the code's structure and health",
"Record notes on findings"
],
"websiteURL": "https://vibedoctor.io",
"supportURL": "https://vibedoctor.io/connectors",
"privacyPolicyURL": "https://vibedoctor.io/privacy",
"termsOfServiceURL": "https://vibedoctor.io/terms",
"defaultPrompt": [
"What are the most serious issues in my project?",
"Check the files I just changed for security problems.",
"Which parts of my code have no tests?"
],
"brandColor": "#E8271A",
"brandColorDark": "#F87268",
"composerIcon": "./assets/icon.png",
"logo": "./assets/logo.png"
},
"onboardingSkill": "./skills/get-started/SKILL.md",
"review": {
"test_cases": {
"positive": [
{
"description": "Project health overview",
"prompt": "What are the most serious issues in my project?",
"tools_triggered": "vibedoctor_projects, vibedoctor_status",
"expected_behavior": "Reports the review project's overall score and its open findings by severity, naming the files with the most serious ones, using only data the tools returned."
},
{
"description": "Check pasted code",
"prompt": "Check this code for security problems:\nconst password = \"hunter2hunter2\";\nexport function run(x) { return eval(x); }",
"tools_triggered": "vibedoctor_check",
"expected_behavior": "Reports a hardcoded secret on line 1 and dynamic code execution (eval) on line 2, each with its severity and a fix."
},
{
"description": "Find modules with the most findings",
"prompt": "Which parts of my project have the most findings?",
"tools_triggered": "vibedoctor_graph",
"expected_behavior": "Lists the project's modules with their finding counts from the code map, highest first."
},
{
"description": "Find untested code",
"prompt": "Which parts of my code have no tests?",
"tools_triggered": "vibedoctor_graph",
"expected_behavior": "Gives the test coverage percentage and names untested symbols that also have findings."
},
{
"description": "Record a false positive",
"prompt": "The unprotected API route finding in packages/artifacts-viewer/apps/example/worker/index.ts is a false positive because that file is an example app. Please note that in VibeDoctor.",
"tools_triggered": "vibedoctor_note",
"expected_behavior": "Saves a note with reason false_positive on that finding and says the finding stays open until the user dismisses it in VibeDoctor."
}
],
"negative": [
{
"description": "Scanning a site the user does not own",
"prompt": "Scan https://example.com for vulnerabilities."
},
{
"description": "Deleting findings",
"prompt": "Delete all the findings in my project."
},
{
"description": "A project outside the connected account",
"prompt": "Show me the findings for torvalds/linux."
}
]
},
"demo_recording_url": "https://vibedoctor.io/assets/demo/vibedoctor-chatgpt-demo.mp4",
"commerce": false,
"commerce_description": "This plugin does not sell products or process payments."
},
"publication": {
"release_notes": "First release: project health, code checks, the code map, codebase questions and notes on findings."
},
"apps": "./.app.json"
}
}
}
SHA-256: ed8f7de71bbd1c85b9c56cb67ebe38a01cea8e2a3ae1fa670addc3a7ce7e641e