Loading video...
Video Failed to Load
最优雅的软件定制时代可能已经来了,不需要电脑也不需要购置昂贵的云沙箱,它就在手机上生产优化。 昨晚为了测试即将 Release 的 Minis Android 1.14 版本 Claude Sonnet 5.5 接入执行效果,让他基于我的日常 VPN 需求,在不到半小时的时间里,Minis 自己在手机中准备 Android Dev 开发环境,分析需求,编写代码,自动安装调试,完全在手机上 实现了一个完全可用并且高颜值的 VPN 客户端,他基于 Mihomo 内核,兼容 Surge 配置格式,作为日常 iOS(主力用 Surge) + Android 双机党来说,这甚至是一个完全可用的 App,并且解决了每次修改配置都要改不同配置格式的麻烦。 回复中将逐步说明如何做到的,有兴趣的可以自己试一试。
23,323 views • 9 days ago •via X (Twitter)
18 Comments

第一句 Prompt: “iOS Surge app 是我在 iPhone 上的主力 VPN 软件,但它只支持 iOS,我需要你帮我实现一款基于 Mihomo 内核的 Android VPN 软件,名字就叫 Surhomo 吧,支持使用 Surge App 的常用配置(对比一下 Surge conf example 和 Mihomo conf example 找到共同支持的配置 feature),这样我就可以随时同步使用同一份 Surge 配置在 Android 上也顺利连接入网络避免每次改动配置都要改动不同软件,你通过 /android-dev skill 构建准备环境和项目,做好 git 版本管控,定义好 debug server API,以便于自动本机安装后操作调试和排查日志等,不断迭代知道功能基本完善” 为了简化任务,我补充了一下: “补充一下,你无需为此设计无法的 UI,整个 App 只需要有选择配置文件,Start 和 Stop 的地方,以及一些基础的简单网络设置例如 DNS 等” 随后他开始依据 Android Dev Skill 中的指引安装 adb 和 Android SDK 等开发环境,并根据需求引入 Mihomo 必要的 Golang 编译环境。然后创建工程骨架...

第二句 Prompt: “重要的是整个 App 支持通过 JSON RPC 格式开放 schema 和操作指令给其他 Agent 进行操作和调试,以便于快速的同步配置、启动停止、排查日志等操作” “API 需要支持简单高效的加密鉴权方式,避免被中间人拦截暴露配置或者被进行破坏性操作,客户端可通过发起鉴权的方式获取颁发的 Token,并在后续使用 Token 对请求内容和返回内容进行加解密” 为了让 Minis 可以自动和运行中 VPN 服务交互拉取日志或者排查问题,让他继续增加一个 AI 友好的调试接口,以便于全自动化测试并优化。 这个步骤它不断循环,直到在系统中成功添加了 VPN 并收到数据...,甚至过程中由于新的 VPN 接管了服务导致 Minis 推理失败了,这时候我重新开了原来的 VPN 并输入了“继续”...

pixel 手机缺万年历、指南针 app,我都是让 minis 开发的,哈哈哈

hi,可以开一下 dm 不

提示词已经OCR了,换安卓机了要它写个Quantumult X for Android

能开发iOS软件吗

iOS不行,系统限制需要配合Mac,但你可以配合 Scriptable 之类的软件开发定制小组件,也很好玩

嗯,我研究看看,谢谢大佬

手机半小时搞定,以前得开电脑折腾一晚上。

Why not just use wireguard directly ?

Due to special network environments requiring rule-based traffic routing, multiple VPN services are already needed as backups, and WireGuard cannot satisfy these.

Interesting. Let me look at that tool. Thanks

🐂🍺

请问Minis可以走Anthropic的Subscription额度吗?

太牛了吧🏋️♂️

花费多少

领导厉害 👍 能不能给clash rs也弄一个

Phone-side Sonnet is impressive, but the hidden variable is which endpoint that session actually hit. Device UX and model route are separate. APIMart would only matter if the same client needs a fallback model id.
