Kalynt:Open-Core AI IDE,具备 Offline LLMs、P2P Collaboration 等更多功能
Source: Dev.to

我想要解决的问题
我喜欢 VS Code 和 Cursor。它们功能强大,但都假设相同的模型:将你的代码发送到云端进行 AI 分析。
作为一个关心隐私的人,这在多个层面上让我感觉不妥:
- 云依赖 – 你的 LLM 调用会被记录,可能被用于训练,始终可追溯。
- 单用户设计 – 两者都不是从一开始就为团队构建的。
- 服务器依赖 – “Live Share” 以及协作功能依赖中继服务器。
我想要不同的东西。于是我自己构建了它。
什么是 Kalynt?
Kalynt 是一个 IDE,其特点:
- AI 本地运行 – 通过
node-llama-cpp。无需互联网。 - 协作采用 P2P – 使用 CRDTs + WebRTC 实现实时同步,无需服务器。
- 透明 – 所有安全关键代码都是开源的(AGPL‑3.0)。
- 在低配硬件上运行 – 已在 8 GB 的 Lenovo 笔记本上构建并测试。
技术深度解析
本地 AI 与 AIME
大多数开发者想在本地运行 LLM,却认为“这需要高端 GPU 或云订阅”。
AIME(Artificial Intelligence Memory Engine)是我的答案。它是一个上下文管理层,即使在硬件受限的情况下也能让代理高效运行,方式包括:
- 智能上下文窗口
- 高效的 token 缓存
- 通过
node-llama-cpp实现本地模型推理
结果: 你可以在“土豆机”上运行 Mistral 或 Llama,并完成真正的工作。
使用 CRDT 的 P2P 同步
没有服务器的协作很困难。大多数工具放弃了,转而围绕中心中继构建(如 Figma、Notion、VS Code Live Share)。
我选择了通过 yjs 实现的 CRDT(Conflict‑free Replicated Data Types):
- 每一次更改都带有时间戳且顺序无关
- 对等方直接通过 WebRTC 同步
- 没有中心权威 = 不需要服务器
- 可选的端到端加密
架构模块
@kalynt/crdt→ 无冲突状态@kalynt/networking→ WebRTC 信令 + 对等管理@kalynt/shared→ 公共类型
开源核心以实现透明
核心(编辑器、同步、代码执行、文件系统隔离)100 % 使用 AGPL‑3.0。你可以审计每一个安全边界。
专有模块(高级代理、硬件优化)虽为闭源,但仍对用户可见:
- 完全本地运行
- 二进制中高度混淆
- 对核心 IDE 非必需
我的构建过程
- 时间线: 1 个月
- 硬件: 8 GB Lenovo 笔记本(未升级)
- 代码量: ~44 k 行 TypeScript
- 技术栈: Electron + React + Turbo monorepo + yjs +
node-llama-cpp
流程
- 设计架构(安全模型、P2P 连接、代理能力)
- 使用 AI 模型(Claude、Gemini、GPT)帮助实现
- 评审、测试并集成所有内容
- 通过 SonarQube + Snyk 进行安全扫描
这就是现代单人开发的工作方式:人负责架构和判断,AI 负责实现的繁重工作。
我的收获
- 发布胜过完美 – 我本可以再花一个月进行打磨,但发布 v1.0‑beta 获得了真实反馈,这比表面的完美更有价值。
- 开源核心需要透明 – 如果你对某些部分进行闭源,需要非常明确地说明是什么以及原因。我在
SECURITY.md、OBFUSCATION.md和CONTRIBUTING.md中记录了这些,以表明我没有隐藏任何不良意图。 - WebRTC 功能强大但棘手 – 点对点同步真的很难。CRDT 解决了算法问题,但信令、NAT 穿透和节点发现才是耗费大量时间的地方。
- 隐私优先是功能,而非勾选框 – 这不是“添加了加密支持”。而是“系统的设计使得集中存储是可选的,而非默认”。
试一试
- GitHub:
- 下载安装程序:
- 或从源码构建:
git clone https://github.com/Hermes-Lekkas/Kalynt.git
cd Kalynt
npm install
npm run dev