Repository navigation
Agent KB_readmenator
grisun0 edited this page Oct 16, 2026
·
36 revisions
Pages: KB_readmenator.md, KB_readmenator_p2.md, KB_readmenator_p3.md, KB_readmenator_p4.md, KB_readmenator_p5.md
- 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
- 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
- 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
- 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
- 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
- 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
- Doc: Deterministic API reference model: extraction, cross-references, coverage.
- Layer: utility
- Language: py
- Symbols:
-
ApiParam(class, line 76)class ApiParam -
ApiEntity(class, line 98)class ApiEntity -
DocWarning(class, line 180)class DocWarning -
ApiReference(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 ApiReferenceBuilder -
to_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
- 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
- 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 ApiLinker -
ApiMarkdownRenderer(class, line 308)class ApiMarkdownRenderer -
ApiDocsWriter(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
- 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
- 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
- Doc: HTML page template for the edge bundle explorer.
- Layer: presentation
- Language: py
- Imported by:
readmenator/_bundlegraph.py,tests/test_project_config.py
- Doc: File-content hash cache for incremental scanning and analysis caching.
- Layer: infrastructure
- Language: py
- Symbols:
-
FileCache(class, line 20)class FileCache -
source_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
- 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 Morphism -
Category(class, line 78)class Category -
TypedGraph(class, line 181)class TypedGraph -
build_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
- 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
- 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
- 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
- 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
Generated offline by readmenator from commit 0c608d6d6fa2. Edits here are overwritten by readmenator . --rebuild.
Start
Wiki
- community_0_readmenator_video
- community_1_readmenator_parsers
- community_2_readmenator_agent_output
- community_3_readmenator_graphrag
- community_4_readmenator_pipeline
- community_5_readmenator_diagrams
- community_6_readmenator_flowcharts
- community_7_orphans
- concepts
- queries
- REPORT
Agent Docs
- API
- API_p2
- ARCHITECTURE
- ARCHITECTURE_p2
- CONCEPTS
- GOTCHAS
- INDEX
- KB_misc
- KB_parsers
- KB_readmenator
- KB_readmenator_p2
- KB_readmenator_p3
- KB_readmenator_p4
- KB_readmenator_p5
- KB_root
- KB_tests
- KB_tests_p2
- KB_tests_p3
- KB_tests_p4
- MEMORY
- SECURITY
- SYMBOLS
- SYMBOLS_p2
- SYMBOLS_p3
- SYMBOLS_p4
- SYMBOLS_p5
- SYMBOLS_p6
- SYMBOLS_p7
Recipes