Skip to main content

Shared pure-Python logic for Nauro: parsing, validation, context assembly, constants.

Project description

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 Pydantic Decision model plus compiled regexes and parse_decision/format_decision for the Nauro markdown protocol (decision titles, metadata fields, section headers)
  • constants — limits, thresholds, valid values, file paths shared across all Nauro surfaces
  • parsing — pure markdown→data helpers: parse_questions, extract_stack_summary, decisions_summary_lines (decision parsing lives in decision_model.parse_decision, which returns a validated Decision)
  • contextbuild_l0/build_l1/build_l2 context assembly from pre-loaded files and parsed decisions
  • validation — structural screening, hash dedup, BM25 similarity for decision conflict detection

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 from nauro or mcp_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

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

nauro_core-0.13.9.tar.gz (138.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nauro_core-0.13.9-py3-none-any.whl (89.3 kB view details)

Uploaded Python 3

File details

Details for the file nauro_core-0.13.9.tar.gz.

File metadata

  • Download URL: nauro_core-0.13.9.tar.gz
  • Upload date:
  • Size: 138.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nauro_core-0.13.9.tar.gz
Algorithm Hash digest
SHA256 4a1b4a465f0d47fb32ce46a6e45a2300e66a568f8b6c1fc69021fa4ed6190143
MD5 2d6d501d85cba6f7400d15b5cb3fd481
BLAKE2b-256 94fdcf326373055f11a6267f004b3c516696c28b85ec71516a0723417d5d5a68

See more details on using hashes here.

Provenance

The following attestation bundles were made for nauro_core-0.13.9.tar.gz:

Publisher: publish-nauro-core.yml on Nauro-AI/nauro

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nauro_core-0.13.9-py3-none-any.whl.

File metadata

  • Download URL: nauro_core-0.13.9-py3-none-any.whl
  • Upload date:
  • Size: 89.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nauro_core-0.13.9-py3-none-any.whl
Algorithm Hash digest
SHA256 9902eb92588966018b6c285e7909f9c28152896b8c61d77cfc12cb5e9b486fa5
MD5 de88b9d15b348a2f128ab7490c35a6d5
BLAKE2b-256 ca7b19352de2bcfaeaf253d61b8a693f5fedeb900ea70050f6c0254d7c7ea6b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for nauro_core-0.13.9-py3-none-any.whl:

Publisher: publish-nauro-core.yml on Nauro-AI/nauro

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page