Table of Contents
AI Agents have been incredibly popular lately, with tools like OpenClaw and Hermes leading the charge. Having used these tools heavily for a while, I can genuinely say they are fantastic. They can directly control my computer to automate tedious tasks, such as organizing research materials and batch-processing files. However, as my reliance on AI Agents grew, I began to notice a few pain points and sparked some new ideas. So, I decided to build two apps myself through AI-assisted programming.
Easy Agent
On macOS, official AI apps like ChatGPT can be summoned globally using a simple keyboard shortcut (like Option + Space). It's incredibly convenient. But for powerful open-source agents like OpenClaw or Hermes Agent, you're usually restricted to running them in the terminal or a standalone desktop window, which feels a bit disjointed.
This gave me an idea: I wanted to build a lightweight application that could connect to various AI Agents and be triggered via a global shortcut, just like ChatGPT. Initially, I assumed there wasn't a universal protocol to achieve this, so I put the idea on hold. Later, while exploring Obsidian, I stumbled upon a plugin called Agent Client, which connects to agents using something called the ACP protocol! This protocol uses JSON to communicate between the frontend client and the agent backend. The user simply needs to input the agent's local address.
With this discovery, and with the help of AI, the development process went surprisingly smooth.
Project repository: https://github.com/JunxiBao/EasyAgent
WechatAutoReply
The motivation behind this software was the current landscape of "AI WeChat auto-reply" solutions. Most methods available on the market either easily lead to account bans, or rely on AI vision to read the screen and simulate clicks. The latter approach is not only slow and high-latency, but the API cost for constant image recognition is also absurdly high. I wanted to find a more efficient and safer local solution.
Then I had a lightbulb moment: Apple devices have the "VoiceOver" accessibility feature that reads screen content out loud. This means the system layer must be able to read WeChat text messages directly! If so, could I write a software to read these messages natively, evaluate them, and let AI reply?
Guided by AI, I learned about macOS's native Accessibility API (Accessibility Tree). It can parse every UI element on the screen, including WeChat's text bubbles. The logic instantly clicked: I could have the software read all current messages in the chat window upon startup, and then continuously monitor for changes. Any newly appended text would be identified as a new message from the other person. The AI could then formulate an intelligent reply based on this captured context.
After searching the internet extensively, apart from an unrelated MCP, I couldn't find any ready-to-use, out-of-the-box solutions. So, once again with the help of AI, I built one myself from scratch. It works remarkably well!
Project repository: https://github.com/JunxiBao/WeChatAutoReply