大家好,我是陆尧

在这个大模型满天飞的时代,AI 编程助手已经成了开发者的标配。但是,用久了云端 API,我总有几个痛点如鲠在喉:

1. 隐私焦虑:不想把公司的项目代码或者个人的绝妙 idea 传到云端。

2. 网络依赖:断网或者 API 抽风的时候,直接变成“瞎子”。

3. 订阅费用:虽然单次调用不贵,但日积月累也是一笔开销。

于是我萌生了一个想法:能不能利用本地大模型(比如Qwen2.5-Coder),配上一个极轻量级的桌面外壳,自己手搓一个完全属于我的 AI 网页构建器?

经过两周的踩坑与折腾,Nebula Forge (星云锻造炉) 终于诞生了,并且我已经把它开源并打包成了 .exe。

👉 GitHub 开源地址:https://github.com/luyao001/nebula-forge

👉 直接下载体验:https://github.com/luyao001/nebula-forge/releases/tag/v0.1.0

✨ 这是个什么神仙工具?

简单来说,这是一个 “所说即所得” 的本地 HTML/JS/CSS 锻造炉。

1.智能环境探测:告别繁琐的手动配置!软件启动时会自动扫描你本地的 Ollama 环境。没开服务?它会变红拦截并提示防错;拉取了新模型?左侧下拉菜单会自动更新列出你拥有的所有模型,即插即用。

2.纯血本地:核心大脑接入本地运行的 Ollama,只要你显卡带得动,代码生成完全零延迟、零成本、断网可用。

3.极速跳字渲染:当你输入需求,左侧 AI 开始思考时,右侧的专业编辑器(VS Code 同款内核 Monaco)会实时同步渲染出代码,甚至能根据语言自动切换高亮,丝滑得像打字机一样。

4.即时沙盒预览:右侧支持一键切换“预览”模式,生成的代码立刻变成可视化的网页。5.体积极小:得益于 Tauri 的 Rust 架构,最终的安装包非常轻量,完全没有 Electron 那种吃内存的厚重感。

🛠️ 硬核技术栈与“踩坑”实录

为了实现这个工具,我选择了 Tauri + React + TypeScript + Monaco Editor 的组合。看起来美好,但实操时踩了无数的坑:

坑一:Ollama 跨域之战 (CORS)

刚把页面画好,准备调用本地

http://localhost:11434

 时,直接吃了一个红色的网络报错。

排查后发现,Ollama 处于安全考虑,默认禁止了外部(包括本地桌面应用环境)的跨域请求。

• 解决办法:必须在系统环境变量中强制注入 setx OLLAMA_ORIGINS "*",然后彻底重启 Ollama 进程才打通了这层壁垒。

坑二:如何实现“代码与对话”的实时双向奔赴?

一开始,我的程序像个“憋大招”的呆子:必须等 AI 把整段几百行的代码写完,右侧的编辑器才会“啪”地一下显示出来,等待过程极其痛苦。

为了实现

实时提取,我重写了流式解析逻辑,并用了一段极为苛刻的正则:

```javascript

const regex = /```(\w*)\n?([\s\S]*?)(?:```|$)/;重点在于结尾的 (?:```|$)!

这意味着,哪怕 AI 才刚刚写下一个反引号,还没来得及闭合代码块,前端就能瞬间捕获到当前的所有代码片段,并喂给 Monaco Editor。加上流式 API 的 Decoder 解析,终于实现了两边同步“疯狂跳字”的爽快感。

坑三:被 Flex 布局暴打的 UI

做桌面端 UI 和做网页不一样,窗口是可以随意缩放的。一开始,随着消息变多,底部的输入框直接被挤出了屏幕外(找都找不到)。后来通过重新规划容器,利用

flex: 1 和 overflow-y: auto 锁死消息列表区,并用 flex-shrink: 0 死保输入框的底线,才做出了现在这个类似专业 IDE 的紧凑布局。

🚀 小白怎么玩?

如果你不是程序员,也完全可以下载把它当工具用!

1. 前往 GitHub Releases 下载最新的 .exe 安装包。

2. 去 Ollama 官网下载安装包,并在命令行跑一句 ollama pull qwen2.5-coder:7b 拉取模型。

3. (别忘了在命令行跑一句 setx OLLAMA_ORIGINS "*" 开启跨域)。

4. 打开 Nebula Forge,你会发现左侧的下拉菜单已经自动识别出了你刚才下载的模型。直接在底部输入自然语言,开始“白嫖”属于你的私人 AI 程序员吧!

结语:从一行行报错到看着自己设计的 .exe 图标出现在桌面上,这种独立开发一个完整作品的成就感是无与伦比的。Nebula Forge 目前还在 v0.1.0 阶段,还有很多可以打磨的地方。

如果你觉得这个项目有点意思,欢迎去 GitHub 帮我点个 Star ⭐️,也欢迎提 Issue 和 PR 一起把它做得更酷!

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐