/home/jarancibia/pr/multi-assistant - codebase size report

/home/jarancibia/pr/multi-assistant codebase size report

Generated by codebase-size · excludes node_modules, .git, coverage, uploads, data, *.db, in-memoria files · counts are non-blank/non-comment source lines unless noted.

Monolith
78 / 100 mass score

1140 files · 268691 code lines - this codebase is large enough that no agent can hold the whole thing in context at once. The primary metric to move is total LOC.

Bloat grade: D · 126 files exceed 500 LOC (11.1%) · next class down (Platform) requires removing 18691 code lines.

FragmentSnippetModuleServicePlatformMonolithMegasystemGalaxy

The number that matters: total LOC

335981
total lines
268691
code lines
23214
comment lines
44076
blank lines
1140
files
126
files > 500 LOC

79.9% of all lines are code · 13.1% blank · 6.9% comments · 235 code lines per file

Size classification scale

classcode linesmass scoremeaning
Fragment0 - < 10000 - 10Fits in a single prompt
Snippet1000 - < 1000010 - 25One person can rewrite it in a day
Module10000 - < 5000025 - 45Small team, well-contained
Service50000 - < 10000045 - 60Typical microservice territory
Platform100000 - < 25000060 - 75Context must be chunked
Monolith250000 - < 50000075 - 90No agent can load it all
Megasystem500000 - < 100000090 - 98Requires architectural decomposition
Galaxy1000000 - +98 - 100Multiple products or decades of growth

Mass score combines size class (from total code LOC) with a bloat penalty derived from the percentage of files that exceed 500 LOC.

By language

languagefilescode lines% of code
JavaScript113126817399.8%
Shell95180.1%

Heavy directories

directoryfilescode lines% of code
src59814676754.6%
__tests__2407748328.8%
scripts1953695813.7%
ma-cli6339241.4%
plugins4033481.2%
examples11080.0%
(root)31030.0%

Largest files by code lines 126 files exceed 500 LOC

Top 25 shown.

rankfilecode linestotal lines
1/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/chatv4/ChatV4.js26213217
2/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/assistants-v1/AssistantManager.js21992715
3/home/jarancibia/pr/multi-assistant/src/services/RemoteFSTemplates.js21112405
4/home/jarancibia/pr/multi-assistant/src/ws/chat-old.js20152469
5/home/jarancibia/pr/multi-assistant/__tests__/cli-websocket.test.js19002244
6/home/jarancibia/pr/multi-assistant/src/routes/api/rag.js14661756
7/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/chatv4/ChatV4Styles.js14571812
8/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/OpenAPIToolManager.js12361430
9/home/jarancibia/pr/multi-assistant/__tests__/routes/workflows-route.test.js12241788
10/home/jarancibia/pr/multi-assistant/__tests__/RemoteFSTemplates.test.js11691524
11/home/jarancibia/pr/multi-assistant/scripts/migration-cli.js11061461
12/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/DataStashViewer.js10621153
13/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/ScriptSandbox.js10371166
14/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/system-settings/SystemSettingsSchema.js10331058
15/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/DataSources/FileDataSourceForm.js10321183
16/home/jarancibia/pr/multi-assistant/__tests__/routes/datasources-route.test.js10251343
17/home/jarancibia/pr/multi-assistant/__tests__/routes/projects-layer-route.test.js10131157
18/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/AssistantManagerWizard.js9861248
19/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/RemoteFSServersManager.js9601059
20/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/SessionHistoryViewer.js9561039
21/home/jarancibia/pr/multi-assistant/__tests__/DataStashService.test.js9481090
22/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/PublishableKeysManager.js9191022
23/home/jarancibia/pr/multi-assistant/src/routes/api/workflows.js8961105
24/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/chatv5/ChatV5Styles.js8801059
25/home/jarancibia/pr/multi-assistant/src/public/js/modules/components/UIToolManager.js874959

Refactor focus: ship less code

Goal: move down one size class

This codebase is a Monolith (78/100). The immediate goal is to get below the next threshold and become a Platform. That means removing at least 18691 code lines without replacing them.

Quick wins

  • Delete dead code first. Look for old/backends, duplicate components, and one-off scripts that are no longer reachable.
  • Merge duplicates. Parallel implementations (e.g. v4/v5 styles, assistant managers) share a single core.
  • Split every file > 500 LOC. Each oversized file is a forced context window; extract sub-components, routes, or services.
  • Track a LOC budget. Set a maximum total code line count per release and make deletion the first step of every refactor.
≡ hart

Hosted on hart

machin-loc/multi-assistantunlisted
🏠 hart home🔎 Explore public👤 More from machin-loc