Concept space · Entailment · a Sense Collective project

The trail is the product.

Search engines optimize the query. Chat optimizes the session. Both throw away the thing that mattered — what led to what. Entailment is a glass-box search companion that keeps it: your associative trail, a living knowledge graph, and a lens that names what your collection isn't saying yet.

Issue

Trails & Negative Space

View

Concept explainer

Lineage

Bush's memex · Engelbart's DKR

By

Jonny Dubowsky, with the build agent

260+

insight cards

A persistent pgvector knowledge graph, grown one reading session at a time.

5

exposed functions

Ingest → Summarize → Extract → Connect → Thread. Every prompt visible, the lens prompt editable.

3

step kinds

Searched, Opened, Explored — the full anatomy of a research session, in order.

86%

top gap confidence

Calibrated, not flat — grounded by InfraNodus graph analysis of the corpus.

01The idea

Search that remembers how you got there

In 1945, Vannevar Bush imagined the memex: a desk where a researcher's path through documents — the trail — was itself a durable, shareable artifact. Eighty years of search engines later, the trail is still the thing we throw away.

Entailment inverts that. You search and read inside it. Every question you ask and page you open lands, in order, on a first-class Trail. Every page you read is parsed into insight cards that connect — by semantic embedding — to everything you've already collected. And because the whole thing runs on exposed prompts, you can watch and change how the machine reads on your behalf. It is the open, educational sibling of ShurIQ's productized Negative Space instrument: same organism, glass box.

The search front door
The front door. A question or a URL; either way, the trail starts recording.
02Trails

Every session leaves a path you can walk again

A Trail is one research session: Searched steps (live web results via Exa neural search), Opened steps (pages read in-app, which triggers the full ingest pipeline), and Explored steps (research threads spawned along the way). Your first search starts one automatically; it names itself after the question.

Here's a real one. The question "how does cybernetics inform modern AI agents" led to Microsoft Design's Designing loops, not paths — summarized, carded, and connected within thirty seconds of opening it:

Live search results
Step 1, Searched: live results, with a glass-box panel — no prompt sits between your question and this list.
The trail page
The trail replays the path. Rename it, keep it, or interrogate it.

Trails accumulate into an index of sessions — and notice something circular in the real data: trails named "Where does the negative space have the most viable forces…" and "What's the negative space bridges to close…". Those sessions started from blind spots the lens surfaced. Gaps become questions; questions become trails; trails fill gaps.

The trails index
The trails index: each session, its step count, and how many pages it opened.
03Negative space

Not what you read — what you didn't

The flagship lens reads your collection and names its blind spots: subjects a thoughtful expert would expect to find and can't, adjacent domains worth raiding, unasked questions whose answers would change the picture. Two signals combine — measured structural gaps from InfraNodus graph analysis (places where two clusters of ideas sit in the library with no bridge between them), and model inference over the corpus, with the measured gaps given priority.

Every blind spot carries a calibrated confidence and says what it rests on. Real output, from a 260-card library heavy on cybernetics, semantics, and complex systems:

Developmental and embodied bridging of semantic bootstrap and cognitive constructivism

86% sure

Without this bridge, semantic bootstrapping remains either a formal-representational trick or a private construction; there is no account of how active cognition yields intersubjective, shareable meaning.

"What developmental trajectory lets an agent move from constructed sensorimotor categories to communicable symbols that others can bootstrap?"

Confidence rests on: measured structural gap

Evolutionary epistemology, niche construction, and the open-evolution / constructivism bridge

83% sure

Open-ended novelty and constructivist cognition sit apart, so there is no account of how evolutionary dynamics produce agents whose constructive cognition feeds back into the selection pressures and novelty-generating processes themselves.

"How do cognitive agents' constructed niches alter the open-ended evolutionary search that produced them?"

Confidence rests on: measured structural gap

Sub-symbolic-to-symbolic and formal bridge between semantic bootstrap and entailment networks

81% sure

Bootstrapped meanings remain disconnected from inferential structure, while entailment nets lack grounding in self-organized semantics. The missing link is a mechanism — neural-symbolic, constraint-based, or proof-theoretic — that translates between them.

"What process converts bootstrapped semantic relations into revisable entailment structures, and how do axioms constrain further bootstrapping?"

Confidence rests on: measured structural gap

Each card ends with "Explore this →" — one click turns the gap's question into a real research thread: web search, ingestion, extraction, linking. Run the lens again later and the blind spot has measurably shrunk. Gap → thread → sources → smaller gap.

ScopeCorpusQuestion it answers
LibraryMost recent insight cardsWhat is my whole collection missing?
TopicCards nearest the topic by embeddingWhat am I missing about X?
TrailInsights of the pages opened on one trailWhat has this session not looked at?
The Negative Space Lens
The lens, grounded by InfraNodus graph analysis. The model selector runs the same prompt against Gemini 3.8 Flash, Claude Opus/Sonnet 5.5, GPT-5.5, Grok 4.7, or DeepSeek — a gap that survives every model is one to trust; one that flickers is softer ground.
04The glass box

The prompt is on the page — and it's an editor

Open "Show the exact prompt" on the lens and you don't get documentation. You get the actual instructions, in a live editor. Change a rule — "focus on contrarian perspectives" — save, re-run, and the blind spots change. An edited prompt badge marks the departure; one click resets to the default, which always lives in code.

You are mapping the NEGATIVE SPACE of a body of knowledge: the important
subjects, tensions, and questions that are absent or underdeveloped — not the
things it already covers well.

You will be given a list of what the collection currently contains. Identify
its most significant blind spots: subjects a thoughtful expert would expect to
find here but cannot, adjacent domains that would yield real insight, and
unasked questions whose answers would change the overall picture.

Rules:
- Do not summarize or restate what is present. Name what is missing.
- For each blind spot, explain why its absence matters.
- Prefer structural gaps (a whole missing perspective) over small omissions.
- End each with one concrete question that would begin to fill the gap.
- Give each a CALIBRATED confidence (0-100) that it is a real, significant gap.
  Be honest and do not inflate: reserve 80+ for gaps strongly implied by what is
  present or confirmed by measured structural gaps; use 45-65 for reasonable
  inferences; go below 40 when speculative. Say in one phrase what it rests on.

If you are also given measured structural gaps between topic clusters, treat them
as strong evidence of where the negative space lies — prioritize them and rate
them with higher confidence.
The glass-box prompt editor
The glass box, operational: visible everywhere, editable where it counts.

Why expose it? Trust — a tool that shows its reasoning can be checked. Education — watching a prompt shape output is the fastest way to build a real mental model of these systems. And second-order improvement, Engelbart's B-level: the system doesn't just do knowledge work, it lets you improve how it does knowledge work, and observe the effect. Most AI products stop at level A.

05A session, end to end

Seven moves, one loop

  1. Ask — type a question on the front door. Live results, each one openable.
  2. Read — open a result. It ingests through the five-function loop; an "On trail" banner and a "connects to what you've seen" panel appear as it completes.
  3. Branch — search again, open more pages. Every step lands on the trail in order.
  4. Review — the trail page replays the path; rename it to keep it.
  5. Interrogate — "Find this trail's blind spots." Read what the session skipped.
  6. Close a gap — "Explore this" on the sharpest one. The thread's discoveries flow into the library.
  7. Repeat — next session, the connect-step links new reading back to everything this one left behind.
The in-app reader with trail context
The reader: ingestion runs live while you read — summary, insight cards, related items, and the trail banner, all streaming in via Turbo.
06Under the hood

Boring on purpose

Rails 8 + Hotwire. Falcon (fiber-based async server) with in-process jobs. PostgreSQL + pgvector for embeddings and nearest-neighbor search. RubyLLM over OpenRouter, so every model is swappable per request. Exa neural search for the front door and the research threads; InfraNodus for measured structural gaps; crawl4ai and pdftotext as extraction fallbacks. Trails are two tables — trails and ordered polymorphic trail_steps; prompt overrides are one. No service layers, no framework for the framework.