Overview
File Change Frequency Overall
  • There are 7 files with 964 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 0 files changed 51-100 times (0 lines of code)
    • 0 files changed 21-50 times (0 lines of code)
    • 0 files changed 6-20 times (0 lines of code)
    • 7 files changed 1-5 times (964 lines of code)
0% | 0% | 0% | 0% | 100%
Legend:
101+
51-100
21-50
6-20
1-5

explore: grouped by folders | grouped by update frequency | data
Contributors Count Frequency Overall
  • There are 7 files with 964 lines of code.
    • 0 files changed by more than 25 contributors (0 lines of code)
    • 0 files changed by 11-25 contributors (0 lines of code)
    • 0 files changed by 6-10 contributors (0 lines of code)
    • 0 files changed by 2-5 contributors (0 lines of code)
    • 7 files changed by 1 contributor (964 lines of code)
0% | 0% | 0% | 0% | 100%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
ts, json, svg, py, md, yml, mjs, txt, gitignore, toml, yaml, pyi, css, html, prettierignore
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
py0% | 0% | 0% | 0% | 100%
ts0% | 0% | 0% | 0% | 100%
yaml0% | 0% | 0% | 0% | 100%
pyi0% | 0% | 0% | 0% | 0%
mjs0% | 0% | 0% | 0% | 0%
html0% | 0% | 0% | 0% | 0%
css0% | 0% | 0% | 0% | 0%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
python0% | 0% | 0% | 0% | 100%
plugins0% | 0% | 0% | 0% | 100%
.github0% | 0% | 0% | 0% | 100%
typescript0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 0%
Most Frequently Changed Files (Top 50)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
config.yml
in .github/ISSUE_TEMPLATE
1 - 2026-10-06 2026-10-06 1 1 +1 / -0 victor@openai.com victor@openai.com
request.yml
in .github/ISSUE_TEMPLATE
23 - 2026-10-06 2026-10-06 1 1 +29 / -6 victor@openai.com victor@openai.com
_resource_picker.py
in python/src/openai_mcp_extensions/form
42 3 2026-09-29 2026-09-29 1 1 +3 / -2 victor@openai.com victor@openai.com
bug-report.yml
in .github/ISSUE_TEMPLATE
52 - 2026-10-06 2026-10-06 1 1 +64 / -12 victor@openai.com victor@openai.com
file-picker.ts
in typescript/src/server/forms
70 1 2026-09-29 2026-09-29 1 1 +1 / -0 victor@openai.com victor@openai.com
catalog.ts
in plugins/bits-and-bolts/src/server
367 21 2026-09-29 2026-09-29 1 1 +48 / -5 jbeckwith@openai.com jbeckwith@openai.com
__init__.py
in python/src/openai_mcp_form_protocol
409 22 2026-09-29 2026-09-29 1 1 +2 / -0 victor@openai.com victor@openai.com
resources.ts
in typescript/src/shared
1 -
strings.ts
in typescript/src/shared
2 -
pyi
__init__.pyi
in python/typings/rfc3986_validator
2 1
index.ts
in plugins/bits-and-bolts/src/app
3 -
file-entrypoint.ts
in typescript/src/shared
11 -
dependabot.yml
in .github
12 -
_models.py
in python/src/openai_mcp_extensions
12 -
extensions.ts
in typescript/src/server
17 1
vite.config.ts
in plugins/bits-and-bolts
17 1
__init__.py
in python/src/openai_mcp_extensions/form
18 -
resources.ts
in typescript/src/server
19 1
resources.py
in python/src/openai_mcp_extensions
21 1
stl.ts
in plugins/bits-and-bolts/src/app/shared
24 1
extensions.py
in python/src/openai_mcp_extensions
25 2
index.ts
in plugins/bits-and-bolts/src/server
30 1
_schema.py
in python/src/openai_mcp_extensions/form
30 5
31 -
store.ts
in plugins/bits-and-bolts/src/server
31 -
package_marketplace.py
in .github/scripts
36 -
files.ts
in typescript/src/app
36 1
deep-link.ts
in typescript/src/app
36 1
mjs
build-app.mjs
in plugins/bits-and-bolts/scripts
38 -
ui.py
in python/src/openai_mcp_extensions
39 -
message.ts
in typescript/src/app
41 1
ui.ts
in typescript/src/server
42 -
types.ts
in plugins/bits-and-bolts/src/app/renderers
46 -
local-store.ts
in plugins/bits-and-bolts/src/server
49 8
contracts.ts
in plugins/bits-and-bolts/src/shared
51 -
model-context.ts
in typescript/src/app
52 2
index.ts
in typescript/src/app
56 -
elicitation.ts
in typescript/src/server/forms
61 1
mentions.py
in python/src/openai_mcp_extensions
61 3
forms.ts
in plugins/bits-and-bolts/src/server
62 1
_elicitation.py
in python/src/openai_mcp_extensions/form
65 -
mjs
dev.mjs
in plugins/bits-and-bolts/scripts
69 -
mjs
build.mjs
in plugins/bits-and-bolts/scripts
70 -
inspection.ts
in plugins/bits-and-bolts/src/app/viewer
71 2
extensions.ts
in typescript/src/app
74 5
prepare-legends.py
in plugins/bits-and-bolts/scripts
74 1
mentions.ts
in typescript/src/server
75 1
lighting.ts
in plugins/bits-and-bolts/src/app/shared
75 1
fields.ts
in typescript/src/server/forms
76 -
index.ts
in typescript/src/server
77 -
Files With Most Churn (Top 50)
Based on the number of lines added and deleted across all commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
bug-report.yml
in .github/ISSUE_TEMPLATE
52 - 2026-10-06 2026-10-06 1 1 +64 / -12 victor@openai.com victor@openai.com
catalog.ts
in plugins/bits-and-bolts/src/server
367 21 2026-09-29 2026-09-29 1 1 +48 / -5 jbeckwith@openai.com jbeckwith@openai.com
request.yml
in .github/ISSUE_TEMPLATE
23 - 2026-10-06 2026-10-06 1 1 +29 / -6 victor@openai.com victor@openai.com
_resource_picker.py
in python/src/openai_mcp_extensions/form
42 3 2026-09-29 2026-09-29 1 1 +3 / -2 victor@openai.com victor@openai.com
__init__.py
in python/src/openai_mcp_form_protocol
409 22 2026-09-29 2026-09-29 1 1 +2 / -0 victor@openai.com victor@openai.com
config.yml
in .github/ISSUE_TEMPLATE
1 - 2026-10-06 2026-10-06 1 1 +1 / -0 victor@openai.com victor@openai.com
file-picker.ts
in typescript/src/server/forms
70 1 2026-09-29 2026-09-29 1 1 +1 / -0 victor@openai.com victor@openai.com
resources.ts
in typescript/src/shared
1 -
strings.ts
in typescript/src/shared
2 -
pyi
__init__.pyi
in python/typings/rfc3986_validator
2 1
index.ts
in plugins/bits-and-bolts/src/app
3 -
file-entrypoint.ts
in typescript/src/shared
11 -
dependabot.yml
in .github
12 -
_models.py
in python/src/openai_mcp_extensions
12 -
extensions.ts
in typescript/src/server
17 1
vite.config.ts
in plugins/bits-and-bolts
17 1
__init__.py
in python/src/openai_mcp_extensions/form
18 -
resources.ts
in typescript/src/server
19 1
resources.py
in python/src/openai_mcp_extensions
21 1
stl.ts
in plugins/bits-and-bolts/src/app/shared
24 1
extensions.py
in python/src/openai_mcp_extensions
25 2
index.ts
in plugins/bits-and-bolts/src/server
30 1
_schema.py
in python/src/openai_mcp_extensions/form
30 5
31 -
store.ts
in plugins/bits-and-bolts/src/server
31 -
package_marketplace.py
in .github/scripts
36 -
files.ts
in typescript/src/app
36 1
deep-link.ts
in typescript/src/app
36 1
mjs
build-app.mjs
in plugins/bits-and-bolts/scripts
38 -
ui.py
in python/src/openai_mcp_extensions
39 -
message.ts
in typescript/src/app
41 1
ui.ts
in typescript/src/server
42 -
types.ts
in plugins/bits-and-bolts/src/app/renderers
46 -
local-store.ts
in plugins/bits-and-bolts/src/server
49 8
contracts.ts
in plugins/bits-and-bolts/src/shared
51 -
model-context.ts
in typescript/src/app
52 2
index.ts
in typescript/src/app
56 -
elicitation.ts
in typescript/src/server/forms
61 1
mentions.py
in python/src/openai_mcp_extensions
61 3
forms.ts
in plugins/bits-and-bolts/src/server
62 1
_elicitation.py
in python/src/openai_mcp_extensions/form
65 -
mjs
dev.mjs
in plugins/bits-and-bolts/scripts
69 -
mjs
build.mjs
in plugins/bits-and-bolts/scripts
70 -
inspection.ts
in plugins/bits-and-bolts/src/app/viewer
71 2
extensions.ts
in typescript/src/app
74 5
prepare-legends.py
in plugins/bits-and-bolts/scripts
74 1
mentions.ts
in typescript/src/server
75 1
lighting.ts
in plugins/bits-and-bolts/src/app/shared
75 1
fields.ts
in typescript/src/server/forms
76 -
index.ts
in typescript/src/server
77 -
Files With Most Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
_resource_picker.py
in python/src/openai_mcp_extensions/form
42 3 2026-09-29 2026-09-29 1 1 +3 / -2 victor@openai.com victor@openai.com
__init__.py
in python/src/openai_mcp_form_protocol
409 22 2026-09-29 2026-09-29 1 1 +2 / -0 victor@openai.com victor@openai.com
catalog.ts
in plugins/bits-and-bolts/src/server
367 21 2026-09-29 2026-09-29 1 1 +48 / -5 jbeckwith@openai.com jbeckwith@openai.com
file-picker.ts
in typescript/src/server/forms
70 1 2026-09-29 2026-09-29 1 1 +1 / -0 victor@openai.com victor@openai.com
bug-report.yml
in .github/ISSUE_TEMPLATE
52 - 2026-10-06 2026-10-06 1 1 +64 / -12 victor@openai.com victor@openai.com
request.yml
in .github/ISSUE_TEMPLATE
23 - 2026-10-06 2026-10-06 1 1 +29 / -6 victor@openai.com victor@openai.com
config.yml
in .github/ISSUE_TEMPLATE
1 - 2026-10-06 2026-10-06 1 1 +1 / -0 victor@openai.com victor@openai.com
pyi
__init__.pyi
in python/typings/rfc3986_validator
2 1
_schema.py
in python/src/openai_mcp_extensions/form
30 5
__init__.py
in python/src/openai_mcp_extensions/form
18 -
_elicitation.py
in python/src/openai_mcp_extensions/form
65 -
ui.py
in python/src/openai_mcp_extensions
39 -
__init__.py
in python/src/openai_mcp_extensions
78 -
extensions.py
in python/src/openai_mcp_extensions
25 2
settings.py
in python/src/openai_mcp_extensions
248 8
resources.py
in python/src/openai_mcp_extensions
21 1
mentions.py
in python/src/openai_mcp_extensions
61 3
_models.py
in python/src/openai_mcp_extensions
12 -
model_gltf.py
in plugins/bits-and-bolts/scripts
120 2
model_studio.py
in plugins/bits-and-bolts/scripts
187 5
build-models.py
in plugins/bits-and-bolts/scripts
643 21
mjs
build.mjs
in plugins/bits-and-bolts/scripts
70 -
prepare-legends.py
in plugins/bits-and-bolts/scripts
74 1
mjs
build-app.mjs
in plugins/bits-and-bolts/scripts
38 -
mjs
dev.mjs
in plugins/bits-and-bolts/scripts
69 -
vite.config.ts
in plugins/bits-and-bolts
17 1
types.ts
in plugins/bits-and-bolts/src/app/renderers
46 -
three.ts
in plugins/bits-and-bolts/src/app/renderers
160 12
index.html
in plugins/bits-and-bolts/src/app
217 -
stl.ts
in plugins/bits-and-bolts/src/app/shared
24 1
model.ts
in plugins/bits-and-bolts/src/app/shared
129 4
lighting.ts
in plugins/bits-and-bolts/src/app/shared
75 1
preview.ts
in plugins/bits-and-bolts/src/app/shared
96 1
step-worker.ts
in plugins/bits-and-bolts/src/app/viewer
111 1
inspection.ts
in plugins/bits-and-bolts/src/app/viewer
71 2
model.ts
in plugins/bits-and-bolts/src/app/viewer
106 3
scene.ts
in plugins/bits-and-bolts/src/app/viewer
535 30
index.ts
in plugins/bits-and-bolts/src/app
3 -
controller.ts
in plugins/bits-and-bolts/src/app
1129 32
local-store.ts
in plugins/bits-and-bolts/src/server
49 8
forms.ts
in plugins/bits-and-bolts/src/server
62 1
index.ts
in plugins/bits-and-bolts/src/server
30 1
register.ts
in plugins/bits-and-bolts/src/server
541 12
store.ts
in plugins/bits-and-bolts/src/server
31 -
contracts.ts
in plugins/bits-and-bolts/src/shared
51 -
styles.css
in typescript
296 -
deep-link.ts
in typescript/src/app
36 1
resources.ts
in typescript/src/app
221 5
extensions.ts
in typescript/src/app
74 5
message.ts
in typescript/src/app
41 1
Files With Least Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
controller.ts
in plugins/bits-and-bolts/src/app
1129 32
build-models.py
in plugins/bits-and-bolts/scripts
643 21
register.ts
in plugins/bits-and-bolts/src/server
541 12
scene.ts
in plugins/bits-and-bolts/src/app/viewer
535 30
styles.css
in typescript
296 -
settings.ts
in typescript/src/server
258 1
settings.py
in python/src/openai_mcp_extensions
248 8
resources.ts
in typescript/src/app
221 5
index.html
in plugins/bits-and-bolts/src/app
217 -
mjs
rehearse_releases.mjs
in .github/scripts
188 -
model_studio.py
in plugins/bits-and-bolts/scripts
187 5
three.ts
in plugins/bits-and-bolts/src/app/renderers
160 12
model.ts
in plugins/bits-and-bolts/src/app/shared
129 4
model_gltf.py
in plugins/bits-and-bolts/scripts
120 2
transport.ts
in typescript/src/app
115 5
step-worker.ts
in plugins/bits-and-bolts/src/app/viewer
111 1
model.ts
in plugins/bits-and-bolts/src/app/viewer
106 3
preview.ts
in plugins/bits-and-bolts/src/app/shared
96 1
check_packages.py
in .github/scripts
83 1
schema.ts
in typescript/src/server/forms
81 3
__init__.py
in python/src/openai_mcp_extensions
78 -
index.ts
in typescript/src/server
77 -
fields.ts
in typescript/src/server/forms
76 -
lighting.ts
in plugins/bits-and-bolts/src/app/shared
75 1
mentions.ts
in typescript/src/server
75 1
prepare-legends.py
in plugins/bits-and-bolts/scripts
74 1
extensions.ts
in typescript/src/app
74 5
inspection.ts
in plugins/bits-and-bolts/src/app/viewer
71 2
mjs
build.mjs
in plugins/bits-and-bolts/scripts
70 -
mjs
dev.mjs
in plugins/bits-and-bolts/scripts
69 -
_elicitation.py
in python/src/openai_mcp_extensions/form
65 -
forms.ts
in plugins/bits-and-bolts/src/server
62 1
mentions.py
in python/src/openai_mcp_extensions
61 3
elicitation.ts
in typescript/src/server/forms
61 1
index.ts
in typescript/src/app
56 -
model-context.ts
in typescript/src/app
52 2
contracts.ts
in plugins/bits-and-bolts/src/shared
51 -
local-store.ts
in plugins/bits-and-bolts/src/server
49 8
types.ts
in plugins/bits-and-bolts/src/app/renderers
46 -
ui.ts
in typescript/src/server
42 -
message.ts
in typescript/src/app
41 1
ui.py
in python/src/openai_mcp_extensions
39 -
mjs
build-app.mjs
in plugins/bits-and-bolts/scripts
38 -
deep-link.ts
in typescript/src/app
36 1
files.ts
in typescript/src/app
36 1
package_marketplace.py
in .github/scripts
36 -
store.ts
in plugins/bits-and-bolts/src/server
31 -
31 -
_schema.py
in python/src/openai_mcp_extensions/form
30 5
index.ts
in plugins/bits-and-bolts/src/server
30 1
Correlations

File Size vs. Number of Changes: 7 points

.github/ISSUE_TEMPLATE/request.yml x: 23 lines of code y: 1 # changes .github/ISSUE_TEMPLATE/bug-report.yml x: 52 lines of code y: 1 # changes .github/ISSUE_TEMPLATE/config.yml x: 1 lines of code y: 1 # changes plugins/bits-and-bolts/src/server/catalog.ts x: 367 lines of code y: 1 # changes python/src/openai_mcp_extensions/form/_resource_picker.py x: 42 lines of code y: 1 # changes python/src/openai_mcp_form_protocol/__init__.py x: 409 lines of code y: 1 # changes typescript/src/server/forms/file-picker.ts x: 70 lines of code y: 1 # changes
1.0
# changes
  min: 1.0
  average: 1.0
  25th percentile: 1.0
  median: 1.0
  75th percentile: 1.0
  max: 1.0
0 409.0
lines of code
min: 1.0 | average: 137.71 | 25th percentile: 23.0 | median: 52.0 | 75th percentile: 367.0 | max: 409.0

Number of Contributors vs. Number of Changes: 7 points

.github/ISSUE_TEMPLATE/request.yml x: 1 # contributors y: 1 # changes
1.0
# changes
  min: 1.0
  average: 1.0
  25th percentile: 1.0
  median: 1.0
  75th percentile: 1.0
  max: 1.0
0 1.0
# contributors
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

Number of Contributors vs. File Size: 7 points

.github/ISSUE_TEMPLATE/request.yml x: 1 # contributors y: 23 lines of code .github/ISSUE_TEMPLATE/bug-report.yml x: 1 # contributors y: 52 lines of code .github/ISSUE_TEMPLATE/config.yml x: 1 # contributors y: 1 lines of code plugins/bits-and-bolts/src/server/catalog.ts x: 1 # contributors y: 367 lines of code python/src/openai_mcp_extensions/form/_resource_picker.py x: 1 # contributors y: 42 lines of code python/src/openai_mcp_form_protocol/__init__.py x: 1 # contributors y: 409 lines of code typescript/src/server/forms/file-picker.ts x: 1 # contributors y: 70 lines of code
409.0
lines of code
  min: 1.0
  average: 137.71
  25th percentile: 23.0
  median: 52.0
  75th percentile: 367.0
  max: 409.0
0 1.0
# contributors
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

Number of Changes vs. Line Churn: 22 points

.github/ISSUE_TEMPLATE/request.yml x: 1 # changes y: 35 line churn .github/ISSUE_TEMPLATE/bug-report.yml x: 1 # changes y: 76 line churn .github/ISSUE_TEMPLATE/wishlist.md x: 1 # changes y: 28 line churn .github/ISSUE_TEMPLATE/config.yml x: 1 # changes y: 1 line churn .github/ISSUE_TEMPLATE/extension-proposal.md x: 2 # changes y: 28 line churn docs/spec.md x: 2 # changes y: 61 line churn .github/workflows/checks.yml x: 1 # changes y: 3 line churn plugins/bits-and-bolts/scripts/test.mjs x: 1 # changes y: 8 line churn plugins/bits-and-bolts/src/server/catalog-import.test.ts x: 1 # changes y: 207 line churn plugins/bits-and-bolts/src/server/catalog.ts x: 1 # changes y: 53 line churn pnpm-lock.yaml x: 1 # changes y: 48 line churn python/CHANGELOG.md x: 1 # changes y: 13 line churn python/README.md x: 1 # changes y: 7 line churn python/src/openai_mcp_extensions/form/_resource_picker.py x: 1 # changes y: 5 line churn python/src/openai_mcp_form_protocol/__init__.py x: 1 # changes y: 2 line churn README.md x: 1 # changes y: 20 line churn
207.0
line churn
  min: 1.0
  average: 28.27
  25th percentile: 2.75
  median: 8.0
  75th percentile: 38.25
  max: 207.0
0 2.0
# changes
min: 1.0 | average: 1.09 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 2.0

Number of Contributors vs. Line Churn: 7 points

.github/ISSUE_TEMPLATE/request.yml x: 1 # contributors y: 35 line churn .github/ISSUE_TEMPLATE/bug-report.yml x: 1 # contributors y: 76 line churn .github/ISSUE_TEMPLATE/config.yml x: 1 # contributors y: 1 line churn plugins/bits-and-bolts/src/server/catalog.ts x: 1 # contributors y: 53 line churn python/src/openai_mcp_extensions/form/_resource_picker.py x: 1 # contributors y: 5 line churn python/src/openai_mcp_form_protocol/__init__.py x: 1 # contributors y: 2 line churn
76.0
line churn
  min: 1.0
  average: 24.71
  25th percentile: 1.0
  median: 5.0
  75th percentile: 53.0
  max: 76.0
0 1.0
# contributors
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

File Size vs. Line Churn: 7 points

.github/ISSUE_TEMPLATE/request.yml x: 23 lines of code y: 35 line churn .github/ISSUE_TEMPLATE/bug-report.yml x: 52 lines of code y: 76 line churn .github/ISSUE_TEMPLATE/config.yml x: 1 lines of code y: 1 line churn plugins/bits-and-bolts/src/server/catalog.ts x: 367 lines of code y: 53 line churn python/src/openai_mcp_extensions/form/_resource_picker.py x: 42 lines of code y: 5 line churn python/src/openai_mcp_form_protocol/__init__.py x: 409 lines of code y: 2 line churn typescript/src/server/forms/file-picker.ts x: 70 lines of code y: 1 line churn
76.0
line churn
  min: 1.0
  average: 24.71
  25th percentile: 1.0
  median: 5.0
  75th percentile: 53.0
  max: 76.0
0 409.0
lines of code
min: 1.0 | average: 137.71 | 25th percentile: 23.0 | median: 52.0 | 75th percentile: 367.0 | max: 409.0