• 请不要在回答技术问题时复制粘贴 AI 生成的内容
yisen123
V2EX  ›  程序员

开源了一个在线工具:一键看懂任意 GitHub 仓库的代码全貌

  •  
  •   yisen123 · Mar 25 · 4733 views
    This topic created in 226 days ago, the information mentioned may be changed or developed.

    做了一个小工具,贴上任意 GitHub 仓库地址,直接在浏览器里渲染出整个代码库的平面图( Floor Plan )。

    在线体验(无需安装): https://scan.sentrux.dev

    每个文件是一个方块,大小按代码行数比例,文件夹自动嵌套分组,依赖关系用线连接。点击任意文件可以高亮它的所有依赖。

    直接点开看效果 — 今天的热门仓库:

    说到最近的热点 — OpenClaw 最近大改了 Plugin SDK ,从 openclaw/extension-api 迁移到 openclaw/plugin-sdk/*,老插件全部 break ,社区一片哀嚎。用这个工具看看它的代码结构就知道为什么了:

    你可以直观地看到哪些模块之间有依赖,哪些文件是 god file ,为什么一改 SDK 整个插件生态都碎了。

    一些经典大项目对比:

    或者直接贴你自己的仓库地址试试,看看你的项目长什么样。

    支持 52 种语言,不同语言用不同颜色标注(右下角可以切换单色/语言模式)。

    技术上:纯 Rust 实现,网页版用 egui + WebGL 渲染,和桌面版共享同一套渲染代码。MIT 开源。

    GitHub: https://github.com/sentrux/sentrux

    欢迎试用,随便贴你的仓库看看长什么样。

    22 replies  •  2026-03-26 10:45:50 +08:00
    wsliwh
    wsliwh
    Mar 25
    1
    很不错的项目,给大佬点赞
    zhady009
    zhady009
    Mar 25
    2
    https://scan.sentrux.dev/scan/shoaky009/source-downloader
    不清楚为什么没有分析出依赖关系连线,预期 SourceProcessor.kt 应该有依赖才对
    yisen123
    yisen123
    OP
    Mar 25❤️1
    3
    @zhady009 你好,可以先用桌面版测试一下, 桌面版测出来是好的,这可能是 rust 以及 webassembly 的一个 bug ,我们正在修复网页版中,桌面版是好的
    xxlsize
    xxlsize
    Mar 25❤️2
    4
    这个图看着酷炫,但是实际上有啥价值没看出来。
    yisen123
    yisen123
    OP
    Mar 25
    5
    @xxlsize 主要的价值是给出代码质量分数,ai agent 有了这个分数以后从 mcp 获取,可以改进代码质量
    xxlsize
    xxlsize
    Mar 25
    6
    @yisen123 但是那个图没看出来有啥用,从图上能看出啥?点击图上的块也只显示个文件名,没有任何该文件的具体指标
    HeyHudy
    HeyHudy
    Mar 25
    7
    abc1310054026
    8
    看的眼睛痛,你用错图了,treemap 用来可视化占比很好,但是表示关系的话用关系图比较好。

    你可以增加一个 tabs ,切换不同图类型。
    yisen123
    yisen123
    OP
    Mar 25
    9
    @HeyHudy 很酷!!
    HeyWeGo
    HeyWeGo
    Mar 25
    10
    关联关系多了竖立起来确实会有个比较直观的概念,不过表现形式可以改改。对于关联关系特别复杂的可以考虑用那种极细的线,用户关注某个具体文件的时候,将关联的线突出显示比较好,甚至有个 solo 模式。更多是产品层的调整。
    yisen123
    yisen123
    OP
    Mar 25
    11
    @HeyWeGo 你好,刚刚网页已加入了极细的线帮助阅读,谢谢反馈!
    mlogclub
    mlogclub
    Mar 25
    12
    和 github 提供的这个功能有啥区别?

    ![]( https://picui.ogmua.cn/s1/2026/03/25/69c37c1c5966a.webp)
    ShiBuYi
    ShiBuYi
    Mar 25
    13
    默认是查看的哪个分支呢?

    还有 分数 为什么不是百分 z 制?
    endoffight
    14
    一直报错 Failed to fetch
    rekadowney9876
    15
    cpu 在哀嚎
    NotFoundEgg
    16
    提个 bug ,我的项目默认分支是 master ,但双击图中的文件跳转的 github 链接是 main 分支
    Geon97
    Geon97
    Mar 25
    17
    报错 ⚠ Cannot read properties of null (reading 'set_snapshot_json')
    maocat
    maocat
    Mar 25
    18
    哈哈哈哈,我提交了

    https://github.com/openclaw/openclaw

    3000 多分,AI 还是牛
    fireeeebot
    19
    这线条好丰富
    Saniter
    Saniter
    Mar 25
    20
    试了下超大型 repo linux ,一直 failed to fetch ,不过估计成功了也得卡死,上面那个 openclaw 的 cpu 占用就已经炸了
    234235
    234235
    Mar 25 via Android
    21
    下载了可执行程序用,发现字体太小了,UI 还有优化空间
    kuriasul
    kuriasul
    Mar 26
    22
    没毛线用
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2269 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 11:42 · PVG 19:42 · LAX 03:42 · JFK 06:42
    ♥ Do have faith in what you're doing.