How dukeabaddon/deepsight works
DeepSight is a local-first MCP server and dashboard for turning an application codebase into runnable Playwright tests and actionable reports. Its primary workflow scans routes and code, optionally incorporates a PRD, plans tests, generates specs, runs them against the user’s app, reports failures, and supports repair and reruns. The graph also includes the dashboard shortcut, local analysis state, and optional LLM providers. Tool registration and selected orchestration are evidenced by excerpts and README; unsampled tool internals are represented at their exact source paths, with uncertain calls omitted.
Main entry points: index.ts MCP server · projectScan.ts Project scan · scaffoldPipeline.ts Pipeline orchestration · dashboardApi.ts Dashboard API
Components 27
User interfaces
- MCP server
src/index.ts - Web dashboard
src/tools/dashboard.ts - Dashboard API
src/tools/dashboardApi.ts
Analysis and planning
- Codebase analysis
src/tools/analyzeCodebase.ts - Project scan
src/utils/projectScan.ts - Project inventory
src/utils/projectInventory.ts - Next route discovery
src/utils/nextAppRouter.ts - Function entities
src/analyzer/functionCountStub.ts - Planning context
src/lib/planningContext.ts - PRD parsing
src/tools/parsePrd.ts - PRD generation
src/tools/prd.ts - Test planning
src/tools/generateTestPlan.ts - Frontend test plan
src/tools/testPlan.ts - Code summary
src/tools/codeSummary.ts
Test execution
- Spec generation
src/tools/generateTestCode.ts - Pipeline orchestration
src/utils/scaffoldPipeline.ts - Test execution
src/tools/runTests.ts - Playwright runner
src/utils/playwrightRunner.ts - Test reporting
src/tools/getTestReport.ts - Report generation
src/utils/report.ts - Failure repair
src/tools/autoHealTest.ts
Local state and artifacts
- Analysis store
src/db/analysisStore.ts - Project artifacts
src/utils/artifacts.ts
External integrations
- Configured LLM
src/llm.ts
Other components
- IDE / MCP client
- Dashboard user
- User application
Connections 35
- IDE / MCP client → MCP server: calls tools
- MCP server → Codebase analysis: dispatches
- MCP server → PRD parsing: dispatches
- MCP server → Test planning: dispatches
- MCP server → Spec generation: dispatches
- MCP server → Test execution: dispatches
- MCP server → Test reporting: dispatches
- MCP server → Failure repair: dispatches
- Dashboard user → Web dashboard: uses
- Web dashboard → Dashboard API: routes requests
- Dashboard API → Pipeline orchestration: runs workflow
- Codebase analysis → Project scan: scans project
- Project scan → Project inventory: lists files
- Project scan → Next route discovery: discovers routes
- Codebase analysis → Function entities: extracts entities
- Codebase analysis → Analysis store: stores analysis
- Planning context → Analysis store: loads analysis
- PRD parsing → Planning context: loads context
- Test planning → Planning context: loads context
- Code summary → Project scan: summarizes scan
- PRD generation → Project scan: uses scan
- Test planning → Configured LLM: generates plan
- PRD generation → Configured LLM: generates PRD
- Pipeline orchestration → Project scan: scans project
- Pipeline orchestration → Playwright runner: runs tests
- Pipeline orchestration → Report generation: generates report
- Spec generation → Project artifacts: writes specs
- Pipeline orchestration → Project artifacts: writes artifacts
- Test execution → Playwright runner: runs tests
- Playwright runner → User application: sends browser requests
- Test reporting → Report generation: builds report
- Failure repair → Test reporting: uses failures
- Failure repair → Project artifacts: patches specs
- Dashboard API → Analysis store: reads and writes
- Dashboard API → User application: targets endpoint