Cloud The core runtime is open source and free. TekMemo Cloud (hosted sync, managed MCP, team features) is in early access. Join the waitlist →
Skip to content

Graph memory

While traditional memory (core.md or notes.md) stores raw text, Graph memory structures knowledge as a web of relationships. This allows coding agents to answer complex architectural questions like "What depends on this API endpoint?" or "Why was this UI library chosen over the alternative?"

Nodes

A node is a specific entity in your project's ecosystem. Nodes can represent:

  • Files/Modules (e.g., src/auth.ts)
  • Concepts/Systems (e.g., The Billing Engine)
  • Decisions (e.g., Decision: Use Tailwind)
  • External Dependencies (e.g., NextAuth.js)
  • Tasks/Tickets (e.g., JIRA-1234)

Every node has a unique identifier, a label, and optional metadata.

Edges

An edge connects two nodes, defining their relationship. Edges can be directed and typed.

Common edge types include:

  • depends_on (A requires B to function)
  • implements (A fulfills the interface of B)
  • resolves (A fixes bug B)
  • supersedes (A replaces decision B)
  • relates_to (A and B are contextually linked)

Edges can also carry weight, confidence scores, and source references back to the code or documentation where the relationship was discovered.

Using graph memory

You can interact with graph memory through multiple surfaces:

  1. Local Graph: The graph memory module (imported from @tekbreed/tekmemo) provides the TypeScript contracts and local graph behavior, saving nodes and edges as JSON lines in .tekmemo/.
  2. Cloud APIs: TekMemo Cloud exposes project-scoped graph APIs for managing massive graphs. The cloud client wraps these endpoints.
  3. Agent Tools: The @tekbreed/tekmemo-mcp-server package exposes graph tools to coding agents so they can traverse relationships at runtime.

Released under the MIT License.