I Build Little Internets

The web lost the human-authored link. Agents might be how we get it back. Will it work this time?
I did not have a name for it until last week.
For a a few weeks I had been building a few wikis of my own notes. Not a folder of Markdown. A few small webs: pages linking to each other, every link carrying a tag that says what the relationship is. supports. contradicts. refines. same-shape-as. I find the wiki both comforting and technically fit for building diy semantic graphs of my own randomized stuff.
Ten relation types. Twenty-nine pages. I had to pick the right one every time, which was the annoying part and the entire point. Then I started building a tool so agents could write into one without an approval step. Then I needed a real corpus to test it on, so I made one.
Somewhere in the process it came to me this silly idea: I am building little internets.
What actually I was missing (for so long that I forgot)
The web did not die. One property did: the link as an act of judgement.
A person read a thing, decided it was worth pointing at, then linked to it. That choice carried information. It is what made PageRank work. It is what made a blogroll a map of a mind.
The feed replaced the link with the recommendation. A recommendation is not a judgement by someone who read the thing. It is a prediction about what will hold your attention. Links still exist. They stopped being how anyone moves.
I was confused at first
The argument I wanted was easy. This is the semantic web finally working, because agents remove the annotation burden that killed it. Everyone knows it failed because hand-tagging was too much work.
I am an expert in rabbit holes. So I read the sources first. The story is wrong and (imho) misattributed.
Doctorow’s “Metacrap” is cited everywhere as the obituary. The words “Semantic Web” do not appear in it. Neither does RDF, or Berners-Lee. It predates the article it supposedly rebuts. [1] Shirky’s 2003 essay, the most cited critique, explicitly denies the laziness thesis. [2] Norvig, quoted forever as having demolished it with the word “incompetence”, opened with “I am not against the Semantic Web.” [3]
Three sources. Three misreadings.
What they actually say is duller. Nobody could agree what to encode. Nothing consumed it that paid. And the syntax defeated its own authors: Tim Bray, who co-invented RDF/XML, never once managed to write a chunk of it correctly. [4] That is a complaint about the serialization. The triplet survived into JSON-LD and every knowledge graph in production. RDF/XML did not.
It half won anyway
Schema.org is the same idea with the ontology stripped out. Global entity URIs abandoned. Formal knowledge representation dropped for a browsing aid. In 2016 structured markup was on 38 percent of pages and 16.5 percent of domains. By 2024 it was 51 percent and 44 percent. [5]
And the mechanism kills the laziness story. RSS took off when Blogger emitted it automatically. Schema.org took off on WordPress plugins. Annotation volume is a function of tooling defaults, not diligence. People annotate at enormous scale. They need telling which vocabulary, then paying something for the trouble.
So why not blogs again
Blogs had all of it. Free, real, shared, a named face behind every one. We loved them. Then they died.
My read:
A blog cost its author nothing to neglect. It sat there, read or unread. The writer was unaffected either way. Quality was a virtue. Virtues are optional.
A little internet is what my own agent reasons from. Let it rot and my tools get worse. Quality stops being a virtue and becomes maintenance. That is the new thing. Not the links, not the ownership, not the semantics. Use.
Same for agents polluting at scale. A polluted wiki is a polluted agent memory. Self-harm, not vandalism.
Islands and bridges
Second objection: a thousand private wikis are a thousand islands.
We are not going to build islands without bridges. Federation is not an unsolved protocol problem. It is what a link already is. Blogs federated by linking and search engines did the rest. If I make one public I share the link.
Every objection I raised against this idea assumed a new mechanism was needed. Every answer was that the old one still works and we stopped using it.
Who does the tagging
The two halves of my argument pull against each other. Agents make edges cheap, which is the whole bet. GraphRAG already inverts the 2001 vision this way: the LLM builds the graph. [8] But I also said choosing the tag yourself is most of the value.
Where I have landed: the agent proposes, I dispose. It suggests the edge and the relation. I accept, change the tag, or throw it out. Reviewing a proposed contradicts takes three seconds. Deciding one from scratch takes a minute.
At twenty proposals a day it works. At two hundred I would rubber-stamp.
Perhaps I can write a skill good enough to auto-approve 80% of them? Possible, once I hit that scale I will see what i need to do.
What the machines get from it
An untagged link makes an agent re-derive the relationship on every traversal. Expensive. Different every run. A tagged link is the relationship, decided once. Retrieval stops being “find things near this” and becomes “find what contradicts this”.
One real number exists. GPT-4 over an enterprise SQL database scored 16 percent. Same questions over a knowledge graph of the same data: 54 percent. Forty-three questions, one domain. Not a law. [6]
Just be careful which claim you buy. There is no verified AI-driven graph database boom. [12] What’s real is graph-shaped retrieval, and the real life, honest version is that hybrid beats either alone. [7]
The barrier moved. It did not go away.
Here is the objection I expected to lose to. If agents write this syntax now, the old blocker is gone, so why not do the semantic web properly this time?
Bray could never write RDF/XML correctly. That complaint is obsolete. So I tested what replaced it.
Twelve SPARQL queries against Wikidata, from memory, single-shot, no lookups. Then I asked Wikidata what every identifier I had used actually means. [13]
Every query was well-formed. Twelve out of twelve. Bray’s problem is dead. Twenty of twenty-two identifiers were right. Two were not:
Q92624 I believed: Guido van Rossum actual: Dan Bricklin
Q662772 I believed: Neuromancer actual: Berg
Look at the first one. Q92624 is a real person with a real notable work. That query runs. It returns VisiCalc. It looks like an answer. The second returns nothing. Neither raises an error. Both would sit in a graph forever.
The barrier moved from authoring to grounding. Grounding fails quietly. Bad syntax fails in your face. A wrong identifier fails silently and stays.
Scale will not fix this. At the 2026 TEXT2SPARQL challenge, the entry running Claude Sonnet 4.6 scored roughly 0.34 answer F1. [9] And the number that explains it: putting the schema in the prompt took execution F1 from 0.00 to 0.28 on unseen graphs. Zero without it. [10] The variable was never model strength. It is whether the machine knows what the names mean. [11]
Every failure above is the same failure. I was guessing at names somebody else assigned. The schema.org team hit that wall and wrote it down: coordinating entity references across sites is “much too difficult for most sites”. So they stopped requiring it. Identifiers stayed optional and reconciliation became the consumer’s problem. [16]
One of my wikis has twenty-nine pages, ten relation types and one author. There is no Q92624 to get wrong. I cannot build the web for agents, because identity does not survive strangers. I can build my own little internets, because inside one namespace identity is free. That is the condition under which the machines stop guessing.
What I am probably getting wrong
Not enough experience, not enough tests. I am generalizing about the future of the web from a stack of my own notes.
Nobody has run the test on my corpus. The closest systematic one gives graphs a conditional win, not a victory. [7]
Tags decay when you stop choosing them carefully. supports does no work if everything is supports. At five hundred pages nobody tags conscientiously. Half-tagged is worse than untagged because it looks finished.
It might also be nostalgia with better plumbing. I have a bias here.
What I have actually built
Arguments like this are cheap and code is not, so here is what exists. [14]
I wrote this article while building cairn . A tool that creates, manages, stores, indexes and searches wiki and tables your agents can write to, with every change reviewable. Keyword search and meaning search over one SQLite file, the embedding model running inside it so nothing leaves the server. Every write is a revision you can undo. Html pages “dumpable” to disk or object storage.
It needs nobody’s permission. That is the point.
Why I build this stuff
I believe in grassroot adoption. The choice of the single has terrifying impact at scale. An algorithm that manipulates perception has done real damage to our societies.
My driving kernel has always been openness and freedom and personal accountability. That last one is the part people skip. Openness and freedom describe the feed as well as the early web. Accountability is what separates them.
I believe in the small guy. I hate the greedy corp toxic approach. I do not expect to fix anything. I most likely got everything wrong and nobody will care. It’s still ok. It’s one more voice. It makes me feel better.
The web was never wrong. It was missing an agreement. It was missing something that paid.
Now this little internet has both, because the thing consuming it is mine.
TL;DR
The web lost the human-authored link. The feed replaced judgement with prediction.
The semantic web story you know is wrong. Doctorow’s “Metacrap” never mentions it. Shirky denies the laziness thesis. Norvig opened with “I am not against the Semantic Web.”
The syntax barrier is gone. The grounding barrier is not. I wrote twelve SPARQL queries from memory. All twelve parsed. Two pointed at the wrong thing, silently.
A little internet is a small private web where every link says what it means. One namespace, one author, so identity is free. That is the condition under which machines stop guessing.
Where I would start
Take the notes you already have. Pick five relationships that matter in your domain. Write the list somewhere you will see it, because the list -in this age- matters more than the software.
Now go and build one
Point an agent at that folder and paste this.
Read my notes in this folder.
First, propose five relationship types that would be useful between these specific notes. Not generic ones. Five that fit what is actually here.
Then for each pair that should link, tell me which relationship it is and one line on why that one and not another. Do not add a link where the relationship is vague.
Then tell me which notes ended up with no edges at all. Those are either the most original things I have written or the ones I have not thought about properly, and I want to know which.
Now take the notes, the relations and make a wiki. Make it HTML with links. Annotate the links with the relationships between pages, make it simple, make it human and machine readable. This is your memory. Maintain it.
Now make a skill out of this and use it to record memories.
That last question is the useful one. The unconnected notes tell you something the connected ones cannot.
Then keep going by hand, one link at a time. The agent is the librarian. The judgement stays yours.
References
1. Cory Doctorow, Metacrap: Putting the torch to seven straw-men of the meta-utopia, 26 August 2001. Does not mention the Semantic Web, RDF or Berners-Lee. people.well.com
2. Clay Shirky, The Semantic Web, Syllogism and Worldview, November 2003. “People can share data without having to share a worldview, so we got the meta-data without needing the ontology.” archive
3. Peter Norvig, panel remarks, 2006. Three obstacles, not one. He meant webmasters.
4. Tim Bray, 2003. “I have never actually managed to write down a chunk of RDF/XML correctly, even when I had the triples laid out quite clearly in my head.” Followed by: “I helped invent the RDF syntax, so I’m as much to blame as anyone.”
5. Web Data Commons, structured data from Common Crawl. 2016 · 2024. Their 2024 page reports 51.25 percent where the underlying counts give 52.1 percent.
6. Sequeda, Allemang and Jacob, A Benchmark to Understand the Role of Knowledge Graphs on LLM’s Accuracy for Question Answering on Enterprise SQL Databases, 2023. arXiv:2311.07509
7. RAG vs. GraphRAG: A Systematic Evaluation and Key Insights, February 2025. Same corpora, same settings. 13.6 percent graph-only correct, 11.6 percent vector-only, hybrid best. Graph extraction captured only 66 percent of answer entities. arXiv:2502.11371
8. Edge, Trinh et al., From Local to Global: A Graph RAG Approach to Query-Focused Summarization, April 2024. Read the scope: global sensemaking over roughly million-token corpora, judged by an LLM. arXiv:2404.16130
9. TEXT2SPARQL Challenge 2026, results 13 May 2026. The LIBER-AI-CLAUDE entry, backed by Claude Sonnet 4.6: CK26 F1 0.336, DB26 F1 0.348. Answer-set F1, not execution accuracy. text2sparql.aksw.org
10. Wardenga and Käfer, 2025. ShEx shapes in the prompt, execution F1 from 0.00 to 0.28 on unseen knowledge graphs. KIT
11. SAGA, July 2026, naming “type-blind grounding” as the dominant failure mode: plausible triple patterns, incompatible types, empty results. arXiv:2607.14494
12. Neo4j’s $325 million Series F, June 2021. TigerGraph’s $105 million Series C, February 2021. Both predate the current cycle. There is no verified AI-driven graph database boom.
13. My test. Twelve single-shot queries, twenty-two identifiers, one afternoon, popular entities. It shows a mechanism, not a rate. Execution accuracy could not be measured: Wikidata’s query service was in an active outage throttling to one request per minute. Run it yourself and it will disagree with me on different ones. github.com/vespassassina
14. cairn · edgar · peptide-wiki · artifactkit
15. R.V. Guha co-created RDF, RSS and schema.org. He shipped NLWeb in May 2025, described as playing a similar role to HTML for the agentic web. If you are wondering whether someone is already building the public version of this: yes, it is him. NLWeb
[16] Guha, Brickley and Macbeth, Schema.org: Evolution of Structured Data on the Web, ACM Queue 13(9), November 2015. From the “Entity References” section: “Many models such as Linked Data have globally unique URIs for every entity as a core architectural principle. Unfortunately, coordinating entity references with other sites for the tens of thousands of entities about which a site may have information is much too difficult for most sites.” So schema.org requires unique URIs only for its own vocabulary terms and leaves consumers to reconcile entities from descriptions. sameAs exists for this and, in their words, "has not found much adoption". Note this was three authors, not Guha alone. queue.acm.org