I turn everyday friction into focused, documented, and testable software.
- AI workflow tools that connect useful services without hiding important security or privacy boundaries.
- Browser extensions with resilient UI integration, clear failure states, and reproducible builds.
- Local-first applications that keep credentials and personal data on the user's own machine.
- Windows automation designed around rollback, verification, and maintainability.
My preferred stack includes TypeScript, JavaScript, React, Node.js, Python, FastAPI, C#, .NET, Avalonia, PowerShell, Docker, and GitHub Actions.
A local-first Chrome extension that uses the official Google Photos Picker to attach selected photos directly to a ChatGPT conversation—without a companion server or intentional Downloads-folder writes.
Highlights:
- Official Google Photos Picker and narrowly scoped OAuth permissions
- In-memory photo handling with no custom token backend
- English and Simplified Chinese interfaces and documentation
- Automated tests, reproducible builds, privacy documentation, and security guidance
- Useful beats flashy. The result should solve a real problem end to end.
- Privacy is architecture. Sensitive data should have a clear boundary and the smallest possible exposure.
- Verification is part of delivery. A process running is not the same as a feature working.
- Good software explains itself. Documentation, safe defaults, and honest limitations matter.
我专注于把日常工作中的真实痛点做成可靠、可维护的软件,方向包括 AI 工作流、浏览器扩展、本地优先应用和 Windows 自动化。
我重视隐私边界、失败状态、自动化测试与完整文档。相比堆砌功能,我更希望每个项目都能真正解决问题,并且让别人容易理解、安装和验证。
Open source when it is ready; private by default when it contains personal workflows or sensitive operational context.