Code Ownership

Ownership is measured by how many commits each author made to each file in the current tree. It highlights bus-factor risk (files only one person has ever touched) and where knowledge is concentrated. The bus factor is the smallest number of people who are, between them, primary owner of more than half of the files.

Files Tracked
3,026
in the current tree
Bus Factor
12
12 authors are primary owner of 1,539 of 3,026 files
Single-Owner Files
952
31.5% of tracked files
Contributors
644
authors who changed files

Bus factor risk — single-owner files

Files only one author has ever changed. The more a file has changed, the more knowledge is at risk if that person leaves.

FileSole ownerCommits
packages/core/src/context/system-tests/__snapshots__/lifecycle.golden.test.ts.snapjoshualitt9
packages/core/src/context/graph/render.tsjoshualitt8
.github/workflows/gemini-cli-bot-brain.ymlChristian Gunderman8
packages/core/src/agents/skill-extraction-agent.tsSandy Tao7
packages/core/src/services/memoryService.test.tsSandy Tao7
packages/core/src/services/memoryService.tsSandy Tao7
packages/core/src/context/config/profiles.tsjoshualitt7
packages/core/src/context/graph/toGraph.tsjoshualitt7
packages/core/src/context/system-tests/simulationHarness.tsjoshualitt7
packages/core/src/context/testing/contextTestUtils.tsjoshualitt7
Table: the 100 most-changed of 952 single-owner files
FileSole ownerCommits
packages/core/src/context/system-tests/__snapshots__/lifecycle.golden.test.ts.snapjoshualitt9
packages/core/src/context/graph/render.tsjoshualitt8
.github/workflows/gemini-cli-bot-brain.ymlChristian Gunderman8
packages/core/src/agents/skill-extraction-agent.tsSandy Tao7
packages/core/src/services/memoryService.test.tsSandy Tao7
packages/core/src/services/memoryService.tsSandy Tao7
packages/core/src/context/config/profiles.tsjoshualitt7
packages/core/src/context/graph/toGraph.tsjoshualitt7
packages/core/src/context/system-tests/simulationHarness.tsjoshualitt7
packages/core/src/context/testing/contextTestUtils.tsjoshualitt7
.gemini/skills/docs-changelog/SKILL.mdSam Roberts7
packages/cli/src/ui/utils/mouse.tsJacob Richman7
packages/cli/src/utils/devtoolsService.test.tsSandy Tao6
tools/caretaker-agent/cloudrun/triage-worker/main.pyChad6
packages/core/src/context/pipeline/orchestrator.tsjoshualitt6
packages/core/src/context/contextManager.barrier.test.tsjoshualitt6
packages/core/src/context/initializer.tsjoshualitt6
packages/core/src/context/system-tests/lifecycle.golden.test.tsjoshualitt6
packages/core/src/context/utils/snapshotGenerator.tsjoshualitt6
tools/caretaker-agent/cloudrun/triage-worker/tests/test_integration_main.pyChad5
tools/caretaker-agent/cloudrun/triage-worker/tests/test_main.pyChad5
packages/core/src/context/graph/render.test.tsjoshualitt5
packages/core/src/context/graph/mapper.tsjoshualitt5
packages/core/src/context/processors/stateSnapshotProcessor.tsjoshualitt5
packages/core/src/context/pipeline/environmentImpl.tsjoshualitt5
.github/scripts/apply-issue-labels.cjsCoco Sheng5
evals/frugalSearch.eval.tsChristian Gunderman5
packages/cli/src/ui/hooks/useAnimatedScrollbar.tsJacob Richman5
packages/cli/src/commands/extensions/examples/mcp-server/gemini-extension.jsonchristine betts5
packages/core/src/agents/skill-extraction-agent.test.tsSandy Tao4
packages/core/src/services/memoryPatchUtils.tsSandy Tao4
evals/skill_extraction.eval.tsSandy Tao4
tools/caretaker-agent/cloudrun/triage-worker/db/issues_store.pyChad4
tools/caretaker-agent/cloudrun/triage-worker/tests/test_issues_store.pyChad4
tools/caretaker-agent/cloudrun/triage-worker/triage_orchestrator.pyChad4
packages/cli/src/ui/key/keybindingUtils.tsTommaso Sciortino4
packages/core/src/context/eventBus.tsjoshualitt4
packages/core/src/context/pipeline/orchestrator.test.tsjoshualitt4
packages/core/src/context/processors/stateSnapshotAsyncProcessor.tsjoshualitt4
packages/core/src/context/processors/rollingSummaryProcessor.tsjoshualitt4
packages/core/src/context/processors/stateSnapshotAsyncProcessor.test.tsjoshualitt4
packages/core/src/context/utils/contextTokenCalculator.tsjoshualitt4
packages/core/src/context/pipeline/contextWorkingBuffer.test.tsjoshualitt4
packages/core/src/context/pipeline/contextWorkingBuffer.tsjoshualitt4
tools/gemini-cli-bot/brain/interactive.mdChristian Gunderman4
evals/answer-vs-act.eval.tsChristian Gunderman4
packages/sdk/SDK_DESIGN.mdMichael Bleigh4
packages/sdk/src/index.tsMichael Bleigh4
packages/core/src/services/trackerTypes.tsanj-s4
docs/cli/auto-memory.mdSandy Tao3
scripts/utils/eval-analysis.tsVedant Mahajan3
tools/caretaker-agent/cloudrun/egress-service/src/types.tsChad3
tools/caretaker-agent/cloudrun/ingestion-service/app.test.tsChad3
tools/caretaker-agent/cloudrun/ingestion-service/app.tsChad3
tools/caretaker-agent/cloudrun/triage-worker/.gemini/triage_orchestrator.mdChad3
tools/caretaker-agent/cloudrun/triage-worker/requirements.txtChad3
packages/core/src/agents/remote-subagent-protocol.tsAdam Weidman3
packages/core/src/availability/modelPolicy.tsAdam Weidman3
packages/core/src/agents/auth-provider/base-provider.tsAdam Weidman3
packages/cli/src/ui/hooks/creditsFlowHandler.tsGaurav3
packages/core/src/context/config/configLoader.tsjoshualitt3
packages/core/src/context/config/types.tsjoshualitt3
packages/core/src/context/graph/fromGraph.tsjoshualitt3
packages/core/src/context/processors/blobDegradationProcessor.tsjoshualitt3
packages/core/src/context/processors/nodeDistillationProcessor.tsjoshualitt3
packages/core/src/context/processors/nodeTruncationProcessor.tsjoshualitt3
packages/core/src/context/system-tests/hysteresis.test.tsjoshualitt3
packages/core/src/context/utils/snapshotGenerator.test.tsjoshualitt3
packages/core/src/context/pipeline/environmentImpl.test.tsjoshualitt3
packages/core/src/context/processors/blobDegradationProcessor.test.tsjoshualitt3
packages/core/src/context/processors/stateSnapshotProcessor.test.tsjoshualitt3
packages/core/src/context/graph/builtinBehaviors.tsjoshualitt3
packages/core/src/context/processors/toolMaskingProcessor.test.tsjoshualitt3
third_party/get-ripgrep/src/index.jsjoshualitt3
packages/a2a-server/src/commands/types.tsCoco Sheng3
evals/frugalReads.eval.tsChristian Gunderman3
scripts/aggregate_evals.jsChristian Gunderman3
packages/cli/src/services/prompt-processors/argumentProcessor.test.tsAbhi3
packages/core/src/services/trackerService.tsanj-s3
packages/cli/src/ui/components/__snapshots__/DetailedMessagesDisplay.test.tsx.snapJacob Richman3
packages/cli/src/ui/components/__snapshots__/Table.test.tsx.snapJacob Richman3
.gemini/commands/frontend.tomlJacob Richman3
packages/cli/src/ui/components/StickyHeader.tsxJacob Richman3
packages/cli/src/commands/extensions/examples/hooks/gemini-extension.jsonchristine betts3
packages/cli/src/commands/extensions/examples/hooks/hooks/hooks.jsonchristine betts3
packages/cli/src/commands/extensions/examples/hooks/scripts/on-start.jschristine betts3
packages/cli/src/commands/extensions/examples/mcp-server/README.mdchristine betts3
packages/cli/src/commands/extensions/examples/skills/gemini-extension.jsonchristine betts3
packages/cli/src/commands/extensions/examples/skills/skills/greeter/SKILL.mdchristine betts3
packages/core/src/core/modelMappingContentGenerator.tsDavid Pierce2
packages/a2a-server/src/config/rce_vulnerability.test.tsluisfelipe-alt2
packages/cli/src/ui/components/InboxDialog.test.tsxSandy Tao2
packages/cli/src/ui/components/InboxDialog.tsxSandy Tao2
packages/core/src/config/scoped-config.tsSandy Tao2
packages/core/src/config/path-validation.test.tsSandy Tao2
scripts/utils/tool-registry.tsVedant Mahajan2
scripts/tests/eval-analysis.test.tsVedant Mahajan2
scripts/eval-inventory-cli.tsVedant Mahajan2
scripts/tests/eval-inventory.test.tsVedant Mahajan2
tools/caretaker-agent/cloudrun/egress-service/src/actions/github.test.tsChad2

Ownership by author

Primary owner = the author with the most commits to a file. Solely owned = files only that author has touched.

AuthorFiles ownedSolely ownedFiles touched
Jacob Richman28842808
Tommaso Sciortino27514806
joshualitt19994470
Abhi13641653
Sandy Tao10532413
N. Taylor Mullen989409
Christian Gunderman9437517
Adam Weidman7333315
christine betts7118284
Gal Zahavi7013510
Chad707071
Shreya Keshive6010255
matt korwel589226
Sehoon Shon5715289
Jerop Kipruto5410298
Gaurav5422179
Michael Bleigh5026175
Sam Roberts47997
Sri Pasumarthi4526106
Dev Randalpura4413170
nityam431299
Coco Sheng4330276
joneba-google292750
Emily Hedlund284148
Vedant Mahajan282155

Showing top 25 of 644 contributors.

Most shared files

Files touched by the most people — shared code where changes are most likely to need coordination.

FileContributorsPrimary ownerOwner share
packages/cli/src/config/config.ts113Tommaso Sciortino5.5%
packages/core/src/config/config.ts112Abhi7.9%
packages/cli/src/gemini.tsx84Jacob Richman10.7%
package-lock.json80gemini-cli-robot19.3%
packages/cli/src/config/settingsSchema.ts79Abhi11.0%
packages/cli/src/config/config.test.ts76Abhi9.0%
packages/cli/src/config/settings.ts76Gal Zahavi8.8%
packages/core/src/core/client.ts72Sandy Tao13.0%
packages/cli/src/ui/AppContainer.tsx71Jacob Richman12.7%
packages/core/src/config/config.test.ts68Abhi11.5%
packages/cli/src/ui/hooks/useGeminiStream.ts67N. Taylor Mullen16.3%
packages/cli/src/ui/components/InputPrompt.tsx67Jacob Richman21.1%
packages/cli/src/ui/App.tsx63N. Taylor Mullen11.6%
schemas/settings.schema.json62joshualitt10.7%
packages/core/src/tools/mcp-client.ts59Tommaso Sciortino8.8%
README.md59Olcan8.3%
packages/core/src/index.ts58Abhi12.8%
packages/cli/src/ui/hooks/slashCommandProcessor.ts56Abhi10.3%
packages/core/src/core/geminiChat.ts54Sandy Tao10.6%
packages/core/src/tools/shell.ts54Gal Zahavi16.0%