"Экзокортекс — это как я хочу мыслить — не в ловушке линейных документов или иерархических папок, а в живой паутине смыслов, растущей вместе со мной."
A cognitive infrastructure that augments human intelligence through semantic knowledge organization, ontology-driven reasoning, and AI integration.
Exocortex is not just a knowledge management tool — it's a companion to consciousness. A system designed to:
- Transform chaotic information flow into a coherent worldview supporting decision-making
- Help people live more consciously through structured management of knowledge and goals
- Augment human cognition without replacing it — a companion, not a crutch
"Life is the goal. Awareness is the methodology. Exocortex is the instrument."
Exocortex is an instrument for becoming Übermensch (Nietzsche):
- Overcoming reactive behavior through conceptual awareness
- Super-individualism — the ability to create your own values
- Striving for infinite self-improvement
- Human as a transitional stage between animal and superhuman
- Awareness as Methodology — The system increases awareness, not replaces thinking
- Exocortex as Spirit Manifestation — Not just a utility, but a way to materialize your inner world
- Ontological Precision — Knowledge structured through formal ontologies
- Information-Centrism — Information as the foundation of reality
| Traditional Tools | Exocortex |
|---|---|
| Files and folders | Semantic graph of knowledge |
| Tags and links | Ontology-driven relationships |
| Full-text search | SPARQL semantic queries |
| AI chatbot | SPARQL semantic queries over your knowledge graph |
| Data storage | Domain model of consciousness |
Key difference: Exocortex cannot hallucinate!
- AI hallucinates (generates non-existent information)
- Exocortex operates only with verified data from knowledge graph
- AI is a tool of exocortex, but not a replacement for its function of reliable knowledge storage
Asset is the atomic unit of knowledge, like a quantum in physics:
---
exo__Asset_uid: 965fd5c2-808e-4c7e-8242-e2e5d85bd996
exo__Instance_class: ims__Concept
exo__Asset_label: "Exocortex"
exo__Asset_relates:
- "[[PKM]]"
- "[[Semantic Web]]"
---
Knowledge content in Markdown...Key Insight: Knowledge is an emergent property of the asset graph. Individual assets are just information. When connected through relationships, knowledge emerges — like life emerges from molecules.
DCC is Exocortex's killer feature — communication without conversion between different worldviews.
Problem: Conceptual miscommunication — people use the same words but mean different things.
Solution: Each concept has:
- Formal definition (
ims__Concept_definition) - Relationships with other concepts (
ims__Concept_broader,ims__Concept_related) - Mapping between different users' ontologies
DCC = ExoAPI — semantic contract between exocortexes.
| Module | Purpose |
|---|---|
| IMS (Information Management) | Knowledge, concepts, relationships. Classes: Concept, Note, Person |
| EMS (Effort Management) | Tasks, projects, time. Classes: Task, Project, Meeting |
| ZTLK (Zettelkasten) | Atomic notes methodology |
STIR (Space, Time, Importance, Relatedness) — universal model for information organization:
| Parameter | Question | Application |
|---|---|---|
| Space | Where? | Spatial localization, context, domain |
| Time | When? | Temporal relevance, deadlines, validity period |
| Importance | How important? | Priority, impact on goals |
| Relatedness | What is it related to? | Connections, dependencies, cluster membership |
Exocortex encompasses 42 unique ideas for cognitive augmentation — from implemented features like the Asset knowledge model and SPARQL engine to visionary concepts like ExoEcoSystem (federated knowledge networks) and ExoProphet (prediction engine).
See full vision document → with implementation status for all 42 ideas.
- Asset as Knowledge Quantum — Atomic unit with UUID, class, semantic relationships
- Modular Ontologies — IMS (concepts), EMS (tasks), ZTLK (notes)
- ExoLayout — Flexible views over knowledge graph
- Local-First Architecture — Data stays on device
The project adheres to core ethical principles:
- Human Primacy — Technology serves human flourishing
- Privacy by Design — Personal knowledge under user control
- Open Standards — Based on W3C Semantic Web standards (RDF, SPARQL, OWL)
Exocortex is a monorepo with five packages sharing Clean Architecture core:
┌─────────────────────────────────────────────────────────────────────────┐
│ Exocortex System │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐ │
│ │ Obsidian Plugin │ │ CLI │ │ Your App │ │
│ │ (@exocortex/ │ │ (@kitelev/ │ │ (REST API │ │
│ │ obsidian-plugin)│ │ exocortex-cli) │ │ planned) │ │
│ └────────┬─────────┘ └────────┬─────────┘ └────────┬─────────┘ │
│ │ │ │ │
│ └───────────────────────┼────────────────────────┘ │
│ │ │
│ ┌────────────▼────────────┐ │
│ │ Core Library │ │
│ │ (exocortex) │ │
│ │ │ │
│ │ • Domain models │ │
│ │ • SPARQL engine │ │
│ │ • RDFS inference │ │
│ │ • Storage adapters │ │
│ └─────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────┐
│ Adapters Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────┐ │
│ │ Obsidian │ │ CLI │ │ REST API │ │
│ │ Plugin │ │ Interface │ │ (planned) │ │
│ └─────────────┘ └─────────────┘ └─────────────────┘ │
├─────────────────────────────────────────────────────────────────────────┤
│ Application Layer │
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ Use Cases / Commands / Queries │ │
│ └─────────────────────────────────────────────────────────────────┘ │
├─────────────────────────────────────────────────────────────────────────┤
│ Domain Layer │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌─────────┐ │
│ │ IMS │ │ EMS │ │ ZTLK │ │ ... │ │
│ └──────────┘ └──────────┘ └──────────┘ └─────────┘ │
├─────────────────────────────────────────────────────────────────────────┤
│ Infrastructure Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────┐ │
│ │ Markdown │ │ SPARQL │ │ RDF │ │
│ │ Parser │ │ Engine │ │ Serializers │ │
│ └─────────────┘ └─────────────┘ └─────────────────┘ │
└─────────────────────────────────────────────────────────────────────────┘
| Package | npm | Purpose |
|---|---|---|
| exocortex | Private | Core business logic, domain models, SPARQL engine, 35+ services |
| @exocortex/obsidian-plugin | Private | Interactive UI: 24+ components, 6 renderers, 34+ commands, 11 modals |
| @kitelev/exocortex-cli | @kitelev/exocortex-cli |
CLI for automation, archive/unarchive, SPARQL queries, AI agent integration |
| @exocortex/test-utils | Private | Shared test utilities, mock factories, flaky test reporter |
| physics-wasm | Private | WebAssembly force simulation (experimental, not currently integrated) |
Best for: Visual knowledge management, daily planning, interactive exploration.
- Install BRAT plugin from Obsidian Community Plugins
- Open BRAT settings → Add Beta Plugin
- Enter repository:
kitelev/exocortex - Click Add Plugin and enable Exocortex in Community plugins
BRAT will automatically keep the plugin updated with new releases.
Best for: Automation, AI agents, batch operations.
npm install -g @kitelev/exocortex-cli
# Query your knowledge graph
exocortex-cli sparql query "SELECT ?task ?label WHERE {
?task exo:Instance_class ems:Task .
?task exo:Asset_label ?label
}" --vault ~/vault
# Complete a task
exocortex-cli command complete "tasks/my-task.md" --vault ~/vaultBest for: Building custom applications on top of Exocortex domain models.
Note: The core library (
exocortex) provides domain models, SPARQL engine internals, and service interfaces. For query execution, use the CLI package (@kitelev/exocortex-cli) which provides a complete runtime.
Ask complex questions about your knowledge:
# Find all tasks related to a specific concept
SELECT ?task ?label WHERE {
?task exo:Instance_class ems:Task .
?task exo:Asset_label ?label .
?task exo:Asset_relates ?concept .
?concept exo:Asset_label "Machine Learning" .
}Complete workflow from idea to completion with automatic timestamp tracking:
Draft → Backlog → Analysis → ToDo → Doing → Done
↓
Trashed
Organize knowledge domains hierarchically:
▼ Work
▼ Engineering
→ Backend
→ Frontend
▶ Design
▼ Personal
▶ Health
▶ Finance
Create assets with forms generated from your RDF ontology — fields appear based on rdfs:domain, types detected from rdfs:range.
Long-term vision: cognitive ecosystem uniting multiple exocortexes into a semantically coherent, federated network:
ExoEcoSystem = Exocortex-as-agent
+ Interoperability Layer (DCC)
+ Shared Ontologies
+ Federated Reasoning
Key Principles:
| Principle | Description |
|---|---|
| Decentralization | Each node (exocortex) is autonomous |
| Meaning Federation | Personal ontologies aligned through mapping |
| Mesh Reasoning | Distributed logical inference between nodes |
| Respect for Subjectivity | Everyone defines their own access rules |
- Semantic knowledge graph will be self-organizing through AI analysis
- System will anticipate user needs
- Claude/GPT not as chatbot, but as cognitive partner working with your graph
On individual level — exocortex is a consciousness agent. On collective level — multiple exocortexes form noosphere.
"Exocortex will fully assume consciousness responsibilities when it possesses a worldview of equal or greater precision."
- Clean Architecture — clear layer separation
- SOLID Principles — especially Single Responsibility
- Domain-Driven Design — knowledge domain as system center
- Semantic Web — RDF, SPARQL 1.2, OWL, RDF-Star
- Local-first — your data stays local, cloud is optional
Exocortex implements key SPARQL 1.2 features:
| Feature | Description |
|---|---|
| LATERAL Joins | Correlated subqueries for "top N per group" patterns |
| PREFIX* | Auto-import prefixes from well-known vocabularies |
| DESCRIBE Options | DEPTH and SYMMETRIC control for DESCRIBE queries |
| Directional Language Tags | RTL/LTR text direction support (@ar--rtl) |
| DateTime Arithmetic | Native date/time subtraction and duration operations |
| NORMALIZE/FOLD | Unicode normalization and case folding |
See SPARQL 1.2 Features for complete documentation.
- Installation Guide — Step-by-step setup
Obsidian Plugin:
- Command Reference — All 34+ commands documented
CLI:
- CLI Command Reference — Complete syntax
- Scripting Patterns — Automation examples
Core Library:
- Core API Reference — TypeScript API
- Architecture Guide — Clean Architecture patterns
- SPARQL User Guide — Tutorial from basics to advanced
- Query Examples — 30+ ready-to-use patterns
- SPARQL 1.2 Features — LATERAL, PREFIX*, directionality, and more
- SPARQL 1.2 Migration — Upgrading from SPARQL 1.1
- Graph View Overview — Label patching for Obsidian's built-in graph view
- Configuration Reference — Configuration options for graph label display
- Inference & Reasoning Guide — RDFS inference and neighborhood exploration
Embed Layout definitions directly in your notes using the exo-layout code block:
```exo-layout
[[emslayout__UpcomingTasksLayout]]
```Features:
- Wikilink syntax — Reference any Layout note with
[[LayoutName]] - Loading state — Visual feedback while fetching data
- Error handling — Clear error messages when Layout fails to load
- Auto-refresh — Layout updates automatically when vault files change
- Interactive tables — Sortable columns and inline editing
git clone https://github.com/kitelev/exocortex
cd exocortex
npm install
npm run build
npm run test:allThis project is developed primarily by AI agents (Claude Code, GitHub Copilot) following documented patterns. Human contributions welcome!
| Document | Purpose |
|---|---|
| CLAUDE.md | AI agent guidelines, worktree rules |
| AI Development Patterns | Lessons from 1250+ completed issues |
| Architecture Guide | Clean Architecture patterns |
| Architecture Decision Records | Key architectural decisions (ADRs) |
MIT License — see LICENSE
Exocortex — Your external brain for the semantic age.