Repository Analysis

FlowiseAI/Flowise

Build AI Agents, Visually

3.7 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of FlowiseAI/Flowise, a TypeScript project with 54,589 GitHub stars. SynthScan v2.0 examined 386,364 lines of code across 1787 source files, recording 838 pattern matches distributed across 12 syntactic categories. The overall adjusted score of 3.7 places this repository in the Likely human-written band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

3.7
Adjusted Score
3.7
Raw Score
100%
Time Factor
2026-07-14
Last Push
54.6K
Stars
TypeScript
Language
386.4K
Lines of Code
1.8K
Files
838
Pattern Hits
2026-07-14
Scan Date
0.01
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 2HIGH 15MEDIUM 218LOW 603

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 838 distinct pattern matches across 12 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Decorative Section Separators212 hits · 645 pts
SeverityFileLineSnippetContext
MEDIUM…ckages/ui/src/views/schedule/ScheduleHistoryDrawer.jsx59// ─── Status helpers ──────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/ui/src/views/schedule/ScheduleHistoryDrawer.jsx94// ─── Styled table cells ──────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/ui/src/views/schedule/ScheduleHistoryDrawer.jsx117// ─── Time formatters ─────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/ui/src/views/schedule/ScheduleHistoryDrawer.jsx158// ─── Cron → human readable (best-effort, falls back to expression) ───────────COMMENT
MEDIUM…ckages/ui/src/views/schedule/ScheduleHistoryDrawer.jsx187// ─── Main drawer ─────────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/ui/src/views/schedule/ScheduleHistoryDrawer.jsx193 // ─── Drag-to-resize ──────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/ui/src/views/schedule/ScheduleHistoryDrawer.jsx311 // ─── Row click → execution details or error modal ────────────────────────COMMENT
MEDIUM…ckages/ui/src/views/schedule/ScheduleHistoryDrawer.jsx352 // ─── Selection helpers ───────────────────────────────────────────────────COMMENT
MEDIUM…ckages/ui/src/views/schedule/ScheduleHistoryDrawer.jsx414 // ─── Header derived values ───────────────────────────────────────────────COMMENT
MEDIUM…ui/src/views/webhooklistener/WebhookListenerDrawer.jsx30// ─── Geometry ─────────────────────────────────────────────────────────────────COMMENT
MEDIUM…ui/src/views/webhooklistener/WebhookListenerDrawer.jsx38// ─── Animations ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…ui/src/views/webhooklistener/WebhookListenerDrawer.jsx51// ─── Status palette ───────────────────────────────────────────────────────────COMMENT
MEDIUM…ui/src/views/webhooklistener/WebhookListenerDrawer.jsx70// ─── Small atoms ──────────────────────────────────────────────────────────────COMMENT
MEDIUM…ui/src/views/webhooklistener/WebhookListenerDrawer.jsx170// ─── Endpoint block ───────────────────────────────────────────────────────────COMMENT
MEDIUM…ui/src/views/webhooklistener/WebhookListenerDrawer.jsx303// ─── Drawer ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts7// ─── Infrastructure mocks ─────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts61// ─── Imports (after mocks) ────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts71// ─── Helpers ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts97// ─── Test fixture setup ───────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts134// ─── executeScheduleJob: record-not-found branch ──────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts169// ─── executeScheduleJob: record disabled branch ───────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts216// ─── executeScheduleJob: expired / invalid-input branch ───────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts284// ─── executeScheduleJob: nextRunAt guard ──────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts333// ─── executeScheduleJob: successful execution ─────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts460// ─── executeScheduleJob: scheduleInputMode variants ───────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts548// ─── executeScheduleJob: ChatFlow not found ───────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts581// ─── executeScheduleJob: ChatFlow wrong type ──────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.test.ts603// ─── executeScheduleJob: agentflow execution error ────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.ts27// ─── Types ─────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.ts55// ─── Public API ────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.ts78 // ── 1. Load & validate record ──────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.ts103 // ── 2. End-date / input validation ─────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.ts123 // ── 3. nextRunAt guard ─────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.ts141 // ── 4. Execute ─────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleExecutor.ts145// ─── Internal ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.ts98 // ─── Mode-agnostic job management ───────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts27// ─── Mocks ────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts62// ─── Imports (after mocks) ────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts75// ─── Helpers ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts94// ─── Global setup ─────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts118// ─── getInstance ──────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts135// ─── init (non-queue mode) ────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts153// ─── init (queue mode) ───────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts180// ─── onScheduleChanged — delete ───────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts209// ─── onScheduleChanged — upsert ───────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts265// ─── shutdown ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts296// ─── _syncAllJobs — non-queue mode ────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts352// ─── _syncAllJobs — queue mode ────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts378// ─── _upsertCronJob ───────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts431 // ── `L` (last day of month) compatibility with node-cron ───────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts514// ─── _removeCronJob ───────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/schedule/ScheduleBeat.test.ts533// ─── _onCronFire ──────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/queue/ScheduleQueue.test.ts7// ─── Fixtures ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/queue/ScheduleQueue.test.ts18// ─── Mocks ────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/queue/ScheduleQueue.test.ts43// ─── Imports (after mocks) ────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/queue/ScheduleQueue.test.ts51// ─── Factory helpers ──────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/queue/ScheduleQueue.test.ts88// ─── constructor ──────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/queue/ScheduleQueue.test.ts102// ─── getQueueName ─────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/queue/ScheduleQueue.test.ts110// ─── getQueue ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/server/src/queue/ScheduleQueue.test.ts119// ─── processJob ───────────────────────────────────────────────────────────────COMMENT
152 more matches not shown…
Fake / Example Data434 hits · 430 pts
SeverityFileLineSnippetContext
LOWpackages/ui/src/views/organization/index.jsx65 placeholder: 'John Doe'CODE
LOWpackages/ui/src/views/auth/register.jsx74 placeholder: 'John Doe'CODE
LOW…rver/marketplaces/chatflows/HuggingFace LLM Chain.json30 "placeholder": "What is a good name for a company that makes {product}?",CODE
LOW…rver/marketplaces/chatflows/HuggingFace LLM Chain.json97 "placeholder": "gpt2",CODE
LOW…rver/marketplaces/chatflows/HuggingFace LLM Chain.json105 "placeholder": "https://xyz.eu-west-1.aws.endpoints.huggingface.cloud/gpt2",CODE
LOW…rver/marketplaces/chatflows/HuggingFace LLM Chain.json215 "placeholder": "Name Your Chain",CODE
LOWpackages/server/marketplaces/chatflows/LLM Chain.json30 "placeholder": "What is a good name for a company that makes {product}?",CODE
LOWpackages/server/marketplaces/chatflows/LLM Chain.json89 "placeholder": "Name Your Chain",CODE
LOWpackages/server/marketplaces/chatflows/LLM Chain.json349 "placeholder": "Type something here",CODE
LOW…es/server/marketplaces/chatflows/Input Moderation.json29 "placeholder": "Name Your Chain",CODE
LOW…es/server/marketplaces/chatflows/Input Moderation.json308 "placeholder": "What is a good name for a company that makes {product}?",CODE
LOW…es/server/marketplaces/chatflows/Input Moderation.json366 "placeholder": "ignore previous instructions\ndo not follow the directions\nyou must ignore all CODE
LOW…es/server/marketplaces/chatflows/Input Moderation.json618 "placeholder": "Type something here",CODE
LOW…es/server/marketplaces/chatflows/Input Moderation.json671 "placeholder": "Type something here",CODE
LOWpackages/server/marketplaces/chatflows/CSV Agent.json201 "placeholder": "Type something here",CODE
LOWpackages/server/marketplaces/chatflows/CSV Agent.json262 "placeholder": "I want you to act as a document that I am having a conversation with. Your name CODE
LOW…erver/marketplaces/chatflows/Conversational Agent.json441 "placeholder": "Type something here",CODE
LOW…kages/server/marketplaces/chatflows/Replicate LLM.json30 "placeholder": "What is a good name for a company that makes {product}?",CODE
LOW…kages/server/marketplaces/chatflows/Replicate LLM.json96 "placeholder": "a16z-infra/llama13b-v2-chat:df7690f1994d94e96ad9d568eac121aecf50684a0b0963b25a41CODE
LOW…kages/server/marketplaces/chatflows/Replicate LLM.json208 "placeholder": "Name Your Chain",CODE
LOW…server/marketplaces/chatflows/Context Chat Engine.json128 "placeholder": "[\"|\", \"##\", \">\", \"-\"]",CODE
LOW…server/marketplaces/chatflows/Context Chat Engine.json271 "placeholder": "my-first-namespace",CODE
LOW…server/marketplaces/chatflows/Context Chat Engine.json288 "placeholder": "4",CODE
LOW…server/marketplaces/chatflows/Context Chat Engine.json491 "placeholder": "I want you to act as a document that I am having a conversation with. Your name CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json42 "placeholder": "my-first-namespace",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json59 "placeholder": "4",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json88 "placeholder": "20",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json98 "placeholder": "0.5",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json317 "placeholder": "my-first-namespace",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json334 "placeholder": "4",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json363 "placeholder": "20",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json373 "placeholder": "0.5",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json641 "placeholder": "search_state_of_union",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json650 "placeholder": "Searches and returns documents regarding the state-of-the-union.",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json716 "placeholder": "search_state_of_union",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json725 "placeholder": "Searches and returns documents regarding the state-of-the-union.",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json1067 "placeholder": "Type something here",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json1120 "placeholder": "Type something here",CODE
LOW…ver/marketplaces/chatflows/Multiple Documents QnA.json1173 "placeholder": "Type something here",CODE
LOW…laces/chatflows/Conversational Retrieval QA Chain.json149 "placeholder": "[\"|\", \"##\", \">\", \"-\"]",CODE
LOW…laces/chatflows/Conversational Retrieval QA Chain.json389 "placeholder": "C:\\Users\\User\\Desktop",CODE
LOW…laces/chatflows/Conversational Retrieval QA Chain.json397 "placeholder": "4",CODE
LOW…laces/chatflows/Conversational Retrieval QA Chain.json556 "placeholder": "Type something here",CODE
LOW…/server/marketplaces/chatflows/List Output Parser.json29 "placeholder": "Name Your Chain",CODE
LOW…/server/marketplaces/chatflows/List Output Parser.json179 "placeholder": "What is a good name for a company that makes {product}?",CODE
LOW…/server/marketplaces/chatflows/List Output Parser.json417 "placeholder": "Type something here",CODE
LOW…/server/marketplaces/chatflows/List Output Parser.json470 "placeholder": "Type something here",CODE
LOWpackages/server/marketplaces/chatflows/Local QnA.json46 "placeholder": "[\"|\", \"##\", \">\", \"-\"]",CODE
LOWpackages/server/marketplaces/chatflows/Local QnA.json288 "placeholder": "http://localhost:8080/v1",CODE
LOWpackages/server/marketplaces/chatflows/Local QnA.json295 "placeholder": "text-embedding-ada-002",CODE
LOWpackages/server/marketplaces/chatflows/Local QnA.json352 "placeholder": "llama2",CODE
LOWpackages/server/marketplaces/chatflows/Local QnA.json480 "placeholder": "AI assistant:",CODE
LOWpackages/server/marketplaces/chatflows/Local QnA.json566 "placeholder": "C:\\Users\\User\\Desktop",CODE
LOWpackages/server/marketplaces/chatflows/Local QnA.json574 "placeholder": "4",CODE
LOWpackages/server/marketplaces/chatflows/Tool Agent.json441 "placeholder": "Type something here",CODE
LOW…ckages/server/marketplaces/chatflows/SQL DB Chain.json226 "placeholder": "127.0.0.1:5432/chinook",CODE
LOW…ckages/server/marketplaces/chatflows/SQL DB Chain.json234 "placeholder": "table1, table2",CODE
LOW…ckages/server/marketplaces/chatflows/SQL DB Chain.json244 "placeholder": "table1, table2",CODE
LOW…ckages/server/marketplaces/chatflows/SQL DB Chain.json254 "placeholder": "3",CODE
LOW…ckages/server/marketplaces/chatflows/SQL DB Chain.json264 "placeholder": "10",CODE
374 more matches not shown…
Structural Annotation Overuse43 hits · 88 pts
SeverityFileLineSnippetContext
LOWpackages/ui/src/utils/xmlTagUtils.test.js296 // Step 1: escape XML tags to entitiesCOMMENT
LOWpackages/ui/src/utils/xmlTagUtils.test.js304 // Step 4: verify editor would display proper angle brackets (no entities)COMMENT
LOWpackages/ui/src/utils/xmlTagUtils.test.js309 // Step 5: getMarkdown() outputs text node content as-is (no escaping)COMMENT
LOWpackages/ui/src/utils/xmlTagUtils.test.js311 // Step 6: unescape safety netCOMMENT
LOWpackages/ui/src/ui-component/input/RichInput.jsx171 // Step 1: Escape XML tags to entities so marked treats them as textCOMMENT
LOWpackages/ui/src/ui-component/input/RichInput.jsx173 // Step 2: Decode entities in the ProseMirror doc for proper displayCOMMENT
LOWpackages/ui/src/views/tools/CustomMcpServerDialog.jsx561 // Step 1: createCOMMENT
LOWpackages/ui/src/views/tools/CustomMcpServerDialog.jsx573 // Step 2: authorizeCOMMENT
LOWpackages/ui/src/views/tools/CustomMcpServerDialog.jsx624 // Step 1: updateCOMMENT
LOWpackages/ui/src/views/tools/CustomMcpServerDialog.jsx633 // Step 2: authorize with the new configCOMMENT
LOWpackages/ui/src/routes/RequireAuth.jsx39 // Step 0: Wait for config to loadCOMMENT
LOWpackages/ui/src/routes/RequireAuth.jsx44 // Step 1: Authentication CheckCOMMENT
LOWpackages/ui/src/routes/RequireAuth.jsx50 // Step 2: Deployment Type Specific LogicCOMMENT
LOWpackages/server/src/index.ts231 // Step 1: Check if the req path contains /api/v1 regardless of caseCOMMENT
LOWpackages/server/src/index.ts233 // Step 2: Check if the req path is casesensitiveCOMMENT
LOWpackages/server/src/index.ts235 // Step 3: Check if the req path is in the whitelistCOMMENT
LOW…ages/server/src/enterprise/services/account.service.ts783 // Step 4: Deletion ProcessCOMMENT
LOW…ages/server/src/enterprise/services/account.service.ts841 // Step 5: Anonymize User Record (GDPR Compliance)COMMENT
LOW…ages/server/src/enterprise/services/account.service.ts850 // Step 6: Cancel Stripe SubscriptionCOMMENT
LOW…ages/server/src/enterprise/services/account.service.ts855 // Step 7: Delete Organization Folder from StorageCOMMENT
LOWpackages/server/src/utils/domainValidation.ts61// NOTE: This function extracts the chatflow ID from a prediction URL.COMMENT
LOWpackages/server/src/utils/buildAgentGraph.ts1061 // Step 1: Convert the object into an array of [key, value] pairs and sort them by the valueCOMMENT
LOWpackages/server/src/utils/buildAgentGraph.ts1064 // Step 2: Group keys by their depth valuesCOMMENT
LOWpackages/server/src/utils/buildAgentGraph.ts1073 // Step 3: Create the final sorted array with grouped keysCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1280 // Step 1: Save configuration based on isStrictSave modeCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1283 // Step 2: Mark as UPSERTING before starting the operationCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1287 // Step 3: Perform the actual vector store upsertCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1745 // Step 1: Get existing loaderCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1803 // Step 2: Replace with new valuesCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1841 // Step 3: Replace with filesCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1915 // Step 4: Verification for must have componentsCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1928 // Step 5: Process & UpsertCOMMENT
LOW…src/infrastructure/store/AgentflowContext.e2e.test.tsx32 // Step 1: Add 3 nodes (simulating what addNode does via setNodes)COMMENT
LOW…src/infrastructure/store/AgentflowContext.e2e.test.tsx51 // Step 2: Connect Start → Agent → EndCOMMENT
LOW…src/infrastructure/store/AgentflowContext.e2e.test.tsx61 // Step 3: Edit agent node parametersCOMMENT
LOW…src/infrastructure/store/AgentflowContext.e2e.test.tsx71 // Step 4: Verify flow data is complete for saveCOMMENT
LOW…chatmodels/AWSBedrock/FlowiseAWSChatBedrockImported.ts73 // Step 1: GetImportedModel for metadata (instructSupported, modelArchitecture)COMMENT
LOW…chatmodels/AWSBedrock/FlowiseAWSChatBedrockImported.ts83 // Step 2: Probe InvokeModel with an empty body to discover supported formats.COMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts452 // Step 1: Build messages with base64 (as the node does)COMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts467 // Step 2: After invoke, revert to file refs for storageCOMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts520 // Step 1: addImageArtifactsToMessages inserts temp base64 messageCOMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts526 // Step 2: Filter temp messages (as Agent.ts does after invoke)COMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts530 // Step 3: Revert remaining base64 — none should remain since temp was removedCOMMENT
Verbosity Indicators42 hits · 86 pts
SeverityFileLineSnippetContext
LOWpackages/ui/src/utils/xmlTagUtils.test.js296 // Step 1: escape XML tags to entitiesCOMMENT
LOWpackages/ui/src/utils/xmlTagUtils.test.js304 // Step 4: verify editor would display proper angle brackets (no entities)COMMENT
LOWpackages/ui/src/utils/xmlTagUtils.test.js309 // Step 5: getMarkdown() outputs text node content as-is (no escaping)COMMENT
LOWpackages/ui/src/utils/xmlTagUtils.test.js311 // Step 6: unescape safety netCOMMENT
LOWpackages/ui/src/ui-component/input/RichInput.jsx171 // Step 1: Escape XML tags to entities so marked treats them as textCOMMENT
LOWpackages/ui/src/ui-component/input/RichInput.jsx173 // Step 2: Decode entities in the ProseMirror doc for proper displayCOMMENT
LOWpackages/ui/src/views/tools/CustomMcpServerDialog.jsx561 // Step 1: createCOMMENT
LOWpackages/ui/src/views/tools/CustomMcpServerDialog.jsx573 // Step 2: authorizeCOMMENT
LOWpackages/ui/src/views/tools/CustomMcpServerDialog.jsx624 // Step 1: updateCOMMENT
LOWpackages/ui/src/views/tools/CustomMcpServerDialog.jsx633 // Step 2: authorize with the new configCOMMENT
LOWpackages/ui/src/routes/RequireAuth.jsx39 // Step 0: Wait for config to loadCOMMENT
LOWpackages/ui/src/routes/RequireAuth.jsx44 // Step 1: Authentication CheckCOMMENT
LOWpackages/ui/src/routes/RequireAuth.jsx50 // Step 2: Deployment Type Specific LogicCOMMENT
LOWpackages/server/src/index.ts231 // Step 1: Check if the req path contains /api/v1 regardless of caseCOMMENT
LOWpackages/server/src/index.ts233 // Step 2: Check if the req path is casesensitiveCOMMENT
LOWpackages/server/src/index.ts235 // Step 3: Check if the req path is in the whitelistCOMMENT
LOW…ages/server/src/enterprise/services/account.service.ts783 // Step 4: Deletion ProcessCOMMENT
LOW…ages/server/src/enterprise/services/account.service.ts841 // Step 5: Anonymize User Record (GDPR Compliance)COMMENT
LOW…ages/server/src/enterprise/services/account.service.ts850 // Step 6: Cancel Stripe SubscriptionCOMMENT
LOW…ages/server/src/enterprise/services/account.service.ts855 // Step 7: Delete Organization Folder from StorageCOMMENT
LOWpackages/server/src/utils/buildAgentGraph.ts1061 // Step 1: Convert the object into an array of [key, value] pairs and sort them by the valueCOMMENT
LOWpackages/server/src/utils/buildAgentGraph.ts1064 // Step 2: Group keys by their depth valuesCOMMENT
LOWpackages/server/src/utils/buildAgentGraph.ts1073 // Step 3: Create the final sorted array with grouped keysCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1280 // Step 1: Save configuration based on isStrictSave modeCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1283 // Step 2: Mark as UPSERTING before starting the operationCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1287 // Step 3: Perform the actual vector store upsertCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1745 // Step 1: Get existing loaderCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1803 // Step 2: Replace with new valuesCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1841 // Step 3: Replace with filesCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1915 // Step 4: Verification for must have componentsCOMMENT
LOWpackages/server/src/services/documentstore/index.ts1928 // Step 5: Process & UpsertCOMMENT
LOW…src/infrastructure/store/AgentflowContext.e2e.test.tsx32 // Step 1: Add 3 nodes (simulating what addNode does via setNodes)COMMENT
LOW…src/infrastructure/store/AgentflowContext.e2e.test.tsx51 // Step 2: Connect Start → Agent → EndCOMMENT
LOW…src/infrastructure/store/AgentflowContext.e2e.test.tsx61 // Step 3: Edit agent node parametersCOMMENT
LOW…src/infrastructure/store/AgentflowContext.e2e.test.tsx71 // Step 4: Verify flow data is complete for saveCOMMENT
LOW…chatmodels/AWSBedrock/FlowiseAWSChatBedrockImported.ts73 // Step 1: GetImportedModel for metadata (instructSupported, modelArchitecture)COMMENT
LOW…chatmodels/AWSBedrock/FlowiseAWSChatBedrockImported.ts83 // Step 2: Probe InvokeModel with an empty body to discover supported formats.COMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts452 // Step 1: Build messages with base64 (as the node does)COMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts467 // Step 2: After invoke, revert to file refs for storageCOMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts520 // Step 1: addImageArtifactsToMessages inserts temp base64 messageCOMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts526 // Step 2: Filter temp messages (as Agent.ts does after invoke)COMMENT
LOWpackages/components/nodes/agentflow/utils.test.ts530 // Step 3: Revert remaining base64 — none should remain since temp was removedCOMMENT
Hyper-Verbose Identifiers73 hits · 73 pts
SeverityFileLineSnippetContext
LOWpackages/ui/src/views/chatmessage/audio-recording.js16function handleDisplayingRecordingControlButtons() {CODE
LOWpackages/ui/src/views/chatmessage/audio-recording.js25function handleHidingRecordingControlButtons() {CODE
LOWpackages/ui/src/views/chatmessage/audio-recording.js146function handleElapsedRecordingTime() {CODE
LOWpackages/ui/src/views/chatmessage/audio-recording.js163function displayElapsedTimeDuringAudioRecording(elapsedTime) {CODE
LOWpackages/ui/src/views/chatmessage/audio-recording.js176function elapsedTimeReachedMaximumNumberOfHours(elapsedTime) {CODE
LOW…ges/server/src/enterprise/utils/tenantRequestGuards.ts23export function getActiveWorkspaceIdForRequest(req: Request): string {CODE
LOW…ges/server/src/enterprise/utils/tenantRequestGuards.ts35export function assertQueryOrganizationMatchesActiveOrg(user: LoggedInUser, organizationId: string | undefined): void {CODE
LOW…ges/server/src/enterprise/utils/tenantRequestGuards.ts46export async function assertWorkspaceIdAccessibleToUser(CODE
LOW…ges/server/src/enterprise/utils/tenantRequestGuards.ts68export function assertStripeIdMatchesSession(requestedId: string, activeId: string | undefined): void {CODE
LOWpackages/server/src/utils/fileValidation.ts21export function validateFileMimeTypeAndExtensionMatch(filename: string, mimetype: string): void {CODE
LOWpackages/server/src/utils/fileValidation.ts37export function sanitizeAllowedUploadMimeTypesFromConfig(allowedTypesString: string): string {CODE
LOWpackages/server/src/utils/domainValidation.ts127async function getUnauthorizedOriginError(chatflowId: string, workspaceId?: string): Promise<string> {CODE
LOWpackages/server/src/utils/getChatMessage.ts298function filterMessagesWithFeedback(CODE
LOWpackages/server/src/utils/buildAgentflow.ts770function hasReceivedRequiredInputs(waitingNode: IWaitingNode): boolean {CODE
LOWpackages/server/src/utils/XSS.ts33export function getAllowedAuthCorsOrigins(): string[] {CODE
LOWpackages/server/src/services/chatflows/index.ts211async function getAllChatflowsCountByOrganization(type: ChatflowType, organizationId: string): Promise<number> {CODE
LOWpackages/server/src/services/assistants/index.ts215async function getAssistantsCountByOrganization(type: AssistantType, organizationId: string): Promise<number> {CODE
LOWpackages/server/src/services/export-import/index.ts187async function replaceDuplicateIdsForChatFlow(queryRunner: QueryRunner, originalData: ExportData, chatflows: ChatFlow[])CODE
LOWpackages/server/src/services/export-import/index.ts208async function replaceDuplicateIdsForAssistant(queryRunner: QueryRunner, originalData: ExportData, assistants: AssistantCODE
LOWpackages/server/src/services/export-import/index.ts229async function replaceDuplicateIdsForChatMessage(CODE
LOWpackages/server/src/services/export-import/index.ts303async function replaceExecutionIdForChatMessage(CODE
LOWpackages/server/src/services/export-import/index.ts359async function replaceDuplicateIdsForChatMessageFeedback(CODE
LOWpackages/server/src/services/export-import/index.ts456async function replaceDuplicateIdsForCustomTemplate(queryRunner: QueryRunner, originalData: ExportData, customTemplates:CODE
LOWpackages/server/src/services/export-import/index.ts477async function replaceDuplicateIdsForDocumentStore(queryRunner: QueryRunner, originalData: ExportData, documentStores: DCODE
LOWpackages/server/src/services/export-import/index.ts498async function replaceDuplicateIdsForDocumentStoreFileChunk(CODE
LOWpackages/server/src/services/export-import/index.ts527async function replaceDuplicateIdsForTool(queryRunner: QueryRunner, originalData: ExportData, tools: Tool[]) {CODE
LOWpackages/server/src/services/export-import/index.ts548async function replaceDuplicateIdsForVariable(queryRunner: QueryRunner, originalData: ExportData, variables: Variable[])CODE
LOWpackages/server/src/services/export-import/index.ts571async function replaceDuplicateIdsForExecution(queryRunner: QueryRunner, originalData: ExportData, executions: ExecutionCODE
LOWpackages/server/src/services/export-import/index.ts592function reduceSpaceForChatflowFlowData(chatflows: ChatFlow[]) {CODE
LOWpackages/server/src/services/mcp-endpoint/index.test.ts282 function makeAgentflowWithFormInputs(formInputTypes: any[]) {CODE
LOWpackages/server/src/services/apikey/index.ts94async function getAllApiKeysByOrganization(organizationId: string): Promise<ApiKey[]> {CODE
LOWpackages/server/src/services/chat-messages/index.ts216async function getMessagesFeedbackByChatflowIds(chatflowIds: string[]): Promise<ChatMessageFeedback[]> {CODE
LOW…tflow/examples/src/demos/FilteredComponentsExample.tsx67export function FilteredComponentsExample() {CODE
LOWpackages/agentflow/src/core/utils/fieldVisibility.ts130function inputValuesWithDeclaredDefaults(params: InputParam[], inputValues: Record<string, unknown>): Record<string, unkCODE
LOWpackages/agentflow/src/core/utils/fieldVisibility.ts167export function applyVisibleFieldDefaults(CODE
LOWpackages/agentflow/src/core/utils/nodeFactory.ts61function initializeDefaultNodeData(nodeParams: Pick<InputParam, 'name' | 'type' | 'default' | 'options'>[]): Record<striCODE
LOW…kages/agentflow/src/core/utils/dynamicOutputAnchors.ts22export function buildDynamicOutputAnchors(nodeId: string, count: number, labelPrefix: string, includeElse: boolean = truCODE
LOW…/agentflow/src/core/validation/constraintValidation.ts31export function checkHumanInputInIteration(newNodeName: string, parentNode: FlowNode | null): ConstraintResult {CODE
LOW…/agentflow/src/core/validation/constraintValidation.ts42export function checkNodePlacementConstraints(CODE
LOW…ckages/agentflow/src/core/validation/flowValidation.ts275export function groupValidationErrorsByNodeId(errors: ValidationError[]): Map<string, string[]> {CODE
LOW…ckages/agentflow/src/core/validation/flowValidation.ts292export function applyValidationErrorsToNodes(nodes: FlowNode[], errors: ValidationError[]): FlowNode[] {CODE
LOW…/agentflow/src/features/node-editor/EditNodeDialog.tsx30function computeArrayItemParameters(params: InputParam[], inputs: Record<string, unknown>): Record<string, InputParam[][CODE
LOW…ages/agentflow/src/features/node-editor/AsyncInput.tsx45function useFlowAncestorNodeOptions(nodeId?: string): NodeOption[] {CODE
LOW…ages/agentflow/src/features/node-editor/AsyncInput.tsx373function AsyncMultiOptionsDropdown({ inputParam, value, disabled, onChange, nodeName, inputValues }: AsyncInputProps) {CODE
LOW…tflow/src/features/node-editor/EditNodeDialog.test.tsx250function createStartNodeInputParams(overrides?: { includeFormInputTypesArray?: boolean }): InputParam[] {CODE
LOWpackages/agentflow/src/features/canvas/nodeIcons.tsx51export function getBuiltInAnthropicToolIcon(toolName: string) {CODE
LOW…src/features/canvas/components/NodeStatusIndicator.tsx23function NodeStatusIndicatorComponent({ status, error }: NodeStatusIndicatorProps) {CODE
LOW…src/features/canvas/components/NodeStatusIndicator.tsx94function NodeWarningIndicatorComponent({ message }: NodeWarningIndicatorProps) {CODE
LOW…w/src/features/canvas/components/NodeOutputHandles.tsx37function NodeOutputHandlesComponent({ outputAnchors, nodeColor, isHovered, nodeRef, nodeId }: NodeOutputHandlesProps) {CODE
LOW…ow/src/features/canvas/components/NodeModelConfigs.tsx19function NodeModelConfigsComponent({ inputs }: NodeModelConfigsProps) {CODE
LOW…/src/features/canvas/components/ValidationFeedback.tsx60function ValidationFeedbackComponent({ nodes, edges, availableNodes, setNodes }: ValidationFeedbackProps) {CODE
LOW…/src/features/canvas/components/NodeToolbarActions.tsx23function NodeToolbarActionsComponent({ nodeId, nodeName, isVisible, onInfoClick }: NodeToolbarActionsProps) {CODE
LOW…gentflow/src/features/generator/GenerateFlowDialog.tsx46function GenerateFlowDialogComponent({ open, onClose, onGenerated }: GenerateFlowDialogProps) {CODE
LOW…ages/components/nodes/tools/MCP/CustomMCP/CustomMCP.ts204function substituteVariablesInObject(obj: any, sandbox: any): any {CODE
LOW…ages/components/nodes/tools/MCP/CustomMCP/CustomMCP.ts223function substituteVariablesInString(str: string, sandbox: any): string {CODE
LOW…ckages/components/nodes/chatmodels/AWSBedrock/utils.ts116export async function discoverInferenceProfiles(CODE
LOW…ckages/components/nodes/chatmodels/AWSBedrock/utils.ts179export async function getStopSeqUnsupportedModels(): Promise<Set<string>> {CODE
LOW…hatGoogleGenerativeAI/FlowiseChatGoogleGenerativeAI.ts102function inferToolNameFromPreviousMessages(message: any, previousMessages: BaseMessage[]): string | undefined {CODE
LOW…hatGoogleGenerativeAI/FlowiseChatGoogleGenerativeAI.ts314export function convertMessageContentToParts(CODE
LOW…hatGoogleGenerativeAI/FlowiseChatGoogleGenerativeAI.ts401export function convertBaseMessagesToContent(CODE
13 more matches not shown…
Magic Placeholder Names10 hits · 50 pts
SeverityFileLineSnippetContext
HIGHpackages/server/marketplaces/tools/Get Stock Mover.json7 "func": "const fetch = require('node-fetch');\nconst url = 'https://morning-star.p.rapidapi.com/market/v2/get-moversCODE
HIGHpackages/server/marketplaces/tools/SendGrid Email.json7 "func": "const fetch = require('node-fetch');\nconst url = 'https://api.sendgrid.com/v3/mail/send';\nconst api_key =CODE
HIGHpackages/agentflow/README.md67 <Agentflow apiBaseUrl='http://localhost:3000' token='your-api-key' />CODE
HIGHpackages/agentflow/README.md111 token='your-api-key'CODE
HIGHpackages/agentflow/examples/README.md46 VITE_API_TOKEN=your-api-key-hereCODE
HIGHpackages/observe/README.md64 <ObserveProvider apiBaseUrl='http://localhost:3000' token='your-api-key'>CODE
HIGHpackages/observe/README.md84 <ObserveProvider apiBaseUrl='http://localhost:3000' token='your-api-key'>CODE
HIGHpackages/observe/README.md119<ObserveProvider apiBaseUrl='http://localhost:3000' token='your-api-key'>CODE
HIGH…ckages/components/credentials/IBMWatsonx.credential.ts54 placeholder: '<YOUR-APIKEY>',CODE
HIGH…ckages/components/credentials/IBMWatsonx.credential.ts54 placeholder: '<YOUR-APIKEY>',CODE
Cross-Language Confusion (JS/TS)5 hits · 28 pts
SeverityFileLineSnippetContext
HIGHpackages/ui/src/views/chatflows/APICodeDialog.jsx327print(response.json())CODE
HIGHpackages/ui/src/views/docstore/DocStoreAPIDialog.jsx70 print(response)CODE
HIGHpackages/ui/src/views/docstore/DocStoreAPIDialog.jsx74print(output)CODE
HIGHpackages/ui/src/views/docstore/DocStoreAPIDialog.jsx176print(output)CODE
HIGHpackages/components/src/agents.ts686 // Invalid tools won't be in the map, so we return False.COMMENT
Hallucination Indicators2 hits · 20 pts
SeverityFileLineSnippetContext
CRITICAL…onents/nodes/agents/OpenAIAssistant/OpenAIAssistant.ts546 event.data.required_action.submit_tool_outputs.tool_calls.forEach((item) => {CODE
CRITICAL…onents/nodes/agents/OpenAIAssistant/OpenAIAssistant.ts1067 event.data.required_action.submit_tool_outputs.tool_calls.forEach((item) => {CODE
Over-Commented Block10 hits · 10 pts
SeverityFileLineSnippetContext
LOWartillery-load-test.yml21 - loop:COMMENT
LOWpackages/ui/src/serviceWorker.js1// This optional code is used to register a service worker.COMMENT
LOWpackages/ui/src/ui-component/input/SuggestionList.jsx41 // Our suggestion handler returns `MentionSuggestion`s (which we'veCOMMENT
LOWpackages/server/cypress/support/commands.ts1/// <reference types="cypress" />COMMENT
LOWpackages/server/cypress/support/commands.ts21// -- This is a dual command --COMMENT
LOWpackages/server/cypress/support/e2e.ts1// ***********************************************************COMMENT
LOW…agentflow/src/infrastructure/api/loadMethodRegistry.ts61 listVectorStores: (apis) => apis.storesApi.getVectorStores(),COMMENT
LOW…features/executions/components/NodeContentRenderer.tsx101 const v = parsed.valueCOMMENT
LOW…ents/nodes/chatmodels/ChatPerplexity/ChatPerplexity.ts121 // Currently disabled as output is stored as additional_kwargsCOMMENT
LOW…ents/nodes/chatmodels/ChatPerplexity/ChatPerplexity.ts141 // name: 'searchRecencyFilter',COMMENT
Slop Phrases4 hits · 8 pts
SeverityFileLineSnippetContext
MEDIUM…erver/marketplaces/chatflows/Conversational Agent.json349 "default": "Assistant is a large language model trained by OpenAI.\n\nAssistant is designed to bCODE
MEDIUM…erver/marketplaces/chatflows/Conversational Agent.json398 "systemMessage": "Assistant is a large language model trained by OpenAI.\n\nAssistant is designed toCODE
LOW…ages/server/src/enterprise/services/account.service.ts680 // all checks are done, now update the user password, don't forget to hash it and do not forget to clear theCOMMENT
MEDIUM…odes/agents/ConversationalAgent/ConversationalAgent.ts21Assistant is designed to be able to assist with a wide range of tasks, from answering simple questions to providing in-dCODE
Self-Referential Comments2 hits · 4 pts
SeverityFileLineSnippetContext
MEDIUMpackages/ui/src/views/docstore/DocStoreAPIDialog.jsx54 "createNewDocStore": False, # Create a new document storeCODE
MEDIUMpackages/ui/src/views/docstore/DocStoreAPIDialog.jsx158 "createNewDocStore": False, # Create a new document storeCODE
Modern AI Meta-Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMpackages/components/nodes/agents/ToolAgent/ToolAgent.ts216 // https://docs.anthropic.com/en/docs/build-with-claude/tool-use#chain-of-thoughtCOMMENT