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 only one author has ever changed. The more a file has changed, the more knowledge is at risk if that person leaves.
| File | Sole owner | Commits |
|---|---|---|
| packages/core/src/context/system-tests/__snapshots__/lifecycle.golden.test.ts.snap | joshualitt | 9 |
| packages/core/src/context/graph/render.ts | joshualitt | 8 |
| .github/workflows/gemini-cli-bot-brain.yml | Christian Gunderman | 8 |
| packages/core/src/agents/skill-extraction-agent.ts | Sandy Tao | 7 |
| packages/core/src/services/memoryService.test.ts | Sandy Tao | 7 |
| packages/core/src/services/memoryService.ts | Sandy Tao | 7 |
| packages/core/src/context/config/profiles.ts | joshualitt | 7 |
| packages/core/src/context/graph/toGraph.ts | joshualitt | 7 |
| packages/core/src/context/system-tests/simulationHarness.ts | joshualitt | 7 |
| packages/core/src/context/testing/contextTestUtils.ts | joshualitt | 7 |
| File | Sole owner | Commits |
|---|---|---|
| packages/core/src/context/system-tests/__snapshots__/lifecycle.golden.test.ts.snap | joshualitt | 9 |
| packages/core/src/context/graph/render.ts | joshualitt | 8 |
| .github/workflows/gemini-cli-bot-brain.yml | Christian Gunderman | 8 |
| packages/core/src/agents/skill-extraction-agent.ts | Sandy Tao | 7 |
| packages/core/src/services/memoryService.test.ts | Sandy Tao | 7 |
| packages/core/src/services/memoryService.ts | Sandy Tao | 7 |
| packages/core/src/context/config/profiles.ts | joshualitt | 7 |
| packages/core/src/context/graph/toGraph.ts | joshualitt | 7 |
| packages/core/src/context/system-tests/simulationHarness.ts | joshualitt | 7 |
| packages/core/src/context/testing/contextTestUtils.ts | joshualitt | 7 |
| .gemini/skills/docs-changelog/SKILL.md | Sam Roberts | 7 |
| packages/cli/src/ui/utils/mouse.ts | Jacob Richman | 7 |
| packages/cli/src/utils/devtoolsService.test.ts | Sandy Tao | 6 |
| tools/caretaker-agent/cloudrun/triage-worker/main.py | Chad | 6 |
| packages/core/src/context/pipeline/orchestrator.ts | joshualitt | 6 |
| packages/core/src/context/contextManager.barrier.test.ts | joshualitt | 6 |
| packages/core/src/context/initializer.ts | joshualitt | 6 |
| packages/core/src/context/system-tests/lifecycle.golden.test.ts | joshualitt | 6 |
| packages/core/src/context/utils/snapshotGenerator.ts | joshualitt | 6 |
| tools/caretaker-agent/cloudrun/triage-worker/tests/test_integration_main.py | Chad | 5 |
| tools/caretaker-agent/cloudrun/triage-worker/tests/test_main.py | Chad | 5 |
| packages/core/src/context/graph/render.test.ts | joshualitt | 5 |
| packages/core/src/context/graph/mapper.ts | joshualitt | 5 |
| packages/core/src/context/processors/stateSnapshotProcessor.ts | joshualitt | 5 |
| packages/core/src/context/pipeline/environmentImpl.ts | joshualitt | 5 |
| .github/scripts/apply-issue-labels.cjs | Coco Sheng | 5 |
| evals/frugalSearch.eval.ts | Christian Gunderman | 5 |
| packages/cli/src/ui/hooks/useAnimatedScrollbar.ts | Jacob Richman | 5 |
| packages/cli/src/commands/extensions/examples/mcp-server/gemini-extension.json | christine betts | 5 |
| packages/core/src/agents/skill-extraction-agent.test.ts | Sandy Tao | 4 |
| packages/core/src/services/memoryPatchUtils.ts | Sandy Tao | 4 |
| evals/skill_extraction.eval.ts | Sandy Tao | 4 |
| tools/caretaker-agent/cloudrun/triage-worker/db/issues_store.py | Chad | 4 |
| tools/caretaker-agent/cloudrun/triage-worker/tests/test_issues_store.py | Chad | 4 |
| tools/caretaker-agent/cloudrun/triage-worker/triage_orchestrator.py | Chad | 4 |
| packages/cli/src/ui/key/keybindingUtils.ts | Tommaso Sciortino | 4 |
| packages/core/src/context/eventBus.ts | joshualitt | 4 |
| packages/core/src/context/pipeline/orchestrator.test.ts | joshualitt | 4 |
| packages/core/src/context/processors/stateSnapshotAsyncProcessor.ts | joshualitt | 4 |
| packages/core/src/context/processors/rollingSummaryProcessor.ts | joshualitt | 4 |
| packages/core/src/context/processors/stateSnapshotAsyncProcessor.test.ts | joshualitt | 4 |
| packages/core/src/context/utils/contextTokenCalculator.ts | joshualitt | 4 |
| packages/core/src/context/pipeline/contextWorkingBuffer.test.ts | joshualitt | 4 |
| packages/core/src/context/pipeline/contextWorkingBuffer.ts | joshualitt | 4 |
| tools/gemini-cli-bot/brain/interactive.md | Christian Gunderman | 4 |
| evals/answer-vs-act.eval.ts | Christian Gunderman | 4 |
| packages/sdk/SDK_DESIGN.md | Michael Bleigh | 4 |
| packages/sdk/src/index.ts | Michael Bleigh | 4 |
| packages/core/src/services/trackerTypes.ts | anj-s | 4 |
| docs/cli/auto-memory.md | Sandy Tao | 3 |
| scripts/utils/eval-analysis.ts | Vedant Mahajan | 3 |
| tools/caretaker-agent/cloudrun/egress-service/src/types.ts | Chad | 3 |
| tools/caretaker-agent/cloudrun/ingestion-service/app.test.ts | Chad | 3 |
| tools/caretaker-agent/cloudrun/ingestion-service/app.ts | Chad | 3 |
| tools/caretaker-agent/cloudrun/triage-worker/.gemini/triage_orchestrator.md | Chad | 3 |
| tools/caretaker-agent/cloudrun/triage-worker/requirements.txt | Chad | 3 |
| packages/core/src/agents/remote-subagent-protocol.ts | Adam Weidman | 3 |
| packages/core/src/availability/modelPolicy.ts | Adam Weidman | 3 |
| packages/core/src/agents/auth-provider/base-provider.ts | Adam Weidman | 3 |
| packages/cli/src/ui/hooks/creditsFlowHandler.ts | Gaurav | 3 |
| packages/core/src/context/config/configLoader.ts | joshualitt | 3 |
| packages/core/src/context/config/types.ts | joshualitt | 3 |
| packages/core/src/context/graph/fromGraph.ts | joshualitt | 3 |
| packages/core/src/context/processors/blobDegradationProcessor.ts | joshualitt | 3 |
| packages/core/src/context/processors/nodeDistillationProcessor.ts | joshualitt | 3 |
| packages/core/src/context/processors/nodeTruncationProcessor.ts | joshualitt | 3 |
| packages/core/src/context/system-tests/hysteresis.test.ts | joshualitt | 3 |
| packages/core/src/context/utils/snapshotGenerator.test.ts | joshualitt | 3 |
| packages/core/src/context/pipeline/environmentImpl.test.ts | joshualitt | 3 |
| packages/core/src/context/processors/blobDegradationProcessor.test.ts | joshualitt | 3 |
| packages/core/src/context/processors/stateSnapshotProcessor.test.ts | joshualitt | 3 |
| packages/core/src/context/graph/builtinBehaviors.ts | joshualitt | 3 |
| packages/core/src/context/processors/toolMaskingProcessor.test.ts | joshualitt | 3 |
| third_party/get-ripgrep/src/index.js | joshualitt | 3 |
| packages/a2a-server/src/commands/types.ts | Coco Sheng | 3 |
| evals/frugalReads.eval.ts | Christian Gunderman | 3 |
| scripts/aggregate_evals.js | Christian Gunderman | 3 |
| packages/cli/src/services/prompt-processors/argumentProcessor.test.ts | Abhi | 3 |
| packages/core/src/services/trackerService.ts | anj-s | 3 |
| packages/cli/src/ui/components/__snapshots__/DetailedMessagesDisplay.test.tsx.snap | Jacob Richman | 3 |
| packages/cli/src/ui/components/__snapshots__/Table.test.tsx.snap | Jacob Richman | 3 |
| .gemini/commands/frontend.toml | Jacob Richman | 3 |
| packages/cli/src/ui/components/StickyHeader.tsx | Jacob Richman | 3 |
| packages/cli/src/commands/extensions/examples/hooks/gemini-extension.json | christine betts | 3 |
| packages/cli/src/commands/extensions/examples/hooks/hooks/hooks.json | christine betts | 3 |
| packages/cli/src/commands/extensions/examples/hooks/scripts/on-start.js | christine betts | 3 |
| packages/cli/src/commands/extensions/examples/mcp-server/README.md | christine betts | 3 |
| packages/cli/src/commands/extensions/examples/skills/gemini-extension.json | christine betts | 3 |
| packages/cli/src/commands/extensions/examples/skills/skills/greeter/SKILL.md | christine betts | 3 |
| packages/core/src/core/modelMappingContentGenerator.ts | David Pierce | 2 |
| packages/a2a-server/src/config/rce_vulnerability.test.ts | luisfelipe-alt | 2 |
| packages/cli/src/ui/components/InboxDialog.test.tsx | Sandy Tao | 2 |
| packages/cli/src/ui/components/InboxDialog.tsx | Sandy Tao | 2 |
| packages/core/src/config/scoped-config.ts | Sandy Tao | 2 |
| packages/core/src/config/path-validation.test.ts | Sandy Tao | 2 |
| scripts/utils/tool-registry.ts | Vedant Mahajan | 2 |
| scripts/tests/eval-analysis.test.ts | Vedant Mahajan | 2 |
| scripts/eval-inventory-cli.ts | Vedant Mahajan | 2 |
| scripts/tests/eval-inventory.test.ts | Vedant Mahajan | 2 |
| tools/caretaker-agent/cloudrun/egress-service/src/actions/github.test.ts | Chad | 2 |
Primary owner = the author with the most commits to a file. Solely owned = files only that author has touched.
| Author | Files owned | Solely owned | Files touched |
|---|---|---|---|
| Jacob Richman | 288 | 42 | 808 |
| Tommaso Sciortino | 275 | 14 | 806 |
| joshualitt | 199 | 94 | 470 |
| Abhi | 136 | 41 | 653 |
| Sandy Tao | 105 | 32 | 413 |
| N. Taylor Mullen | 98 | 9 | 409 |
| Christian Gunderman | 94 | 37 | 517 |
| Adam Weidman | 73 | 33 | 315 |
| christine betts | 71 | 18 | 284 |
| Gal Zahavi | 70 | 13 | 510 |
| Chad | 70 | 70 | 71 |
| Shreya Keshive | 60 | 10 | 255 |
| matt korwel | 58 | 9 | 226 |
| Sehoon Shon | 57 | 15 | 289 |
| Jerop Kipruto | 54 | 10 | 298 |
| Gaurav | 54 | 22 | 179 |
| Michael Bleigh | 50 | 26 | 175 |
| Sam Roberts | 47 | 9 | 97 |
| Sri Pasumarthi | 45 | 26 | 106 |
| Dev Randalpura | 44 | 13 | 170 |
| nityam | 43 | 1 | 299 |
| Coco Sheng | 43 | 30 | 276 |
| joneba-google | 29 | 27 | 50 |
| Emily Hedlund | 28 | 4 | 148 |
| Vedant Mahajan | 28 | 21 | 55 |
Files touched by the most people — shared code where changes are most likely to need coordination.
| File | Contributors | Primary owner | Owner share |
|---|---|---|---|
| packages/cli/src/config/config.ts | 113 | Tommaso Sciortino | 5.5% |
| packages/core/src/config/config.ts | 112 | Abhi | 7.9% |
| packages/cli/src/gemini.tsx | 84 | Jacob Richman | 10.7% |
| package-lock.json | 80 | gemini-cli-robot | 19.3% |
| packages/cli/src/config/settingsSchema.ts | 79 | Abhi | 11.0% |
| packages/cli/src/config/config.test.ts | 76 | Abhi | 9.0% |
| packages/cli/src/config/settings.ts | 76 | Gal Zahavi | 8.8% |
| packages/core/src/core/client.ts | 72 | Sandy Tao | 13.0% |
| packages/cli/src/ui/AppContainer.tsx | 71 | Jacob Richman | 12.7% |
| packages/core/src/config/config.test.ts | 68 | Abhi | 11.5% |
| packages/cli/src/ui/hooks/useGeminiStream.ts | 67 | N. Taylor Mullen | 16.3% |
| packages/cli/src/ui/components/InputPrompt.tsx | 67 | Jacob Richman | 21.1% |
| packages/cli/src/ui/App.tsx | 63 | N. Taylor Mullen | 11.6% |
| schemas/settings.schema.json | 62 | joshualitt | 10.7% |
| packages/core/src/tools/mcp-client.ts | 59 | Tommaso Sciortino | 8.8% |
| README.md | 59 | Olcan | 8.3% |
| packages/core/src/index.ts | 58 | Abhi | 12.8% |
| packages/cli/src/ui/hooks/slashCommandProcessor.ts | 56 | Abhi | 10.3% |
| packages/core/src/core/geminiChat.ts | 54 | Sandy Tao | 10.6% |
| packages/core/src/tools/shell.ts | 54 | Gal Zahavi | 16.0% |