nauro-core
Shared pure-Python library for the Nauro ecosystem. Provides parsing, validation, context assembly, and constants used by both the Nauro CLI and the remote MCP server.
Installation
pip install nauro-core
What's inside
decision_model— the PydanticDecisionmodel plus compiled regexes andparse_decision/format_decisionfor the Nauro markdown protocol (decision titles, metadata fields, section headers)constants— limits, thresholds, valid values, file paths shared across all Nauro surfacesparsing— pure markdown→data helpers:extract_stack_summary,decisions_summary_lines(decision parsing lives indecision_model.parse_decision, which returns a validatedDecision)context—build_l0/build_l1/build_l2context assembly from pre-loaded files and parsed decisionsvalidation: structural screening, hash dedup, and BM25 retrieval of related decisions
Design principles
- No I/O — no filesystem, no network; callers inject pre-loaded data. Runtime dependencies are compute-only (BM25, parsing, validation); embeddings are an optional extra (
nauro-core[embeddings]) - Function injection — callers pass pre-loaded data (
files: dict[str, str],decisions: list[dict]); nauro-core never reads files or calls APIs - Import isolation — enforced via
import-linter: nauro-core cannot import fromnauroormcp_server
Usage
from nauro_core import parse_decision, build_l0, compute_hash
# Parse a decision markdown file
decision = parse_decision(markdown_content, "042-use-s3.md")
# Build L0 context from pre-loaded files
context = build_l0(files={"state.md": state, "stack.md": stack}, decisions=decisions)
# Check for duplicate decisions
hash_val = compute_hash(title="Use S3 for storage", rationale="...")
License
Apache 2.0
Metadata
Release files for nauro-core 1.16.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nauro_core-1.16.1.tar.gz | 293.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nauro_core-1.16.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 449.7 kB
Release files / nauro_core-1.16.1.tar.gz
| Download URL | nauro_core-1.16.1.tar.gz |
|---|---|
| Size | 293.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3494732584aaaa833ac0e9b8958a2f60f83430da50d95a1a369ce674f7fae666
|
|
BLAKE2b-256 checksum How to use checksums |
8ebfe51bc6ba9943408cba5eb28b878b0daa034ccf3ef2dc32f26226c1b0862c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.
Transparency logRelease files / nauro_core-1.16.1-py3-none-any.whl
| Download URL | nauro_core-1.16.1-py3-none-any.whl |
|---|---|
| Size | 156.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
849afe747612a0784448eb2fbe21500744ca59cf5a1c95601bf01138b9346c9f
|
|
BLAKE2b-256 checksum How to use checksums |
7bce3f91acf05e7b30108d853cb766ca9bc2d4bceb303dda2e4be2bf29c903d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.
Transparency log