# Graph Report - .  (2026-05-11)

## Corpus Check
- Corpus is ~48,266 words - fits in a single context window. You may not need a graph.

## Summary
- 1490 nodes · 2526 edges · 190 communities (91 shown, 99 thin omitted)
- Extraction: 68% EXTRACTED · 31% INFERRED · 0% AMBIGUOUS · INFERRED: 795 edges (avg confidence: 0.6)
- Token cost: 0 input · 0 output

## Community Hubs (Navigation)
- [[_COMMUNITY_Config Models 2|Config Models 2]]
- [[_COMMUNITY_Gitcache Manager|Gitcache Manager]]
- [[_COMMUNITY_Detect Models|Detect Models]]
- [[_COMMUNITY_Config Models|Config Models]]
- [[_COMMUNITY_Utils Logging|Utils Logging]]
- [[_COMMUNITY_Skills Installer|Skills Installer]]
- [[_COMMUNITY_Utils Common|Utils Common]]
- [[_COMMUNITY_Appconfig Models 4|Appconfig Models 4]]
- [[_COMMUNITY_Prompt Gemini Prompt Example|Prompt Gemini Prompt Example]]
- [[_COMMUNITY_CLI Config Command|CLI Config Command]]
- [[_COMMUNITY_Utils Logging 2|Utils Logging 2]]
- [[_COMMUNITY_Appconfig Models|Appconfig Models]]
- [[_COMMUNITY_Config Models 4|Config Models 4]]
- [[_COMMUNITY_Project Manager|Project Manager]]
- [[_COMMUNITY_Mcp Runtime|Mcp Runtime]]
- [[_COMMUNITY_Utils Fuzzyfinder 3|Utils Fuzzyfinder 3]]
- [[_COMMUNITY_Utils Files 10|Utils Files 10]]
- [[_COMMUNITY_Gitcache Config 2|Gitcache Config 2]]
- [[_COMMUNITY_Record Manager 2|Record Manager 2]]
- [[_COMMUNITY_Utils Userprompt|Utils Userprompt]]
- [[_COMMUNITY_Project Source Sync|Project Source Sync]]
- [[_COMMUNITY_Mcp Models|Mcp Models]]
- [[_COMMUNITY_Detect Manager|Detect Manager]]
- [[_COMMUNITY_CLI Project Command|CLI Project Command]]
- [[_COMMUNITY_Record Models 2|Record Models 2]]
- [[_COMMUNITY_Providers Init|Providers Init]]
- [[_COMMUNITY_CLI Record Command|CLI Record Command]]
- [[_COMMUNITY_Mcp Runtime 2|Mcp Runtime 2]]
- [[_COMMUNITY_Utils Logging 4|Utils Logging 4]]
- [[_COMMUNITY_Utils Files|Utils Files]]
- [[_COMMUNITY_Detect Models 4|Detect Models 4]]
- [[_COMMUNITY_Utils Fuzzyfinder 4|Utils Fuzzyfinder 4]]
- [[_COMMUNITY_Record Manager 8|Record Manager 8]]
- [[_COMMUNITY_Utils Yaml Class|Utils Yaml Class]]
- [[_COMMUNITY_Record Models|Record Models]]
- [[_COMMUNITY_CLI Gitcache Command|CLI Gitcache Command]]
- [[_COMMUNITY_Record Manager 4|Record Manager 4]]
- [[_COMMUNITY_Detect Git|Detect Git]]
- [[_COMMUNITY_Providers Gitlab|Providers Gitlab]]
- [[_COMMUNITY_Providers Base|Providers Base]]
- [[_COMMUNITY_Detect Manager 2|Detect Manager 2]]
- [[_COMMUNITY_Utils Fuzzyfinder 2|Utils Fuzzyfinder 2]]
- [[_COMMUNITY_Record Manager|Record Manager]]
- [[_COMMUNITY_Providers Github|Providers Github]]
- [[_COMMUNITY_CLI Appconfig Command|CLI Appconfig Command]]
- [[_COMMUNITY_Appconfig Init|Appconfig Init]]
- [[_COMMUNITY_Metagit.Config|Metagit.Config]]
- [[_COMMUNITY_Gitcache Manager 2|Gitcache Manager 2]]
- [[_COMMUNITY_Utils Fuzzyfinder|Utils Fuzzyfinder]]
- [[_COMMUNITY_Mcp Resources|Mcp Resources]]
- [[_COMMUNITY_Config Models 3|Config Models 3]]
- [[_COMMUNITY_Mcp Root Resolver|Mcp Root Resolver]]
- [[_COMMUNITY_Flows Human|Flows Human]]
- [[_COMMUNITY_Main|Main]]
- [[_COMMUNITY_CLI Record Command 2|CLI Record Command 2]]
- [[_COMMUNITY_Project Source Sync 2|Project Source Sync 2]]
- [[_COMMUNITY_Project Source Models|Project Source Models]]
- [[_COMMUNITY_CLI Detect Command|CLI Detect Command]]
- [[_COMMUNITY_Mcp Bootstrap Sampling|Mcp Bootstrap Sampling]]
- [[_COMMUNITY_Flows Project Understanding Crew|Flows Project Understanding Crew]]
- [[_COMMUNITY_Gitcache Config|Gitcache Config]]
- [[_COMMUNITY_CLI Project Repo Command|CLI Project Repo Command]]
- [[_COMMUNITY_Mcp Workspace Index|Mcp Workspace Index]]
- [[_COMMUNITY_Mcp Upstream Hints|Mcp Upstream Hints]]
- [[_COMMUNITY_Mcp Workspace Search|Mcp Workspace Search]]
- [[_COMMUNITY_Config Manager|Config Manager]]
- [[_COMMUNITY_CLI Init Command|CLI Init Command]]
- [[_COMMUNITY_Detect Manager 4|Detect Manager 4]]
- [[_COMMUNITY_Utils Files 9|Utils Files 9]]
- [[_COMMUNITY_Detect Terraform|Detect Terraform]]
- [[_COMMUNITY_Detect Python|Detect Python]]
- [[_COMMUNITY_Workspace Models|Workspace Models]]
- [[_COMMUNITY_Workspace Manager|Workspace Manager]]
- [[_COMMUNITY_Utils Files 8|Utils Files 8]]
- [[_COMMUNITY_Config Manager 3|Config Manager 3]]
- [[_COMMUNITY_Mcp Runtime 3|Mcp Runtime 3]]
- [[_COMMUNITY_Skills Installer 3|Skills Installer 3]]
- [[_COMMUNITY_Record Manager 3|Record Manager 3]]
- [[_COMMUNITY_Record Manager 5|Record Manager 5]]
- [[_COMMUNITY_Record Manager 6|Record Manager 6]]
- [[_COMMUNITY_Record Manager 7|Record Manager 7]]
- [[_COMMUNITY_Utils Logging 6|Utils Logging 6]]
- [[_COMMUNITY_Utils Logging 5|Utils Logging 5]]
- [[_COMMUNITY_CLI Gitcache Command 2|CLI Gitcache Command 2]]
- [[_COMMUNITY_Gitcache Config 7|Gitcache Config 7]]
- [[_COMMUNITY_Utils Logging 8|Utils Logging 8]]
- [[_COMMUNITY_Detect Manager 3|Detect Manager 3]]
- [[_COMMUNITY_Mcp Bootstrap Plan Only|Mcp Bootstrap Plan Only]]
- [[_COMMUNITY_Mcp Workspace Status|Mcp Workspace Status]]
- [[_COMMUNITY_Flows Index Tools|Flows Index Tools]]
- [[_COMMUNITY_Record Models 11|Record Models 11]]
- [[_COMMUNITY_Skills Installer 2|Skills Installer 2]]
- [[_COMMUNITY_Utils Fuzzyfinder 8|Utils Fuzzyfinder 8]]
- [[_COMMUNITY_Prompt Gemini Prompt Example 2|Prompt Gemini Prompt Example 2]]
- [[_COMMUNITY_Utils Logging 7|Utils Logging 7]]
- [[_COMMUNITY_Utils Logging 3|Utils Logging 3]]
- [[_COMMUNITY_Utils Files 7|Utils Files 7]]
- [[_COMMUNITY_Utils Files 5|Utils Files 5]]
- [[_COMMUNITY_Utils Files 2|Utils Files 2]]
- [[_COMMUNITY_Utils Files 4|Utils Files 4]]
- [[_COMMUNITY_Utils Files 6|Utils Files 6]]
- [[_COMMUNITY_Utils Files 3|Utils Files 3]]
- [[_COMMUNITY_Project Models|Project Models]]
- [[_COMMUNITY_CLI Mcp Command 2|CLI Mcp Command 2]]
- [[_COMMUNITY_Flows Agents 2|Flows Agents 2]]
- [[_COMMUNITY_Flows Agents|Flows Agents]]
- [[_COMMUNITY_Mcp Protocols|Mcp Protocols]]
- [[_COMMUNITY_Mcp Protocols 2|Mcp Protocols 2]]
- [[_COMMUNITY_Utils Click|Utils Click]]
- [[_COMMUNITY_Utils Userprompt 7|Utils Userprompt 7]]
- [[_COMMUNITY_Utils Yaml Class 2|Utils Yaml Class 2]]
- [[_COMMUNITY_Detect Models 2|Detect Models 2]]
- [[_COMMUNITY_Detect Models 3|Detect Models 3]]
- [[_COMMUNITY_Detect Manager 5|Detect Manager 5]]
- [[_COMMUNITY_Detect Manager 6|Detect Manager 6]]
- [[_COMMUNITY_Detect Manager 7|Detect Manager 7]]
- [[_COMMUNITY_Detect Manager 8|Detect Manager 8]]
- [[_COMMUNITY_Detect Manager 9|Detect Manager 9]]
- [[_COMMUNITY_Record Models 3|Record Models 3]]
- [[_COMMUNITY_Record Models 4|Record Models 4]]
- [[_COMMUNITY_Record Models 5|Record Models 5]]
- [[_COMMUNITY_Record Models 6|Record Models 6]]
- [[_COMMUNITY_Record Models 7|Record Models 7]]
- [[_COMMUNITY_Record Models 8|Record Models 8]]
- [[_COMMUNITY_Record Models 9|Record Models 9]]
- [[_COMMUNITY_Record Models 10|Record Models 10]]
- [[_COMMUNITY_Record Manager 9|Record Manager 9]]
- [[_COMMUNITY_Record Manager 10|Record Manager 10]]
- [[_COMMUNITY_Record Manager 11|Record Manager 11]]
- [[_COMMUNITY_Record Manager 12|Record Manager 12]]
- [[_COMMUNITY_Record Manager 13|Record Manager 13]]
- [[_COMMUNITY_Record Manager 14|Record Manager 14]]
- [[_COMMUNITY_Gitcache Config 3|Gitcache Config 3]]
- [[_COMMUNITY_Gitcache Config 4|Gitcache Config 4]]
- [[_COMMUNITY_Gitcache Config 5|Gitcache Config 5]]
- [[_COMMUNITY_Gitcache Config 6|Gitcache Config 6]]
- [[_COMMUNITY_Config Models 5|Config Models 5]]
- [[_COMMUNITY_Config Models 6|Config Models 6]]
- [[_COMMUNITY_Config Models 7|Config Models 7]]
- [[_COMMUNITY_Config Models 8|Config Models 8]]
- [[_COMMUNITY_Config Models 9|Config Models 9]]
- [[_COMMUNITY_Config Models 10|Config Models 10]]
- [[_COMMUNITY_Config Models 11|Config Models 11]]
- [[_COMMUNITY_Config Models 12|Config Models 12]]
- [[_COMMUNITY_Config Models 13|Config Models 13]]
- [[_COMMUNITY_Config Models 14|Config Models 14]]
- [[_COMMUNITY_Config Manager 2|Config Manager 2]]
- [[_COMMUNITY_Providers Base 2|Providers Base 2]]
- [[_COMMUNITY_Providers Base 3|Providers Base 3]]
- [[_COMMUNITY_Providers Base 4|Providers Base 4]]
- [[_COMMUNITY_Providers Base 5|Providers Base 5]]
- [[_COMMUNITY_Providers Base 6|Providers Base 6]]
- [[_COMMUNITY_Workspace Models 2|Workspace Models 2]]
- [[_COMMUNITY_Utils Userprompt 2|Utils Userprompt 2]]
- [[_COMMUNITY_Utils Userprompt 3|Utils Userprompt 3]]
- [[_COMMUNITY_Utils Userprompt 4|Utils Userprompt 4]]
- [[_COMMUNITY_Utils Userprompt 5|Utils Userprompt 5]]
- [[_COMMUNITY_Utils Userprompt 6|Utils Userprompt 6]]
- [[_COMMUNITY_Utils Fuzzyfinder 5|Utils Fuzzyfinder 5]]
- [[_COMMUNITY_Utils Fuzzyfinder 6|Utils Fuzzyfinder 6]]
- [[_COMMUNITY_Utils Fuzzyfinder 7|Utils Fuzzyfinder 7]]
- [[_COMMUNITY_Project Models 2|Project Models 2]]
- [[_COMMUNITY_Project Source Models 2|Project Source Models 2]]
- [[_COMMUNITY_Project Manager 2|Project Manager 2]]
- [[_COMMUNITY_Project Manager 3|Project Manager 3]]
- [[_COMMUNITY_Project Manager 4|Project Manager 4]]
- [[_COMMUNITY_Appconfig Models 2|Appconfig Models 2]]
- [[_COMMUNITY_Appconfig Models 3|Appconfig Models 3]]
- [[_COMMUNITY_Flows Project Understanding Crew 2|Flows Project Understanding Crew 2]]
- [[_COMMUNITY_CLI Appconfig Command 2|CLI Appconfig Command 2]]
- [[_COMMUNITY_CLI Config Command 2|CLI Config Command 2]]
- [[_COMMUNITY_CLI Detect Command 2|CLI Detect Command 2]]
- [[_COMMUNITY_CLI Mcp Command|CLI Mcp Command]]
- [[_COMMUNITY_CLI Project Command 2|CLI Project Command 2]]
- [[_COMMUNITY_CLI Record Command 3|CLI Record Command 3]]
- [[_COMMUNITY_CLI Skills Command|CLI Skills Command]]
- [[_COMMUNITY_CLI Workspace Command|CLI Workspace Command]]
- [[_COMMUNITY_Flows Project Understanding Crew 3|Flows Project Understanding Crew 3]]
- [[_COMMUNITY_Flows Human 2|Flows Human 2]]
- [[_COMMUNITY_Flows Index Tools 2|Flows Index Tools 2]]

## God Nodes (most connected - your core abstractions)
1. `path()` - 64 edges
2. `ProjectPath` - 62 edges
3. `WorkspaceProject` - 59 edges
4. `UnifiedLogger` - 56 edges
5. `Workspace` - 55 edges
6. `ProjectKind` - 53 edges
7. `AppConfig` - 52 edges
8. `GitUrl` - 50 edges
9. `GitCacheManager` - 43 edges
10. `DetectionManager` - 39 edges

## Surprising Connections (you probably didn't know these)
- `validate_cache_path()` --calls--> `path()`  [INFERRED]
  core/gitcache/config.py → cli/commands/gitcache.py
- `validate_cache_root()` --calls--> `path()`  [INFERRED]
  core/gitcache/config.py → cli/commands/gitcache.py
- `project()` --calls--> `MetagitConfigManager`  [INFERRED]
  cli/commands/project.py → core/config/manager.py
- `detect_project()` --calls--> `ProjectDetection`  [INFERRED]
  cli/commands/detect.py → core/detect/manager.py
- `DateTimeEncoder` --uses--> `LocalFileStorageBackend`  [INFERRED]
  cli/commands/record.py → core/record/manager.py

## Hyperedges (group relationships)
- **CLI command surface** — main_cli, appconfig_appconfig, config_config, detect_detect, project_project, record_record, skills_skills, workspace_workspace, mcp_mcp, init_init [EXTRACTED 1.00]
- **Context-backed command groups** — main_cli_context_bootstrap, appconfig_appconfig, config_config, detect_detect, project_project, record_record, skills_skills, workspace_workspace [EXTRACTED 1.00]
- **Record manager workflow** — record__get_record_manager, record_record_create, record_record_show, record_record_search, record_record_update, record_record_delete, record_record_export, record_record_import, record_record_stats [EXTRACTED 1.00]
- **Detection Plugin Contract** — models_detector, docker_dockerdetector, git_gitdetector, python_pythondetector, terraform_terraformdetector [INFERRED 0.85]
- **Detect Flow Analysis Stack** — project_understanding_crew_projectunderstandingcrew, agents_code_structure_analyst, agents_dependency_reviewer, agents_logic_summarizer, agents_summary_formatter, tasks_structure_task, tasks_dependency_task, tasks_logic_task, tasks_formatting_task, human_humantool, index_tools_index_repo [INFERRED 0.75]
- **Git Cache Subsystem** — readme_git_cache_management_system, config_gitcacheconfig, config_gitcacheentry, manager_gitcachemanager [EXTRACTED 1.00]
- **MCP Activation Pipeline** — root_resolver_resolve, gate_evaluate, runtime__resolve_status_and_config, tool_registry_list_tools [INFERRED 0.85]
- **Bootstrap Config Generation Flow** — runtime__dispatch_tool, discovery_context_build_context, bootstrap_sampling_generate, bootstrap_plan_only_metagit_bootstrap_config_plan_only [INFERRED 0.85]
- **Source Discovery And Sync Flow** — source_models_sourcespec, source_sync_discover, source_sync_plan, source_sync_apply_plan, source_models_sourcesyncplan [INFERRED 0.85]
- **Git Provider Plugin System** — base_gitprovider, __init___providerregistry, github_githubprovider, gitlab_gitlabprovider [INFERRED 0.95]
- **Record Storage Pipeline** — manager_recordstoragebackend, manager_localfilestoragebackend, manager_opensearchstoragebackend, manager_metagitrecordmanager, models_metagitrecord [INFERRED 0.95]
- **Repository File Analysis Model** — files_fileextensionlookup, files_directory_details, files_directory_summary, models_metagitrecord, build_files_build_files_catalog [INFERRED 0.75]
- **Workspace Gatekeeping Flow** — skill_discovering_workspace_scope, skill_metagit_mcp_gating, skill_metagit_control_center, skill_workspace_gate [INFERRED 0.75]
- **Config Refresh Flow** — skill_metagit_mcp_bootstrap, skill_refreshing_project_config, skill_metagit_mcp_gating, skill_metagit_yml [INFERRED 0.75]
- **Upstream Triage Flow** — skill_metagit_upstream_discovery, skill_triaging_upstream_blockers, skill_planning_repo_impact, skill_running_gitnexus_analysis, skill_upstream_hints [INFERRED 0.75]

## Communities (190 total, 99 thin omitted)

### Community 0 - "Config Models 2"
Cohesion: 0.08
Nodes (56): AlertingChannelType, ArtifactType, BranchStrategy, BuildTool, CICDPlatform, CommitFrequency, ComponentKind, DependencyKind (+48 more)

### Community 1 - "Gitcache Manager"
Cohesion: 0.05
Nodes (30): GitCacheEntry, Model for a single git cache entry., GitCacheManager, Check if source is a local path.          Args:             source: Source URL o, Check if a local path is a git repository using gitpython.          Args:, Check if source is a local git repository.          Args:             source: So, Clone a git repository using gitpython.          Args:             url: Reposito, Clone a git repository asynchronously using gitpython in a thread.          Args (+22 more)

### Community 2 - "Detect Models"
Cohesion: 0.08
Nodes (38): ProjectDomain, ProjectType, Enumeration of project types., Enumeration of project domains., DetectionManager, ProjectDetection, Single entrypoint for performing detection analysis of a target git project or g, Generate a summary of the repository analysis.          Returns:             Sum (+30 more)

### Community 3 - "Config Models"
Cohesion: 0.1
Nodes (51): AppConfig, AppConfig, BaseModel, AlertingChannel, Artifact, BranchNaming, CICD, Dashboard (+43 more)

### Community 4 - "Utils Logging"
Cohesion: 0.05
Nodes (12): Resolve the effective workspace root for the MCP runtime., Resolve and return a workspace root path, if available., Evaluate whether MCP should expose active tooling., Return the current workspace status for tool gating., WorkspaceGateProtocol, WorkspaceRootResolverProtocol, Protocol, Config (+4 more)

### Community 5 - "Skills Installer"
Cohesion: 0.07
Nodes (38): list(), List all cache entries., install(), mcp(), Metagit MCP server commands., Start MCP runtime over stdio., Install metagit MCP server entry into supported agent configs., serve() (+30 more)

### Community 6 - "Utils Common"
Cohesion: 0.06
Nodes (32): create_vscode_workspace(), ensure_directory(), env_override(), filter_none_values(), flatten_dict(), _flatten_dict_gen(), flatten_list(), format_bytes() (+24 more)

### Community 7 - "Appconfig Models 4"
Cohesion: 0.09
Nodes (30): get_config, load_config, save_config, set_config, appconfig_get, appconfig_schema, appconfig_set, appconfig_validate (+22 more)

### Community 8 - "Prompt Gemini Prompt Example"
Cohesion: 0.12
Nodes (28): docs/app.logic.md, Prompt 1, Prompt 2, Prompt 4, Filled Project Analysis Prompt, Metagit Config Schema, .metagit.example.yml, .metagit.new.yaml (+20 more)

### Community 9 - "CLI Config Command"
Cohesion: 0.09
Nodes (22): config(), config_create(), config_info(), config_schema(), config_set(), config_show(), config_validate(), providers() (+14 more)

### Community 10 - "Utils Logging 2"
Cohesion: 0.08
Nodes (11): Intercept standard logging module output to loguru., Get the underlying loguru logger instance., Print debug messages with rich formatting., Log a warning message., Log a critical message., Log an exception with traceback., Prints a parameter line, Prints a config element (+3 more)

### Community 11 - "Appconfig Models"
Cohesion: 0.08
Nodes (24): Boundary, Config, GitHubProvider, GitLabProvider, LLM, load(), _override_from_environment(), Profile (+16 more)

### Community 12 - "Config Models 4"
Cohesion: 0.08
Nodes (24): Config, Pydantic configuration., Pydantic configuration., Pydantic configuration., Pydantic configuration., Pydantic configuration., Pydantic configuration., Pydantic configuration. (+16 more)

### Community 13 - "Project Manager"
Cohesion: 0.11
Nodes (15): _append_preview_lines(), _build_preview_sections(), _build_project_repo_summary(), ProjectManager, Sync a workspace project concurrently.          Iterates through each repository, Create a VS Code workspace file for the project.          Args:             proj, Sync a single repository.          This method is called by the thread pool exec, Handle syncing of a local repository via symlink. (+7 more)

### Community 14 - "Mcp Runtime"
Cohesion: 0.16
Nodes (8): MetagitMcpRuntime, Return a one-shot runtime status snapshot., Run JSON-RPC message loop over stdio framing., MCP runtime over stdio transport., Read one MCP-framed JSON-RPC message from stdin., Write one MCP-framed JSON-RPC message to stdout., Request client sampling synchronously when supported., Extract sampled text from sampling/createMessage result.

### Community 15 - "Utils Fuzzyfinder 3"
Cohesion: 0.1
Nodes (13): App, FuzzyFinderApp, A Textual app for fuzzy finding., Create child widgets for the app., Called when app starts., Called when the input changes., Perform fuzzy search and update results., Show concise result counters for current query. (+5 more)

### Community 16 - "Utils Files 10"
Cohesion: 0.12
Nodes (22): Build Files Catalog, directory_details, directory_summary, DirectoryDetails, DirectorySummary, FileExtensionLookup, parse_gitignore, should_ignore_path (+14 more)

### Community 17 - "Gitcache Config 2"
Cohesion: 0.1
Nodes (11): GitCacheConfig, Get the cache path for a specific entry., Check if a cache entry is stale based on timeout., Get total cache size in bytes., Get total cache size in GB., Check if cache is at maximum size., Remove a cache entry., Get a cache entry by name. (+3 more)

### Community 18 - "Record Manager 2"
Cohesion: 0.16
Nodes (10): LocalFileStorageBackend, Get the next available record ID., Store a record to local file., Retrieve a record by ID., Update an existing record., Delete a record by ID., List all records with pagination., Local file-based storage backend for records. (+2 more)

### Community 19 - "Utils Userprompt"
Cohesion: 0.2
Nodes (15): confirm_action(), _convert_input(), prompt_for_model(), prompt_for_model_fields(), prompt_for_single_field(), _prompt_style(), _promptkit(), Prompt the user for a specific field value.          Args:             field_nam (+7 more)

### Community 20 - "Project Source Sync"
Cohesion: 0.15
Nodes (8): Source-backed project sync operations., Discover and sync repositories from provider sources., source(), source_sync(), DiscoveredRepo, Normalized repository shape discovered from provider APIs., Discovers repositories from providers and builds/apply sync plans., SourceSyncService

### Community 21 - "Mcp Models"
Cohesion: 0.14
Nodes (13): Exception, Evaluate whether workspace is active for MCP tool exposure., Evaluate root state as active, missing config, or invalid config., WorkspaceGate, McpActivationState, Activation state for MCP workspace gating., Current workspace status used by MCP tools and resources., WorkspaceStatus (+5 more)

### Community 22 - "Detect Manager"
Cohesion: 0.13
Nodes (12): Save AppConfig to file.          Args:             config_path: Path to save con, path(), Get the path to a cached repository., Initialize the MetagitConfigManager.          Args:             config_path: Pat, load(), _override_from_environment(), from_path(), from_url() (+4 more)

### Community 23 - "CLI Project Command"
Cohesion: 0.11
Nodes (16): project(), project_list(), project_select(), project_sync(), Shortcut: Uses 'project repo select' to select workspace project repo to work on, Sync project within workspace, List the current project configuration in YAML format, Workspace subcommands (+8 more)

### Community 24 - "Record Models 2"
Cohesion: 0.12
Nodes (9): _convert_model_data(), from_metagit_config(), from_metagit_config_advanced(), _get_common_fields(), get_compatible_fields(), Fast conversion from MetagitRecord to MetagitConfig using automatic field detect, Advanced conversion method with automatic field mapping and validation., Automatically detect common fields between two Pydantic models.      This utilit (+1 more)

### Community 25 - "Providers Init"
Cohesion: 0.13
Nodes (9): ProviderRegistry, Registry for git provider plugins., Register a git provider plugin., Unregister a provider by name., Clear all registered providers., Get all registered providers., Get a provider by name., Configure providers from AppConfig settings.          Args:             app_conf (+1 more)

### Community 26 - "CLI Record Command"
Cohesion: 0.16
Nodes (17): _get_record_manager(), Get a configured MetagitRecordManager instance., Create a record from metagit configuration, Update an existing record, Export a record to file, Import a record from file, Show record storage statistics, Record management subcommands (+9 more)

### Community 27 - "Mcp Runtime 2"
Cohesion: 0.12
Nodes (18): metagit_bootstrap_config_plan_only, BootstrapSamplingService.generate, DiscoveryContextService.build_context, WorkspaceGate.evaluate, ProjectManager.sync, McpActivationState, WorkspaceStatus, OperationsLogService.append (+10 more)

### Community 28 - "Utils Logging 4"
Cohesion: 0.16
Nodes (8): Print a message from an agent with rich formatting., Print task status information with rich formatting., Print crew status messages with rich formatting., Print input data with rich formatting., Print output data with rich formatting., Print success messages with rich formatting., Print informational messages with rich formatting., Helper to format and print output using rich console.         Args:

### Community 29 - "Utils Files"
Cohesion: 0.15
Nodes (16): copy_file(), directory_details(), directory_tree(), DirectoryDetails, FileTypeWithPercent, is_binary_file(), parse_gitignore(), Write lines to a file.      Args:         file_path: Path to the file         li (+8 more)

### Community 30 - "Detect Models 4"
Cohesion: 0.21
Nodes (17): dependency_reviewer, DockerDetector, GitDetector, DetectionManager, ProjectDetection, CIConfigAnalysis, DetectionManagerConfig, Detector (+9 more)

### Community 31 - "Utils Fuzzyfinder 4"
Cohesion: 0.21
Nodes (7): Update the results ListView., Update the preview pane., Scroll the results list to ensure the highlighted item is visible., Move cursor up by a page (10 items)., Move cursor down by a page (10 items)., Move cursor to the first item., Move cursor to the last item.

### Community 32 - "Record Manager 8"
Cohesion: 0.14
Nodes (9): DateTimeEncoder, Custom JSON encoder that handles datetime objects., MetagitRecordManager, Manager class for handling metagit records.      This class provides methods for, Initialize the MetagitRecordManager.          Args:             storage_backend:, Create a MetagitRecord from existing MetagitConfig data.          Args:, Get current git repository information., Save a record to a local YAML file.          Args:             record: MetagitRe (+1 more)

### Community 33 - "Utils Yaml Class"
Cohesion: 0.14
Nodes (10): ExtLoader, ExtLoaderMeta, load(), no_duplicates_constructor(), Expand env variable at node, Check for duplicate keys., External yaml loader metadata class., Add constructers to class. (+2 more)

### Community 34 - "Record Models"
Cohesion: 0.14
Nodes (12): Branch, Language, MetagitConfig, Model for branch information., Model for project language information., Main model for .metagit.yml configuration file., Update MetagitRecord fields with analysis results., MetagitConfig (+4 more)

### Community 35 - "CLI Gitcache Command"
Cohesion: 0.13
Nodes (14): cache(), clear(), details(), gitcache(), Show cache statistics., Refresh a cache entry., Remove a cache entry., Git cache management commands. (+6 more)

### Community 36 - "Record Manager 4"
Cohesion: 0.15
Nodes (8): OpenSearchStorageBackend, OpenSearch-based storage backend for records., Initialize OpenSearch storage backend.          Args:             opensearch_ser, Delete a record by ID., Search records with optional filters., List all records with pagination., Delete a record by ID.          Args:             record_id: ID of the record to, Search records with optional filters.          Args:             query: Search q

### Community 37 - "Detect Git"
Cohesion: 0.16
Nodes (9): Repository subcommands, repo(), Detector, GitDetector, Git repository detection plugin., Determine if this detector should run on the given context.          Args:, Run Git repository detection.          Args:             ctx: Project scan conte, Inspect repository branch and dirty state. (+1 more)

### Community 38 - "Providers Gitlab"
Cohesion: 0.14
Nodes (8): GitProvider, GitLabProvider, Get additional repository metadata from GitLab API., Calculate commit frequency from recent commits., GitLab provider plugin., Initialize GitLab provider.          Args:             api_token: GitLab persona, Get the provider name., Check if this provider can handle the given repository URL.

### Community 39 - "Providers Base"
Cohesion: 0.15
Nodes (6): can_handle_url(), GitProvider, Base class for git provider plugins., Initialize the git provider.          Args:             api_token: API token for, Check if this provider supports the given URL., Check if the provider is available (has API token, etc.).

### Community 40 - "Detect Manager 2"
Cohesion: 0.16
Nodes (7): Run all enabled analysis methods.          Returns:             None if successf, Run a specific analysis method.          Args:             method_name: Name of, Extract basic repository metadata., Detect programming languages in the repository., Detect project type and domain., Analyze files in the repository., Analyze CI/CD configuration in the repository.          Args:             repo_p

### Community 41 - "Utils Fuzzyfinder 2"
Cohesion: 0.15
Nodes (8): FuzzyFinderConfig, Return the rapidfuzz scorer function based on configuration., Extract the display value from an item., Extract the preview value from an item if preview is enabled., Get the color for an item, prioritizing FuzzyFinderTarget.color over custom_colo, Get the opacity for an item, prioritizing FuzzyFinderTarget.opacity over config., Configuration for a fuzzy finder using Textual and rapidfuzz., Perform fuzzy search based on the query.

### Community 42 - "Record Manager"
Cohesion: 0.17
Nodes (5): ABC, DateTimeEncoder, Custom JSON encoder that handles datetime objects., Abstract base class for record storage backends., RecordStorageBackend

### Community 43 - "Providers Github"
Cohesion: 0.15
Nodes (7): GitHubProvider, Get additional repository metadata from GitHub API., Calculate commit frequency from recent commits., GitHub provider plugin., Initialize GitHub provider.          Args:             api_token: GitHub persona, Get the provider name., Check if this provider can handle the given repository URL.

### Community 44 - "CLI Appconfig Command"
Cohesion: 0.17
Nodes (12): appconfig(), appconfig_create(), appconfig_info(), appconfig_schema(), appconfig_show(), appconfig_validate(), Create default application config, Generate a JSON schema for the AppConfig class and write it to a file. (+4 more)

### Community 45 - "Appconfig Init"
Cohesion: 0.15
Nodes (12): get_config(), load_config(), Retrieve appconfig values, Load and validate the YAML configuration file., Save the AppConfig object to a YAML file., save_config(), set_config(), appconfig_get() (+4 more)

### Community 46 - "Metagit.Config"
Cohesion: 0.19
Nodes (13): ProviderRegistry, GitProvider, normalize_git_url, GitHubProvider, GitLabProvider, WorkspaceManager, Default Metagit Config, LLM Settings (+5 more)

### Community 47 - "Gitcache Manager 2"
Cohesion: 0.17
Nodes (7): Get the appropriate provider for a given URL.          Args:             url: Re, Generate a cache name from source URL or path.          Args:             source, Extract owner and repo from GitHub URL., Extract owner and repo from GitLab URL., Get the appropriate provider for a given URL., normalize_git_url(), Normalize a git URL by removing trailing forward slashes.      Args:         url

### Community 48 - "Utils Fuzzyfinder"
Cohesion: 0.17
Nodes (5): FuzzyFinder, A reusable fuzzy finder using Textual and rapidfuzz with navigation support., Initialize the fuzzy finder with a configuration., Run the fuzzy finder application., Simple fuzzy finder function that returns matching items from a collection.

### Community 49 - "Mcp Resources"
Cohesion: 0.17
Nodes (6): Serve MCP resources for workspace config and status views., Return a resource payload for known URIs., ResourcePublisher, OperationsLogService, Store a bounded in-memory operations trail., Append an operation log entry.

### Community 50 - "Config Models 3"
Cohesion: 0.2
Nodes (9): Metrics, PullRequests, Model for repository metadata., Model for pull request metrics., Model for repository metrics., RepoMetadata, Detect repository metrics., Get repository metrics from GitHub API. (+1 more)

### Community 51 - "Mcp Root Resolver"
Cohesion: 0.2
Nodes (6): Resolve workspace root for `.metagit.yml` gating., WorkspaceRootResolver, DiscoveryContextService, Create deterministic discovery payloads for sampling prompts., Provide safe repo inspect/sync operations for MCP tools., RepoOperationsService

### Community 52 - "Flows Human"
Cohesion: 0.22
Nodes (7): BaseTool, HumanTool, input_func(), MyToolInput, Tool for asking human input., Input schema for MyCustomTool., Use the Multi Line Human input tool.

### Community 53 - "Main"
Cohesion: 0.27
Nodes (9): cli(), info(), main(), Display the current configuration., Get the application version., Metagit CLI: A multi-purpose CLI tool with YAML configuration., version(), LoggerConfig (+1 more)

### Community 54 - "CLI Record Command 2"
Cohesion: 0.22
Nodes (10): _get_record_manager, DateTimeEncoder, record_create, record_delete, record_export, record_import, record_search, record_show (+2 more)

### Community 55 - "Project Source Sync 2"
Cohesion: 0.27
Nodes (10): ProjectManager.add, ProjectKind, ProjectPath, DiscoveredRepo, SourceSpec, SourceSyncPlan, SourceSyncService._to_project_path, SourceSyncService.apply_plan (+2 more)

### Community 56 - "Project Source Models"
Cohesion: 0.22
Nodes (6): Supported source providers for recursive discovery., Supported sync planning modes., Computed workspace changes for source-backed sync modes., SourceProvider, SourceSyncMode, SourceSyncPlan

### Community 57 - "CLI Detect Command"
Cohesion: 0.25
Nodes (6): detect(), detect_project(), detect_repository(), Detection subcommands, Comprehensive repository analysis and MetagitConfig generation using DetectionMa, Perform project detection and analysis.

### Community 58 - "Mcp Bootstrap Sampling"
Cohesion: 0.32
Nodes (3): BootstrapSamplingService, Generate `.metagit.yml` using sampling when available, otherwise fallback., Generate config draft and return write guidance.

### Community 60 - "Gitcache Config"
Cohesion: 0.25
Nodes (5): Config, Pydantic configuration., Pydantic configuration., validate_cache_path(), validate_cache_root()

### Community 61 - "CLI Project Repo Command"
Cohesion: 0.29
Nodes (6): Select project repo to work on, Add a repository to the current project, repo_add(), repo_select(), open_editor(), Open a path in the specified editor in an OS-agnostic way.      Args:         ed

### Community 62 - "Mcp Workspace Index"
Cohesion: 0.33
Nodes (4): Build normalized repository status rows from workspace configuration., Return repository index rows for all configured workspace repos., Resolve repository path relative to workspace root when needed., WorkspaceIndexService

### Community 63 - "Mcp Upstream Hints"
Cohesion: 0.38
Nodes (3): Rank repositories likely to contain upstream root causes., Return ranked repository candidates for the blocker description., UpstreamHintService

### Community 64 - "Mcp Workspace Search"
Cohesion: 0.38
Nodes (3): Search configured repositories with bounded, text-based matching., Search across scoped repository paths and return bounded line hits., WorkspaceSearchService

### Community 65 - "Config Manager"
Cohesion: 0.29
Nodes (3): create_metagit_config(), Create a top level .metagit.yml configuration file., Create a .metagit.yml project configuration file.          Args:             out

### Community 66 - "CLI Init Command"
Cohesion: 0.38
Nodes (6): init(), Sanitize workspace path to ensure it is a valid path without leading ./ and with, Update .gitignore file to include workspace path., Initialize local metagit environment by creating .metagit.yml and updating .giti, _sanitize_workspace_path(), _update_gitignore()

### Community 67 - "Detect Manager 4"
Cohesion: 0.33
Nodes (4): Get all files in the specified path.         This method uses the list_git_files, Run all registered detectors on the specified path.          Args:             p, list_git_files(), List all files in a Git repository.      Args:         directory_path: Path to t

### Community 68 - "Utils Files 9"
Cohesion: 0.33
Nodes (6): detect_repo_map(), Create a map of files and folders in a repository for further analysis., directory_summary(), DirectorySummary, FileType, Recursively walks a directory and builds a metadata structure for a directory su

### Community 71 - "Workspace Models"
Cohesion: 0.4
Nodes (3): Config, Pydantic configuration., Pydantic configuration.

### Community 72 - "Workspace Manager"
Cohesion: 0.4
Nodes (4): get_synced_projects(), get_workspace_path(), Get the workspace path from the config., Get the synced projects from the config.

### Community 73 - "Utils Files 8"
Cohesion: 0.4
Nodes (3): FileExtensionLookup, FileTypeInfo, Look up file type information based on file extension.          Args:

### Community 74 - "Config Manager 3"
Cohesion: 0.5
Nodes (5): summary_formatter, create_metagit_config, MetagitConfigManager, MetagitConfig, formatting_task

### Community 75 - "Mcp Runtime 3"
Cohesion: 0.4
Nodes (5): OperationsLogService.list_entries, ResourcePublisher.get_resource, MetagitMcpRuntime._build_repo_index, MetagitMcpRuntime._handle_resources_read, WorkspaceIndexService.build_index

### Community 76 - "Skills Installer 3"
Cohesion: 0.5
Nodes (5): _expand_target_path, _read_json_with_comments, install_mcp_for_targets, install_skills_for_targets, InstallResult

### Community 83 - "CLI Gitcache Command 2"
Cohesion: 0.5
Nodes (4): cache, Cache entry state, details, refresh

### Community 84 - "Gitcache Config 7"
Cohesion: 1.0
Nodes (4): GitCacheConfig, GitCacheEntry, GitCacheManager, Git Cache Management System

### Community 85 - "Utils Logging 8"
Cohesion: 0.5
Nodes (4): get_logger, LoggerConfig, LoggerProtocol, UnifiedLogger

### Community 90 - "Record Models 11"
Cohesion: 0.67
Nodes (3): _convert_model_data, _get_common_fields, MetagitRecord.to_metagit_config

### Community 91 - "Skills Installer 2"
Cohesion: 0.67
Nodes (3): autodetect_targets, resolve_targets, TargetPaths

### Community 92 - "Utils Fuzzyfinder 8"
Cohesion: 0.67
Nodes (3): FuzzyFinder, FuzzyFinderApp, FuzzyFinderConfig

### Community 93 - "Prompt Gemini Prompt Example 2"
Cohesion: 0.67
Nodes (3): Prompt 3, docs/secrets.analysis.md, docs/secrets.definitions.yml

## Ambiguous Edges - Review These
- `DetectionManager` → `GitBranchAnalysis`  [AMBIGUOUS]
  src/metagit/core/detect/manager.py · relation: calls

## Knowledge Gaps
- **633 isolated node(s):** `Model for language detection results.`, `Model for project type detection results.`, `Model for branch information.`, `Model for branch strategy.`, `Model for Git branch analysis results.` (+628 more)
  These have ≤1 connection - possible missing edges or undocumented components.
- **99 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.

## Suggested Questions
_Questions this graph is uniquely positioned to answer:_

- **What is the exact relationship between `DetectionManager` and `GitBranchAnalysis`?**
  _Edge tagged AMBIGUOUS (relation: calls) - confidence is low._
- **Why does `path()` connect `Detect Manager` to `Gitcache Manager`, `Skills Installer`, `Utils Common`, `CLI Config Command`, `Appconfig Models`, `Project Manager`, `Mcp Runtime`, `Gitcache Config 2`, `Record Manager 2`, `Mcp Models`, `CLI Record Command`, `Utils Files`, `CLI Gitcache Command`, `Detect Manager 2`, `Appconfig Init`, `Gitcache Manager 2`, `Main`, `Gitcache Config`, `Mcp Workspace Index`, `Mcp Workspace Search`, `Config Manager`, `CLI Init Command`, `Detect Manager 4`, `Utils Files 9`, `Flows Index Tools`?**
  _High betweenness centrality (0.129) - this node is a cross-community bridge._
- **Why does `UnifiedLogger` connect `Utils Logging 2` to `Detect Models`, `Utils Logging`, `CLI Config Command`, `Project Manager`, `Record Manager 2`, `Project Source Sync`, `Detect Manager`, `Utils Logging 4`, `Record Manager 8`, `Record Manager 4`, `Record Manager`, `CLI Appconfig Command`, `Appconfig Init`, `Main`, `Config Manager`, `Utils Logging 6`, `Utils Logging 5`, `Detect Manager 3`, `Utils Logging 7`, `Utils Logging 3`?**
  _High betweenness centrality (0.104) - this node is a cross-community bridge._
- **Why does `MetagitConfigManager` connect `CLI Config Command` to `Record Manager 8`, `Config Manager`, `Record Models`, `Config Models`, `Record Manager 4`, `Record Manager`, `Utils Logging 2`, `Project Manager`, `Mcp Runtime`, `Record Manager 2`, `Project Source Sync`, `Main`, `Detect Manager`, `Mcp Models`, `CLI Project Command`, `CLI Record Command`?**
  _High betweenness centrality (0.092) - this node is a cross-community bridge._
- **Are the 55 inferred relationships involving `path()` (e.g. with `from_path()` and `from_url()`) actually correct?**
  _`path()` has 55 INFERRED edges - model-reasoned connections that need verification._
- **Are the 59 inferred relationships involving `ProjectPath` (e.g. with `LicenseKind` and `BranchStrategy`) actually correct?**
  _`ProjectPath` has 59 INFERRED edges - model-reasoned connections that need verification._
- **Are the 56 inferred relationships involving `WorkspaceProject` (e.g. with `LicenseKind` and `BranchStrategy`) actually correct?**
  _`WorkspaceProject` has 56 INFERRED edges - model-reasoned connections that need verification._