pragmus
invite only
AGENTS

The context endpoint your agents write to and read from.

One MCP server. Your agents declare what they observe, claim, decide, and ask. Pragmus structures it, resolves drift across writers, and serves it back to every agent that follows — at the cost of a database query.

// stylized; real call shape in the writes section below ↓
agents
pragmus
agents
coderwrites claims, decides
ingest decide "JWT rotation"
knowledge: API auth
reads current stateQA
QAcontradicts a claim
ingest claim "rollback fails"
walk unit_a3f4
walks neighbors by threads + tags + prosearchitect
plannerasks an open question
ingest inquire "rate limit?"
open intent=decide
loads pending decisionsorchestrator

▶ one write surface · one read surface · every agent on the same record · zero LLM cost on reads

WHY AGENTS NEED THIS

A vector store remembers what was said. An agent needs to know what's true now.

Sessions are stateful. Agents are not. Every new run loads a similar-looking blob from RAG and hopes for the best — the decisions made between then and now, the constraints learned, the directives that landed, the dead ends don't reliably make it into the context window. Pragmus is where those things go. Not a transcript. Not embeddings. State.

VS. VECTOR-STORE RAG

Retrieval that knows what's still true.

Three things a vector store can't do that an agent needs:

  • Semantic-atomic recall. Items get LLM-decomposed into units at ingest — each unit is one claim, not "the next 500 tokens." Retrieved chunks are the size of an answer.
  • Structured indexing. The LLM already coined the right concept labels (threads) while it was reading. Set-based lookup (thread:auth-flow returns every unit) costs nothing at query time. No fuzzy guess.
  • State-aware results. A retrieved claim carries its lifecycle: contradicted by item_abc, closed in build 1.0.42, still open. Your agent gets the current truth, not the last five search hits.

Cold-start backfill at archive scale is still RAG's lane. For operational memory — the substrate your agents are actively writing to — structured beats fuzzy.

WRITES

One tool. ingest. Or send an array.

ingest {
  content:  "switch to JWT with refresh-token rotation",
  body:     "RS256 keys; 15-min access; 7-day refresh; rotation on use. #auth-rebuild",
  intent:   "decide",
  subjects: ["api"],
  tags:     ["auth-rebuild"]
}

The body gets sliced into claim units. Threads are extracted per unit (auth-flow, jwt-rotation) — concept-level labels the system can look up directly, no fuzzy match. The #auth-rebuild tag carries narrative continuity across every agent and human who touches the thread.

If the new claim conflicts with an older one, a resolution proposal is created — pending human (or downstream-agent operator) confirmation. The system spots; nobody overwrites silently.

READS

Zero LLM cost. Every read is a database query.

tool
what it returns
knowledge
Project overview: area summaries, top items, narratives.
area/topic
Area or topic detail with narrative, bulleted sections, concerns, and the threads/tags driving membership.
open
Every unresolved unit with a decide, inquire, or claim intent.
search
Stratified semantic search — paginated blocks of threads and units ranked by embedding distance to the query.
walk
Multi-signal neighbor walk from any unit or item — fuses thread overlap, tag overlap, and prose-embedding similarity into one ranked list.
threads/thread
List the project's threads, or drill into one to see ranked items + neighbor threads by embedding similarity.
item/unit
Full detail including resolution state and source document.

Pre-organized. No re-clustering at read time. No re-summarization. Your agent navigates pre-built structure.

TOPICS & SCOPE

The operator's policy lever for what an agent reads.

A topic is a saved view authored by a prompt — the system threads it and pulls every unit whose threads or tags overlap. Hand an agent a topic ID and it reads pre-organized context, not the raw graph.

Scope filters narrow further: intent (only decides and claims), subject (api + infra only), recency (last 30 days). The cluster proposer surfaces candidate topics from emergent thread communities for an operator to accept. Topics re-materialize on every ingest, so what the agent reads stays current without any rebuild.

RESOLUTION REVIEW

State-check across writers.

Your coder writes a claim. Your QA agent writes a contradicting claim a day later. Pragmus catches it. A resolution proposal lands in the queue with a per-intent verdict — contradicted for claims, closed / invalidated for decides and inquires. The operator (or a curating agent) confirms one over the other.

SYSTEMPROPOSALHUMANdetectnew claim closes,contradicts, or invalidatesproposeresolution proposal queuedclosed · invalidated · contradictedreviewoperator (or any member)confirms or dismissesconfirmrecord updates · audit loggeddismissolder item stays live▶ propose-not-apply · nothing changes the record without approval

Multiple agents writing into the same project don't trample each other. They contribute to a record the rest can act on.

OPERATING DISCIPLINE

Four levers for the long game.

milestones

End an era.

Pre-boundary items remain searchable; the active graph re-anchors on what's happened since. Your agent operates on current state, not the cumulative archive.

sandboxes

Isolate parallel runs.

Two agents exploring divergent hypotheses can write into separate sandboxes without polluting each other.

rollup

Condense a long thread.

Summarizes a chain of items into one authoritative item — lineage preserved — so the agent's reads stay compact without losing history.

reingest

Re-extract from source.

When your extraction prompts evolve, re-run them on the stored raw sources to refresh items.

HOW IT PLUGS IN

One endpoint. No SDK. No per-agent adapter.

Anything that speaks MCP — stdio or HTTP-streamable — can connect. Same tools, same writes, same reads, regardless of which agent runtime is on the other side.

documented setups
Claude Code · Claude Desktop · Cursor
compatible by spec
Any MCP-compatible client — stdio or HTTP-streamable. Agent runtimes, CI hooks, custom scripts.

API keys for non-interactive callers. Share links for read-only external surfaces.

One write surface. One read surface. Every agent on the same record.

MCP-native, by design. Drop in an endpoint, declare four intents, and the substrate handles the rest.

MCP-native ·self-organizing topology ·zero read cost
Currently in closed beta. Sign up to reserve your spot.