Lanbitou: A uTools Note Plugin That Automates Tagging and Keeps Notes Local
---
theme: fancy
---
What you get from books is ultimately shallow; to truly know a thing, you must do it yourself.
Today I'd like to introduce an open-source project of mine that I found while tidying up my GitHub repositories. It's called Lanbitou (烂笔头), a note-taking app I've been using for a long time. Sharing it with you today:
Open-source address: https://github.com/Hxd123459/lanbitou-uTools. If it helps you, please give it a Star.
1. Feature introduction
The name comes from the saying: “A good memory is not as good as a worn-out pen.” My original positioning for it was fragment capture + long-form organization. Let me walk through its features first.
1.1 Fragment capture
The input box is at the top. When you open the plugin, the cursor automatically focuses on the input box, all in the service of quick capture. No title to think about, no formatting needed. If it comes to mind, write it down!
1.2 Tagging & AI auto-tagging
Fragment notes all live under tags, and second-level tags are not supported. I believe nesting folders beyond one level is where note-taking starts to fall apart. Overly fine-grained tags and folder nesting feel neat and orderly for the first two days, then you forget what a folder was for or what should go in it. They also create 【decision pressure】when recording a note: which folder should this go into? What is this folder for? Eventually you hit 【decision fatigue】and give up recording.
When you don't want to write a tag, or don't know how to categorize something, AI makes the decision for you and auto-tags based on the content.
AI recognition process:
graph TD
Input content --> LLM
Existing tags --> LLM
LLM --> Prompt
Prompt --> Validate response format
Validate response format --> Pass
Validate response format --> Fail
Fail --> LLM
Pass --> Done
Prompt: Please classify the 【input content】 into the existing tags, which are listed below as 【tag list】. If no similar tag is found, create one. Then return the following JSON format: {...}
1.3 Consolidation and long-form organization
Select fragments to organize them into long-form writing. While writing long-form, you can also pull up the fragment list at any time, and AI finds content semantically similar to the current text and pushes it to you.
You can choose which template AI should use for organizing:
AI features support using your own key. I put 10 yuan into DeepSeek and have been using it for almost half a year without running out. Don't use the AI capability provided by uTools. I strongly dislike the model-you-can't-see, spend-points style!
1.4 Todo organization
There is a todo feature, but it is not isolated. Todos can be linked to tags, and AI automatically extracts todo information from that tag into the list.
Extract todos from fragments in one click.
Complete a task and write daily/weekly reports in one click. In theory, you can generate any content from completed and uncompleted tasks, because templates are customizable.
1.5 Data stays local
Every note you record stays local, and you can export and take it with you at any time. One-click import is also supported. This is the primitive method I use to sync notes between my work computer and home computer. It is a bit laborious, but that ritual makes me value my note content as an asset. For better or worse, this is stuff that came out of my head!
1.6 Other miscellaneous features
There are other odds and ends, like quoting a note to ask AI, statistics, and batch tagging. If you're interested, download it and explore on your own.
A stillborn feature: I wanted to build a workflow where I only need to record daily meeting minutes and AI automatically completes the tasks, leaving me to do acceptance. The flow is as follows:
graph TD
Fragment capture --> Todo extraction
Todo extraction --> Scheduled todo scan
Scheduled todo scan --> Delegate tasks
Via Feishu --> Delegate tasks
Delegate tasks --> Cursor
Delegate tasks --> Codex
Cursor --> Acceptance
Codex --> Acceptance
Acceptance --> Token usage monitoring
The task execution above already worked with Cursor, using the Cursor SDK. But I found that doing this properly is too hard; it would take too much effort. So I abandoned it. This feature lives on another branch.
2. Why use a plugin?
The main reason is that uTools lets you ship to Windows and macOS quickly, and it gives fast capture and fast search.
3. Reflections
First reflection: with AI, you need to practice even more, and build with your own hands.
Lanbitou is AI-assisted and took several months to build. Looking at the whole thing, it feels like a small plugin. Without that practice, I might have said: “With AI, you can finish it in a day.” That would be a subjectivist mistake. As the opening says: What you get from books is ultimately shallow; to truly know a thing, you must do it yourself. If you don't build it yourself, you have no real sense of it, so you have no basis or yardstick for estimating cost, risk, or scale. You lose judgment, then follow the crowd and end up at others' mercy.
Second reflection: while making a product, other inspiration easily sparks.
Many, many ideas pop up during the process, and new ideas branch off. The AI workflow above is one example; it could be pulled out on its own and made into a system.
Third reflection: making software you need ≠ making a product.
If you're making something for yourself, do whatever makes you happy. Say there are 100 users; you only need to please yourself. If you're happy, that's success.
But a product is different. A successful product means finding the greatest common divisor of UI design and feature preferences among those 100 people. Otherwise it's a failed product. You also need a healthy business model. Good reviews but no sales won't cut it.
Top 1 from juejin.cn, machine-translated. The original thread is authoritative.
Like