面向所有平台的原生 AI 代码编辑器。使用 TypeScript 编写,通过 Perry 编译为原生二进制。无 Electron,无妥协。
真实截图。是的,还有一些小瑕疵 — 别忘了,我们正在公开构建。
使用 TypeScript 从零构建,通过 Perry 编译为原生二进制。每个组件都为性能、模块化和开发者体验而设计。
无 Electron、无 Chromium、无 V8 运行时。Perry 将 TypeScript 直接编译为原生二进制。体积不到 50MB,内存占用不到 100MB,启动不到一秒。
AI 不是后来加上去的 — 而是深度融入编辑器核心。AI 能感知你的语法树、错误、Git diff 和终端。深度上下文,而不仅仅是文本。
Claude、GPT、Gemini、Ollama 或你公司的私有模型。你的 API 密钥,你的选择。为不同功能混合使用不同供应商,无供应商锁定。
描述你的需求。Agent 会阅读你的代码、规划修改、编辑文件、运行测试并迭代 — 在任何提交之前逐块审批。
在编辑器内审查 Pull Request,拥有完整的语法高亮、diff 中的 LSP 智能提示,以及 AI 驱动的注释,在人类之前发现 Bug。
hone-editor、hone-terminal 和 hone-core 是独立的包。在你自己的应用中使用编辑器组件,或在 Hone 的基础上构建你自己的 IDE。
当你消除浏览器层,一切都会变快。这些是我们的目标 — 我们志在全部达成。
Hone 绝不转售 API 访问权限。你自带密钥,为不同功能路由不同供应商。当下一个热门模型发布时,立即可用。
由任何供应商驱动的上下文感知建议。感知你的语法树,而非仅仅是原始文本。以原生速度渲染,零 Electron 开销。
AI 自动感知你打开的文件、错误、终端输出和 Git 状态。无需手动 @file 标记。随时切换模型。
多文件编辑、终端命令、测试执行、错误恢复。通过实时活动日志和变更落地前的 diff 审批实现完全透明。
AI 预先分析每个 diff 中的 Bug、安全问题和风格问题。审查注释内联显示。一键修复。将审查提交回 GitHub/GitLab。
为每个 AI 功能路由到不同的供应商。使用快速的本地模型做自动补全,使用强大的云端模型做 Agent 任务,中间的用于对话。你的基础设施,你的预算,你的规则。
使用 TypeScript 编写一次,通过 Perry 在每个平台上编译为原生应用。原生外观,原生速度,无处不在。
Hone 是一系列可组合的包。以下是每个包的当前进展。
每个切片都在所有七个平台上同时交付一个完整的、可测试的功能 — 桌面、移动端和 Web。
编辑器免费且开源。你只需为托管同步服务付费。
端到端加密。中继服务器永远不会看到你的代码。
开源。自行托管中继服务器,免费无限制。
构建过程中的进度笔记 — 没有营销话术,只有真正发布的内容。
IDE 本周经历了一次大规模的集成冲刺。七个阶段的功能接入在 26 个提交中完成:LSP 悬停/跳转定义/签名帮助(第 3 阶段)、带 VS Code 风格面板的 Ripgrep 搜索、Git 推送/拉取/暂存/内联追溯/提交日志(第 4 阶段)、带跳转到下一个错误的 Error Lens 诊断(第 5 阶段)、带断点和折叠的调试面板(第 6 阶段),以及 50+ 文件类型图标、拼写检查、代码片段和主题接入的扩展(第 7 阶段)。插件系统现已端到端接入 — 扩展可以在 IDE 中加载、激活和运行。
在集成阶段之上还有:通过 setFindHighlights FFI 实现字符级精确高亮的查找替换、带 3 层管线和保存时格式化的文档格式化、资源管理器中的右键上下文菜单、Cmd+S 保存、最近打开子菜单、活动文件自动展开、带脏标记的 VS Code 风格标签页,以及启动时向 Chirp 发送崩溃报告。一个 30GB 的内存泄漏被定位并修复。IDE 现在在可用时优先使用 tsgo --lsp 而非 typescript-language-server。
编辑器有 46 个跨平台提交。iOS 获得了完整的键盘支持 — Cmd+C/V/X/Z/A、方向键、Enter、Tab、Shift+选择、按键重复 — 以及智能引号抑制和覆盖层/滚动修复。Windows 添加了鼠标拖选和双击选词。Linux 获得了带语法高亮的 Perry 模式渲染。Android 获得了分词器、平台存根、ARM64 的 16KB 页面对齐,以及一个崩溃修复。一个带制表位、变量和 4 语言内置支持的代码片段引擎已发布。Rust 渲染器增加了断点栏图标、折叠指示器和 Error Lens 内联诊断。持久查找高亮和装饰 API 完善了编辑器工作。
hone-core 添加了带语言预设的文档格式化器(51 个测试)、带驼峰拆分和建议的拼写检查器,以及缩进检测器。hone-themes 新增了 4 个主题 — 高对比度暗色/亮色、Tokyo Night 和 Gruvbox Dark — 总数达到 15 个。两个新包上线:hone-marketplace(Perry 编译的 Fastify 服务器,用于 marketplace.hone.codes,带自动部署)和 hone-build(通过 perry-hub 进行跨平台编译的插件构建协调器)。插件 SDK、Rust 宿主 crate、CLI 和市场客户端在 hone-extension 中发布,同时还有 9 个即用型插件。
iOS 上的编辑器从白屏变为完全可用。大约 20 个提交完成了这一转变 — 用 CADisplayLink 渲染循环替代 setNeedsDisplay、修复触摸传递和光标同步、使用正确偏移量实现单指滚动,以及接入颜色 FFI 使主题正确应用。Android 获得了 OOM 修复(脏跟踪代替完整重绘)、ARM64 调用约定修正和真实颜色管线接入。多行选择渲染和基于快照的撤销/重做在所有平台上线。一个带主题切换的独立编辑器测试应用使迭代无需启动完整 IDE 即可进行。
iOS 上的跨设备同步现已端到端运行。原生 WebSocket 配对、文件树浏览和文件内容加载均通过中继工作。Android 同步获得了消息节流修复。IDE 的同步层添加了 token/lastSeq 支持和增量追赶,使重新连接的设备能够从断点续传。在中继端,增量存储被重写为基于 SQLite 的持久化存储,兼容 Perry AOT。中继包获得了 README 和公开发布清理。
AI 对话面板获得了完整的 Claude Code GUI — 处理代码块的多块解析、速率限制指示器、思考块渲染、内联 diff 和用量统计。带 Picker 下拉菜单的多供应商模型选择器让你可以在供应商和模型之间切换。面板经历了安全和资源管理审计。
IDE 现在可在 Web 上运行 — 新的 Web 目标跳过设置、隐藏终端和 Git(无 PTY 或文件系统),加载一个暗色主题编辑器。亮色模式在所有面板上线 — 编辑器、终端、设置界面、嵌入式 NSView。macOS 获得了应用图标、文件类型关联和"打开方式"支持。VS Code 风格标签页替代了旧标签栏。终端在所有平台(包括 Web 存根)上获得了主题感知的颜色 FFI。hone-core 添加了可选的匿名遥测。
过去一周是项目启动以来产出最高的一周。IDE 从一个能加载文件的工作台外壳变成了一个真正看起来和用起来像代码编辑器的东西。真正的 PTY 终端模拟器集成在底部面板中。AI 对话带流式响应在右侧面板。并排 Git diff 视图,带彩色行背景。VS Code 风格文件浏览器,像素级对齐。设置持久化和跨所有 11 个主题的实时主题切换。通过 LSP 桥接的后台 tsc 诊断。macOS 和 Windows 上的原生菜单。Linux 目标支持。
编辑器方面,交互编辑现在在所有六个平台上工作 — macOS、iOS、Windows、Android、Linux (GTK4) 和 Web。自动闭合括号和智能缩进已上线。大量 Perry AOT 兼容性工作完成:修复语法高亮字符范围、Rust FFI 事件队列导致的灰线 Bug、Windows 上的 DPI 缩放,以及 iOS 上的 ARM64 ABI 修正。
最大的架构新增是跨设备同步。hone-relay 是一个新包 — 通过 Perry 编译为原生的 WebSocket 中继服务器,带认证、速率限制和房间管理。hone-core 增加了完整的同步传输层,包含端到端加密、设备配对、局域网发现和带冲突检测的变更队列。IDE 有同步主机/客机模块、同步面板、审查面板和信任设置 UI。@honeide/api 类型扩展了同步消息信封、领域载荷和认证类型。
核心还增加了 Git(客户端、状态解析器、diff 解析器、日志)、搜索(Ripgrep 集成、搜索模型)、AI 模块(供应商、内联、对话、Agent 状态/工具、审查)、任务运行器和 LSP/DAP 协议类型。这是 55 个源文件和 499 个测试通过。
本周最后进行了 MVP 审计 — 将 UI 精简为实际可用的功能,并为其余功能接入菜单存根。macOS 上的二进制文件为 3.6 MB。
编辑器组件现在在 macOS、iOS、Windows、Android 和 Web 上有可用的交互演示。带 B-tree rope 的 Piece-table 文本缓冲区提供 O(log n) 编辑性能,虚拟滚动渲染器只处理可见行,因此即使大文件也保持流畅。
本次冲刺的主要平台挑战是在 iOS 上为 Perry 的 FFI 层正确设置 ARM64 ABI。Core Text 字形光栅化器现在从 Perry 编译的 TypeScript 正确调用,这解锁了 iOS 演示。通过 Pango 的 Linux 渲染已搭建框架;尚未进入演示。
语法高亮覆盖 10 种语言(ts、js、html、css、json、py、rs、cpp、md),通过 Lezer 语法。LSP 和 DAP 客户端已接入 — 补全、悬停、跳转定义、断点和变量检查均在组件级工作。AI 内联补全的幽灵文本渲染也已上线。
终端模拟器组件发布了首个版本。解析器是一个 14 状态机,处理 CSI、OSC 和 DCS 转义序列。支持真彩色(通过 SGR 的 24 位 RGB)、X10 和 SGR 扩展模式的鼠标跟踪、备用屏幕缓冲区(DECSET 1049 — 让 vim、htop 和 less 正确工作的那个),以及括号粘贴。
OSC 8 超链接、CJK 双宽字符和 OSC 133 Shell 集成标记(用于提示检测)完善了功能集。macOS 渲染路径使用 Core Text;与 hone-editor 相同的架构,因此两个组件共享原生渲染约定。
163 个测试用例覆盖了解析器状态转换、属性渲染、鼠标事件编码和滚动回溯行为。该组件目前独立使用,将在切片 11 中接入 IDE 工作台。
IDE 工作台的前三个切片已完成。外壳渲染了一个可调整大小的面板网格、标签管理器、活动栏和状态栏 — 使用平台自适应布局引擎,根据屏幕大小在完整工作台(桌面/iPad 横屏)、分屏(平板竖屏)和紧凑(手机)模式之间选择。
主题引擎加载 VSCode 兼容的 JSON 主题,并将 TextMate 作用域解析为编辑器的颜色。@honeide/themes 的所有 11 个主题均可使用。文件浏览器显示由 @honeide/core 中文件监听器支持的实时树,Ctrl+P 通过字典树索引进行模糊查找。
设置使用四层存储(默认 → 用户 → 工作区 → 语言特定覆盖)。欢迎界面中的 AI 供应商设置向导引导完成 API 密钥输入、连接测试和按功能的模型路由。切片 3 — 将实际编辑器标签页接入 @honeide/editor 实例 — 是下一步。
Hone 处于早期开发阶段。关注进展、参与贡献,或只是旁观。