做了个开源 macOS 应用 Luti:让网页版 Claude / ChatGPT / Grok / Gemini / Muse 等通过 MCP 直接操作本地项目

3 小时 8 分钟前
 vislearn

我做了个原生 macOS 应用 Luti,之前一直是自己用的工具,最近整理了一下分享出来。

Luti 是一个本地优先的 macOS 运行时,网站那句话就是它的定位: Cloud AI. On your Mac.

通过 MCP 把云端 AI ( Claude 、ChatGPT 、Grok 、Gemini 、Muse 等)接到你 Mac 上亲自选定的一个项目文件夹里。AI 负责思考和编排,Luti 在本地执行工具,并守住项目边界。

接通之后,AI 可以在项目里做什么

一共 25 个 MCP 工具,分记忆、项目、文件与代码、进程与任务、Git 、浏览器、产物七类。

跨客户端共享记忆

参考了 Claude Code 的记忆组织模式,每个项目有一套共享记忆:一个简洁的 MEMORY.md 索引,加上若干按主题拆开的 .md 决策文件。

好处是换客户端不丢上下文。在一个 AI 客户端里聊定的架构决策、踩过的坑,换到另一个支持 MCP 的客户端里,它读同一套记忆就能接着干,不用每次从零交代项目背景。

连接方式与使用

下载打开 Luti ,在 Projects 里选一个本地项目文件夹,然后在 Connections 里任选一种(也可以两条同时开)点启动就行:

  1. OpenAI Secure MCP Tunnel:给 ChatGPT 用,出站型私有隧道,不需要你准备公网域名和 HTTPS 入口。在 Luti 里填 Tunnel ID 和 Runtime API Key ,再在 ChatGPT Plugins 里添加自定义 MCP 选这个隧道就行。
  2. Cloudflare Tunnel:标准远程 MCP ,走你自己的域名(/mcp)+ OAuth ,给 Claude 、ChatGPT 、Grok 、Gemini 、Muse 等支持 OAuth 的客户端用。每次连接都绑定当前项目,并且要在 Mac 上的 Luti 弹窗里核对本地验证码并点允许才放行。

边界与取舍

权限上做得很克制:一次只暴露你选定的一个项目文件夹,凭据只存 macOS Keychain ,点 Stop 立即断开所有隧道、后台任务和浏览器会话。

为了保持简单可控,开发过程中我也砍掉了不少功能,比如权限 Mode(之前做过分级模式,遇到 rm 这类危险操作需要本机弹窗点 Allow 才放行,后来觉得打断感太强,改成了现在选定目录内默认 Full)、Cloudflare Quick Tunnel 、ngrok 、Computer Use 、Skills 自动扫描、多项目同时挂载等。

因为之前主要是我个人自用,难免还会有考虑不周的地方或小 Bug 。如果用上了遇到什么问题,或者觉得上面砍掉的功能哪个其实很刚需,欢迎在评论区或 Issue 里反馈提意见!

其他信息

418 次点击
所在节点    分享创造
4 条回复
jifei
1 小时 58 分钟前
学到了,打开了新思路。
kyomio
1 小时 1 分钟前
大佬你 github 主页下面的个人网站 url 多打了个 t
vislearn
24 分钟前
@kyomio 哈哈哈🤣,感谢,不是大佬哦
58369046
6 分钟前
没有 windows 版本吗大佬

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1249199

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX