Agent KB_readmenator - grisuno/ReadMenator GitHub Wiki
Subsystem: readmenator (page 1 of 5)
Pages: KB_readmenator.md, KB_readmenator_p2.md, KB_readmenator_p3.md, KB_readmenator_p4.md, KB_readmenator_p5.md
readmenator/init.py
- Doc: ReadMenator -- Zero-token polyglot codebase knowledge graph generator.
- Layer: utility
- Language: py
- Depends on:
readmenator/_app.py,readmenator/_category.py,readmenator/_components.py,readmenator/_concepts.py,readmenator/_config.py,readmenator/_diagrams.py,readmenator/_mcp_server.py,readmenator/_models.py,readmenator/_ollama.py,readmenator/_project_config.py,readmenator/_rank.py,readmenator/_readme_injector.py,readmenator/_symindex.py,readmenator/_uml.py
readmenator/main.py
- Doc: Command line entry point: argument parsing and subcommand dispatch.
- Layer: utility
- Language: py
- Symbols:
build_parser(function, line 18)def build_parser()_run_tests(function, line 137)def _run_tests()main(function, line 152)def main()
- Depends on:
readmenator/_app.py,readmenator/_config.py,readmenator/_mcp_server.py,readmenator/_project_config.py - Imported by:
readmenator.py
readmenator/_agent_injector.py
- Doc: Injects KNOWLEDGE_BASE.md references into AI agent instruction files.
- Layer: infrastructure
- Language: py
- Symbols:
ensure_readmenator_installed(function, line 120)def ensure_readmenator_installed()AgentInjector(class, line 142)class AgentInjector__init__(method, line 153)def __init__(self, kb_filename, agent_output_dir, agent_files, agent_globs, wiki_output_dir, agent_heading...inject(method, line 173)def inject(self, project_root)remove(method, line 191)def remove(self, project_root)find_agent_files(method, line 204)def find_agent_files(self, project_root)_find_agent_files(method, line 208)def _find_agent_files(self, root)_inject_single(method, line 222)def _inject_single(self, path)_extract_current_injection(method, line 260)def _extract_current_injection(content)_remove_old_injection(method, line 269)def _remove_old_injection(content)_remove_single(method, line 279)def _remove_single(self, path)_build_injection(method, line 295)def _build_injection(self, fmt)_build_mdc_injection(method, line 318)def _build_mdc_injection(self)_prepend_mdc_frontmatter(method, line 323)def _prepend_mdc_frontmatter(content, injection)
- Imported by:
readmenator/_pipeline.py,tests/test_agent_injector.py,tests/test_agent_output.py,tests/test_project_config.py
readmenator/_agent_output.py
- Doc: Agent-friendly output generator for ReadMenator.
- Layer: utility
- Language: py
- Symbols:
AgentOutputGenerator(class, line 71)class AgentOutputGenerator__init__(method, line 78)def __init__(self, config)generate(method, line 82)def generate(self, nodes, edges, resolved_edges, analysis, analysis_v2, findings, layers, project_root)_infer_subsystems(method, line 139)def _infer_subsystems(self, nodes)_build_index(method, line 174)def _build_index(self, nodes, subsystems, imported_by)_build_architecture(method, line 206)def _build_architecture(self, edges, resolved_edges, nodes)_build_security(method, line 258)def _build_security(self, findings, nodes)_enclosing_symbol(method, line 294)def _enclosing_symbol(symbols, line)_is_public(method, line 304)def _is_public(self, sym)_qualified_names(method, line 311)def _qualified_names(symbols)_build_api(method, line 329)def _build_api(self, nodes, resolved_map, imported_by, layers)_build_manifest(method, line 387)def _build_manifest(self, nodes, edges, resolved_edges, findings, project_root, subsystems, layers, out_dir)_entrypoints(method, line 461)def _entrypoints(self, nodes, layers)_inventory(method, line 472)def _inventory(self, out_dir)_build_symbols(method, line 487)def _build_symbols(self, nodes)_closed_loop(method, line 502)def _closed_loop(cycle)_build_gotchas(method, line 509)def _build_gotchas(self, analysis, analysis_v2, nodes, layers, imported_by)_build_concepts(method, line 631)def _build_concepts(self, analysis_v2)_safe_name(method, line 671)def _safe_name(name)_write_subsystem_files(method, line 678)def _write_subsystem_files(self, out_dir, subsystems, resolved_map, imported_by, layers)_build_subsystem_content(method, line 693)def _build_subsystem_content(self, name, file_nodes, resolved_map, imported_by, layers)_write_recipes(method, line 743)def _write_recipes(self, recipes_dir, analysis, analysis_v2, findings, layers)_deps_by_source(method, line 871)def _deps_by_source(resolved_map)_build_resolved_map(method, line 881)def _build_resolved_map(resolved_edges)_build_imported_by_map(method, line 891)def _build_imported_by_map(resolved_edges)_page_name(method, line 901)def _page_name(filename, page)_split_units(method, line 909)def _split_units(body, is_table)_chunk_unit(method, line 922)def _chunk_unit(unit, budget)_paginate(method, line 939)def _paginate(self, filename, content)_write_paged(method, line 978)def _write_paged(self, out_dir, filename, content)_prune_owned(method, line 988)def _prune_owned(out_dir)_write(method, line 995)def _write(path, content)keep(function, line 528)def keep(file_id)
- Depends on:
readmenator/_cache.py,readmenator/_config.py,readmenator/_folder_readme.py,readmenator/_gitmeta.py,readmenator/_models.py,readmenator/_purpose.py,readmenator/_resolver.py,readmenator/_security.py - Imported by:
readmenator/_pipeline.py,tests/test_agent_friendliness.py,tests/test_agent_output.py,tests/test_folder_readme.py
readmenator/_analytics.py
- Doc: Corpus analytics aggregations for the readmenator knowledge graph.
- Layer: utility
- Language: py
- Symbols:
AnalyticsBuilder(class, line 25)class AnalyticsBuilder__init__(method, line 28)def __init__(self, config)build(method, line 36)def build(self, nodes, edges, resolved_edges, analysis, findings, layers, v2, hotspots)_layer_distribution(method, line 100)def _layer_distribution(self, nodes, layers)_language_distribution(method, line 112)def _language_distribution(self, nodes)_hotspot_ranking(method, line 120)def _hotspot_ranking(self, nodes, fan_in, fan_out, hotspots)_rule_yield(method, line 152)def _rule_yield(self, findings)_size_bands(method, line 164)def _size_bands(self, nodes)_scatter(method, line 181)def _scatter(self, nodes, fan_in, fan_out, layers)
- Depends on:
readmenator/_config.py,readmenator/_models.py - Imported by:
readmenator/_documentation.py,readmenator/_explorer.py,readmenator/_exporter.py,readmenator/_pipeline.py,tests/test_interactive_graph.py
readmenator/_analyzer.py
- Doc: Graph analysis engine for the readmenator knowledge graph.
- Layer: utility
- Language: py
- Symbols:
dominant_directory(function, line 22)def dominant_directory(file_ids)_is_test_path(function, line 40)def _is_test_path(file_id)GraphAnalyzer(class, line 46)class GraphAnalyzer__init__(method, line 54)def __init__(self, config)analyze(method, line 62)def analyze(self, nodes, edges, resolved_edges)_build_adjacency(method, line 115)def _build_adjacency(self, nodes, edges)_build_reverse_adjacency(method, line 129)def _build_reverse_adjacency(self, adjacency)_compute_god_nodes(method, line 139)def _compute_god_nodes(self, nodes, adjacency, reverse_adjacency)_detect_communities(method, line 161)def _detect_communities(self, nodes, adjacency)_finalize_communities(method, line 213)def _finalize_communities(self, labels, adjacency)_louvain(method, line 233)def _louvain(self, file_ids, adjacency)partition(method, line 268)def partition(self, ids, adjacency)_louvain_pass(method, line 282)def _louvain_pass(self, graph, resolution, epsilon)_aggregate(method, line 322)def _aggregate(graph, partition)_merge_small_communities(method, line 334)def _merge_small_communities(self, groups, adjacency, weights)_vote_weights(method, line 381)def _vote_weights(self, file_ids, adjacency)_label_communities(method, line 398)def _label_communities(self, nodes, communities)_core_file(method, line 426)def _core_file(members, node_map)_build_community_map(method, line 441)def _build_community_map(self, communities)_compute_cohesion(method, line 451)def _compute_cohesion(self, communities, adjacency)_find_surprising_connections(method, line 476)def _find_surprising_connections(self, nodes, adjacency, community_map)_shortest_path_communities(method, line 516)def _shortest_path_communities(self, source, target, adjacency, community_map)_suggest_questions(method, line 543)def _suggest_questions(self, nodes, god_nodes, communities, community_labels, surprising, adjacency)
- Depends on:
readmenator/_config.py,readmenator/_models.py - Imported by:
readmenator/_graphrag.py,readmenator/_pipeline.py,readmenator/_wiki.py,tests/test_agent_friendliness.py,tests/test_analyzer.py
readmenator/_apidocs.py
- Doc: Deterministic API reference model: extraction, cross-references, coverage.
- Layer: utility
- Language: py
- Symbols:
ApiParam(class, line 76)class ApiParamApiEntity(class, line 98)class ApiEntityDocWarning(class, line 180)class DocWarningApiReference(class, line 204)class ApiReference_unparse(function, line 244)def _unparse(node)_PythonExtractor(class, line 254)class _PythonExtractor_matching_close(function, line 564)def _matching_close(lines, start, scan_limit)_indent_end(function, line 620)def _indent_end(lines, start)_split_top_level(function, line 639)def _split_top_level(text, sep)_param_span(function, line 668)def _param_span(signature, name)parse_signature_params(function, line 685)def parse_signature_params(signature, name, language)is_vendored_path(function, line 759)def is_vendored_path(file_id, config)ApiReferenceBuilder(class, line 772)class ApiReferenceBuilderto_dict(method, line 91)def to_dict(self)is_documented(method, line 156)def is_documented(self)to_dict(method, line 160)def to_dict(self)to_dict(method, line 197)def to_dict(self)children(method, line 221)def children(self, uid, kinds)to_dict(method, line 232)def to_dict(self, schema_version)__init__(method, line 257)def __init__(self, file_id, language, include_private)extract(method, line 272)def extract(self, content)_read_all(method, line 286)def _read_all(tree)_visibility(method, line 305)def _visibility(self, name, parent_uid)_keep(method, line 317)def _keep(self, name, visibility, documented)_walk_body(method, line 325)def _walk_body(self, body, parent_uid, prefix)_class(method, line 344)def _class(self, node, parent_uid, prefix)_params(method, line 391)def _params(self, args, drop_receiver)_render_params(method, line 410)def _render_params(params, args, receiver)_body_facts(method, line 432)def _body_facts(node)_function(method, line 455)def _function(self, node, parent_uid, prefix, in_class)_data(method, line 513)def _data(self, stmt, body, pos, parent_uid, prefix, in_class)__init__(method, line 775)def __init__(self, config)_is_test_path(method, line 783)def _is_test_path(self, file_id)_is_vendored(method, line 792)def _is_vendored(self, file_id)build(method, line 796)def build(self, nodes, edges, resolved_edges, content_map)_module_entity(method, line 873)def _module_entity(self, node, doc_text)_extract_file(method, line 881)def _extract_file(self, node, content)_extract_generic(method, line 894)def _extract_generic(self, node, content)_is_include_guard(method, line 987)def _is_include_guard(name, kind, doc)_generic_visibility(method, line 994)def _generic_visibility(name, decl, language, parent)_generic_bases(method, line 1020)def _generic_bases(signature, name)_type_index(method, line 1040)def _type_index(reference)_link_inheritance(method, line 1049)def _link_inheritance(self, reference, edges)_inherit_docs(method, line 1082)def _inherit_docs(reference)_link_calls(method, line 1122)def _link_calls(self, reference, nodes, edges, resolved_edges, contents)_owner_chain(method, line 1216)def _owner_chain(reference, entity)_receiver_plausible(method, line 1229)def _receiver_plausible(self, reference, receiver, caller, callee, confidence)_lint(method, line 1259)def _lint(self, reference)_coverage(method, line 1317)def _coverage(reference)innermost(function, line 1154)def innermost(file_id, line, name)target_entity(function, line 1166)def target_entity(file_id, line, name)counts(function, line 1320)def counts(items)
- Depends on:
readmenator/_config.py,readmenator/_docstrings.py,readmenator/_models.py,readmenator/_pytypes.py,readmenator/_symindex.py - Imported by:
readmenator/_apidocs_page.py,readmenator/_apidocs_render.py,readmenator/_app.py,readmenator/_flowcharts.py,readmenator/_pipeline.py,tests/test_apidocs.py,tests/test_flowcharts.py
readmenator/_apidocs_page.py
- Doc: Self-contained HTML browser for the deterministic API reference.
- Layer: presentation
- Language: py
- Symbols:
_payload(function, line 29)def _payload(reference, project_name, config)render_api_site(function, line 57)def render_api_site(reference, project_name, config, flow_graphs)
- Depends on:
readmenator/_apidocs.py,readmenator/_config.py,readmenator/_flowlayout.py,readmenator/_flowpage.py,readmenator/_htmlpack.py - Imported by:
readmenator/_apidocs_render.py,tests/test_apidocs.py,tests/test_flowcharts.py
readmenator/_apidocs_render.py
- Doc: Markdown, JSON, and writer layer for the deterministic API reference.
- Layer: presentation
- Language: py
- Symbols:
module_display_name(function, line 64)def module_display_name(entity)page_slug(function, line 75)def page_slug(module_uid)jsonl_index_path(function, line 81)def jsonl_index_path(config)jsonl_warnings_path(function, line 86)def jsonl_warnings_path(config)_jsonl_line(function, line 91)def _jsonl_line(record)jsonl_pages(function, line 96)def jsonl_pages(reference, config)read_api_jsonl(function, line 143)def read_api_jsonl(api_dir, config)anchor_slug(function, line 171)def anchor_slug(qualname)_cell(function, line 176)def _cell(text)_inline_code(function, line 181)def _inline_code(text)ApiLinker(class, line 190)class ApiLinkerApiMarkdownRenderer(class, line 308)class ApiMarkdownRendererApiDocsWriter(class, line 823)class ApiDocsWriter__init__(method, line 193)def __init__(self, reference)module_of(method, line 210)def module_of(self, entity)resolve(method, line 214)def resolve(self, name, context_file)href(method, line 251)def href(self, entity, from_module)link(method, line 260)def link(self, entity, from_module, label)link_uid(method, line 265)def link_uid(self, uid, from_module)autolink(method, line 272)def autolink(self, text, from_module)_replace(method, line 292)def _replace(self, match, from_module)__init__(method, line 311)def __init__(self, config)render(method, line 319)def render(self, reference, project_name)_module_link(method, line 341)def _module_link(self, linker, entity)_top_link(method, line 346)def _top_link(self, linker, entity, label)_summary(method, line 351)def _summary(self, entity)_index(method, line 360)def _index(self, reference, linker, project_name)_descendants(method, line 415)def _descendants(reference, uid)_hierarchy(method, line 427)def _hierarchy(self, reference, linker)_genindex(method, line 464)def _genindex(self, reference, linker)_coverage(method, line 491)def _coverage(self, reference, linker)_source_link(method, line 541)def _source_link(self, entity)_module(method, line 549)def _module(self, reference, linker, uid)_entity(method, line 589)def _entity(self, reference, linker, entity, module_uid, fence, level)_doc_block(method, line 659)def _doc_block(self, doc, linker, module_uid, entity)_merged_params(method, line 712)def _merged_params(entity, doc)_call_refs(method, line 736)def _call_refs(self, linker, entity, module_uid)_mermaid_id(method, line 749)def _mermaid_id(uid)_mermaid_label(method, line 754)def _mermaid_label(text)_class_diagram(method, line 758)def _class_diagram(self, reference, uid)_call_graph(method, line 791)def _call_graph(self, reference, uid)__init__(method, line 826)def __init__(self, config)write(method, line 835)def write(self, reference, project_root, project_name, architecture_markdown, flow_graphs)_prune_jsonl(method, line 913)def _prune_jsonl(self, out_dir, pages)walk(function, line 438)def walk(entity, depth)
- Depends on:
readmenator/_apidocs.py,readmenator/_apidocs_page.py,readmenator/_config.py,readmenator/_docstrings.py,readmenator/_flowlayout.py,readmenator/_flowpage.py - Imported by:
readmenator/_pipeline.py,tests/test_apidocs.py
readmenator/_app.py
- Doc: Application orchestrator: scan, resolve, analyze, and write every output.
- Layer: utility
- Language: py
- Symbols:
readmenatorApplication(class, line 54)class readmenatorApplication__init__(method, line 55)def __init__(self, config)_scan(method, line 64)def _scan(self, target_dir)_scan_with_content(method, line 72)def _scan_with_content(self, target_dir)_resolve_imports(method, line 82)def _resolve_imports(self, nodes, edges, target_dir)_apply_project_config(method, line 101)def _apply_project_config(self, target_dir)_write_viewer_config(method, line 132)def _write_viewer_config(self, root)run(method, line 150)def run(self, target_dir, resolve_imports, run_analysis, run_security, run_v2_analysis)check_freshness(method, line 304)def check_freshness(self, target_dir)_maybe_refresh_pages(method, line 331)def _maybe_refresh_pages(self, root)_maybe_publish_github_wiki(method, line 349)def _maybe_publish_github_wiki(self, root)publish_github_wiki(method, line 367)def publish_github_wiki(self, target_dir, dry_run)_write_sidecar_outputs(method, line 383)def _write_sidecar_outputs(self, root, findings, analysis_v2)_write_folder_readmes(method, line 409)def _write_folder_readmes(self, root)_inject_readme_link(method, line 424)def _inject_readme_link(self, root)_inject_agent_files(method, line 432)def _inject_agent_files(self, root)generate_uml_code(method, line 440)def generate_uml_code(self, target_dir, language, output_path)_log_summary(method, line 452)def _log_summary(self, nodes, edges, root, resolved_edges, analysis, layer_summary, analysis_v2, findings)update(method, line 507)def update(self, target_dir, run_security)_scan_for_cache(method, line 623)def _scan_for_cache(self, root, cache)query(method, line 641)def query(self, target_dir, question)explain(method, line 646)def explain(self, target_dir, symbol_name)find_path(method, line 658)def find_path(self, target_dir, symbol_a, symbol_b)summary(method, line 671)def summary(self, target_dir)rank_query(method, line 676)def rank_query(self, target_dir, query, top_n)rebuild(method, line 706)def rebuild(self, target_dir, run_security)analyze(method, line 709)def analyze(self, target_dir)export_json(method, line 713)def export_json(self, target_dir, output_path)export_html(method, line 730)def export_html(self, target_dir, output_path)export_svg(method, line 741)def export_svg(self, target_dir, output_path)export(method, line 752)def export(self, target_dir)_forcegraph_dest(method, line 759)def _forcegraph_dest(self, target_dir, output_path)_write_forcegraph(method, line 774)def _write_forcegraph(self, dest, nodes, edges, resolved, analysis, layers, findings, home_href, content_map)_write_bundlegraph(method, line 829)def _write_bundlegraph(self, dest, force_payload, home_href, explorer_href)_explorer_cards(method, line 868)def _explorer_cards(self, dest, href, home_href, nodes, edges, resolved, analysis, layers, findings, content_map..._write_components_card(method, line 940)def _write_components_card(self, maps_dir, nodes, edges, resolved, analysis, content_map, project_root, gallery_dir)export_forcegraph(method, line 1017)def export_forcegraph(self, target_dir, output_path)export_bundlegraph(method, line 1036)def export_bundlegraph(self, target_dir, output_path)export_components(method, line 1062)def export_components(self, target_dir, output_dir)_maybe_write_apidocs(method, line 1090)def _maybe_write_apidocs(self, root, nodes, edges, resolved_edges, content_map, analysis, layers)_architecture_markdown(method, line 1121)def _architecture_markdown(self, nodes, edges, resolved_edges, content_map, analysis, layers)_flow_graphs(method, line 1140)def _flow_graphs(self, nodes, edges, resolved_edges, content_map, analysis, layers)_write_flows_card(method, line 1155)def _write_flows_card(self, maps_dir, nodes, edges, resolved, analysis, layers, content_map)build_api_reference(method, line 1198)def build_api_reference(self, target_dir)export_apidocs(method, line 1210)def export_apidocs(self, target_dir)export_flows(method, line 1232)def export_flows(self, target_dir)explorer_state(method, line 1249)def explorer_state(self, target_dir)serve_explorer(method, line 1265)def serve_explorer(self, target_dir, open_browser)analytics(method, line 1278)def analytics(self, target_dir)scan_texts(method, line 1295)def scan_texts(self, target_dir)near(method, line 1307)def near(self, target_dir, query, top_k)audit_provenance(method, line 1321)def audit_provenance(self, target_dir)validate_yaralite(method, line 1344)def validate_yaralite(self, target_dir)export_graphml(method, line 1358)def export_graphml(self, target_dir, output_path)export_cypher(method, line 1369)def export_cypher(self, target_dir, output_path)export_obsidian(method, line 1385)def export_obsidian(self, target_dir, output_dir)export_wiki(method, line 1400)def export_wiki(self, target_dir, output_dir)lint_wiki(method, line 1424)def lint_wiki(self, target_dir)export_diagrams(method, line 1442)def export_diagrams(self, target_dir, output_dir, full)_site_stats(method, line 1489)def _site_stats(nodes, edges, analysis)_live_renderer(method, line 1501)def _live_renderer(self)export_diagram(method, line 1511)def export_diagram(self, target_dir, kind, output_path, full)export_pages(method, line 1550)def export_pages(self, target_dir, output_dir, full)export_video(method, line 1595)def export_video(self, target_dir, output_path)_maybe_export_video(method, line 1619)def _maybe_export_video(self, root, nodes, edges, resolved_edges, analysis, layers, findings, analysis_v2..._read_contents(method, line 1658)def _read_contents(self, root, nodes)_refresh_explorers(method, line 1682)def _refresh_explorers(self, root, nodes, edges, resolved_edges, analysis, layers, findings)_maybe_export_forcegraph(method, line 1721)def _maybe_export_forcegraph(self, root, nodes, edges, resolved_edges, analysis, layers, findings, content_map)_maybe_write_graphrag(method, line 1754)def _maybe_write_graphrag(self, root, nodes, edges, resolved_edges, analysis, layers, findings, analysis_v2..._memory_notes(method, line 1790)def _memory_notes(self, root)_maybe_write_memory(method, line 1796)def _maybe_write_memory(self, root, nodes, analysis, analysis_v2, findings, content_map)memory(method, line 1822)def memory(self, target_dir)remember(method, line 1845)def remember(self, target_dir, note, kind)install_skills(method, line 1859)def install_skills(self, target_dir, target)build_graphrag(method, line 1871)def build_graphrag(self, target_dir)graphrag_search(method, line 1895)def graphrag_search(self, target_dir, query, mode, budget_tokens)watch(method, line 1916)def watch(self, target_dir)audit(method, line 1926)def audit(self, target_dir)audit_deep(method, line 1933)def audit_deep(self, target_dir)export_sarif(method, line 1953)def export_sarif(self, target_dir, output_path)export_rules(method, line 1963)def export_rules(self, target_dir, output_dir)detect_layers(method, line 1974)def detect_layers(self, target_dir)lint(method, line 1984)def lint(self, target_dir)strip_dead_code(method, line 1997)def strip_dead_code(self, target_dir)generate_cursorrules(method, line 2007)def generate_cursorrules(self, target_dir)refactor_monolith(method, line 2022)def refactor_monolith(self, target_dir)on_change(function, line 1920)def on_change()
- Depends on:
readmenator/_apidocs.py,readmenator/_bundlegraph.py,readmenator/_cache.py,readmenator/_config.py,readmenator/_cursorrules_generator.py,readmenator/_dead_code.py,readmenator/_diagrams.py,readmenator/_explorer.py,readmenator/_flowcharts.py,readmenator/_flowlayout.py,readmenator/_flowpage.py,readmenator/_gh_wiki.py,readmenator/_gitmeta.py,readmenator/_graphrag.py,readmenator/_layers.py,readmenator/_linter.py,readmenator/_models.py,readmenator/_pipeline.py,readmenator/_project_config.py,readmenator/_query.py,readmenator/_rank.py,readmenator/_refactorizer.py,readmenator/_resolver.py,readmenator/_video.py,readmenator/_watcher.py,readmenator/_yaralite.py - Imported by:
readmenator/__init__.py,readmenator/__main__.py,readmenator/_mcp_server.py,tests/test_agent_friendliness.py,tests/test_apidocs.py,tests/test_bundlegraph.py,tests/test_components.py,tests/test_diagrams.py,tests/test_folder_readme.py,tests/test_gh_wiki.py,tests/test_htmlpack.py,tests/test_integration.py,tests/test_interactive_graph.py,tests/test_mcp_server.py,tests/test_sourceview.py,tests/test_video.py
readmenator/_bundlegraph.py
- Doc: Edge bundle explorer: circle and sphere hierarchical edge bundling pages.
- Layer: utility
- Language: py
- Symbols:
_json_script(function, line 39)def _json_script(value)BundleGraphRenderer(class, line 51)class BundleGraphRenderer__init__(method, line 54)def __init__(self, config)build_payload(method, line 63)def build_payload(self, force_payload)page_settings(method, line 184)def page_settings(self, force_payload, explorer_href, live_api)render(method, line 228)def render(self, force_payload, title, home_href, explorer_href, live_api)write(method, line 273)def write(self, output_path, force_payload, title, home_href, explorer_href)thumbnail_svg(method, line 299)def thumbnail_svg(self, force_payload)
- Depends on:
readmenator/_bundlegraph_page.py,readmenator/_config.py,readmenator/_forcegraph.py,readmenator/_graphlayout.py,readmenator/_htmlpack.py,readmenator/_project_config.py,readmenator/_viewer_ui.py - Imported by:
readmenator/_app.py,readmenator/_pipeline.py,tests/test_bundlegraph.py,tests/test_layout_quality.py,tests/test_project_config.py,tests/test_sourceview.py
readmenator/_bundlegraph_page.py
- Doc: HTML page template for the edge bundle explorer.
- Layer: presentation
- Language: py
- Imported by:
readmenator/_bundlegraph.py,tests/test_project_config.py
readmenator/_cache.py
- Doc: File-content hash cache for incremental scanning and analysis caching.
- Layer: infrastructure
- Language: py
- Symbols:
FileCache(class, line 20)class FileCachesource_fingerprint(function, line 179)def source_fingerprint(project_root, file_ids)__init__(method, line 31)def __init__(self, config, project_root)load(method, line 38)def load(self)save(method, line 49)def save(self, hashes)compute_hash(method, line 55)def compute_hash(self, file_path)compute_hashes(method, line 64)def compute_hashes(self, file_paths)find_changed(method, line 72)def find_changed(self, file_paths)prune_deleted(method, line 84)def prune_deleted(self, current_file_ids)save_analysis(method, line 95)def save_analysis(self, key, data)load_analysis(method, line 118)def load_analysis(self, key)clear_analysis(method, line 135)def clear_analysis(self, key)_prune_analysis_cache(method, line 155)def _prune_analysis_cache(self, current_file_ids)has_changed_since_last_analysis(method, line 166)def has_changed_since_last_analysis(self, file_paths)
- Depends on:
readmenator/_config.py - Imported by:
readmenator/_agent_output.py,readmenator/_app.py,readmenator/_components.py,tests/test_agent_friendliness.py,tests/test_cache.py
readmenator/_category.py
- Doc: Category theory model for the readmenator code graph.
- Layer: utility
- Language: py
- Symbols:
EdgeKind(class, line 24)class EdgeKind(str, Enum)Morphism(class, line 57)class MorphismCategory(class, line 78)class CategoryTypedGraph(class, line 181)class TypedGraphbuild_category_from_edges(function, line 236)def build_category_from_edges(edges, resolved_edges, node_ids)_infer_edge_kind(function, line 278)def _infer_edge_kind(relation)__str__(method, line 38)def __str__(self)weight(method, line 73)def weight(self)__init__(method, line 86)def __init__(self)add_object(method, line 92)def add_object(self, obj_id)add_morphism(method, line 95)def add_morphism(self, m)objects(method, line 103)def objects(self)morphisms(method, line 107)def morphisms(self)outgoing(method, line 110)def outgoing(self, obj_id)incoming(method, line 113)def incoming(self, obj_id)compose(method, line 116)def compose(self, a, b)paths(method, line 133)def paths(self, source, target, max_depth)_compose_kind(method, line 157)def _compose_kind(a, b)__init__(method, line 188)def __init__(self, category)_compute_out_weights(method, line 197)def _compute_out_weights(self)nodes(method, line 203)def nodes(self)size(method, line 207)def size(self)node_index(method, line 210)def node_index(self, node_id)transition_weight(method, line 213)def transition_weight(self, source, target)stochastic_row(method, line 221)def stochastic_row(self, source)dfs(function, line 139)def dfs(current, goal, path, depth)
- Imported by:
readmenator/__init__.py,readmenator/_explain.py,readmenator/_graphrag.py,readmenator/_models.py,readmenator/_pipeline.py,readmenator/_projections.py,readmenator/_query.py,readmenator/_rank.py,tests/test_ranking.py
readmenator/_components.py
- Doc: Component architecture diagrams, token-free by default.
- Layer: presentation
- Language: py
- Symbols:
sanitize(function, line 45)def sanitize(name)ComponentDiagramBuilder(class, line 57)class ComponentDiagramBuilder_rank_layout(function, line 1002)def _rank_layout(cids, pairs)__init__(method, line 60)def __init__(self, config)build(method, line 70)def build(self, nodes, edges, resolved_edges, analysis, project_root, content_map)mermaid_lr(method, line 165)def mermaid_lr(self, components, relations, docs_ref)overview_markdown(method, line 199)def overview_markdown(self, analysis, docs_ref, rel_prefix)component_markdown(method, line 247)def component_markdown(self, component)write(method, line 275)def write(self, analysis, output_dir, project_root)_rel_prefix(method, line 331)def _rel_prefix(project_root, output_dir)_components_of(method, line 349)def _components_of(self, nodes, analysis)_component(method, line 363)def _component(self, cid, label, members, by_id, rank, index, calls, depth, resolved, raw, layers)_dominant_layer(method, line 461)def _dominant_layer(members, layers)_split(method, line 481)def _split(self, members)_relations(method, line 492)def _relations(self, components, file_of_component, resolved, raw, calls, index)_describe(method, line 564)def _describe(self, label, members, member_nodes, top_symbols, outgoing)_root_description(method, line 589)def _root_description(self, nodes, components)render_page(method, line 611)def render_page(self, analysis, title, home_href, rel_prefix, link_files)_legend(method, line 683)def _legend(self, components)_relations_section(method, line 704)def _relations_section(self, relations)thumbnail_svg(method, line 738)def thumbnail_svg(self, components, relations)_meta_chips(method, line 785)def _meta_chips(self, analysis)_component_card(method, line 798)def _component_card(self, component, rel_prefix, link_files)_layer_color(method, line 869)def _layer_color(self, layer)_svg_level(method, line 881)def _svg_level(self, components, relations, svg_id, anchor_prefix)
- Depends on:
readmenator/_cache.py,readmenator/_config.py,readmenator/_layers.py,readmenator/_models.py,readmenator/_ollama.py,readmenator/_purpose.py,readmenator/_rank.py,readmenator/_symindex.py - Imported by:
readmenator/__init__.py,readmenator/_pipeline.py,tests/test_components.py,tests/test_folder_readme.py
readmenator/_concepts.py
- Doc: Deterministic semantic concept graph over the structural knowledge graph.
- Layer: utility
- Language: py
- Symbols:
verb_for_relation(function, line 33)def verb_for_relation(relation)ConceptExtractor(class, line 38)class ConceptExtractor__init__(method, line 41)def __init__(self, config)extract(method, line 47)def extract(self, nodes, edges, resolved_edges)_tokens_for_node(method, line 101)def _tokens_for_node(self, node)_tokenize(method, line 115)def _tokenize(self, text)_build_relations(method, line 130)def _build_relations(self, edges, file_to_concepts)_build_dialectic(method, line 169)def _build_dialectic(self, concepts, relations)
- Depends on:
readmenator/_config.py,readmenator/_models.py - Imported by:
readmenator/__init__.py,readmenator/_pipeline.py,tests/test_concepts.py
readmenator/_config.py
- Doc: Immutable configuration dataclass for readmenator.
- Layer: infrastructure
- Language: py
- Symbols:
Config(class, line 15)class Config
- Imported by:
readmenator/__init__.py,readmenator/__main__.py,readmenator/_agent_output.py,readmenator/_analytics.py,readmenator/_analyzer.py,readmenator/_apidocs.py,readmenator/_apidocs_page.py,readmenator/_apidocs_render.py,readmenator/_app.py,readmenator/_bundlegraph.py,readmenator/_cache.py,readmenator/_components.py,readmenator/_concepts.py,readmenator/_cursorrules_generator.py,readmenator/_dataflow.py,readmenator/_dead_code.py,readmenator/_diagrams.py,readmenator/_documentation.py,readmenator/_embed.py,readmenator/_exclusions.py,readmenator/_explorer.py,readmenator/_exporter.py,readmenator/_flowcharts.py,readmenator/_flowpage.py,readmenator/_folder_readme.py,readmenator/_forcegraph.py,readmenator/_gh_wiki.py,readmenator/_graphrag.py,readmenator/_hotspots.py,readmenator/_htmlpack.py,readmenator/_layer_rules.py,readmenator/_linter.py,readmenator/_mcp_server.py,readmenator/_memory.py,readmenator/_ollama.py,readmenator/_pipeline.py,readmenator/_project_config.py,readmenator/_provenance.py,readmenator/_refactorizer.py,readmenator/_resolver.py,readmenator/_rule_gen.py,readmenator/_scanner.py,readmenator/_scantext.py,readmenator/_security.py,readmenator/_skill_installer.py,readmenator/_sourceview.py,readmenator/_symindex.py,readmenator/_taint.py,readmenator/_uml.py,readmenator/_video.py,readmenator/_watcher.py,readmenator/_wiki.py,readmenator/parsers/__init__.py,readmenator/parsers/_base.py,tests/test_agent_friendliness.py,tests/test_agent_output.py,tests/test_analyzer.py,tests/test_apidocs.py,tests/test_bundlegraph.py,tests/test_cache.py,tests/test_components.py,tests/test_concepts.py,tests/test_config.py,tests/test_cpg.py,tests/test_cursorrules.py,tests/test_dataflow.py,tests/test_dead_code.py,tests/test_diagrams.py,tests/test_documentation.py,tests/test_exporter.py,tests/test_flowcharts.py,tests/test_folder_readme.py,tests/test_gh_wiki.py,tests/test_graphrag.py,tests/test_hotspots.py,tests/test_htmlpack.py,tests/test_integration.py,tests/test_interactive_graph.py,tests/test_layer_rules.py,tests/test_layout_quality.py,tests/test_linter.py,tests/test_mcp_server.py,tests/test_memory.py,tests/test_ollama.py,tests/test_parsers.py,tests/test_parsers_new.py,tests/test_parsers_property.py,tests/test_project_config.py,tests/test_refactorizer.py,tests/test_rule_gen.py,tests/test_sarif.py,tests/test_scanner.py,tests/test_security.py,tests/test_sourceview.py,tests/test_symindex.py,tests/test_taint.py,tests/test_taint_bdd.py,tests/test_uml.py,tests/test_video.py,tests/test_wiki.py
readmenator/_cpg.py
- Doc: Code Property Graph (CPG) generator emitting JSON-LD for AI agents.
- Layer: utility
- Language: py
- Symbols:
CodePropertyGraph(class, line 16)class CodePropertyGraph__init__(method, line 26)def __init__(self, privacy_mode, cpg_context)generate(method, line 30)def generate(self, nodes, edges, resolved_edges, analysis, findings)_severity_counts(method, line 147)def _severity_counts(self, findings)_build_symbol_list(method, line 153)def _build_symbol_list(self, node)_compute_node_hash(method, line 169)def _compute_node_hash(node)
- Depends on:
readmenator/_models.py - Imported by:
readmenator/_documentation.py,readmenator/_pipeline.py,tests/test_cpg.py
Next: KB_readmenator_p2.md