Skip to main content

DNA — Domain Notation of Anything: microkernel + extensions for declarative agent notation

Project description

dna-sdk (Python)

Python SDK for DNA — Domain Notation of Anything: a microkernel + extensions runtime for declarative agent notation. See the repository README for the thesis, the architecture and the full Kind catalog.

Install

pip install dna-sdk        # or: uv add dna-sdk

Pre-release / exact-pin alternative — from the repo:

cd packages/sdk-py
uv sync            # or: pip install -e .

Optional extras: postgres, sqlite, sql (SqlAlchemySource — one adapter for both SQL dialects, same tables; see docs/PORT-CONTRACT.md § "Using the SQLAlchemy adapter"), redis, s3, tools (langchain @dna_tool decorator), safety-ml (PII/toxicity models), all, dev.

Minimal example

from dna import Kernel

# Scan a scope (directory of YAML/Markdown manifests under .dna/)
mi = Kernel.quick("hello-genome", base_dir="examples/hello-genome/.dna")

# Every document is identified by (apiVersion, kind, name)
for d in mi.documents:
    print(d.api_version, d.kind, d.name)

# Compose agent + soul + skills + guardrails into one system prompt
print(mi.build_prompt(agent="greeter"))

Runnable version: examples/hello-genome/run.py.

Layout

dna/
├── kernel/       # Kernel (mediator over 5 ports), Document, ManifestInstance
├── adapters/     # filesystem (core); sqlite/postgres/sqlalchemy_/redis/s3 via extras
├── extensions/   # helix (core Kinds) + market formats + governance
├── sync/         # lockfile + document hashing
└── safety/       # safety pipeline (optional ML extras)

Tests

uv run pytest tests/ -v

The suite includes the market-fidelity conformance tests (tests/test_market_conformance.py) and the Py↔TS parity fixtures shared with the TypeScript twin.

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

dna_sdk-0.10.0.tar.gz (962.4 kB view details)

Uploaded Source

Built Distribution

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

dna_sdk-0.10.0-py3-none-any.whl (707.5 kB view details)

Uploaded Python 3

File details

Details for the file dna_sdk-0.10.0.tar.gz.

File metadata

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

File hashes

Hashes for dna_sdk-0.10.0.tar.gz
Algorithm Hash digest
SHA256 c66d016e65ea3a9f0037160e3078b6648a720bfdcd901d7159013522570b7fa2
MD5 17e06b1d6932bb5e6161807b9fe7f124
BLAKE2b-256 688ec2ec8e8c312277c23136123838405b2e780738d861ddad3fc97e2a6d5fc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for dna_sdk-0.10.0.tar.gz:

Publisher: release.yml on ruinosus/dna

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

File details

Details for the file dna_sdk-0.10.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for dna_sdk-0.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5c98fe7e4f405bb098a90cbe58caa69176584daa56df8628be79747f96eb5b39
MD5 e77b0d359f7e29542f004aa9dc2e8465
BLAKE2b-256 3d0f2c73e696bb88bd4135f5b33f9931039d6df662a56284b080e363f0f4629e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dna_sdk-0.10.0-py3-none-any.whl:

Publisher: release.yml on ruinosus/dna

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