乐于分享
好东西不私藏

AI做项目—> MacOS AI 输入法v4

AI做项目—> MacOS AI 输入法v4

TypeWhaleMac V4 当前是什么

TypeWhaleMac V4 目前已经从早期 Demo,推进到一个可工作的 macOS 输入助手原型

它还不是完整的原生输入法,但已经具备了“输入法体验”的关键雏形:

在 TextEdit 里输入 thank
→ 光标放在 thank 后
→ 按全局快捷键
→ 候选框出现在光标附近
→ 自动识别 thank
→ 推荐 thanks!
→ 按数字或 Enter
→ thank 被替换成 thanks!

这个流程已经不是单纯 UI Demo,而是一个真实可演示的外部 App 输入辅助链路。


V4 已经完成的核心能力

1. 全局快捷键触发候选框

现在可以在 TextEdit 等外部 App 里直接按快捷键唤起 TypeWhaleMac:

Show Candidate Overlay:Control + Option + Space
Hide Candidate Overlay:Control + Option + H

而且 V4 已支持从 Settings 修改 Show / Hide 快捷键,并且不用重启 App 就能生效


2. 候选框靠近光标显示

候选框不再是固定漂浮窗口。

现在逻辑是:

优先靠近文本光标
失败时回退到鼠标附近
自动避免跑出屏幕边界
保持在普通窗口前面

这让它看起来更像真正输入法,而不是一个独立工具窗口。


3. 自动捕获输入上下文

V4 能从当前外部文本框里尝试读取上下文。

例如:

thank

光标在 thank后面时,TypeWhaleMac 可以捕获到这个 token,并基于它生成候选。

也支持选中文本后捕获。


4. 候选确认后替换原文

早期问题是:

thank + thanks! = thankthanks!

现在已经修正为:

thank → thanks!

也就是说,它不是简单追加,而是能把捕获到的上下文替换掉。


5. Local Rule Provider

V4 不再完全依赖 Mock / Static Demo 数据。

现在已经有一个真实但简单的本地规则 Provider,例如:

hi    → Hi! / Hi there! / Hello!
thank → thanks! / thank you! / Thanks for your help.
pls   → please / Please let me know.
addr  → address / Please confirm the address.

这证明了候选生成管线已经开始向真实产品靠拢。


6. 候选来源和原因显示

候选行里可以显示来源信息,例如:

thanks!
Local Rule · phrase expansion

这对未来接入多个 Provider 很重要,比如:

Local Rule
User Phrase
Local Model
API Provider
Fallback Provider

用户和开发者都能知道候选来自哪里。


7. Accessibility 权限引导

V4 增加了 Settings 里的 Accessibility Onboarding 区块:

Trusted / Not Trusted
Open Accessibility Settings
Refresh Status
为什么需要 Accessibility 权限
哪些功能依赖它

这解决了之前“为什么明明开了权限还不能写入”的混乱问题。


8. 固定 Dev App 工作流

现在有固定开发测试路径:

~/Applications/TypeWhaleMac-Dev.app

也有脚本:

04_Client/TypeWhaleMac/Scripts/build_dev_app.sh

这让 Accessibility 授权测试更稳定,不再完全依赖 Xcode DerivedData 的临时 App。


当前 V4 的产品定位

现在的 TypeWhaleMac 可以定义为:

macOS 全局输入助手原型

而不是完整输入法。

更准确地说,它是:

全局快捷键输入助手
+ 光标附近候选框
+ 上下文捕获
+ 本地规则候选
+ 候选替换插入

它已经能展示产品核心价值:

用户在任意文本框里输入一段内容
→ 唤起候选
→ 快速替换成更自然、更完整、更地道的表达

现在还不是完整输入法的原因

它距离真正输入法还有几个明显差距:

1. 还不能实时接管用户每一次键盘输入
2. 还不是 macOS Input Method Kit 原生输入法
3. 候选来源还很简单,没有真正 AI Provider
4. 依赖 Accessibility + 剪贴板 + 模拟按键
5. Shortcut 编辑还是文本框,不是专业快捷键录制器
6. 没有正式签名、notarization、安装包
7. 对不同 App 的兼容性还没有系统测试

所以它现在是很有价值的 V4 原型,但还不是可以给普通用户大规模分发的产品。


接下来 V5 建议怎么走

我建议 V5 不要同时做很多方向。应该选一个主线推进。

方向一:真实候选 Provider

这是最有产品价值的一条线。

目标是让候选不再只是固定规则,而是真正“智能”。

可以分三步:

V5-1 User Phrase Provider
用户自定义短语库,比如:
ty → thank you
addr → 我的地址
eml → 我的邮箱

V5-2 Local Dictionary / Rule Provider
扩展本地规则:
英文润色
常用短语补全
中英文表达转换

V5-3 AI Provider Adapter
预留接口,未来接:
OpenAI API
本地 Ollama 模型
其他 LLM API

这条线最终效果最明显:候选质量会快速提升。


方向二:快捷键录制器 UI

现在 Settings 里快捷键还是文本框,例如:

⌃⌥J
⌃⌥X

用户体验不够好。

V5 可以做一个真正的快捷键录制器:

点击输入框
→ 按快捷键
→ 自动识别
→ 显示 Control + Option + J
→ 自动检测冲突
→ 保存并立即生效

这会让产品更像正式 App。


方向三:生产级打包和签名

当前还是 Dev App:

~/Applications/TypeWhaleMac-Dev.app

下一步可以做:

Release build
固定 Bundle ID
Developer ID 签名
DMG / ZIP 安装包
权限授权说明
Notarization 预留

这条线适合准备给别人试用。


方向四:App 兼容性硬化

现在主要在 TextEdit 里验证。

V5 可以系统测试:

TextEdit
Notes
Safari 输入框
Chrome 输入框
微信/Slack/Discord
Word / Google Docs
VS Code

不同 App 对 Accessibility 支持不同,可能会影响:

光标位置读取
上下文捕获
替换文本
粘贴行为

这条线会决定产品稳定性。


我建议 V5 第一优先级

我的建议很明确:

V5 先做 Real Provider Integration

原因:

1. 当前输入链路已经跑通
2. 现在最大短板是候选质量
3. 没有好候选,输入助手价值有限
4. Local Rule Provider 已经证明 Provider 架构能扩展
5. 下一步接 User Phrase Provider 或 Local Dictionary 最自然

具体下一步可以做:

V5-1:User Phrase Provider

让用户可以维护一个简单短语库:

ty    → thank you
brb   → be right back
addr  → 用户自定义地址
email → 用户邮箱

这比立刻接 AI 更稳,也更容易验证产品价值。


最终产品效果可以是什么

最终 TypeWhaleMac 可以变成一个:

macOS 智能输入助手

用户在任何地方输入时,可以:

输入 thank
→ 一键变成 thanks!

输入 pls check
→ 推荐 Please take a look.

输入中文意思
→ 推荐地道英文表达

输入 email
→ 自动展开常用邮箱模板

输入会议场景
→ 推荐更正式表达

输入客服回复
→ 推荐礼貌版本

最终体验应该是:

不打断当前输入
候选框贴近光标
候选质量高
快捷键顺手
确认后直接替换
权限状态清楚
安装和授权稳定

一句话:

TypeWhaleMac 的最终目标不是做一个普通剪贴板工具,而是做一个能在 macOS 任意文本框中工作的智能候选输入助手。

现在 V4 已经证明:技术链路可行
V5 的关键是:
让候选真正有用。