Hi, I'm Duc, a software engineer in Ho Chi Minh City. Lately I've been building term2, my own coding agent for the terminal, plus a few smaller tools around AI agents.
I write here about that, and about whatever else I'm tinkering with, like finally learning Vim properly or running Linux on my desktop.
Writing
- Take the Wheel: Don't Let AI Steer You
- When To Use Subagents
- A Vim Journey: Putting It All Together
- The journey of building term2
- Verification Is All You Need
- When a memory helper starts changing your code
- Did the skill help or did this run just go better
- When the agent turns a small fix into a redesign
Projects
- term2: A coding agent for the terminal. Works with different model providers and can run commands locally or over SSH.
- ChatForge: An AI chat app with server-side tools, side-by-side model comparison, and conversation branching.
- code-rag: Code search by meaning instead of by name. Coding agents can use it over MCP.
- easyocr.js: EasyOCR ported to TypeScript, so it runs in Node.js and the browser without Python.