AI Slop Code Risk Monitor

nocobase/nocobase

SlopCodeMonitor badge for nocobase/nocobase Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

NocoBase is an open-source AI + no-code platform for building business systems fast. Instead of generating everything from scratch, AI works on top of production-proven infrastructure and a WYSIWYG no-code interface, so you get both speed and reliability.

1.8 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for nocobase/nocobase, a TypeScript project with 24,798 GitHub stars. SynthScan examined 3,103,429 lines of code across 25445 source files, recording 4315 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 1.8 (Low pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

1.8
Adjusted Signal
1.8
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
24.8K
Stars
TypeScript
Language
3.1M
Lines of Code
25.4K
Files
4.3K
Pattern Hits
2026-10-31
Scan Date
0.01
HC Hit Rate

Risk Review · Payload v1

Use each vector to guide manual verification of the underlying findings.

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 6.6/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 4006 finding(s).

Hallucinated Dependency & Supply Chain Risk 2.0/100 · LOW

Are imports declared and package/API names verified? 284 finding(s).

Agent Over-Engineering Ratio 5.0/100 · LOW

Are wrappers, guards, and repeated structures necessary? 3231 finding(s).

PR Review Velocity Impact 8.6/100 · LOW

Which changes need focused human review? 4315 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 77HIGH 74MEDIUM 98LOW 4066

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 4315 distinct pattern matches across 14 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. 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 configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Hyper-Verbose Identifiers3206 hits · 3127 pts
SeverityFileLineSnippetContext
LOWdocs/plugins/pluginCrossRef.ts448function rewriteRelativeMarkdownLinks(CODE
LOWdocs/theme/components/NavHamburger/useNavScreen.ts33 function closeScreenOnTabletWindow() {CODE
LOWdocs/theme/components/NavScreen/NavScreenMenuItem.tsx72export function NavScreenMenuItemWithLink({CODE
LOWdocs/theme/components/NavScreen/NavScreenMenuItem.tsx100export function NavScreenMenuItemWithChildren({CODE
LOWdocs/theme/components/HomeHero/index.tsx126function normalizeSrcsetAndSizes(CODE
LOWscripts/release/changelogAndRelease.js446async function writeChangelogAndCreateRelease() {CODE
LOWpackages/core/database/src/helpers.ts100export async function parseDatabaseOptionsFromEnv(): Promise<IDatabaseOptions> {CODE
LOWpackages/core/database/src/utils.ts35function patchShowConstraintsQuery(queryGenerator, db) {CODE
LOWpackages/core/database/src/utils.ts94export function patchSequelizeQueryInterface(db: Database) {CODE
LOWpackages/core/database/src/utils.ts132export function extractTypeFromDefinition(rawType: string) {CODE
LOWpackages/core/database/src/update-associations.ts31export function belongsToManyAssociations(instance: Model): Array<BelongsToMany> {CODE
LOWpackages/core/database/src/update-associations.ts404export async function updateMultipleAssociation(CODE
LOW…/core/database/src/decorators/transaction-decorator.ts12export function transactionWrapperBuilder(transactionGenerator) {CODE
LOW…e/database/src/features/referential-integrity-check.ts18export async function referentialIntegrityCheck(options: ReferentialIntegrityCheckOptions) {CODE
LOWpackages/core/database/src/value-parsers/index.ts21export function registerFieldValueParsers(db: Database) {CODE
LOWpackages/core/app/client-v2/rsbuild.config.ts32function normalizeModernClientPrefix(value: string | undefined) {CODE
LOWpackages/core/app/client-v2/rsbuild.config.ts67function isClientDocumentEntryPath(pathname: string) {CODE
LOWpackages/core/app/client-v2/src/main.tsx56function inferRootPublicPathFromLocation() {CODE
LOWpackages/core/app/client-v2/src/runtimePublicPath.ts18export function resolveRuntimeAssetPublicPath(CODE
LOWpackages/core/app/client/public/browser-checker.js32function isClientDocumentEntryPath(pathname) {CODE
LOWpackages/core/app/client/src/runtimePublicPath.ts25export function resolveRuntimeAssetPublicPath(CODE
LOWpackages/core/test/src/web/index.tsx243export function addXReadPrettyToEachLayer(obj: Record<string, any> = {}) {CODE
LOWpackages/core/test/src/e2e/e2eUtils.ts34function getPageMenuSchemaWithTabSchema({ tabSchema }) {CODE
LOWpackages/core/test/src/e2e/e2eUtils.ts1359async function removeRedundantUserAndRoles() {CODE
LOWpackages/core/auth/src/actions.ts18function assertTrustedSignInOrigin(ctx: AuthActionContext) {CODE
LOWpackages/core/resourcer/src/utils.ts242function normalizeIndexedObjectToArray(value: any) {CODE
LOWpackages/core/flow-engine/src/runjsLibs.ts170function ensureDefaultRunJSLibsRegistered(): void {CODE
LOWpackages/core/flow-engine/src/runjsLibs.ts274function isReactHooksDispatcherNullError(err: any): boolean {CODE
LOWpackages/core/flow-engine/src/runjsLibs.ts293function extractReactVersionFromStack(err: any): string | undefined {CODE
LOWpackages/core/flow-engine/src/runjsLibs.ts302function buildReactDispatcherNullHint(options: { ctx: any; internalReact: any; internalAntd: any; err: any }): string {CODE
LOWpackages/core/flow-engine/src/runjsLibs.ts447function wrapVnodeWithRunjsErrorBoundary(options: {CODE
LOWpackages/core/flow-engine/src/runjsLibs.ts460function tryRenderWithExternalAntdTheme(options: {CODE
LOWpackages/core/flow-engine/src/JSRunner.ts33export function shouldPreprocessRunJSTemplates(CODE
LOWpackages/core/flow-engine/src/JSRunner.ts128function collectRunJSBrowserGlobals(providedGlobals: Record<string, unknown> = {}) {CODE
LOW⚡packages/core/flow-engine/src/JSRunner.ts156function extractDeprecatedCtxTemplateUsage(code: string): { placeholder: string; expression: string } | null {CODE
LOW⚡packages/core/flow-engine/src/JSRunner.ts166function shouldHintCtxTemplateSyntax(err: any, usage: { placeholder: string; expression: string } | null): boolean {CODE
LOW⚡packages/core/flow-engine/src/JSRunner.ts174function toCtxTemplateSyntaxHintError(CODE
LOWpackages/core/flow-engine/src/flowContext.ts97function filterBuilderOutputByPaths(built: any, neededPaths: string[]): any {CODE
LOWpackages/core/flow-engine/src/flowContext.ts3172function pickDefinedOpenViewInputArgs(source?: Record<string, unknown> | null) {CODE
LOWpackages/core/flow-engine/src/flowContext.ts4251export function createRunJSDeprecationProxy(CODE
LOWpackages/core/flow-engine/src/runjs-context/helpers.ts31export function createJSRunnerWithVersion(this: FlowContext, options?: JSRunnerOptions) {CODE
LOW…es/core/flow-engine/src/runjs-context/contributions.ts51export function registerRunJSContextContribution(contribution: RunJSContextContribution) {CODE
LOW…es/core/flow-engine/src/runjs-context/contributions.ts76export async function applyRunJSContextContributions(version: RunJSVersion) {CODE
LOW…es/core/flow-engine/src/runjs-context/contributions.ts86export function markRunJSContextsSetupDone(version: RunJSVersion) {CODE
LOW…-context/snippets/scene/table/concat-fields.snippet.ts27function resolvePreviousDataIndexes() {CODE
LOW…e/flow-engine/src/runjs-context/contexts/elementDoc.ts122export function createZhCNElementPropertyDoc(CODE
LOW…ne/src/resources/__tests__/multiRecordResource.test.ts14function createMultiRecordResource() {CODE
LOW…ckages/core/flow-engine/src/utils/runjsModuleLoader.ts73function disableAmdDefineTemporarily(): () => void {CODE
LOW…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts188function getDirtyResourcePathFromAbsoluteUrl(url: URL, app?: ApiUrlProvider): string | undefined {CODE
LOW…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts210function getDirtyResourcePathFromUrl(url: unknown, context: FlowContext): string | undefined {CODE
LOW⚡…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts237function decodeResourcePathSegment(segment: string): string {CODE
LOW⚡…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts245function getDataSourceKeyFromResourceOf(resourceOf: unknown): string | undefined {CODE
LOW⚡…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts250function parseResourceActionFromSegments(segments: string[]): DirtyResourceAction | undefined {CODE
LOW…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts285function parseDirtyResourceActionFromUrl(url: unknown, context: FlowContext): DirtyResourceAction | undefined {CODE
LOW…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts307function resolveDirtyResourceActionFromResource(CODE
LOW…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts346function resolveDirtyResourceAction(CODE
LOW…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts359function getDirtyResourceActionDispatchKey(CODE
LOW…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts406function markResourceActionDataSourceDirty(CODE
LOW…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts419function markResourceActionDataSourceDirtyOnce(CODE
LOW…ages/core/flow-engine/src/utils/dirtyAwareApiClient.ts509function createDirtyAwareApiClient(api: DirtyAwareAPIClient, context: FlowContext): APIClient {CODE
3146 more matches not shown…
Hallucination Indicators77 hits · 785 pts
SeverityFileLineSnippetContext
CRITICAL…i/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…i/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICAL…n/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…n/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICAL…a/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…a/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICAL…u/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…u/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICAL…t/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…t/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICAL…e/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…e/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICAL…d/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…d/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICAL…r/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…r/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICAL…s/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…s/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICAL…n/plugin-development/client/ctx/common-capabilities.md110 this.context.api.axios.interceptors.request.use((config) => {CODE
CRITICAL…n/plugin-development/client/ctx/common-capabilities.md116 this.context.api.axios.interceptors.response.use(CODE
CRITICALpackages/core/database/src/collection.ts957 this.context.database.sequelize.modelManager.forEachModel((model) => {CODE
CRITICAL…atabase/src/relation-repository/relation-repository.ts54 this.targetCollection = this.sourceCollection.context.database.modelCollection.get(this.targetModel);CODE
CRITICAL…ne/src/__tests__/flowModel.openView.navigation.test.ts53 const viewCalls = child.context.defineProperty.mock.calls.filter((args: any[]) => args?.[0] === 'view');CODE
CRITICAL…ne/src/__tests__/flowModel.openView.navigation.test.ts72 const viewCalls = child.context.defineProperty.mock.calls.filter((args: any[]) => args?.[0] === 'view');CODE
CRITICALpackages/core/sdk/src/Auth.ts33 this.api.axios.interceptors.request.use(this.middleware.bind(this));CODE
CRITICALpackages/core/acl/src/__tests__/acl.test.ts553 ctx1.permission.can.params.fields.push('createdById');CODE
CRITICAL…e/plugin-multi-keyword-filter/src/client-v2/plugin.tsx75 this.app.apiClient.axios.interceptors.request.use(interceptor);CODE
CRITICAL…obase/plugin-multi-keyword-filter/src/client/index.tsx120 this.app.apiClient.axios.interceptors.request.use(interceptor);CODE
CRITICAL…yword-filter/src/client/__tests__/interceptor.test.tsx30 mockApp.apiClient.axios.interceptors.request.use(interceptor);CODE
CRITICAL…s/@nocobase/plugin-backup-restore/src/server/dumper.ts296 const collectionOnDumpOption = this.app.db.collectionFactory.collectionTypes.get(CODE
CRITICAL…s/@nocobase/plugin-backup-restore/src/server/dumper.ts367 const collectionOnDumpOption = this.app.db.collectionFactory.collectionTypes.get(CODE
CRITICAL…ase/plugin-acl/src/server/middlewares/with-acl-meta.ts187 const actionSql = ctx.db.sequelize.queryInterface.queryGenerator.selectQuery(CODE
CRITICAL…ustom-action-trigger/src/server/CustomActionTrigger.ts446 const dataSource = this.workflow.app.dataSourceManager.dataSources.get(dataSourceName);CODE
CRITICAL…kages/plugins/@nocobase/plugin-ai/src/server/plugin.ts318 const workflowSnippet = this.app.acl.snippetManager.snippets.get('pm.workflow.workflows');CODE
CRITICAL…obase/plugin-ai/src/server/ai-employees/ai-employee.ts930 const dataSource = this.ctx.app.dataSourceManager.dataSources.get(dataSourceName);CODE
CRITICAL…/plugin-ai/src/server/workflow/nodes/employee/index.ts507 const UserRepo = processor.options.plugin.app.db.getRepository('users');CODE
CRITICAL…/ai-chat-box/__tests__/AIChatBoxView.registry.test.tsx246 const readListener = mocks.eventBus.addEventListener.mock.calls.find(CODE
CRITICAL…ai/src/client/__tests__/chatbox/hooks-contract.test.ts376 mockRuntime.app.aiManager.toolsManager.useTools.mockClear();CODE
CRITICAL…ai/src/client/__tests__/chatbox/hooks-contract.test.ts833 const filters = mockRuntime.resources.aiWorkflowTasks.list.mock.calls.slice(-4).map((call) => call[0].filter);CODE
CRITICAL…ai/src/client/__tests__/chatbox/hooks-contract.test.ts895 mockRuntime.app.aiManager.toolsManager.useTools.mockReturnValue(CODE
CRITICAL…lient-v2/pages/components/__tests__/FieldForm.test.tsx790 flowMocks.ctx.dataSourceManager.collectionFieldInterfaceManager.getFieldInterfaceConfigure.mockReturnValueOnce({CODE
CRITICAL…t-interceptor/src/server/RequestInterceptionTrigger.ts256 const dataSource = this.workflow.app.dataSourceManager.dataSources.get(dataSourceName);CODE
CRITICAL…ugin-collection-tree/src/server/__tests__/tree.test.ts146 expect(res.body.meta.allowedActions.view.sort()).toMatchObject([1, 2, 3, 4]);CODE
CRITICAL…in-workflow-action-trigger/src/server/ActionTrigger.ts335 const { collectionManager } = this.workflow.app.dataSourceManager.dataSources.get(dataSourceName);CODE
CRITICAL…tree/src/client-v2/models/components/TreeBlockView.tsx496 ? model.context.app.dataSourceManager.collectionFieldInterfaceManager.getFieldInterface(collectionField.interface)CODE
CRITICAL⚡…mbed/src/client-v2/__tests__/EmbedAccessGuard.test.tsx141 mocks.app.flowEngine.context.dataSourceManager.ensureLoaded.mockResolvedValue(undefined);CODE
CRITICAL⚡…mbed/src/client-v2/__tests__/EmbedAccessGuard.test.tsx142 mocks.app.flowEngine.context.routeRepository.ensureAccessibleLoaded.mockResolvedValue(undefined);CODE
CRITICAL⚡…mbed/src/client-v2/__tests__/EmbedAccessGuard.test.tsx143 mocks.app.flowEngine.context.routeRepository.getRouteBySchemaUid.mockReturnValue({ uid: 'test-page' });CODE
CRITICAL…mbed/src/client-v2/__tests__/EmbedAccessGuard.test.tsx363 mocks.app.flowEngine.context.routeRepository.getRouteBySchemaUid.mockReturnValue(undefined);CODE
CRITICAL…r/src/client-v2/__tests__/UploadActionRuntime.test.tsx143 runtimeMocks.context.app.pm.get.mockReturnValue({CODE
CRITICAL…plugins/@nocobase/plugin-auth/src/server/basic-auth.ts354 await this.ctx.app.authManager.jwt.decode(resetToken);CODE
CRITICAL…plugins/@nocobase/plugin-auth/src/client-v2/plugin.tsx39 this.context.app.apiClient.auth.setLocale(value);CODE
CRITICAL…cobase/plugin-auth/src/client/__tests__/routes.test.ts71 const matchingCall = app.router.add.mock.calls.find(([name]) => name === routeName) asCODE
CRITICAL…@nocobase/plugin-data-source-main/src/server/server.ts570 rawFields = await ctx.app.db.queryInterface.sequelizeQueryInterface.describeTable(CODE
CRITICAL…ion-custom-request/src/client-v2/customRequestUtils.ts285 return ctx.model.context.api.request.bind(ctx.model.context.api);CODE
CRITICAL…@nocobase/plugin-custom-variables/src/client/index.tsx53 this.app.apiClient.axios.interceptors.response.use((response) => {CODE
CRITICAL…gins/@nocobase/plugin-workflow/src/server/Processor.ts578 await this.options.plugin.db.sequelize.query(CODE
CRITICAL…gins/@nocobase/plugin-workflow/src/server/Processor.ts940 $env: this.options.plugin.app.environment.getVariables(),CODE
CRITICAL…-workflow/src/server/instructions/CreateInstruction.ts40 const dataSource = this.workflow.app.dataSourceManager.dataSources.get(dataSourceName);CODE
CRITICAL…ugin-workflow/src/server/triggers/CollectionTrigger.ts175 const { collectionManager } = this.workflow.app.dataSourceManager.dataSources.get(dataSourceName);CODE
17 more matches not shown…
Over-Commented Block490 hits · 482 pts
SeverityFileLineSnippetContext
LOWdocs/docs/vi/plugin-development/server/app.md1---COMMENT
LOWdocs/docs/vi/get-started/upgrading/docker.md41 # Khuyến nghị dùng image Aliyun (mạng nội địa Trung Quốc ổn định hơn)COMMENT
LOWdocs/docs/cn/plugin-development/server/app.md1---COMMENT
LOWdocs/docs/cn/get-started/upgrading/docker.md41 # 推荐使用阿里云镜像(国内网络更稳定)COMMENT
LOWdocs/docs/ja/ui-development-field/index.md1# フィールド拡張COMMENT
LOWdocs/docs/ja/flow-engine/flow-model-options.md1# FlowModel の設定COMMENT
LOWdocs/docs/ja/flow-engine/flow-definition.md1# FlowModel の設定項目COMMENT
LOWdocs/docs/ja/flow-engine/flow-model-usage.md1# FlowModel の使用とレンダリングCOMMENT
LOWdocs/docs/ja/flow-engine/js-model/js-action.md1# JS アクションCOMMENT
LOWdocs/docs/ja/flow-engine/js-model/js-item.md1# JS項目COMMENT
LOWdocs/docs/ja/flow-engine/js-model/js-field.md1# JS フィールドCOMMENT
LOWdocs/docs/ja/flow-engine/js-model/js-block.md1# JS ブロックCOMMENT
LOWdocs/docs/ja/flow-engine/js-model/js-column.md1# JS テーブル列COMMENT
LOWdocs/docs/ja/ui-development-action/index.md1# アクション拡張COMMENT
LOWdocs/docs/ja/runjs/model/form-block-model.md1# FormBlockModelCOMMENT
LOWdocs/docs/ja/api/flow-engine/data-source-manager.md1# データソースマネージャーCOMMENT
LOWdocs/docs/ja/api/flow-engine/flow-model.md1# フローモデルCOMMENT
LOWdocs/docs/ja/api/flow-engine/flow-resource.md1# フローリソースCOMMENT
LOWdocs/docs/ja/api/server/plugin.md1# プラグインCOMMENT
LOWdocs/docs/ja/api/server/application.md1# アプリケーションCOMMENT
LOWdocs/docs/ja/api/client/plugin.md1# プラグインCOMMENT
LOWdocs/docs/ja/api/client/application.md1# アプリケーションCOMMENT
LOWdocs/docs/ja/auth-verification/index.md1# 認証と検証COMMENT
LOWdocs/docs/ja/auth-verification/verification/dev/api.md61### `verify()`COMMENT
LOW…cs/docs/ja/auth-verification/verification/dev/scene.md1# 検証シナリオの拡張COMMENT
LOWdocs/docs/ja/auth-verification/verification/dev/type.md1# 検証タイプの拡張COMMENT
LOWdocs/docs/ja/plugin-development/plugin-upgrade-guide.md1# プラグインのアップグレードガイドCOMMENT
LOWdocs/docs/ja/plugin-development/server/app.md1# アプリケーションCOMMENT
LOW…ja/interface-builder/actions/types/trigger-workflow.md1# ワークフローをトリガーするCOMMENT
LOW…docs/ja/interface-builder/actions/types/ai-employee.md1# AI従業員COMMENT
LOWdocs/docs/ja/get-started/deployment/internal.md1# イントラネットデプロイCOMMENT
LOW…t-started/deployment/common-commands/docker-compose.md1# ドッカーコンポーズCOMMENT
LOW…/docs/ja/get-started/deployment/common-commands/pm2.md1# pm2COMMENT
LOW…ja/get-started/deployment/static-resource-proxy/cdn.md1# CDNCOMMENT
LOWdocs/docs/ru/flow-engine/flow-model-options.md1# Конфигурация FlowModelCOMMENT
LOWdocs/docs/ru/flow-engine/flow-definition.md1# Конфигурация модели потокаCOMMENT
LOWdocs/docs/ru/flow-engine/flow-model-usage.md1# Использование и рендеринг `FlowModel`COMMENT
LOWdocs/docs/ru/flow-engine/js-model/js-action.md1# JS-действиеCOMMENT
LOWdocs/docs/ru/flow-engine/js-model/js-item.md1# JS-элементCOMMENT
LOWdocs/docs/ru/flow-engine/js-model/js-field.md1# JS-полеCOMMENT
LOWdocs/docs/ru/flow-engine/js-model/js-block.md1# JS-блокCOMMENT
LOWdocs/docs/ru/flow-engine/js-model/js-column.md1# JS-колонка таблицыCOMMENT
LOWdocs/docs/ru/ui-development-action/index.md1# Расширения действийCOMMENT
LOWdocs/docs/ru/api/flow-engine/flow-context.md1# FlowContext - Контекст потокаCOMMENT
LOWdocs/docs/ru/api/flow-engine/data-source-manager.md1# DataSourceManager - Менеджер источников данныхCOMMENT
LOWdocs/docs/ru/api/flow-engine/flow-model.md1# FlowModel - Модель потокаCOMMENT
LOWdocs/docs/ru/api/flow-engine/flow-resource.md1# FlowResource - Ресурс потокаCOMMENT
LOWdocs/docs/ru/api/server/plugin.md1# Plugin - ПлагинCOMMENT
LOWdocs/docs/ru/api/server/application.md1# Application - ПриложениеCOMMENT
LOWdocs/docs/ru/api/server/migration.md1# Migration - МиграцияCOMMENT
LOWdocs/docs/ru/api/client/plugin.md1# ПлагинCOMMENT
LOWdocs/docs/ru/api/client/application.md1# ПриложениеCOMMENT
LOWdocs/docs/ru/auth-verification/index.md1# Аутентификация и верификацияCOMMENT
LOWdocs/docs/ru/auth-verification/verification/dev/api.md61### `verify()`COMMENT
LOW…cs/docs/ru/auth-verification/verification/dev/scene.md1# Расширение сценариев валидацииCOMMENT
LOWdocs/docs/ru/auth-verification/verification/dev/type.md1# Расширение типов валидацииCOMMENT
LOWdocs/docs/ru/plugin-development/plugin-upgrade-guide.md1# Руководство по обновлению плагиновCOMMENT
LOWdocs/docs/ru/plugin-development/server/app.md1# ПриложениеCOMMENT
LOW…ru/interface-builder/actions/types/trigger-workflow.md1# Запуск рабочего процессаCOMMENT
LOW…docs/ru/interface-builder/actions/types/ai-employee.md1# ИИ-сотрудникиCOMMENT
430 more matches not shown…
Magic Placeholder Names67 hits · 335 pts
SeverityFileLineSnippetContext
HIGHdocs/docs/vi/ai-builder/security.md47 --access-token <your-api-key>CODE
HIGHdocs/docs/vi/integration/workflow-http-request/index.md132 key: your-api-keyCODE
HIGHdocs/docs/vi/integration/workflow-http-request/index.md219 X-API-Key: your-api-keyCODE
HIGHdocs/docs/vi/integration/workflow-http-request/index.md223 api_key: your-api-keyCODE
HIGHdocs/docs/vi/ai/mcp/index.md80export NOCOBASE_API_TOKEN=<your_api_key>CODE
HIGHdocs/docs/vi/ai/mcp/index.md100claude mcp add --transport http nocobase https://<host>:<port>/api/mcp --header "Authorization: Bearer <your_api_key>"CODE
HIGHdocs/docs/vi/ai/mcp/index.md132 "Authorization": "Bearer <your_api_key>"CODE
HIGHdocs/docs/cn/ai-builder/security.md47 --access-token <your-api-key>CODE
HIGHdocs/docs/cn/integration/workflow-http-request/index.md132 key: your-api-keyCODE
HIGHdocs/docs/cn/integration/workflow-http-request/index.md219 X-API-Key: your-api-keyCODE
HIGHdocs/docs/cn/integration/workflow-http-request/index.md223 api_key: your-api-keyCODE
HIGHdocs/docs/cn/ai/mcp/index.md80export NOCOBASE_API_TOKEN=<your_api_key>CODE
HIGHdocs/docs/cn/ai/mcp/index.md100claude mcp add --transport http nocobase https://<host>:<port>/api/mcp --header "Authorization: Bearer <your_api_key>"CODE
HIGHdocs/docs/cn/ai/mcp/index.md132 "Authorization": "Bearer <your_api_key>"CODE
HIGHdocs/docs/ja/ai-builder/security.md47 --access-token <your-api-key>CODE
HIGHdocs/docs/ja/integration/workflow-http-request/index.md126 key: your-api-keyCODE
HIGHdocs/docs/ja/integration/workflow-http-request/index.md213 X-API-Key: your-api-keyCODE
HIGHdocs/docs/ja/integration/workflow-http-request/index.md217 api_key: your-api-keyCODE
HIGHdocs/docs/ja/ai/mcp/index.md80export NOCOBASE_API_TOKEN=<your_api_key>CODE
HIGHdocs/docs/ja/ai/mcp/index.md100claude mcp add --transport http nocobase https://<host>:<port>/api/mcp --header "Authorization: Bearer <your_api_key>"CODE
HIGHdocs/docs/ja/ai/mcp/index.md132 "Authorization": "Bearer <your_api_key>"CODE
HIGHdocs/docs/ru/ai-builder/security.md47 --access-token <your-api-key>CODE
HIGHdocs/docs/ru/integration/workflow-http-request/index.md126 key: your-api-keyCODE
HIGHdocs/docs/ru/integration/workflow-http-request/index.md213 X-API-Key: your-api-keyCODE
HIGHdocs/docs/ru/integration/workflow-http-request/index.md217 api_key: your-api-keyCODE
HIGHdocs/docs/ru/ai/mcp/index.md80export NOCOBASE_API_TOKEN=<your_api_key>CODE
HIGHdocs/docs/ru/ai/mcp/index.md100claude mcp add --transport http nocobase https://<host>:<port>/api/mcp --header "Authorization: Bearer <your_api_key>"CODE
HIGHdocs/docs/ru/ai/mcp/index.md132 "Authorization": "Bearer <your_api_key>"CODE
HIGHdocs/docs/pt/ai-builder/security.md47 --access-token <your-api-key>CODE
HIGHdocs/docs/pt/integration/workflow-http-request/index.md126 key: your-api-keyCODE
HIGHdocs/docs/pt/integration/workflow-http-request/index.md213 X-API-Key: your-api-keyCODE
HIGHdocs/docs/pt/integration/workflow-http-request/index.md217 api_key: your-api-keyCODE
HIGHdocs/docs/de/ai-builder/security.md47 --access-token <your-api-key>CODE
HIGHdocs/docs/de/integration/workflow-http-request/index.md126 key: your-api-keyCODE
HIGHdocs/docs/de/integration/workflow-http-request/index.md213 X-API-Key: your-api-keyCODE
HIGHdocs/docs/de/integration/workflow-http-request/index.md217 api_key: your-api-keyCODE
HIGHdocs/docs/de/ai/mcp/index.md80export NOCOBASE_API_TOKEN=<your_api_key>CODE
HIGHdocs/docs/de/ai/mcp/index.md100claude mcp add --transport http nocobase https://<host>:<port>/api/mcp --header "Authorization: Bearer <your_api_key>"CODE
HIGHdocs/docs/de/ai/mcp/index.md132 "Authorization": "Bearer <your_api_key>"CODE
HIGHdocs/docs/id/ai-builder/security.md47 --access-token <your-api-key>CODE
HIGHdocs/docs/id/integration/workflow-http-request/index.md132 key: your-api-keyCODE
HIGHdocs/docs/id/integration/workflow-http-request/index.md219 X-API-Key: your-api-keyCODE
HIGHdocs/docs/id/integration/workflow-http-request/index.md223 api_key: your-api-keyCODE
HIGHdocs/docs/id/ai/mcp/index.md80export NOCOBASE_API_TOKEN=<your_api_key>CODE
HIGHdocs/docs/id/ai/mcp/index.md100claude mcp add --transport http nocobase https://<host>:<port>/api/mcp --header "Authorization: Bearer <your_api_key>"CODE
HIGHdocs/docs/id/ai/mcp/index.md132 "Authorization": "Bearer <your_api_key>"CODE
HIGHdocs/docs/fr/ai-builder/security.md47 --access-token <your-api-key>CODE
HIGHdocs/docs/fr/integration/workflow-http-request/index.md126 key: your-api-keyCODE
HIGHdocs/docs/fr/integration/workflow-http-request/index.md213 X-API-Key: your-api-keyCODE
HIGHdocs/docs/fr/integration/workflow-http-request/index.md217 api_key: your-api-keyCODE
HIGHdocs/docs/fr/ai/mcp/index.md80export NOCOBASE_API_TOKEN=<your_api_key>CODE
HIGHdocs/docs/fr/ai/mcp/index.md100claude mcp add --transport http nocobase https://<host>:<port>/api/mcp --header "Authorization: Bearer <your_api_key>"CODE
HIGHdocs/docs/fr/ai/mcp/index.md132 "Authorization": "Bearer <your_api_key>"CODE
HIGHdocs/docs/es/ai-builder/security.md47 --access-token <your-api-key>CODE
HIGHdocs/docs/es/integration/workflow-http-request/index.md126 key: your-api-keyCODE
HIGHdocs/docs/es/integration/workflow-http-request/index.md213 X-API-Key: your-api-keyCODE
HIGHdocs/docs/es/integration/workflow-http-request/index.md217 api_key: your-api-keyCODE
HIGHdocs/docs/es/ai/mcp/index.md80export NOCOBASE_API_TOKEN=<your_api_key>CODE
HIGHdocs/docs/es/ai/mcp/index.md100claude mcp add --transport http nocobase https://<host>:<port>/api/mcp --header "Authorization: Bearer <your_api_key>"CODE
HIGHdocs/docs/es/ai/mcp/index.md132 "Authorization": "Bearer <your_api_key>"CODE
7 more matches not shown…
Structural Annotation Overuse212 hits · 326 pts
SeverityFileLineSnippetContext
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md40### Step 1: Stop writes or enter a maintenance windowCOMMENT
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md46### Step 2: Back up the database and filesCOMMENT
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md75### Step 3: Create and verify the S3 Pro storageCOMMENT
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md97### Step 4: Decide the object key mappingCOMMENT
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md133### Step 5: Move physical files or confirm object locationCOMMENT
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md166### Step 6: Verify target object accessibilityCOMMENT
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md181### Step 7: Update file recordsCOMMENT
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md202### Step 8: Switch future uploads to the new storageCOMMENT
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md214### Step 9: Restart or refresh storage cacheCOMMENT
LOWdocs/docs/vi/file-manager/storage/migrate-to-s3-pro.md220### Step 10: Sample-check and keep old filesCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md40### Step 1: Stop writes or enter a maintenance windowCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md46### Step 2: Back up the database and filesCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md75### Step 3: Create and verify the S3 Pro storageCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md97### Step 4: Decide the object key mappingCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md133### Step 5: Move physical files or confirm object locationCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md166### Step 6: Verify target object accessibilityCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md181### Step 7: Update file recordsCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md202### Step 8: Switch future uploads to the new storageCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md214### Step 9: Restart or refresh storage cacheCOMMENT
LOWdocs/docs/ja/file-manager/storage/migrate-to-s3-pro.md220### Step 10: Sample-check and keep old filesCOMMENT
LOWdocs/docs/ru/ai/ai-quick-start.md14## Step 1: Check PrerequisitesCOMMENT
LOWdocs/docs/ru/ai/ai-quick-start.md25## Step 2: Install CLICOMMENT
LOWdocs/docs/ru/ai/ai-quick-start.md35## Step 3: Run the Initialization CommandCOMMENT
LOWdocs/docs/ru/ai/ai-quick-start.md50## Step 4: Verify ResultsCOMMENT
LOWdocs/docs/ru/ai/ai-quick-start.md58## Step 5: CompleteCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md40### Step 1: Stop writes or enter a maintenance windowCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md46### Step 2: Back up the database and filesCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md75### Step 3: Create and verify the S3 Pro storageCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md97### Step 4: Decide the object key mappingCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md133### Step 5: Move physical files or confirm object locationCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md166### Step 6: Verify target object accessibilityCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md181### Step 7: Update file recordsCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md202### Step 8: Switch future uploads to the new storageCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md214### Step 9: Restart or refresh storage cacheCOMMENT
LOWdocs/docs/ru/file-manager/storage/migrate-to-s3-pro.md220### Step 10: Sample-check and keep old filesCOMMENT
LOWdocs/docs/pt/ai/ai-quick-start.md14## Step 1: verifique os pré-requisitosCOMMENT
LOWdocs/docs/pt/ai/ai-quick-start.md25## Step 2: instale o CLICOMMENT
LOWdocs/docs/pt/ai/ai-quick-start.md35## Step 3: execute o comando de inicializaçãoCOMMENT
LOWdocs/docs/pt/ai/ai-quick-start.md50## Step 4: valide o resultadoCOMMENT
LOWdocs/docs/pt/ai/ai-quick-start.md58## Step 5: prontoCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md40### Step 1: Stop writes or enter a maintenance windowCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md46### Step 2: Back up the database and filesCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md75### Step 3: Create and verify the S3 Pro storageCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md97### Step 4: Decide the object key mappingCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md133### Step 5: Move physical files or confirm object locationCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md166### Step 6: Verify target object accessibilityCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md181### Step 7: Update file recordsCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md202### Step 8: Switch future uploads to the new storageCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md214### Step 9: Restart or refresh storage cacheCOMMENT
LOWdocs/docs/pt/file-manager/storage/migrate-to-s3-pro.md220### Step 10: Sample-check and keep old filesCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md40### Step 1: Stop writes or enter a maintenance windowCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md46### Step 2: Back up the database and filesCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md75### Step 3: Create and verify the S3 Pro storageCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md97### Step 4: Decide the object key mappingCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md133### Step 5: Move physical files or confirm object locationCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md166### Step 6: Verify target object accessibilityCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md181### Step 7: Update file recordsCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md202### Step 8: Switch future uploads to the new storageCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md214### Step 9: Restart or refresh storage cacheCOMMENT
LOWdocs/docs/de/file-manager/storage/migrate-to-s3-pro.md220### Step 10: Sample-check and keep old filesCOMMENT
152 more matches not shown…
Modern AI Meta-Vocabulary73 hits · 219 pts
SeverityFileLineSnippetContext
MEDIUMdocs/docs/vi/ai-employees/knowledge-base/rag.md8# Truy xuất RAGCOMMENT
MEDIUMdocs/docs/vi/ai-employees/knowledge-base/index.md18### RAG là gìCOMMENT
MEDIUMdocs/docs/vi/api/cli/init.md254 // Runs after git clone / npm scaffold and before yarn install.COMMENT
MEDIUMdocs/docs/vi/api/cli/source/download.md63 // Chạy sau git clone / npm scaffold và trước yarn install.COMMENT
MEDIUMdocs/docs/vi/api/cli/scaffold/plugin.md7# nb scaffold pluginCOMMENT
MEDIUMdocs/docs/vi/api/cli/scaffold/migration.md7# nb scaffold migrationCOMMENT
MEDIUMdocs/docs/vi/api/cli/scaffold/index.md7# nb scaffoldCOMMENT
MEDIUMdocs/docs/vi/ai-dev/watermark-plugin.md80### 2. Tạo scaffold pluginCOMMENT
MEDIUM…cs/docs/vi/plugin-development/client/component/i18n.md84// src/client-v2/locale.ts (scaffold tự sinh)COMMENT
MEDIUMdocs/docs/cn/ai-employees/knowledge-base/rag.md8# RAG 检索COMMENT
MEDIUMdocs/docs/cn/api/cli/init.md269 // 在 git clone / npm scaffold 之后、yarn install 之前执行。COMMENT
MEDIUMdocs/docs/cn/api/cli/source/download.md63 // 在 git clone / npm scaffold 之后、yarn install 之前执行。COMMENT
MEDIUMdocs/docs/cn/api/cli/scaffold/plugin.md7# nb scaffold pluginCOMMENT
MEDIUMdocs/docs/cn/api/cli/scaffold/migration.md7# nb scaffold migrationCOMMENT
MEDIUMdocs/docs/cn/api/cli/scaffold/index.md7# nb scaffoldCOMMENT
MEDIUMdocs/docs/ja/ai-employees/knowledge-base/rag.md8# RAG 検索COMMENT
MEDIUMdocs/docs/ja/api/cli/init.md254 // Runs after git clone / npm scaffold and before yarn install.COMMENT
MEDIUMdocs/docs/ja/api/cli/source/download.md63 // git clone / npm scaffold の後、yarn install の前に実行されます。COMMENT
MEDIUMdocs/docs/ja/api/cli/scaffold/plugin.md7# nb scaffold pluginCOMMENT
MEDIUMdocs/docs/ja/api/cli/scaffold/migration.md7# nb scaffold migrationCOMMENT
MEDIUMdocs/docs/ja/api/cli/scaffold/index.md7# nb scaffoldCOMMENT
MEDIUMdocs/docs/ru/ai-employees/knowledge-base/rag.md8# RAG-поискCOMMENT
MEDIUMdocs/docs/ru/ai-employees/knowledge-base/index.md11### Что такое Генерация с расширенными возможностями поиска (RAG)COMMENT
MEDIUMdocs/docs/ru/api/cli/scaffold/plugin.md7# nb scaffold pluginCOMMENT
MEDIUMdocs/docs/ru/api/cli/scaffold/migration.md7# nb scaffold migrationCOMMENT
MEDIUMdocs/docs/ru/api/cli/scaffold/index.md7# nb scaffoldCOMMENT
MEDIUMdocs/docs/pt/ai-employees/knowledge-base/rag.md8# Busca RAGCOMMENT
MEDIUMdocs/docs/pt/ai-employees/knowledge-base/index.md11### O que é RAGCOMMENT
MEDIUMdocs/docs/pt/api/cli/init.md254 // Runs after git clone / npm scaffold and before yarn install.COMMENT
MEDIUMdocs/docs/pt/api/cli/source/download.md63 // Executa após git clone / npm scaffold e antes de yarn install.COMMENT
MEDIUMdocs/docs/pt/api/cli/scaffold/plugin.md7# nb scaffold pluginCOMMENT
MEDIUMdocs/docs/pt/api/cli/scaffold/migration.md7# nb scaffold migrationCOMMENT
MEDIUMdocs/docs/pt/api/cli/scaffold/index.md7# nb scaffoldCOMMENT
MEDIUMdocs/docs/pt/ai-dev/watermark-plugin.md80### 2. Criar o scaffold do pluginCOMMENT
MEDIUMdocs/docs/de/ai-employees/knowledge-base/rag.md8# RAG-AbrufCOMMENT
MEDIUMdocs/docs/de/ai-employees/knowledge-base/index.md11### Was ist RAG?COMMENT
MEDIUMdocs/docs/de/api/cli/init.md254 // Runs after git clone / npm scaffold and before yarn install.COMMENT
MEDIUMdocs/docs/de/api/cli/source/download.md63 // Wird nach git clone / npm scaffold und vor yarn install ausgeführt.COMMENT
MEDIUMdocs/docs/de/api/cli/scaffold/plugin.md7# nb scaffold pluginCOMMENT
MEDIUMdocs/docs/de/api/cli/scaffold/migration.md7# nb scaffold migrationCOMMENT
MEDIUMdocs/docs/de/api/cli/scaffold/index.md7# nb scaffoldCOMMENT
MEDIUMdocs/docs/id/ai-employees/knowledge-base/rag.md8# Pencarian RAGCOMMENT
MEDIUMdocs/docs/id/ai-employees/knowledge-base/index.md18### Apa itu RAGCOMMENT
MEDIUMdocs/docs/id/api/cli/init.md254 // Runs after git clone / npm scaffold and before yarn install.COMMENT
MEDIUMdocs/docs/id/api/cli/source/download.md63 // Berjalan setelah git clone / npm scaffold dan sebelum yarn install.COMMENT
MEDIUMdocs/docs/id/api/cli/scaffold/plugin.md7# nb scaffold pluginCOMMENT
MEDIUMdocs/docs/id/api/cli/scaffold/migration.md7# nb scaffold migrationCOMMENT
MEDIUMdocs/docs/id/api/cli/scaffold/index.md7# nb scaffoldCOMMENT
MEDIUMdocs/docs/fr/ai-employees/knowledge-base/rag.md8# Récupération RAGCOMMENT
MEDIUMdocs/docs/fr/ai-employees/knowledge-base/index.md11### Qu'est-ce que le RAG ?COMMENT
MEDIUMdocs/docs/fr/api/cli/init.md254 // Runs after git clone / npm scaffold and before yarn install.COMMENT
MEDIUMdocs/docs/fr/api/cli/source/download.md63 // S’exécute après git clone / npm scaffold et avant yarn install.COMMENT
MEDIUMdocs/docs/fr/api/cli/scaffold/plugin.md7# nb scaffold pluginCOMMENT
MEDIUMdocs/docs/fr/api/cli/scaffold/migration.md7# nb scaffold migrationCOMMENT
MEDIUMdocs/docs/fr/api/cli/scaffold/index.md7# nb scaffoldCOMMENT
MEDIUMdocs/docs/fr/ai-dev/watermark-plugin.md80### 2. Créer le scaffold du pluginCOMMENT
MEDIUMdocs/docs/es/ai-employees/knowledge-base/rag.md8# Recuperación RAGCOMMENT
MEDIUMdocs/docs/es/ai-employees/knowledge-base/index.md11### ¿Qué es RAG?COMMENT
MEDIUMdocs/docs/es/api/cli/init.md254 // Runs after git clone / npm scaffold and before yarn install.COMMENT
MEDIUMdocs/docs/es/api/cli/source/download.md63 // Se ejecuta después de git clone / npm scaffold y antes de yarn install.COMMENT
13 more matches not shown…
Fake / Example Data140 hits · 168 pts
SeverityFileLineSnippetContext
LOWdocs/docs/vi/flow-engine/create-mock-client.md54 name: 'John Doe',CODE
LOWdocs/docs/cn/flow-engine/create-mock-client.md54 name: 'John Doe',CODE
LOWdocs/docs/ja/flow-engine/create-mock-client.md48 name: 'John Doe',CODE
LOW…ai-employees/configuration/prompt-engineering-guide.md225{"Name":"John Doe","Date":"2024-01-15","Amount":5000,"Status":"Подтверждено"}CODE
LOWdocs/docs/ru/flow-engine/create-mock-client.md48 name: 'John Doe',CODE
LOW⚡docs/docs/ru/api/database/repository.md149 name: 'John Doe',CODE
LOW⚡docs/docs/ru/api/database/repository.md152// ВСТАВИТЬ В пользователей (имя, возраст) ЗНАЧЕНИЯ ('John Doe', 18)COMMENT
LOW⚡docs/docs/ru/api/database/repository.md157 name: 'John Doe',CODE
LOWdocs/docs/ru/api/database/repository.md173 name: 'John Doe',CODE
LOWdocs/docs/ru/api/database/repository.md203 name: 'John Doe',CODE
LOWdocs/docs/ru/api/database/repository.md231 name: 'John Doe',CODE
LOWdocs/docs/ru/api/database/repository.md247 name: 'John Doe',CODE
LOWdocs/docs/ru/api/database/repository.md260 name: 'John Doe',CODE
LOWdocs/docs/pt/flow-engine/create-mock-client.md48 name: 'John Doe',CODE
LOWdocs/docs/de/flow-engine/create-mock-client.md48 name: 'John Doe',CODE
LOWdocs/docs/id/flow-engine/create-mock-client.md54 name: 'John Doe',CODE
LOWdocs/docs/fr/flow-engine/create-mock-client.md48 name: 'John Doe',CODE
LOWdocs/docs/es/flow-engine/create-mock-client.md48 name: 'John Doe',CODE
LOW…ai-employees/configuration/prompt-engineering-guide.md229{"Name":"John Doe","Date":"2024-01-15","Amount":5000,"Status":"Confirmed"}CODE
LOWdocs/docs/en/flow-engine/create-mock-client.md48 name: 'John Doe',CODE
LOWdocs/docs/en/runjs/context/resource.md70await ctx.resource.runAction('create', { data: { name: 'John Doe' } });CODE
LOWdocs/docs/en/runjs/context/request.md76 data: { nickname: 'John Doe', email: 'johndoe@example.com' },CODE
LOWdocs/docs/en/runjs/resource/single-record-resource.md90await ctx.resource.save({ name: 'John Doe' });CODE
LOWdocs/docs/en/runjs/resource/multi-record-resource.md132await ctx.resource.create({ name: 'John Doe', email: 'john.doe@example.com' });CODE
LOW⚡docs/docs/en/api/database/repository.md149 name: 'John Doe',CODE
LOW⚡docs/docs/en/api/database/repository.md152// INSERT INTO users (name, age) VALUES ('John Doe', 18)COMMENT
LOW⚡docs/docs/en/api/database/repository.md157 name: 'John Doe',CODE
LOWdocs/docs/en/api/database/repository.md173 name: 'John Doe',CODE
LOWdocs/docs/en/api/database/repository.md203 name: 'John Doe',CODE
LOWdocs/docs/en/api/database/repository.md231 name: 'John Doe',CODE
LOWdocs/docs/en/api/database/repository.md247 name: 'John Doe',CODE
LOWdocs/docs/en/api/database/repository.md260 name: 'John Doe',CODE
LOW…ow-engine/src/utils/__tests__/params-resolvers.test.ts106 name: 'John Doe',CODE
LOW…ow-engine/src/utils/__tests__/params-resolvers.test.ts335 name: 'John Doe',CODE
LOW…ow-engine/src/utils/__tests__/params-resolvers.test.ts411 name: 'John Doe',CODE
LOW⚡…ow-engine/src/utils/__tests__/params-resolvers.test.ts424 // 简单表达式 - 输入: {{ctx.user.name}}, 输出: 'John Doe'COMMENT
LOW⚡…ow-engine/src/utils/__tests__/params-resolvers.test.ts430 expect(result).toEqual('John Doe');CODE
LOW⚡…ow-engine/src/utils/__tests__/params-resolvers.test.ts433 // 简单表达式 - 输入: {{ctx.user.name}}, 输出: 'John Doe'COMMENT
LOW⚡…ow-engine/src/utils/__tests__/params-resolvers.test.ts442 userName: 'John Doe',CODE
LOW…ow-engine/src/utils/__tests__/params-resolvers.test.ts469 name: 'John Doe',CODE
LOW…ow-engine/src/utils/__tests__/params-resolvers.test.ts587 name: 'John Doe',CODE
LOW…ow-engine/src/utils/__tests__/params-resolvers.test.ts636 { name: 'John Doe', role: 'static-role' },CODE
LOW⚡…ow-engine/src/utils/__tests__/params-resolvers.test.ts670 noSpace: 'John Doe',CODE
LOW⚡…ow-engine/src/utils/__tests__/params-resolvers.test.ts671 leftSpace: 'John Doe',CODE
LOW⚡…ow-engine/src/utils/__tests__/params-resolvers.test.ts672 rightSpace: 'John Doe',CODE
LOW⚡…ow-engine/src/utils/__tests__/params-resolvers.test.ts673 bothSpace: 'John Doe',CODE
LOW…ore/flow-engine/src/models/__tests__/flowModel.test.ts2417 expect(params.authorName).toBe('John Doe');CODE
LOW…ore/flow-engine/src/models/__tests__/flowModel.test.ts2437 name: 'John Doe',CODE
LOW…/components/variables/__tests__/VariableInput.test.tsx454 expect(input).toHaveAttribute('placeholder', 'Enter value');CODE
LOW…ngine/src/data-source/__tests__/jioToJoiSchema.test.ts24 const r1 = schema.validate('user@example.com');CODE
LOW…kages/core/utils/src/__tests__/transformFilter.test.ts758 name: 'John Doe',CODE
LOW…kages/core/utils/src/__tests__/transformFilter.test.ts789 items: [{ path: 'name', operator: '$in', value: ['John Doe', 'Jane Doe'] }],CODE
LOW…kages/core/utils/src/__tests__/transformFilter.test.ts789 items: [{ path: 'name', operator: '$in', value: ['John Doe', 'Jane Doe'] }],CODE
LOW⚡packages/core/cli/src/locale/zh-CN.json292 "placeholder": "https://github.com/nocobase/nocobase.git"CODE
LOW⚡packages/core/cli/src/locale/zh-CN.json296 "placeholder": "例如 ./nocobase-latest"CODE
LOW⚡packages/core/cli/src/locale/zh-CN.json300 "placeholder": "留空则使用默认 registry"CODE
LOW⚡packages/core/cli/src/locale/zh-CN.json327 "placeholder": "local"CODE
LOW⚡packages/core/cli/src/locale/zh-CN.json334 "placeholder": "./<env>/"CODE
LOW⚡packages/core/cli/src/locale/zh-CN.json338 "placeholder": "13000"CODE
LOW⚡packages/core/cli/src/locale/zh-CN.json342 "placeholder": "/ 或 /nocobase/"CODE
80 more matches not shown…
Decorative Section Separators25 hits · 75 pts
SeverityFileLineSnippetContext
MEDIUMdocs/plugins/pluginCrossRef.ts13// ── 内部类型 ──────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/plugins/pluginCrossRef.ts27// ── 递归收集所有叶子 link(用于跨模块检测)────────────────────────────COMMENT
MEDIUMdocs/plugins/pluginCrossRef.ts91// ── 将 _meta.json 条目解析为 Rspress sidebar 格式 ─────────────────────COMMENT
MEDIUMdocs/plugins/pluginCrossRef.ts284// ── canonical 映射表(供 rspress.config.ts 查询)─────────────────────COMMENT
MEDIUMdocs/plugins/pluginCrossRef.ts292// ── 插件主体 ──────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/plugins/pluginCrossRef.ts444// ── 工具函数 ──────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/core/utils/src/__tests__/server-request.test.ts61 // ── no whitelist ──────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/core/utils/src/__tests__/server-request.test.ts142 // ── IPv4 ──────────────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/core/utils/src/__tests__/server-request.test.ts166 // ── IPv6 ──────────────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/core/utils/src/__tests__/server-request.test.ts202 // ── domain / wildcard ─────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/core/utils/src/__tests__/server-request.test.ts217 // ── multi-entry & edge cases ──────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts52 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts54 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts477 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts479 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts541 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts543 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts868 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts870 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts1068 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts1070 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts1217 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts1219 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts1339 // ───────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…plugins/@nocobase/plugin-workflow/src/swagger/index.ts1341 // ───────────────────────────────────────────────────────────────────────────COMMENT
Synthetic Comment Markers6 hits · 30 pts
SeverityFileLineSnippetContext
HIGHdocs/docs/en/building-tips/operations-dashboard.md501In this way, the content generated by AI will be closer to the real business, rather than just giving isolated code.CODE
HIGH…/ai-employees/scenarios/company-background-research.md35| Research report | Save the complete research report generated by AI this time. CODE
HIGH…/ai-employees/scenarios/company-background-research.md45After entering the editing page, "Background information" is displayed using the Markdown editing component. The AI-geneCODE
HIGHdocs/docs/en/ai-dev/capabilities.md21- NocoBase is migrating from `client` (v1) to `client-v2`, and `client-v2` is still under development. The client code gCODE
HIGHdocs/docs/en/ai-dev/index.md36- NocoBase is migrating from `client` (v1) to `client-v2`, and `client-v2` is still under development. The client code gCODE
HIGHdocs/docs/en/ai-dev/watermark-plugin.md37- NocoBase is migrating from `client` (v1) to `client-v2`, and `client-v2` is still under development. The client code gCODE
Overly Generic Function Names12 hits · 12 pts
SeverityFileLineSnippetContext
LOW…er/llm-providers/__tests__/dashscope-embedding.test.ts42async function handleRequest(request: IncomingMessage, response: ServerResponse) {CODE
LOW…r/llm-providers/__tests__/openai-responses-zdr.test.ts70async function handleRequest(request: IncomingMessage, response: ServerResponse) {CODE
LOW…erver/llm-providers/__tests__/prompt-cache-key.test.ts42async function handleRequest(request: IncomingMessage, response: ServerResponse) {CODE
LOW…ine/src/server/__tests__/flow-surfaces.context.test.ts700function getData(response: any) {CODE
LOW…rc/server/__tests__/flow-surfaces.templates.helpers.ts76export function getData(response: any) {CODE
LOW…ne/src/server/__tests__/flow-surfaces.reaction.test.ts1356function getData(response: any) {CODE
LOW…src/server/__tests__/flow-surfaces.chart-write.test.ts1976function getData(response: any) {CODE
LOW…/src/server/__tests__/flow-surfaces.event-flow.test.ts708function getData(response: any) {CODE
LOW…src/server/__tests__/flow-surfaces.contract.helpers.ts332export function getData(response: any) {CODE
LOW…ow-surfaces.field-default-bindings.integration.test.ts228function getData(response: any) {CODE
LOW…c/server/__tests__/flow-surfaces.create-parity.test.ts950function getData(response: any) {CODE
LOW…flow-engine/src/server/__tests__/flow-surfaces.test.ts11450function getData(response: any) {CODE
Verbosity Indicators4 hits · 9 pts
SeverityFileLineSnippetContext
LOW⚡packages/core/flow-engine/src/flowEngine.ts892 // Step 1: Collect already-loaded subclasses from _modelClassesCOMMENT
LOW⚡packages/core/flow-engine/src/flowEngine.ts895 // Step 2: Find unloaded loaders whose extends includes baseClassNameCOMMENT
LOW⚡packages/core/flow-engine/src/flowEngine.ts904 // Step 3: Resolve all matching loadersCOMMENT
LOW⚡packages/core/flow-engine/src/flowEngine.ts909 // Step 4: Validate resolved classes and add to resultCOMMENT
AI Response Leakage1 hit · 5 pts
SeverityFileLineSnippetContext
HIGH…cs/docs/en/users-permissions/acl/dev/permission-tab.md34First, we need to obtain an instance of the `PluginACLClient` plugin ([other methods to obtain plugin instances](/pluginCODE
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOWdocs/scripts/gen_rag.sh96 # Read file contentCOMMENT
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWscripts/check-plugin-peer-deps.sh6# Usage:COMMENT