OntoCore — Neuro-symbolic skill compiler. Compiles SKILL.md into validated OWL 2 ontologies.
Project description
OntoCore
Deterministic AI Skills via OWL 2 Ontologies
🇬🇧 English • 🇨🇳 中文
The neuro-symbolic compiler for the OntoSkills platform.
Compile natural language skills into verified, queryable knowledge graphs —
an alternative to probabilistic agent skills with a lightning-fast Rust MCP.
What is OntoCore?
OntoCore is the Python compiler at the heart of the OntoSkills platform. It acts as a neuro-symbolic compiler that transforms unstructured, human-readable AI skills (SKILL.md) into strictly validated, queryable OWL 2 ontologies.
By combining the natural language understanding of LLMs with the deterministic formal logic of RDF and SHACL validation, OntoCore ensures that AI agents operate on exact, verifiable knowledge graphs rather than probabilistic prompts.
Key Capabilities
- LLM Knowledge Extraction: Extracts structured triples (Dependencies, Inputs, Intents, Operations) from markdown files.
- SHACL Validation: Ensures the extracted semantic graph strictly adheres to the OntoSkills Core Ontology.
- Structural Content Preservation: Extracts code examples, tables, flowcharts, templates, and ordered procedures from markdown — losslessly, via deterministic parsing.
- OWL 2 Compilation: Outputs self-contained
.ttl(Turtle) graphs ready for deterministic SPARQL querying. - Local Registry Management: Handles the installation, enabling, and indexing of distributed skills packages.
- Security Auditing: Analyzes the graph for conflicting intents, missing dependencies, or shadowed skills.
Installation
Install the compiler directly from PyPI (requires Python 3.10+):
pip install ontocore
Quick Start
1. Initialize the Environment
Create the necessary folder structure (.ontoskills/) in your project:
ontocore init-core
2. Configure the LLM
OntoCore needs an LLM to extract relationships. Create a .env file or export the keys:
export OPENAI_API_KEY="sk-..."
(Anthropic is also supported via ANTHROPIC_API_KEY)
3. Compile Skills
Assuming you have SKILL.md files in a skills/ directory, run the compiler:
ontocore compile
This will read the markdown files, extract knowledge, validate it via SHACL, and generate .ttl ontology files in the .ontoskills/ output directory.
4. Query the Knowledge Graph
You can perform exact graph queries using SPARQL directly from the CLI:
ontocore query "SELECT ?skill WHERE { ?skill oc:resolvesIntent 'create_pdf' }"
CLI Reference
The package provides the ontocore command-line tool. Here are the main commands:
Core Commands
ontocore compile: Compile local skills to validated OWL 2 ontologies.ontocore query <sparql_query>: Execute a SPARQL query against the compiled domain graph.ontocore security-audit: Run security checks against the knowledge graph to find issues.ontocore init-core: Initialize an empty OntoSkills registry in the current directory.ontocore list-skills: List all successfully compiled skills in the domain graph.
Registry & Packages
ontocore install-package <path>: Install a.tar.gzskill package.ontocore import-source-repo <url>: Import skills directly from a remote Git repository.ontocore install: Download and install all dependencies declared in the lockfile.ontocore enable <skill_id>: Enable an installed skill.ontocore disable <skill_id>: Disable an installed skill.ontocore list-installed: Show all installed packages and their status.ontocore rebuild-index: Rebuild the registry index manually.
Run ontocore --help or ontocore <command> --help for detailed usage.
Documentation & Source
- OntoCore docs — Architecture, compilation pipeline, and SHACL validation
- Getting Started — Full installation and first steps
- mareasw/ontoskills — Source code and contributions
© 2026 Marea Software
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ontocore-1.1.0.tar.gz.
File metadata
- Download URL: ontocore-1.1.0.tar.gz
- Upload date:
- Size: 166.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8084bd5e05726d37f79bd07e3bab43a3b5433db3d135ed52aba7ca14cc94497f
|
|
| MD5 |
fb1c43d5e26b61882a1f27c8e15c8168
|
|
| BLAKE2b-256 |
4d5dadc6a57f47baa5ecfe6579b035742515c920315bf534e77815fd1a4506ee
|
Provenance
The following attestation bundles were made for ontocore-1.1.0.tar.gz:
Publisher:
release-core.yml on mareasw/ontoskills
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ontocore-1.1.0.tar.gz -
Subject digest:
8084bd5e05726d37f79bd07e3bab43a3b5433db3d135ed52aba7ca14cc94497f - Sigstore transparency entry: 1437506916
- Sigstore integration time:
-
Permalink:
mareasw/ontoskills@0f5040dff4ae4cbc7b9c12f16eb8e46debaeaa21 -
Branch / Tag:
refs/tags/v1.1.0 - Owner: https://github.com/mareasw
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-core.yml@0f5040dff4ae4cbc7b9c12f16eb8e46debaeaa21 -
Trigger Event:
release
-
Statement type:
File details
Details for the file ontocore-1.1.0-py3-none-any.whl.
File metadata
- Download URL: ontocore-1.1.0-py3-none-any.whl
- Upload date:
- Size: 126.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
588b17ad3b7fd104557cb6e00249ba25a928140f53674ec7a3ffba3e95cad26c
|
|
| MD5 |
9417cc925d4c3bd6aa3f6754f2d0b9fe
|
|
| BLAKE2b-256 |
8d30c028c1556098eeb581a324eae38b389cd41404c5661e1797482c0e56caee
|
Provenance
The following attestation bundles were made for ontocore-1.1.0-py3-none-any.whl:
Publisher:
release-core.yml on mareasw/ontoskills
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ontocore-1.1.0-py3-none-any.whl -
Subject digest:
588b17ad3b7fd104557cb6e00249ba25a928140f53674ec7a3ffba3e95cad26c - Sigstore transparency entry: 1437506942
- Sigstore integration time:
-
Permalink:
mareasw/ontoskills@0f5040dff4ae4cbc7b9c12f16eb8e46debaeaa21 -
Branch / Tag:
refs/tags/v1.1.0 - Owner: https://github.com/mareasw
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-core.yml@0f5040dff4ae4cbc7b9c12f16eb8e46debaeaa21 -
Trigger Event:
release
-
Statement type: