教你的AI助手Fantom——并为它提供SkySpark 4.0迁移的钥匙。
MCP Fantom将来自fantom.org的Fantom文档、你的本地.fan pod和Haxall工作流索引到一个可搜索的统一界面中。它跨越数千个类型和方法运行语义代码搜索,使用社区检测分析调用图,并——独特地——自动化SkySpark 3.x到4.0的迁移:重写using语句、转换Axon字符串、生成Xeto文件、使用Fantom编译器验证,并在此过程中创建一个Git备份标签。
如果迁移中断,使用一个工具调用即可回滚。整个过程是可对比的、可逆的和有记录的。
存在的原因
SkySpark 4.0改变了扩展格式。手动迁移一个真实的扩展或连接器是一场using重写、Axon字符串转换和全新Xeto库文件的苦战——加上一个编译器会在你漏掉一行时立即出错。MCP Fantom将这项工作转变为一个AI助手驱动的工作流,它知道规则、运行检查并能撤销自己。
适用对象
- 扩展作者将SkySpark 3.x pod迁移到4.0
- Haxall集成人员在Fantom中构建连接器、函数和应用
- AI辅助开发者需要准确的Fantom上下文,而不是虚构的语法
迁移驾驶舱
将SkySpark 3迁移到4,不用担心手痛
一个工具重写你的扩展。另一个提交它。第三个回滚它。每个更改都是可对比的,编译器验证,Git保持安全网。
fan compile验证。可通过rollbackMigration进行回滚,直到调用commitMigration。
延迟索引
服务器在索引完成之前回复
大多数搜索服务器在首次启动时会阻塞客户端30到60秒以进行索引。MCP Fantom在不到一秒内启动。工具立即响应——FlexSearch首先预热,本地pod其次,嵌入之后。助手永远不会等待。
查询透明降级。如果嵌入未就绪,语义工具回退到关键字搜索。助手获得答案并附带保真度注记,而不是超时。
代码智能
语义理解,而不仅仅是文本匹配
semanticCodeSearch和findSimilarCode将你的Fantom代码嵌入向量空间。要求"规范化单位的函数",获得共享结构而非关键字的结果。
Graphology与Louvain聚类找到代码库中的自然社区——哪些类型聚集在一起,哪些不聚集。getCodeImpact追踪变化如何传播。getCallers和getCallees完成调用图界面。
迁移安全
每次迁移都只需一次撤销
migrateSkySpark4x在写入单个字节之前创建Git标签。如果任何失败——编译器错误、验证不匹配、你的直觉——rollbackMigration将repo恢复到运行之前的确切状态。
commitMigration是深思熟虑的。在你接受输出之前,什么都不会合并到你的工作历史中。到那时,迁移存在于一个分支上,带有备份标签,准备丢弃。
using重写+Axon转换+Xeto生成。migrateSkySpark4x之前的repo状态。指导工作流
超越工具——可读的指南
MCP资源是助手可以按需读取的markdown文档。MCP Fantom附带四个:pod搭建器、fanr发布指南、Haxall扩展演练和fant单元测试入门。
当开发者问"我如何开始?"时,助手会获取正确的资源、总结并继续。每个工作流都与服务器一起版本化。
- ✓分步markdown
- ✓通过
resources/list可发现 - ✓与服务器版本化
- ✓易于添加更多
技术栈
架构
功能特性
- 20多个MCP工具 -- 跨越文档搜索、语义代码搜索、调用图分析、代码生成和迁移自动化
- 延迟索引 -- 服务器在几秒内启动并立即响应;索引在后台进行,工具在运行时优雅降级
- 语义搜索 -- LanceDB加上HuggingFace Transformers嵌入,用于"查找类似代码"和跨模态查询
- 调用图+社区检测 -- Graphology和Louvain在大型Fantom代码库中找到自然聚类
- SkySpark 4.x迁移 -- 自动重写
using语句、Axon字符串和Xeto文件生成(lib.trio、funcs.xeto、lib.xeto)、编译器验证、Git备份标签 - 回滚 -- 如果迁移输出未通过检查,从自动创建的Git标签恢复
- 4个工作流资源 --
create-pod、use-fanr、haxall-basics、unit-testing - 双传输 -- stdio和HTTP with OAuth
工具界面(部分)
searchFantomDocs、getFantomType、listFantomPods、refreshIndex、searchFantomCode、getFantomFunction、generateFantomCode、validateFantomCode、migrateSkySpark4x、commitMigration、rollbackMigration、semanticCodeSearch、findSimilarCode、getCallers、getCallees、getCodeImpact,以及项目和实例管理。
要求
- Node.js 18+
- 用于迁移编译器验证的本地Fantom和Haxall工具链
- 用于迁移备份的Git存储库