Documentation · Protocol
Capability ontology
A lightweight, Gene Ontology-inspired tree. Machine-readable terms, human-readable labels. The tree lives in lib/schema/gene.ts — this page renders that module.
A gene is a term, not a file
input.music.midi.scheduling is a gene. src/midi/buffer.ts is an anchor that currently implements one. That separation is what lets two projects in different languages be recognised as carrying the same capability.
Terms are dotted, lowercase, and stable. Labels can be edited. The seeded catalogue maps 16 genes onto 33 terms, including the root.
ontology: {
term: "input.music.midi.scheduling",
tags: ["midi", "audio", "latency", "realtime"]
}
input → Input
input.music → Music input
input.music.midi → MIDI
input.music.midi.scheduling → MIDI schedulingThe live tree
Carriers listed beside a leaf come from the seeded genes. Empty leaves are reserved vocabulary — they exist so a later project can land on a term that is already defined.
capabilitySoftware capabilityThe root of the CodeAncestry capability ontology.
inputInputGetting intent and data from the outside world.
input.musicMusic inputinput.music.midiMIDI
input.keyboardKeyboard input
audioAudiopersistencePersistencepersistence.sqlSQL storagepersistence.objectObject storage
intelligenceIntelligenceintelligence.retrievalRetrievalintelligence.generationGeneration
interfaceInterfaceinterface.embodimentEmbodiment
pedagogyPedagogyoperationsOperationsoperations.telemetryTelemetry