My Obsidian Vault Made 21 Permanent Notes in 3.5 Years, So I Redesigned It A developer spent three and a half years building a personal Obsidian knowledge vault that produced only 21 permanent notes, with none added in the last 90 days, and diagnosed the failure after using Claude Code to audit the vault. The engineer found that 79 clippings and 142 AI conversations had flowed in while almost none of the developer's own claims were ever written down, and responded by lowering the definition of a finished note to "correct as of the verification date, and revisable later" and adopting six criteria, including a visibility flag for confidentiality. I adopted Obsidian to build knowledge for myself. Above all, I believed Obsidian's job was to keep producing solid Permanent Notes out of the collective knowledge I'd gathered. Or so I thought. But the Permanent Notes just weren't growing. At all. It was a disaster. Obsidian had been reduced to a plain old diary. I'd also assumed, on my own, that the reason Permanent Notes weren't growing was that "the notes aren't connected to each other." But when I dug into the vault with Claude Code's help, the cause turned out to be somewhere else. What was missing was a step where I write down my own claims, and the time to actually do it every day. What I want from Obsidian is to keep producing solid Permanent Notes, one at a time, from the knowledge I collect. Each note is meant to be about the size of an index card, something my future self or people coming after me can reuse. When I actually counted, here's what I found: | Aspect | Actual | |---|---| | Number of Permanent Notes | 21 over roughly three and a half years since February 2023 | | Last Permanent Note update | August 2025. Zero in the last 90 days | | Inflow over the last 90 days | 79 Clippings, 142 AI conversations and summaries, 1 Fleeting Note, 6 Inbox | What comes in is other people's writing and AI's writing. There are almost none of my own insights in Obsidian. My Daily Note has a section called "Thoughts in my mind," but I've kept it empty the whole time. Meanwhile, the KPI section where I log sleep hours and running distance gets filled in every day. The sections measured in numbers stuck; the free-writing section didn't. In March 2026, I built a Claude skill, /zettelkasten , that automatically adds tags and links to Fleeting Notes, and ran it on 99 of 281 notes. Each note also got a list of related notes appended at the end. That was seven months ago. Not a single note has been promoted since. The reason was obvious the moment I opened the Fleeting Notes. Most of them are just a title. Terrible. One note I wrote in February 2024, "Transcribing from memos is what really matters, so set up a time to transcribe," had an empty body too. I'd written down the answer myself two years earlier, then left it there without ever making time to transcribe. Truly terrible. The notes that did have a body had problems too. "Architecture is just one hypothesis" still contained an AI reply, "Thank you for your understanding," verbatim. Worse and worse. Before I could even connect anything, the things I'd be connecting weren't in my own words. I had selfishly defined a Permanent Note as "definitive, unshakable intelligence." With that bar, the day I could call a note finished was never going to come. My existing 適応度関数.md fitness function note was a textbook example. The title says "fitness" 適応度 , yet the body says "goodness of fit" 適合度 nine times, for some mysterious reason. The title and the content don't even fit each other. It cited no sources, and the second half just restated the first. I hadn't touched it since May 2024. The note that was supposed to be unshakable had, in reality, become a note nobody revisits, or even looks at. So I lowered the bar to "correct as of the verification date, and revisable later," and set six criteria: visibility is set I added the last one to check whether the content trips any confidentiality concerns: words meant only for me should be explicitly marked as never to be seen by anyone else. If you're going to let arbitrary readers see your notes, you need to decide, note by note, whether each one is okay to publish. I chose who writes the body from three options. Letting AI write it and just approving would be the fastest and produce the most notes. But that's the same as building one more "storehouse of AI-written text," just like what I already had. I chose the option where I write the claims and reasoning myself. Obviously. Claude Code can't be expected to understand what's obvious to me, but I think I should be grateful that it catches the biases humans like me let slip by. Since these are my claims and my own knowledge in the first place, I narrowed the AI's role down to the minimum: I don't let the AI rewrite the body. It only points out what to fix; I'm the one who rewrites. With this setup, about 100 notes a year is the ceiling, but only knowledge I can explain myself gets properly kept. The first system that came out of this was one Claude Code proposed to suit itself: a flow driven by conversation with Claude Code. It asks me questions, I answer, and I get verification results on the spot. It's comfortable enough when you use it, but you can't run it from inside Obsidian. That didn't match my premise: right after reviewing my Daily Note, spend 15 minutes writing, right there in Obsidian. Breaking the process into steps, the only part of this flow that actually needs AI is verification. The questions are the same every time, so I realized I could just put them in a template. So I moved the writing into Obsidian and turned verification into a batch job that runs in the background. My daily flow looks like this: In the template, right after the field for the claim, I put three questions: For verification, I run the following command in the vault folder. It inspects all drafts at once and writes the results into each note's "Verification" section. claude -p "/zettelkasten verify --all" --allowedTools "Read,Glob,Grep,Edit,Write,WebSearch,WebFetch" Verification takes time, so I stop working for the moment, and the back-and-forth in the moment goes away. In exchange, writing can continue even when the AI isn't running, and I can write from my iPhone or iPad. I set it up so it doesn't depend on where I am or what device I'm on. For Permanent Note candidates, besides Fleeting Notes and the Inbox, I also included the directory where I save my AI conversations. I'm starting to feel this is the downside of splitting things into too many directories. If you're just starting out with Obsidian, I recommend keeping directories to a minimum. A single inbox is the easiest place to operate for stashing information and dropping insights. Alongside writing new Permanent Notes from candidates, I decided to also carve them out of articles I've already published. Those articles are already in my own words. They're backed by research and already in publishable shape, so they become finished notes much faster than writing from a candidate from scratch. I made the very first one from my Zenn article on Copier https://zenn.dev/sho7650/articles/332f305b24fa68 . Verification confirmed two points. First, a repository created from a GitHub template can't merge updates. Second, Copier can pull updates into a project after it has been generated. Two counterarguments came back. One was that the update mechanism itself takes effort to maintain. I reflected that by adding "when there are few downstream projects" to the scope. The other pointed out that the update mechanism hasn't yet been tested with a major change. I finalized that one as-is, and I'll revise the note after trying updates with TypeScript 7.1 or 7.2. Being able to assume revision is thanks to lowering the bar. I'm grateful for that. There are times I just can't help wanting perfection, and at times like that, it becomes a shackle. There are two things I decided not to do: status , so I leaned on There are also things I haven't confirmed yet. The template and the list are brand new, and I haven't run the whole thing end to end inside Obsidian. Whether everything from entering a claim, to recording the seed, to moving it into a folder works as expected will take a few days of testing. I've also only tried the batch verification with zero drafts. I plan to set up scheduled runs myself once the system has been running for a while. I'll judge whether this works by whether I have at least 8 verified Permanent Notes four weeks from now. By then, I should be able to share the verification results too.