File Complexity Overall
  • There are 51 files with units, with 10,938 lines of code.
    • 0 very complex files (McCabe index sum 251+; 0 lines of code)
    • 3 complex files (McCabe index sum 126-250; 2,132 lines of code)
    • 11 medium complex files (McCabe index sum 51-125; 4,620 lines of code)
    • 11 slightly complex files (McCabe index sum 26-50; 1,984 lines of code)
    • 26 simple files (McCabe index sum 1-25; 2,202 lines of code)
  • 68 main files have no units (e.g. languages without unit analysis, or files without functions) and are not classified.
system0% | 19% | 42% | 18% | 20%
Legend:
251+
126-250
51-125
26-50
1-25


explore: grouped by folders | grouped by complexity
File Complexity per Extension
251+
126-250
51-125
26-50
1-25
py0% | 21% | 46% | 17% | 14%
js0% | 0% | 0% | 29% | 70%
swift0% | 0% | 0% | 0% | 100%
File Complexity per Logical Decomposition
primary
251+
126-250
51-125
26-50
1-25
skills0% | 19% | 42% | 18% | 20%
Most Complex Files (Top 50)

The McCabe index of a file grows with its size: per 100 lines tells a large but plain file from a dense one, and most complex unit whether the complexity sits in one unit or is spread over many.

File# lines# unitsMcCabe index
(sum)
per 100
lines
most complex
unit
take_screenshot.py
in skills/.curated/screenshot/scripts
503 30 184 37 68
image_gen.py
in skills/.system/imagegen/scripts
760 48 175 23 17
build_ownership_map.py
in skills/.curated/security-ownership-map/scripts
869 17 138 16 89
inspect_pr_checks.py
in skills/.curated/gh-fix-ci/scripts
425 27 121 28 18
text_to_speech.py
in skills/.curated/speech/scripts
430 27 112 26 20
query_ownership.py
in skills/.curated/security-ownership-map/scripts
410 23 102 25 13
prepare_pet_run.py
in skills/.curated/hatch-pet/scripts
705 27 98 14 23
util.py
in skills/.curated/migrate-to-codex/scripts/utils
243 22 91 37 12
cli.py
in skills/.curated/migrate-to-codex/scripts
792 28 83 10 30
install-skill-from-github.py
in skills/.system/skill-installer/scripts
255 19 79 31 13
community_maintainers.py
in skills/.curated/security-ownership-map/scripts
480 18 78 16 40
common.py
in skills/.curated/migrate-to-codex/scripts/migrate
306 33 72 24 9
extract_strip_frames.py
in skills/.curated/hatch-pet/scripts
347 16 64 18 17
transcribe_diarize.py
in skills/.curated/transcribe/scripts
227 16 56 25 19
generate_openai_yaml.py
in skills/.system/skill-creator/scripts
184 7 46 25 10
init_skill.py
in skills/.system/skill-creator/scripts
180 7 42 23 12
hooks.py
in skills/.curated/migrate-to-codex/scripts/migrate
202 11 39 19 12
skills.py
in skills/.curated/migrate-to-codex/scripts/migrate
336 19 37 11 8
resolve-latest-model-info.js
in skills/.system/openai-docs/scripts
116 12 35 30 7
resolve-latest-model-info.js
in skills/.curated/openai-docs/scripts
116 12 35 30 7
inspect_frames.py
in skills/.curated/hatch-pet/scripts
222 9 34 15 9
compose_atlas.py
in skills/.curated/hatch-pet/scripts
142 8 31 22 7
validate_atlas.py
in skills/.curated/hatch-pet/scripts
131 3 30 23 23
create_basic_plugin.py
in skills/.system/plugin-creator/scripts
255 12 27 11 8
new_notebook.py
in skills/.curated/jupyter-notebook/scripts
100 7 27 27 12
fetch_comments.py
in skills/.curated/gh-address-comments/scripts
113 8 24 21 14
agents.py
in skills/.curated/migrate-to-codex/scripts/migrate
280 10 23 8 7
derive_running_left_from_running_right.py
in skills/.curated/hatch-pet/scripts
121 7 22 18 10
quick_validate.py
in skills/.system/skill-creator/scripts
77 1 21 27 21
list-skills.py
in skills/.system/skill-installer/scripts
83 6 19 23 6
mcps.py
in skills/.curated/migrate-to-codex/scripts/migrate
183 9 19 10 6
cleanupOrphans.js
in skills/.curated/figma-generate-library/scripts
73 2 18 25 16
rehydrateState.js
in skills/.curated/figma-generate-library/scripts
69 1 16 23 16
createSemanticTokens.js
in skills/.curated/figma-generate-library/scripts
52 2 16 31 13
bindVariablesToComponent.js
in skills/.curated/figma-generate-library/scripts
72 1 15 21 15
run_ownership_map.py
in skills/.curated/security-ownership-map/scripts
186 2 15 8 14
createComponentWithVariants.js
in skills/.curated/figma-generate-library/scripts
75 2 11 15 10
validateCreation.js
in skills/.curated/figma-generate-library/scripts
42 1 11 26 11
render_animation_previews.py
in skills/.curated/hatch-pet/scripts
60 4 10 17 4
inspectFileStructure.js
in skills/.curated/figma-generate-library/scripts
76 1 9 12 9
codex_config.py
in skills/.curated/migrate-to-codex/scripts/migrate
109 3 8 7 4
make_contact_sheet.py
in skills/.curated/hatch-pet/scripts
80 2 8 10 4
instructions.py
in skills/.curated/migrate-to-codex/scripts/migrate
61 3 6 10 3
createDocumentationPage.js
in skills/.curated/figma-generate-library/scripts
84 1 6 7 6
scan.py
in skills/.curated/migrate-to-codex/scripts/utils
111 5 5 5 1
createVariableCollection.js
in skills/.curated/figma-generate-library/scripts
19 1 5 26 5
github_utils.py
in skills/.system/skill-installer/scripts
13 2 4 31 3
normalize_node_id.py
in skills/.curated/figma-code-connect-components/scripts
17 1 4 24 4
macos_permissions.swift
in skills/.curated/screenshot/scripts
34 1 3 9 3
macos_window_info.swift
in skills/.curated/screenshot/scripts
107 2 3 3 2
About This Analysis
  • File complexity is the sum of the McCabe indexes (conditional complexity) of the units (methods, functions...) in a file.
  • Files are classified in five categories based on that sum: 1-25 (simple files), 26-50 (slightly complex files), 51-125 (medium complex files), 126-250 (complex files), 251+ (very complex files). The default bands are five times the unit complexity bands, as a file is a group of units.
  • Only main code files with units are classified. Files without units (languages without unit analysis, or files without functions) have no complexity to measure and are left out rather than counted as simple.
  • A very complex file holds many decisions, which often means it has too many responsibilities: a candidate to split, and a place where changes need more testing.
Learn more...