Repository Analysis

DayuanJiang/next-ai-draw-io

A next.js web application that integrates AI capabilities with draw.io diagrams. This app allows you to create, modify, and enhance diagrams through natural language commands and AI-assisted visualization.

6.0 Low AI signal View on GitHub
6.0
Adjusted Score
6.0
Raw Score
100%
Time Factor
2026-05-21
Last Push
30,440
Stars
TypeScript
Language
47,447
Lines of Code
232
Files
68
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 54MEDIUM 1LOW 13

Pattern Findings

68 matches across 4 categories. Click a row to expand file-level details.

Magic Placeholder Names54 hits · 270 pts
SeverityFileLineSnippet
HIGHdocs/cn/ai-providers.md19DOUBAO_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md26GOOGLE_GENERATIVE_AI_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md39OPENAI_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md52ANTHROPIC_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md65DEEPSEEK_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md78SILICONFLOW_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md91SGLANG_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md104AZURE_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md112AZURE_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md138OPENROUTER_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md158MODELSCOPE_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md217MINIMAX_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md240GLM_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md253QWEN_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md266KIMI_API_KEY=your_api_key
HIGHdocs/cn/ai-providers.md279QINIU_API_KEY=your_api_key
HIGHdocs/cn/docker.md13 -e OPENAI_API_KEY=your_api_key \
HIGHdocs/ja/ai-providers.md19DOUBAO_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md26GOOGLE_GENERATIVE_AI_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md39OPENAI_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md52ANTHROPIC_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md65DEEPSEEK_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md78SILICONFLOW_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md91SGLANG_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md104AZURE_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md112AZURE_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md138OPENROUTER_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md164MODELSCOPE_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md217MINIMAX_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md240GLM_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md253QWEN_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md266KIMI_API_KEY=your_api_key
HIGHdocs/ja/ai-providers.md279QINIU_API_KEY=your_api_key
HIGHdocs/ja/docker.md13 -e OPENAI_API_KEY=your_api_key \
HIGHdocs/en/ai-providers.md19DOUBAO_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md26GOOGLE_GENERATIVE_AI_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md41GOOGLE_VERTEX_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md54OPENAI_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md67ANTHROPIC_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md80DEEPSEEK_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md93SILICONFLOW_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md106SGLANG_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md119AZURE_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md127AZURE_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md153OPENROUTER_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md179MODELSCOPE_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md232MINIMAX_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md255GLM_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md268QWEN_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md281KIMI_API_KEY=your_api_key
HIGHdocs/en/ai-providers.md294QINIU_API_KEY=your_api_key
HIGHdocs/en/docker.md13 -e OPENAI_API_KEY=your_api_key \
HIGHdocs/en/docker.md31 -e OPENAI_API_KEY=your_api_key \
HIGHdocs/en/docker.md40 -e OPENAI_API_KEY=your_api_key \
Hyper-Verbose Identifiers12 hits · 12 pts
SeverityFileLineSnippet
LOWapp/api/chat/route.ts45function createCachedStreamResponse(xml: string): Response {
LOWtests/e2e/lib/fixtures.ts194export async function expectBeforeAndAfterReload(
LOWcomponents/chat-message-display.tsx74function splitTextIntoFileSections(text: string): TextSection[] {
LOWcomponents/settings-dialog.tsx83function getStoredAccessCodeRequired(): boolean | null {
LOWpackages/mcp-server/src/http-server.ts81function ensureSessionStateInitialized(sessionId: string): void {
LOWpackages/mcp-server/src/xml-validation.ts873export function validateAndFixXml(xml: string): {
LOWlib/chat-helpers.ts53export function replaceHistoricalToolInputs(messages: any[]): any[] {
LOWlib/utils.ts1639export function validateAndFixXml(xml: string): {
LOWlib/ai-providers.ts602function validateProviderCredentials(
LOWlib/server-model-config.ts65export async function loadRawServerModelsConfig(): Promise<ServerModelsConfig | null> {
LOWlib/server-model-config.ts99export async function loadFlattenedServerModels(): Promise<
LOWelectron/main/settings-window.ts74export function registerSettingsWindowHandlers(): void {
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippet
MEDIUMpackages/mcp-server/src/index.ts80## Creating a New Diagram
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippet
LOWpackages/mcp-server/src/http-server.ts218function handleRequest(