Graph Node

A node is the fundamental unit of the Lito Graph. Every Markdown file produces at least one node. Workflow files also produce StepNode children.

Overview

All nodes share a common set of base fields and extend them with type-specific data.

Node Types

TypeSourceDescription
docAny .md/.mdx without a type fieldStandard documentation page
concepttype: conceptDomain entity (Workspace, User, Project)
apitype: api or legacy api: "GET /path"Callable capability (HTTP endpoint, function)
workflowtype: workflowMulti-step procedure with guardrails
stepAuto-generated from workflow ## StepsIndividual action within a workflow

Base Fields

Every node has these fields:

FieldTypeDescription
idstringDeterministic SHA-256 hash of source_path:type
typestringOne of: doc, concept, api, workflow, step
titlestringFrom frontmatter title or derived from slug
summarystringFrom description or first paragraph of body
source_pathstringRelative path to the source file
slugstringURL-friendly path (e.g., /concepts/workspace)
anchorsstring[]Heading IDs extracted from the document
versionstring?Version tag (e.g., "v1")
localestring?Language locale (e.g., "es")
tagsstring[]Freeform tags for filtering

Relationships

  • Each GraphNode belongs to exactly one LitoGraph
  • GraphNodes connect to each other via GraphEdges
  • WorkflowNodes contain child StepNodes via CONTAINS edges