I’ve been running the Hermes package on Pi for a while now. My coding agent writes markdown. Obsidian reads it. That’s been my whole system — and it works.
Then I saw Hubble.md hit the Hacker News front page. An open-source notepad “for you and your agents” that live-reloads as agents edit and can turn folders of notes into interactive HTML views. My first thought: don’t I already have this?
Turns out the answer is yes and no. Here’s what happened when I pointed Hubble at my Obsidian vault.
The setup: one folder, two apps
Obsidian vaults are just folders of markdown files. Hubble’s workspaces are just folders of markdown files. These are the same thing.
I pointed Hubble at my existing vault:
~/obsidian-vault/
├── .obsidian/ ← Obsidian's config (Hubble ignores this)
├── .hubble/ ← Hubble's config (Obsidian ignores this)
├── daily-notes/
├── projects/
├── raw/
├── wikis/
└── bookshelf.html ← Hubble HTML App (only renders in Hubble)
Both apps read and write the same .md files. Obsidian gets its graph view and plugins. Hubble gets live agent collaboration and interactive HTML views. No migration, no sync, no conflict.
Each app has its own hidden config folder (.obsidian/ and .hubble/) that the other ignores completely. It just works.
What Obsidian does well (and why I’m not leaving)
Let’s be clear: I’m not replacing Obsidian. It does things Hubble can’t:
- Graph view — backlinks, linked mentions, visual knowledge maps. This is how I navigate my vault. Nothing else comes close.
- Plugin ecosystem — 1,800+ community plugins. Dataview, templater, calendar, kanban. My workflow depends on these.
- Daily notes — my entire journaling system runs on this. Templates, periodic notes, auto-linking.
- Mobile sync — my vault is on my phone too. Hubble is desktop-only right now.
- Muscle memory — I’ve been in Obsidian for years. The shortcuts, the themes, the layout. That matters.
Obsidian is my editor. It’s where I think, write, and connect ideas. Hubble doesn’t need to replace that.
What Hubble adds (and why I keep it open)
Here’s what made me keep Hubble running alongside Obsidian:
1. Live agent collaboration
Obsidian does pick up external file changes — usually within a second or two. But it shows you the finished result after the agent is done. If Hermes is writing a long note, I see nothing until it finishes.
Hubble live-reloads as the agent types. I can watch tags appear, sections fill in, backlinks get added — character by character. It’s like Google Docs collaborative editing, but for local markdown files and AI agents.
This is genuinely useful. When I ask Hermes to enrich a batch of notes or research a topic, I can see it working instead of checking after the fact.
2. HTML Apps — the killer feature
This is the thing nothing else does. Hubble lets you embed .html files in your workspace that render as interactive views. Not static HTML — actual apps that can read your notes and display them as:
- A bookshelf — all your reading notes, organized by topic, searchable, with covers
- A map — geotagged notes plotted on an interactive map
- A table — any folder of notes rendered as a sortable, filterable spreadsheet
- A dashboard — project statuses, habit tracking, whatever you want
You tell your coding agent what to build. It generates the HTML. Hubble renders it. The HTML apps can read your markdown files through Hubble’s broker API — they can list files, read content, navigate between notes. All inside your vault.
I can’t do this in Obsidian. Dataview queries get close, but they’re read-only tables. Hubble’s HTML apps are full interactive web apps living inside my notes.
3. Agent-optimized writing
Hubble’s slash commands, file properties, and review comments (CriticMarkup) are designed for agents to read and write. When I tell Hermes to add a note, it follows Hubble’s conventions — frontmatter, tags, structured sections. The review comment system lets agents leave inline feedback that I can accept or reject.
Obsidian has frontmatter too, but it’s not purpose-built for agent interaction. Hubble’s conventions make agent output cleaner and more consistent.
4. The knowledge base skills
Ben Holmes (Hubble’s creator) also built llm-knowledge-base-skills — the open-source implementation of Karpathy’s “LLM Wiki” concept. Three skills:
/enrich-note— adds tags, sources, and backlinks to raw notes. Maintains a shared tag registry so agents don’t invent new tags for every note./refresh-wiki— rebuilds wiki pages from enriched notes, updates entity pages, lints for contradictions and stale claims./create-html-app— turns a folder of notes into an interactive HTML view.
I ran /enrich-note on a batch of raw voice notes. It added structured frontmatter, found source URLs, and cross-linked related notes. Then /refresh-wiki turned those into a browsable wiki with an index, entity pages, and concept maps. All inside my Obsidian vault, all markdown files Obsidian can read.
How Hermes fits in
Hermes is the glue. (I run it on Pi, but it runs anywhere — a VPS, a laptop, serverless.) Here’s the flow:
- I capture — voice notes, quick thoughts, meeting summaries. Drop them into
raw/as markdown. - Hermes enriches — runs
/enrich-noteon new files. Adds tags, sources, cross-links. Writes back to the same vault. - Hermes builds wikis — runs
/refresh-wikion a schedule. Creates structured wiki pages from raw notes. - Hubble renders — live-reloads the enriched notes and wikis. HTML Apps turn folders into dashboards.
- Obsidian maps — graph view picks up all the new backlinks. I navigate the knowledge base visually.
Each tool does one thing well. Hermes creates. Hubble visualizes. Obsidian connects.
Getting started
If you want to try this stack:
- Install Hubble from github.com/bholmesdev/hubble.md/releases
- Point it at your Obsidian vault — File → Open Folder → select your vault directory. Hubble creates
.hubble/config.jsonnext to.obsidian/. No conflict. - Install the skills —
npx skills add bholmesdev/llm-knowledge-base-skillsgives your agent the enrich/wiki/HTML app skills. - Point Hermes at the vault — configure your agent’s workspace to be the same directory.
- Create a
raw/folder — drop unstructured notes here. Run enrichment. Watch Hubble light up.
That’s it. Two apps, one vault, zero conflicts.
What’s next
I’m still exploring what HTML Apps can do. A project dashboard that reads my project notes and shows statuses. A learning tracker that maps what I’ve read and what’s next. A recipe browser from my cooking notes. The skill says “anything you can think of” and I’m starting to believe it.
The future of notes isn’t one app. It’s an ecosystem of tools that all read and write the same files. Obsidian, Hubble, and Hermes — each focused, each replaceable, all working on the same markdown.
That’s the local-first promise, and it actually works.