You haven’t achieved what you want because of what you’ve done wrong.
It’s because of what you keep avoiding:
The conversation.
The decision.
The uncomfortable work.
Your future is often hiding inside the actions you keep postponing.
@scottastevenson 📝Embrace your weirdness. The same traits that make you hard to categorize are often the ones that create outsized outcomes.
Alien thinking produces alien results.
This is certainly one of the most impressive AI applications recently. While I was building this system myself, I started to see the potential of applying this “LLM as compiler” idea to something more personal than a knowledge base: journaling.
@karpathy's approach to building a personal wiki with AI really clicked for me. Not just because of the knowledge management angle, but because it exposed a more general pattern:
raw notes → compiled structure → more useful memory
And I realized this might solve a problem I’ve had with journaling for a long time.
I can usually keep up a daily journal, but the system often breaks one layer up.
In theory, I had a Daily → Weekly → Monthly → Yearly journaling structure.
In practice, the weekly review became a chore:
I had to reread everything, manually extract the useful bits, and “promote” them upward.
Miss a few days, and the friction gets even worse. When the weekly node breaks, the monthly/yearly layers become aspirational.
Then perfectionism kicks in.
Then the whole loop quietly dies.
So the problem was never really writing.
It was compilation.
That’s why I’m interested in building an LLM-assisted journaling workflow.
Not “AI writes my journal for me.”
More like:
I do the raw capture.
The system helps compile:
- recurring themes
- useful insights
- unresolved loops
- signals worth carrying forward
- drafts for weekly/monthly reviews
That feels much closer to how journaling should work in the first place:
less clerical labor, more actual reflection.
I’m already building toward this.
The rough goal is an AI-assisted journaling system that can:
- turn daily notes into usable weekly reviews
- reduce the friction of missed days
- surface patterns I would otherwise forget
- help convert fleeting thoughts into durable insight
Basically: a journaling system that actually compounds.
Curious if others have the same problem:
Do you journal consistently, but fail at the distillation layer?
Or are you already building something similar?
Would love to compare notes.
LLM Knowledge Bases
Something I'm finding very useful recently: using LLMs to build personal knowledge bases for various topics of research interest. In this way, a large fraction of my recent token throughput is going less into manipulating code, and more into manipulating knowledge (stored as markdown and images). The latest LLMs are quite good at it. So:
Data ingest:
I index source documents (articles, papers, repos, datasets, images, etc.) into a raw/ directory, then I use an LLM to incrementally "compile" a wiki, which is just a collection of .md files in a directory structure. The wiki includes summaries of all the data in raw/, backlinks, and then it categorizes data into concepts, writes articles for them, and links them all. To convert web articles into .md files I like to use the Obsidian Web Clipper extension, and then I also use a hotkey to download all the related images to local so that my LLM can easily reference them.
IDE:
I use Obsidian as the IDE "frontend" where I can view the raw data, the the compiled wiki, and the derived visualizations. Important to note that the LLM writes and maintains all of the data of the wiki, I rarely touch it directly. I've played with a few Obsidian plugins to render and view data in other ways (e.g. Marp for slides).
Q&A:
Where things get interesting is that once your wiki is big enough (e.g. mine on some recent research is ~100 articles and ~400K words), you can ask your LLM agent all kinds of complex questions against the wiki, and it will go off, research the answers, etc. I thought I had to reach for fancy RAG, but the LLM has been pretty good about auto-maintaining index files and brief summaries of all the documents and it reads all the important related data fairly easily at this ~small scale.
Output:
Instead of getting answers in text/terminal, I like to have it render markdown files for me, or slide shows (Marp format), or matplotlib images, all of which I then view again in Obsidian. You can imagine many other visual output formats depending on the query. Often, I end up "filing" the outputs back into the wiki to enhance it for further queries. So my own explorations and queries always "add up" in the knowledge base.
Linting:
I've run some LLM "health checks" over the wiki to e.g. find inconsistent data, impute missing data (with web searchers), find interesting connections for new article candidates, etc., to incrementally clean up the wiki and enhance its overall data integrity. The LLMs are quite good at suggesting further questions to ask and look into.
Extra tools:
I find myself developing additional tools to process the data, e.g. I vibe coded a small and naive search engine over the wiki, which I both use directly (in a web ui), but more often I want to hand it off to an LLM via CLI as a tool for larger queries.
Further explorations:
As the repo grows, the natural desire is to also think about synthetic data generation + finetuning to have your LLM "know" the data in its weights instead of just context windows.
TLDR: raw data from a given number of sources is collected, then compiled by an LLM into a .md wiki, then operated on by various CLIs by the LLM to do Q&A and to incrementally enhance the wiki, and all of it viewable in Obsidian. You rarely ever write or edit the wiki manually, it's the domain of the LLM. I think there is room here for an incredible new product instead of a hacky collection of scripts.
@Voxyz_ai Great post and finally someone has stitched everything together! But I wonder what the average token cost would look like for the whole setup? 🤔
Well, this is interesting. 🧐 Didn't even know I became that chatty with ChatGPT. 😂 Anyway, it turns out the one who knows you the best is the one you spent the most time with, as always.
Your Year with ChatGPT!
Now rolling out to everyone in the US, UK, Canada, New Zealand, and Australia who have reference saved memory and reference chat history turned on.
Just make sure your app is updated.
@JessePeltan That's crazy indeed. But it's crazy that a country is pushing itself to the extreme of excessive production and not knowing when to brake.
I was reading about habit formation from @JamesClear — how being specific about when and where makes habits stick.
And I couldn’t unsee the resemblance.
That’s exactly how AI works too.
Vague prompts stall. Precise context delivers.
Different systems. Same rule.
@AlexHormozi Exactly. And the inverse is true too:
If you haven’t sacrificed anything for it, you’re not following your passion—you're just having fun 🙂
This is truly an underestimated idea of using LLMs: LLMs don’t have a “you.” It's a vital distinction of whether you can use AI precisely.
But I think there is a twist too: humans didn’t invent “you/I” for ontology. We invented them as compression algorithms for complex behavior.
So, IMHO, the real question isn’t “Should we stop saying you to AI?” It’s: “Does invoking a persona help or hurt the output?”
The practical rule of thumb I can think of now:
Want diverse analysis? → Ask for multiple perspectives.
Want a consistent assistant? → Use “you” and treat it as a useful fiction.
Want deeper reasoning? → Ask for assumptions and first principles.
We don’t talk to AIs like persons because we’re confused.
We do it because it’s efficient.
The trick is knowing when the abstraction serves you and when it misleads you.
Don't think of LLMs as entities but as simulators. For example, when exploring a topic, don't ask:
"What do you think about xyz"?
There is no "you". Next time try:
"What would be a good group of people to explore xyz? What would they say?"
The LLM can channel/simulate many perspectives but it hasn't "thought about" xyz for a while and over time and formed its own opinions in the way we're used to. If you force it via the use of "you", it will give you something by adopting a personality embedding vector implied by the statistics of its finetuning data and then simulate that. It's fine to do, but there is a lot less mystique to it than I find people naively attribute to "asking an AI".
This is truly an underestimated idea of using LLMs: LLMs don’t have a “you.” It's a vital distinction of whether you can use AI precisely.
But I think there is a twist too: humans didn’t invent “you/I” for ontology. We invented them as compression algorithms for complex behavior.
So, IMHO, the real question isn’t “Should we stop saying you to AI?” It’s: “Does invoking a persona help or hurt the output?”
The practical rule of thumb I can think of now:
Want diverse analysis? → Ask for multiple perspectives.
Want a consistent assistant? → Use “you” and treat it as a useful fiction.
Want deeper reasoning? → Ask for assumptions and first principles.
We don’t talk to AIs like persons because we’re confused.
We do it because it’s efficient.
The trick is knowing when the abstraction serves you and when it misleads you.