bg

frpc:给 frpc 一个窗口

我做了一个 frpc 桌面客户端。连接、隧道、状态和日志都在一个窗口里,macOS 和 Windows 都能用。

Wankong 的头像
wankong
6minzh-CN软件frpMyGomacOSWindows

需求

上周刚好有个需求需要联调回调服务,所以自然而然的就想到了frp。

frp 很好用。配置文件写清楚,一条 frpc -c frpc.toml 就能把内网服务推到公网。

为了更好的管理 frpc.toml 文件,很久之前我就下载一款frpc-desktop的软件

但我突然发现,这款功能简单的软件,是用electron编写的,内存和存储都占据了300MB+。看了看我所剩不多的空间,想重写一个!

最近频繁刷到 MyGo 的消息,体积小/速度快/响应迅速/高度自定义,还可以跨平台,赶紧试试。

坏了,我不会Golang 。。。 老实说,我对go的了解仅限于如何拼写 go 这个单词。

问题不大,现在是AI时代,许愿式编程,许个愿试试呗。

就这样,耗费了3个5h的窗口和 亿些 DeepSeek 的 token, 在我仍然不会 Golang 语法的情况下,frpc 诞生了!

可以做什么

  • 自带最新版本的 fprc 二进制文件, 同时提供多种版本的下载和管理。
  • 支持多个服务端,独立进程,自动重连,自动重试。
  • 隧道可单独启停,进程之间互不影响。
  • 可视化编辑配置文件,支持导入/导出。
  • 支持分组/筛选/日志查看/暗色模式等。
配置放在哪

连接与凭证保存在用户目录的 ~/.frpc/config.json,Windows 则是 %APPDATA%\frpc\config.json。

AI的强大

frp是个可以称得上是互联网基建的软件,所以AI对于frp的了解相当深厚,我自己使用的只是很浅显的配置几个简单的参数,但是在 仅输入一段提示词的情况下,就已经考虑到了分组/多进程/配置项的完整可视化编辑等。

我自己写的话,至少第一版可能是不会去考虑的。

我是在周四下班前准备写这个项目,然后就先让AI 输出了份功能需求拆分和设计文稿,就设定了个 goal 让其自己运行。

第二天就拿到了一份和现在差距不大的初版,震惊/瘫坐/无力 🤯。

MyGo

相对于AI的高效输出,MyGo 给了我更多惊喜:

在第一天的初版完成之后,即时我没有安装任何skill/增加更多提示词。在基础功能完成之后,发现自动安装了mygo-maintenance 的Skill,在帮我处理性能测试,动画优化等等。。

高度自定义的样式风格(虽然我目前还用不到)。还可以跨平台!

在macOS下,自带frc离线文件的情况下,仍然只有10MB出头的尺寸。

都让我没有了去选别的框架的理由。

下载

frpc 图标

frpc

macOS Apple Silicon · 推荐

前往下载
macOS下的签名问题

macOS 版本使用 ad-hoc 签名,第一次打开需要在 Finder 里右键选择「打开」。Windows 安装包没有签名,首次运行可能触发 SmartScreen 提示。

题外话

发布完0.1.1版本之后,我还是没开始学 Golang 的基础语法。