Feature Request: Detect meta-repos, microservices repos, and single-project repos
Problem
Codesight currently classifies all multi-workspace repos as isMonorepo: true with no further distinction. This is inaccurate for two common patterns:
Meta-repos — repositories that aggregate multiple independent, unrelated projects (e.g. via git submodules). These are fundamentally different from a monorepo: the workspaces are not part of the same product, don't share tooling, and may have completely separate
ownership. AI context generated for a meta-repo should reflect that structure rather than implying a single unified codebase.
Microservices repos — repositories containing multiple independently deployable services, often with per-service Dockerfiles and infra orchestration (Kubernetes, Helm). Labelling these as a "monorepo" loses meaningful architectural signal for AI tools.
Proposed Solution
Add a repoType field to ProjectInfo with four values:
single — one project, no workspaces
monorepo — shared codebase, multiple packages/apps under common tooling
microservices — multiple independently deployable services (Dockerfiles per service, k8s/helm configs)
meta — aggregation of independent projects (git submodules via .gitmodules)
Detection signals:
- meta:
.gitmodules present at root
- microservices:
k8s/, kubernetes/, or helm/ directory at root, or 2+ workspaces each containing a Dockerfile
- monorepo: existing workspace detection (unchanged)
- single: no workspaces detected
The label should propagate through all outputs: CODESIGHT.md, AI config, HTML report badge, wiki, and MCP server summary.
Expected Output
Meta-repo:
▎ Meta-repo: project-a, project-b, project-c
Microservices:
▎ Microservices: auth, payments, notifications
Monorepo (unchanged):
▎ Monorepo: api (apps/api), web (apps/web)
Feature Request: Detect meta-repos, microservices repos, and single-project repos
Problem
Codesight currently classifies all multi-workspace repos as
isMonorepo: truewith no further distinction. This is inaccurate for two common patterns:Meta-repos — repositories that aggregate multiple independent, unrelated projects (e.g. via git submodules). These are fundamentally different from a monorepo: the workspaces are not part of the same product, don't share tooling, and may have completely separate
ownership. AI context generated for a meta-repo should reflect that structure rather than implying a single unified codebase.
Microservices repos — repositories containing multiple independently deployable services, often with per-service Dockerfiles and infra orchestration (Kubernetes, Helm). Labelling these as a "monorepo" loses meaningful architectural signal for AI tools.
Proposed Solution
Add a
repoTypefield toProjectInfowith four values:single— one project, no workspacesmonorepo— shared codebase, multiple packages/apps under common toolingmicroservices— multiple independently deployable services (Dockerfiles per service, k8s/helm configs)meta— aggregation of independent projects (git submodules via.gitmodules)Detection signals:
.gitmodulespresent at rootk8s/,kubernetes/, orhelm/directory at root, or 2+ workspaces each containing aDockerfileThe label should propagate through all outputs: CODESIGHT.md, AI config, HTML report badge, wiki, and MCP server summary.
Expected Output
Meta-repo:
▎ Meta-repo: project-a, project-b, project-c
Microservices:
▎ Microservices: auth, payments, notifications
Monorepo (unchanged):
▎ Monorepo: api (apps/api), web (apps/web)