# n8n CODEOWNERS
#
# Last-match-wins: specific rules MUST come AFTER general rules.

# Default catch-all (ensures every file gets at least one reviewer)
*                                                       @n8n-io/catalysts

# Catalysts

packages/core/                                          @n8n-io/catalysts
packages/workflow/                                      @n8n-io/catalysts
packages/@n8n/config/                                   @n8n-io/catalysts
packages/@n8n/backend-common/                           @n8n-io/catalysts
packages/@n8n/backend-test-utils/                       @n8n-io/catalysts
packages/@n8n/di/                                       @n8n-io/catalysts
packages/@n8n/errors/                                   @n8n-io/catalysts
packages/@n8n/constants/                                @n8n-io/catalysts
packages/@n8n/utils/                                    @n8n-io/catalysts
packages/@n8n/api-types/                                @n8n-io/catalysts
packages/@n8n/workflow-sdk/                             @n8n-io/instance-ai
packages/@n8n/task-runner/                              @n8n-io/catalysts
packages/@n8n/task-runner-python/                       @n8n-io/catalysts
packages/@n8n/expression-runtime/                       @n8n-io/catalysts
packages/@n8n/db/                                       @n8n-io/catalysts
packages/@n8n/json-schema-to-zod/                       @n8n-io/catalysts
packages/@n8n/crdt/                                     @n8n-io/catalysts
packages/@n8n/extension-sdk/                            @n8n-io/catalysts
packages/@n8n/eslint-config/                            @n8n-io/qa-dx
packages/@n8n/typescript-config/                        @n8n-io/qa-dx

packages/@n8n/db/src/migrations/                        @n8n-io/migrations-review

# Top-level paths
scripts/                                                @n8n-io/qa-dx
patches/                                                @n8n-io/qa-dx
assets/                                                 @n8n-io/adore
security/                                               @n8n-io/qa-dx

# @n8n/cli
packages/@n8n/cli/                                      @n8n-io/adore
packages/@n8n/cli/src/commands/credential/              @n8n-io/iam
packages/@n8n/cli/src/commands/user/                    @n8n-io/iam
packages/@n8n/cli/src/commands/data-table/              @n8n-io/adore
packages/@n8n/cli/src/commands/tag/                     @n8n-io/adore
packages/@n8n/cli/src/commands/project/                 @n8n-io/ligo
packages/@n8n/cli/src/commands/source-control/          @n8n-io/ligo
packages/@n8n/cli/src/commands/variable/                @n8n-io/ligo
packages/@n8n/cli/src/commands/skill/                   @n8n-io/ai

# packages/cli
packages/cli/                                           @n8n-io/catalysts
packages/cli/src/scaling/                               @n8n-io/catalysts
packages/cli/src/concurrency/                           @n8n-io/catalysts
packages/cli/src/execution-lifecycle/                   @n8n-io/catalysts
packages/cli/src/executions/                            @n8n-io/catalysts
packages/cli/src/task-runners/                          @n8n-io/catalysts
packages/cli/src/webhooks/                              @n8n-io/catalysts
packages/cli/src/push/                                  @n8n-io/catalysts
packages/cli/src/commands/                              @n8n-io/catalysts
packages/cli/src/config/                                @n8n-io/catalysts
packages/cli/src/eventbus/                              @n8n-io/catalysts
packages/cli/src/events/                                @n8n-io/catalysts
packages/cli/src/security-audit/                        @n8n-io/catalysts
packages/cli/src/modules/workflow-index/                @n8n-io/catalysts
packages/cli/src/modules/breaking-changes/              @n8n-io/catalysts
packages/cli/src/modules/otel/                          @n8n-io/ligo

packages/cli/src/auth/                                  @n8n-io/iam
packages/cli/src/credentials/                           @n8n-io/iam
packages/cli/src/mfa/                                   @n8n-io/iam
packages/cli/src/oauth/                                 @n8n-io/iam
packages/cli/src/permissions.ee/                        @n8n-io/iam
packages/cli/src/sso.ee/                                @n8n-io/iam
packages/cli/src/user-management/                       @n8n-io/iam
packages/cli/src/license/                               @n8n-io/iam
packages/cli/src/modules/ldap.ee/                       @n8n-io/iam
packages/cli/src/modules/log-streaming.ee/              @n8n-io/iam
packages/cli/src/modules/sso-oidc/                      @n8n-io/iam
packages/cli/src/modules/sso-saml/                      @n8n-io/iam
packages/cli/src/modules/provisioning.ee/               @n8n-io/iam
packages/cli/src/modules/dynamic-credentials.ee/        @n8n-io/iam
packages/cli/src/modules/redaction/                     @n8n-io/iam
packages/cli/src/modules/instance-registry/             @n8n-io/iam
packages/cli/src/modules/token-exchange/                @n8n-io/iam

packages/cli/src/environments.ee/                       @n8n-io/ligo
packages/cli/src/public-api/                            @n8n-io/ligo
packages/cli/src/modules/source-control.ee/             @n8n-io/ligo
packages/cli/src/modules/external-secrets.ee/           @n8n-io/ligo
packages/cli/src/modules/insights/                      @n8n-io/ligo

packages/cli/src/collaboration/                         @n8n-io/catalysts
packages/cli/src/binary-data/                           @n8n-io/catalysts
packages/cli/src/posthog/                               @n8n-io/adore
packages/cli/src/modules/data-table/                    @n8n-io/adore

packages/cli/src/evaluation.ee/                         @n8n-io/ai
packages/cli/src/chat/                                  @n8n-io/ai
packages/cli/src/tool-generation/                       @n8n-io/ai
packages/cli/src/modules/workflow-builder/              @n8n-io/ai
packages/cli/src/modules/mcp/                           @n8n-io/ai
packages/cli/src/modules/quick-connect/                 @n8n-io/ai
packages/cli/src/modules/chat-hub/                      @n8n-io/ai
packages/cli/src/modules/instance-ai/                   @n8n-io/instance-ai

packages/cli/src/modules/community-packages/            @n8n-io/nodes

# CLI controllers
packages/cli/src/controllers/auth.controller.ts         						@n8n-io/iam
packages/cli/src/controllers/invitation.controller.ts   						@n8n-io/iam
packages/cli/src/controllers/me.controller.ts           						@n8n-io/iam
packages/cli/src/controllers/mfa.controller.ts          						@n8n-io/iam
packages/cli/src/controllers/owner.controller.ts        						@n8n-io/iam
packages/cli/src/controllers/password-reset.controller.ts 					@n8n-io/iam
packages/cli/src/controllers/role.controller.ts         						@n8n-io/iam
packages/cli/src/controllers/users.controller.ts        						@n8n-io/iam
packages/cli/src/controllers/user-settings.controller.ts 						@n8n-io/iam
packages/cli/src/controllers/api-keys.controller.ts     						@n8n-io/iam
packages/cli/src/controllers/security-settings.controller.ts 				@n8n-io/iam
packages/cli/src/controllers/oauth/                     						@n8n-io/iam
packages/cli/src/controllers/ai.controller.ts           						@n8n-io/ai
packages/cli/src/controllers/annotation-tags.controller.ee.ts 			@n8n-io/ai
packages/cli/src/controllers/cta.controller.ts         							@n8n-io/adore
packages/cli/src/controllers/folder.controller.ts       						@n8n-io/adore
packages/cli/src/controllers/tags.controller.ts         						@n8n-io/adore
packages/cli/src/controllers/binary-data.controller.ts  						@n8n-io/adore
packages/cli/src/controllers/dynamic-templates.controller.ts 				@n8n-io/adore
packages/cli/src/controllers/posthog.controller.ts      						@n8n-io/adore
packages/cli/src/controllers/translation.controller.ts  						@n8n-io/adore
packages/cli/src/controllers/project.controller.ts      						@n8n-io/ligo
packages/cli/src/controllers/workflow-statistics.controller.ts 			@n8n-io/ligo
packages/cli/src/controllers/node-types.controller.ts   						@n8n-io/nodes
packages/cli/src/controllers/dynamic-node-parameters.controller.ts 	@n8n-io/nodes
packages/cli/src/controllers/e2e.controller.ts          						@n8n-io/qa-dx

# CLI services
packages/cli/src/services/jwt.service.ts                @n8n-io/iam
packages/cli/src/services/user.service.ts               @n8n-io/iam
packages/cli/src/services/role.service.ts               @n8n-io/iam
packages/cli/src/services/role-cache.service.ts         @n8n-io/iam
packages/cli/src/services/password.utility.ts           @n8n-io/iam
packages/cli/src/services/public-api-key.service.ts     @n8n-io/iam
packages/cli/src/services/security-settings.service.ts  @n8n-io/iam
packages/cli/src/services/ssrf/                         @n8n-io/catalysts
packages/cli/src/services/static-auth-service.ts        @n8n-io/iam
packages/cli/src/services/access.service.ts             @n8n-io/iam
packages/cli/src/services/ai.service.ts                 @n8n-io/ai
packages/cli/src/services/ai-usage.service.ts           @n8n-io/ai
packages/cli/src/services/ai-workflow-builder.service.ts @n8n-io/ai
packages/cli/src/services/annotation-tag.service.ee.ts  @n8n-io/ai
packages/cli/src/services/folder.service.ts             @n8n-io/adore
packages/cli/src/services/tag.service.ts                @n8n-io/adore
packages/cli/src/services/cta.service.ts                @n8n-io/adore
packages/cli/src/services/dynamic-templates.service.ts  @n8n-io/adore
packages/cli/src/services/frontend.service.ts           @n8n-io/adore
packages/cli/src/services/banner.service.ts             @n8n-io/adore
packages/cli/src/services/project.service.ee.ts         @n8n-io/ligo
packages/cli/src/services/workflow-statistics.service.ts @n8n-io/ligo
packages/cli/src/services/export.service.ts             @n8n-io/ligo
packages/cli/src/services/import.service.ts             @n8n-io/ligo
packages/cli/src/services/ownership.service.ts          @n8n-io/ligo
packages/cli/src/services/dynamic-node-parameters.service.ts @n8n-io/nodes

# Adore

packages/frontend/editor-ui/                            @n8n-io/frontend
packages/frontend/editor-ui/src/features/ai/            @n8n-io/ai
packages/frontend/editor-ui/src/features/credentials/   @n8n-io/iam
packages/frontend/editor-ui/src/features/execution/     @n8n-io/ligo
packages/frontend/editor-ui/src/features/project-roles/ @n8n-io/iam
packages/frontend/editor-ui/src/features/integrations/  @n8n-io/nodes

packages/frontend/@n8n/design-system/                   @n8n-io/design
packages/frontend/@n8n/stores/                          @n8n-io/frontend
packages/frontend/@n8n/composables/                     @n8n-io/frontend
packages/frontend/@n8n/rest-api-client/                 @n8n-io/frontend
packages/frontend/@n8n/storybook/                       @n8n-io/design
packages/frontend/@n8n/i18n/                            @n8n-io/frontend
packages/@n8n/stylelint-config/                         @n8n-io/qa-dx

# AI

packages/@n8n/instance-ai/                              @n8n-io/instance-ai
packages/@n8n/nodes-langchain/                          @n8n-io/ai
packages/@n8n/ai-utilities/                             @n8n-io/ai
packages/@n8n/ai-node-sdk/                              @n8n-io/ai
packages/@n8n/ai-workflow-builder.ee/                   @n8n-io/ai
packages/@n8n/agents/                                   @n8n-io/ai
packages/frontend/@n8n/chat/                            @n8n-io/ai

# Chat

packages/@n8n/chat-hub/                                 @n8n-io/ai

# Nodes

packages/@n8n/codemirror-lang/                          @n8n-io/nodes
packages/@n8n/codemirror-lang-html/                     @n8n-io/nodes
packages/@n8n/codemirror-lang-sql/                      @n8n-io/nodes
packages/nodes-base/                                    @n8n-io/nodes
packages/@n8n/decorators/                               @n8n-io/catalysts
packages/node-dev/                                      @n8n-io/nodes
packages/@n8n/create-node/                              @n8n-io/nodes
packages/@n8n/node-cli/                                 @n8n-io/nodes
packages/@n8n/imap/                                     @n8n-io/iam
packages/@n8n/syslog-client/                            @n8n-io/iam
packages/@n8n/scan-community-package/                   @n8n-io/nodes
packages/@n8n/eslint-plugin-community-nodes/            @n8n-io/nodes
packages/@n8n/computer-use/                             @n8n-io/nodes
packages/@n8n/local-gateway/                            @n8n-io/nodes
packages/@n8n/mcp-browser/                              @n8n-io/nodes
packages/@n8n/mcp-browser-extension/                    @n8n-io/nodes

# IAM

packages/@n8n/permissions/                              @n8n-io/iam
packages/@n8n/client-oauth2/                            @n8n-io/iam

# LiGo

packages/extensions/insights/                           @n8n-io/ligo

# CI/CD

.github/                                       					@n8n-io/qa-dx
docker/                                                 @n8n-io/qa-dx

# QA

packages/testing/                                       @n8n-io/qa-dx
packages/@n8n/benchmark/                                @n8n-io/qa-dx
packages/@n8n/vitest-config/                            @n8n-io/qa-dx
