MCPcopy Create free account
hub / github.com/Qinbf/groundmap / _main_impl

Function _main_impl

scripts/k.py:2810–3228  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

2808# ============================================================
2809
2810def _main_impl():
2811 parser = argparse.ArgumentParser(
2812 prog="k",
2813 description="知识库 CLI - 提供内置工具做不到的结构化查询",
2814 )
2815 parser.add_argument(
2816 "--json", action="store_true",
2817 help="输出 JSON 格式(给 LLM/脚本用)",
2818 )
2819 parser.add_argument(
2820 "--workspace", dest="workspace", default=None,
2821 help="指定工作区名称(在 workspaces/ 下查找)。"
2822 "默认会自动选择第一个存在的 workspace;如果没有则报错并提示运行 `k.py new-workspace <name>` 创建。",
2823 )
2824
2825 # 共享 parent:让 --json 在子命令后面也能用
2826 common = argparse.ArgumentParser(add_help=False)
2827 common.add_argument(
2828 "--json", action="store_true", dest="json_sub",
2829 help="输出 JSON 格式(给 LLM/脚本用)",
2830 )
2831
2832 sub = parser.add_subparsers(dest="cmd", required=True)
2833
2834 p_search = sub.add_parser("search", help="跨 wiki 关键词搜索", parents=[common])
2835 p_search.add_argument("query")
2836 p_search.add_argument("--limit", type=int, default=20)
2837
2838 p_list = sub.add_parser("list-pages", help="按 frontmatter 字段过滤页面", parents=[common])
2839 p_list.add_argument("--type", dest="filter_type")
2840 p_list.add_argument("--status", dest="filter_status")
2841 p_list.add_argument("--confidence", dest="filter_conf")
2842 p_list.add_argument("--tag", dest="filter_tag")
2843 p_list.add_argument("--modified-by", dest="filter_by")
2844
2845 sub.add_parser("list-orphans", help="找无入链的孤儿页面", parents=[common])
2846 sub.add_parser("list-conflicts", help="找带冲突标注的页面", parents=[common])
2847 sub.add_parser("list-to-update", help="找带 #to-be-updated 的页面", parents=[common])
2848
2849 p_back = sub.add_parser("backlinks", help="查询某页的反向链接", parents=[common])
2850 p_back.add_argument("path", help="目标页面路径,相对项目根")
2851
2852 p_out = sub.add_parser("outlinks", help="查询某页的出向链接", parents=[common])
2853 p_out.add_argument("path", help="源页面路径,相对项目根")
2854
2855 sub.add_parser("health", help="综合健康度报告", parents=[common])
2856
2857 p_val = sub.add_parser("validate-frontmatter", help="校验 frontmatter", parents=[common])
2858 p_val.add_argument("path", help="要校验的文件路径")
2859
2860 p_outline = sub.add_parser("outline", help="显示文档章节大纲(含 preview / agent_summary)", parents=[common])
2861 p_outline.add_argument("path", help="md 文件路径(相对项目根)")
2862
2863 p_rs = sub.add_parser("read-section", help="按 anchor 或标题读取整个 H 段", parents=[common])
2864 p_rs.add_argument("path", help="md 文件路径")
2865 p_rs.add_argument("anchor_or_title", help="anchor(如 h-2-3-abc123,可加 ^ 前缀)或标题文本")
2866
2867 p_rb = sub.add_parser("read-block", help="按 anchor 读取单个块(^p-/^t-/^c-/^f-)", parents=[common])

Callers 1

mainFunction · 0.85

Calls 15

create_workspaceFunction · 0.85
output_jsonFunction · 0.85
fmt_new_workspaceFunction · 0.85
load_all_wiki_pagesFunction · 0.85
search_pagesFunction · 0.85
fmt_search_resultsFunction · 0.85
filter_pagesFunction · 0.85
fmt_page_listFunction · 0.85
build_link_graphFunction · 0.85
find_orphansFunction · 0.85
fmt_orphansFunction · 0.85
find_conflictsFunction · 0.85

Tested by

no test coverage detected