Overview
The Allternit Intent Graph Kernel (IGK) is a durable, queryable graph database for intent, work, and memory. It stores typed nodes (intents, tasks, goals, decisions, plans, artifacts, and memories) and typed edges that describe how those nodes relate to one another. Every mutation is recorded as a provenance event, so the graph remains auditable and reproducible over time. IGK serves as the substrate for higher-level projections in the Allternit platform:- UI projections — render boards, canvases, and agent workspaces from live graph state.
- Context projections — assemble token-bounded context windows for agent reasoning.
- Memory projections — surface now / next / later views of active and pending work.
intent-graph-kernel and exposes an HTTP service on port 3120 by default.
Core invariants
IGK enforces four design invariants that keep agent reasoning grounded:
These invariants make IGK suitable for agent systems where accountability and reproducibility matter as much as throughput.
Key concepts
Nodes
A node is the primary entity in the graph. Each node carries a UUID, type, status, priority, owner, source references, and arbitrary JSON attributes.Node statuses
Edges
Edges connect nodes and describe semantic relationships.Source references
Every node can cite one or moreSourceRef objects that point back to the origin of the information. A source reference has a kind (for example, file, message, or ledger_event), a locator, an optional excerpt, and an optional content hash. Source refs make it possible to answer “where did this come from?” for any node in the graph.
Architecture
Storage layer
IGK persists data in three SQLite tables:nodes— stores the typed intent graph nodes.edges— stores directed relationships between nodes.events— stores an append-only log of every mutation, including actor, action, target, before/after state, and optional policy decision.
migrations/001_init.sql when the service starts.
Engines
Running the service
The kernel service reads the database path fromIGK_DB_PATH and listens on HOST/PORT.
http://127.0.0.1:3120.
HTTP API
Endpoints
Create a node
Create an edge
Query a subgraph
Compute projections
Build a context window
Using the Rust crate
Add the dependency
Create a node with policy-gated mutation
Query nodes
Compute temporal projections
Policy-gated mutation
IGK distinguishes between proposing and committing a mutation. The mutation engine can mark a node as requiring policy approval based on its type (intent and goal require policy by default). When a policy decision is supplied, the commit path writes both the node/edge and a provenance event that records the decision.
Projections
Temporal projections
The projection engine divides nodes into three buckets relative to a root node:- now — the root node itself plus anything updated within the last hour.
- next — nodes updated recently but not directly under the root.
- later — everything else.
Context windows
A context window is aContextSlice composed of root nodes, selected edges, source references, and a token budget. The projection engine estimates token usage from node attributes and source excerpts, then returns the subset that fits within budget.
Error handling
IGK operations returnIGKError:
HTTP endpoints translate these into standard status codes:
200 OK, 201 Created, 400 Bad Request, 404 Not Found, and 500 Internal Server Error.