Toggle Theme

Hyper Company Brain: Engineering an AI Agent Knowledge Base

Easton editorial illustration: company-brain vault with freshness clock, permission lock, decision chain, retrieval, and correction gauges

"YC describes Hyper as The Self-Driving Company Brain and says it learns from team tools such as Notion docs, Claude Code questions, emails, LinkedIn DMs, and Cursor sessions."

"Hyper's founder described the episodes/facts memory model, subject-predicate-object facts, timestamps, typed edges, hybrid retrieval, access-control tags, hooks, and MCP in the Launch HN thread."

"The MCP documentation describes MCP as an open standard for connecting AI applications to external systems, including data sources, tools, and workflows."

"OpenAI's team connector documentation says connectors respect existing content permissions and support enterprise controls such as RBAC, SSO, and IP allowlisting."

"OpenAI's memory research update frames memory around carrying context forward, following preferences, and staying current over time while handling stale, correctness, and scalability challenges."

When you ask Claude Code to change code, it does not know why your team deleted that branch three months ago. When you ask ChatGPT about a product decision, it has to reread every document before it can answer. Explaining project history on every call is one of the real differences between agents and regular RAG: RAG is good at retrieving static documents, but company knowledge has three dimensions it does not handle natively: fact validity, permission scope, and the reasoning chain behind decisions.

On Hacker News, Hyper described itself as a “company brain.” That can sound like marketing language, but the architecture details its founder shared in the launch thread are useful: two-layer memory with episodes and facts, typed edges, a timestamp model, and two injection paths through hooks and MCP. This is not a product review. I am using those public details to unpack the design problem behind company memory: a five-layer checklist, a 7-day pilot path, and a risk table for evaluation.

Three Types of Context Regular RAG Cannot Handle

RAG retrieves documents, returns chunks, and lets the model answer. That workflow works for a static knowledge base, but company knowledge has three dimensions that regular RAG does not handle by default.

DimensionDefault RAG behaviorPractical problemWhat a company brain needs
Fact validityReturns the latest matching chunkAn old document is not necessarily an invalid fact; a decision from three months ago may have been reversedintroduced_at / invalidated_at timestamps to mark the fact lifecycle
Permission scopeRetrieval does not distinguish user identityVisible to everyone is not the same as visible to this project team; an agent may read content it should not seeaccess-control tags to filter by team or role
Decision reasoningReturns a conclusion chunkKnowing the result is not the same as knowing the reasoning chainEpisodes preserve the original conversation, and facts record the derived from source

Traditional RAG ranks by recency or relevance. It cannot tell whether a piece of information has been superseded by a newer fact. Hyper assigns two timestamps to each fact: introduced_at records when it first appeared, and invalidated_at records when it became invalid. Retrieval filters out invalid facts instead of relying on the document update date.

Permission scope is more sensitive in a multi-person organization. An agent call may represent a specific team member, and that agent should not read content outside that member’s project scope. Hyper uses access-control tags to mark the visibility of each fact, and the retrieval layer filters results by caller identity before returning them. This is more granular than ordinary enterprise search, which often stops at document-level permissions. A company brain needs fact-level filtering.

Decision reasoning is where regular RAG struggles most. If you ask, “Why did we choose PostgreSQL instead of MongoDB?”, RAG might return the conclusion paragraph from an architecture document. That paragraph may not include the technical debate from three months earlier, the trade-offs, or the final decision logic. Hyper’s episodes layer keeps original conversation nodes, while the facts layer points to source episodes through derived from typed edges. Retrieval can then follow the relationship back to the reasoning chain, not just the result.

Hyper’s Two-Layer Memory Architecture

Hyper organizes memory into two layers: Episodes as the raw store, and Facts as the structured layer, connected by a knowledge graph.

Episodes layer: Episodes keep the original conversation nodes and do not discard context. They act as provenance anchors for facts. When an agent needs to trace a decision process, it can follow a derived from edge from a fact back to the original conversation snippet instead of reading only a summarized conclusion.

Facts layer: Facts use a subject-predicate-object structure. Each fact has a subject, relation, and object, plus timestamps and typed edges. The founder publicly described three types of typed edges:

Typed edgeMeaningUse case
derived fromWhich episode the fact came fromTrace the reasoning behind a decision
supersedesA new fact replaces an old oneMark an invalid fact and filter old conclusions
tensionTwo facts conflict or disagreeWarn humans for correction and avoid trusting conflicting information

Timestamp model: Each fact has two timelines. The T timeline records when the event happened, such as “the decision was made in March.” The T’ timeline records when the system ingested the fact, such as “this fact was written into the knowledge base in June.” The distinction matters because company knowledge often arrives late. Meeting conclusions may be recorded a week later, so the system needs to separate when something happened from when the system learned it.

Core architecture points:

  • Episodes are not summarized away; they preserve the original conversation nodes, according to the HN founder comments and the Zep paper context.
  • Facts are structured as triples, each with timestamps and typed edges, based on the public HN details.
  • introduced_at / invalidated_at mark fact lifecycles, and the retrieval layer filters invalid content.
  • Typed edges let the graph store relationships, not just facts, which is the main difference from a plain vector database.

The point of this architecture is not to store more data. It is to let agents find context by following relationships. A regular vector database returns similar chunks, but it does not know the logical dependency, replacement relationship, or conflict between chunks. Typed edges plus timestamps let retrieval results carry metadata such as where this fact came from, whether it is still valid, and whether it has been replaced.

The Two Paths: Retrieval and Injection

After knowledge is written, agents can use it through two paths: retrieval, where the agent actively queries, and injection, where the agent passively receives context.

Retrieval mechanism based on the founder’s HN comments:

  • Postgres full-text search: keyword matching for exact queries such as the definition of a specific API endpoint.
  • Embedding semantic search: vector similarity search for fuzzy questions such as “what did we decide last time about performance optimization?”
  • Reciprocal Rank Fusion (RRF): combines full-text and semantic recall and returns results by an aggregate ranking.
  • Access-control tag filtering: trims results by caller identity to preserve permission boundaries.

This differs from a pure vector database. Pure semantic recall may miss results for exact keyword queries. Hyper uses RRF to combine both recall paths and account for keyword matches and semantic similarity during ranking.

Injection path comparison: hooks and MCP are different data channels.

DimensionHooksMCP
MechanismReal-time context injection into the agent (push)Standardized tool-calling protocol (pull)
TransparencyHN comments questioned whether install prompts were visible enoughOpenAI SDK workflows require explicit MCP server declaration
Best fitAutomatic context injection, such as current project docsAgent-initiated tool calls, such as querying a database
Technical dependencyRequires a client-side interception layerRequires the agent framework to support MCP, such as OpenAI or Anthropic tools
Governance riskUsers may not know which data was injectedAdmins can control the MCP server permission scope

The two paths can coexist. Hyper’s founder said hooks are used for real-time context injection into agents, such as loading project docs when you open Claude Code, while MCP is used when an agent actively calls external tools, such as querying Notion or Gmail. But some HN commenters questioned hook transparency: does the user clearly know which data is automatically injected into the agent conversation?

During evaluation, check two things: whether hooks have explicit installation prompts, and whether the MCP server permission scope is controlled by an admin. OpenAI’s developer mode documentation says MCP apps require security verification, and Enterprise plans can use RBAC to control access. That makes the MCP governance model relatively mature, while hook transparency depends on product design.

A Five-Layer Company Brain Checklist

If you build or evaluate a company brain, check whether all five layers have a concrete answer. Missing any layer will show up in real use.

Layer 1 is data source ingestion.

  • Tool selection: Notion, Gmail, Slack, GitHub, Linear, Jira, depending on the team’s workflow.
  • Ingestion method: webhooks for real-time updates or polling for scheduled checks; webhooks are faster but require support from the source system.
  • Data cleaning: filter noise, such as casual Slack channels; mark sensitive information; normalize encoding.
  • Initial import: all history versus only new data. Historical data may contain many stale facts.

Layer 2 is the fact schema.

  • Fact shape: subject-predicate-object triples stored in a consistent format.
  • Timestamps: introduced_at for first appearance and invalidated_at for invalidation. Without both, lifecycle judgment is weak.
  • Typed edges: at least derived from for provenance, supersedes for replacement, and tension for conflict.
  • Conflict handling: automatically mark tension for human review, or choose the newer fact by timestamp when appropriate.

Layer 3 is retrieval.

  • Recall mix: full-text keyword search plus semantic embeddings plus RRF fusion. Pure semantic recall can miss exact queries.
  • Permission filtering: fact-level access-control tags that trim results by caller identity.
  • Ranking: combine recency, relevance, and fact validity, and filter invalid facts.
  • Latency target: retrieval response under 500 ms in practice; otherwise agent calls start to feel slow.

Layer 4 is injection.

  • Path selection: hooks for real-time context injection and MCP for agent-initiated access. The two can coexist.
  • Agent compatibility: whether Claude Code, Cursor, ChatGPT, and Codex support the chosen path.
  • Governance model: whether hooks have transparent installation prompts and whether admins control MCP server permissions.
  • Context size control: cap injected context length to avoid token overrun, and prioritize high-relevance facts.

Layer 5 is governance.

  • Permission inheritance: map source permissions to fact-level visibility. Facts from a private Slack channel should not become visible to everyone.
  • Audit logs: who injected which fact when, and which facts an agent read. Incidents need traceability.
  • Human correction: mark wrong facts, design an invalidated flow, and support manual clarification facts.
  • Data export: verify whether the complete fact store can be exported as JSON or CSV to assess lock-in risk.

The logic behind the checklist is simple. The source layer decides where data comes from. The fact layer decides what structure is stored. The retrieval layer decides how the system finds information. The injection layer decides how context reaches the agent. The governance layer decides who controls, corrects, and audits it. If any layer is missing, the knowledge base will get stuck in practice.

A 7-Day Pilot Path

A small team should not connect all Slack, email, or CRM data in the first week. Permissions are complex, and the noise is high enough to expose governance problems too early. Start with low-risk sources, then validate recall and correction before expanding.

Days 1-2: Choose low-risk data sources

  • Public Notion docs, such as product roadmaps and technical specs.
  • GitHub README files and Wikis, such as project architecture and API docs.
  • Exclude private Slack channels, historical email, and CRM customer data because they are permission-sensitive and noisy.

Day 3: Design the fact schema

  • Use 3-5 fields: subject, predicate, object, introduced_at, source.
  • Do not aim for a perfect schema. The pilot is about validating the retrieval path; the schema can evolve.
  • Define naming conventions. Use a consistent subject format such as ProjectX, and predicates as verbs such as uses.

Days 4-5: Test retrieval and injection

  • Retrieval test: prepare 5-10 queries and check whether key facts are found.
  • Injection test: choose one agent, such as Claude Code or Cursor, and verify that it can read the injected context.
  • Record latency: check whether retrieval is under 500 ms and whether the agent cites facts correctly after injection.

Days 6-7: Replay and human correction

  • Replay historical queries and check whether results include wrong or stale facts.
  • Record errors: list facts that need to be invalidated and design the marking flow.
  • Design correction: let humans add clarification facts and mark wrong facts with an invalidated_at timestamp.

Do not do these in week one:

  • Do not connect Slack, email, or CRM, because permissions and noise are too complex.
  • Do not chase a perfect schema; validate the retrieval path first, then iterate.
  • Do not connect production data sources; use test data or public docs to validate the flow.

At the end of the pilot, you should have a working retrieval-plus-injection flow, 5-10 verified facts, and a correction process. Those are the prerequisites for expanding data sources: first verify that the system can find, read, and correct facts, then connect more tools.

Risk Table for Evaluation

Check seven risk dimensions before making a decision. Each one should carry a source and confidence level.

Risk dimensionPublic informationEvidenceConfidenceConfirm during evaluation
Data exportFounder said export is supportedLaunch thread founder replymediumExport format (JSON/CSV), completeness, migration cost
Privacy commitmentFAQ reportedly says no training on user data and AES-256 encryptionHyper FAQmediumSOC 2 / ISO 27001 timeline, data storage location
Vendor lock-inNo self-hosted optionLaunch thread replyhighWhether export is complete and alternatives can replace it
Hook transparencyUsers questioned whether install prompts were visible enoughLaunch thread user feedbackmediumWhether users know which data is injected
Permission inheritanceaccess-control tagsLaunch thread founder detailshighHow source permissions map to fact-level permissions; inheritance rules are not public
Knowledge-graph contexttyped edges preserve relationshipsLaunch thread founder detailshighWhether episode summarization loses intent, as users worried
Conflict handlingHuman correction workflow is not publicLaunch thread product discussionlowWhether facts can be marked wrong and manually clarified

Of these seven dimensions, data export and vendor lock-in need the most attention during evaluation. The founder said in HN comments that export is supported, but I could not verify a full official commitment. That means you need to confirm whether the export format is structured, such as JSON or CSV; whether it includes the full fact store, typed edges, and timestamps; and how much cleanup would be required to migrate to another system.

Hook transparency is another risk that is easy to miss. Hooks inject context on the client side, and users may not know which data was automatically loaded into the agent conversation. During evaluation, confirm whether the product provides clear installation prompts and whether users can inspect or control the injected data scope.

Permission inheritance has a public technical direction through access-control tags, but the inheritance rules are not public. The practical questions are concrete: how does a fact from a private Slack channel map to fact-level visibility, and how does CRM customer data get trimmed by team? Whether you buy or build, this mapping logic needs a design.

If you want to go deeper into agents and knowledge bases, these related BetterLink posts are good next stops:

Conclusion

Hyper is still an early product. Its public architecture details, including two-layer memory, typed edges, the timestamp model, and the dual hooks/MCP path, are still a useful case for learning how company memory should be designed. For small teams evaluating or building this kind of system, the three biggest checks are data export, hook transparency, and conflict handling.

Start with a narrow workflow: public Notion docs or a GitHub README, then validate retrieval recall and correction before connecting Slack or email. Do not start by chasing a perfect schema. Fact lifecycles, permission inheritance, and human correction flows all need real testing.

If your team already uses Claude Code or Cursor, a small next step is to try injecting project docs through hooks and observe whether the agent cites facts correctly. After that, connect memory with execution through monitoring and recovery, so failures can be detected and retried instead of repeated silently.

Validate an AI agent company knowledge base in 7 days

Start from low-risk sources and test whether fact extraction, retrieval injection, and human correction reduce repeated explanations and stale-fact mistakes.

⏱️ Estimated time: 7 days

  1. 1

    Step 1: Days 1-2: Choose low-risk data sources

    Start with public Notion docs, product roadmaps, technical specs, GitHub README files, and Wikis. Keep private Slack channels, historical email, and CRM customer data out of the first pilot.
  2. 2

    Step 2: Day 3: Design the fact schema

    Use a minimal set of fields such as subject, predicate, object, introduced_at, and source to validate the retrieval path before you optimize the schema.
  3. 3

    Step 3: Days 4-5: Test retrieval and injection

    Prepare 5-10 queries, check whether key facts are recalled, measure injection latency, and verify that the agent cites facts correctly.
  4. 4

    Step 4: Days 6-7: Replay and correct

    Replay historical queries, mark wrong or stale facts, and design the invalidated_at plus human clarification workflow.

FAQ

Can the data be exported?
Hyper's founder said in an HN comment that export is supported, but I could not verify a full official commitment. During evaluation, confirm the export format, such as JSON or CSV, and whether it includes typed edges and timestamps. If you build your own version, design export first to avoid painful migration later.
Will the knowledge graph lose context?
Typed edges preserve relationships such as derived from, supersedes, and tension. Still, HN commenters worried that episode summarization could lose intent. During a pilot, test recall quality and verify that the system can follow relationships back to the original conversation snippets.
What should happen when multiple sources conflict?
Hyper's public materials do not fully describe the human correction workflow. In a self-built version, use an invalidated_at timestamp plus a manual review process, and mark conflicting facts with a tension edge for human review.
Are hooks transparent enough?
Some HN comments questioned whether hook installation was visible enough. When evaluating a product, confirm whether users know which data is being injected. If you build it internally, start with an explicit control panel.
How serious is vendor lock-in?
Public comments mention no self-hosted option. Evaluate whether export is complete, how hard migration would be, and whether another system could replace the core capabilities: fact storage, typed edges, and permission filtering.

14 min read · Published on: Jun 4, 2026 · Modified on: Jul 14, 2026

Comments

Sign in with GitHub to leave a comment

Easton BlogEaston Blog