Scast

Scast

🚀 🔱SCAST

🔱SCAST 是一个程序化工具,它能够将代码转换为 UML 图表和流程图,可用于静态代码分析与可视化,极大地方便开发者理解代码结构。

项目信息

  • 实现时间:2024/9/27
  • 实现者:DKZ
  • 项目图片GitHub Logo
  • 语言选择:English/中文

项目链接

✨ 主要特性

  • 多语言支持
    • javascript:使用 acorn 进行解析。
    • typescript:目前使用 typescript,后续将改用 estree
    • csharp:使用自定义解析器,未来不再支持。
    • python:暂未实现,计划中将使用 filbert
    • vue:后续实现。
  • 可视化原理:利用解析器将代码解析为抽象语法树(AST),然后进行静态分析,最后借助 MermaidD3 进行可视化。
  • 使用方式多样:可以在在线尝试,也可以下载此仓库并在浏览器中打开 SCAST.html;对于开发者,还能使用 npm run server 部署到服务器上,或作为 MCP 服务集成到 AI 客户端中。
  • 可视化示例scast_uml

🚀 快速开始

在线体验

您可以直接访问🔱SCAST 在线地址进行体验。

本地部署

MCP 部署步骤

  1. 使用 git clone https://github.com/davidkingzyb/SCAST.git 下载源代码。
  2. 执行 npm install 安装依赖。
  3. 在客户端进行如下配置:
{
"mcpServers": {
"scast":{
"command":"node",
"args":[
"/YOUR_INSTALL_DIR/SCAST/mcp/index.js",
"/YOUR_WORKSPACE/",
"C:\\Users\\DKZ\\OTHER_ALLOWED_DIR\\",
]
}
}
}

工具使用说明

scast_analysis

SCAST 可帮助用户通过可视化分析和总结代码。只需提供代码所在的文件夹路径,它就能对代码进行静态分析,生成 AST 树以帮助用户理解代码结构并解释其功能。同时,它还能生成各种图表,如 UML 图、AST 树图表和 Mermaid 流程图。最后返回一个包含所有类和方法名称及其功能说明的关键词列表,并提供链接让用户可以在浏览器中查看图表详细信息。

scast_retriever

SCAST 可帮助用户分析和总结代码并提供可视化。您需要提供源代码文件夹的文件路径,它将对文件夹中的源代码进行静态分析,生成 AST 树以帮助用户理解代码结构并解释其功能。在分析完代码目录后使用 SCAT,您可以使用 AST 树中的关键词进行搜索,更好地利用 RAG 方法回答用户问题。此关键字可以是类名、方法名或字段名,SCAST 将找到其定义位置的源代码。

与 Ollama AI 集成

首先安装 ollama,查看 ai.js 了解更多细节。 ollama

ESTree 支持

符合 ESTree 规范的 AST 解析器。

Force Directed Graph 可视化

FDP

📚 详细文档

更新日志 - MCP

mcp 上述 MCP 部署步骤及相关工具使用说明可作为更新日志的一部分,若有后续更新将持续补充。

  • 0 关注
  • 0 收藏,28 浏览
  • system 提出于 2025-10-02 14:48

相似服务问题

相关AI产品