SDNA - Sanctuary DNA
Gnostic agent workflow composition for Claude Agent SDK.
Ariadne (threading) + Poimandres (generation) = SDNA spiral
Installation
pip install sdna-agent-sdk
Quick Start
from sdna import ariadne, human, inject_file, sdnac, sdna_flow, HermesConfig
# 1. Build Ariadne thread (context prep)
thread = ariadne('my-thread',
inject_file('spec.md', 'spec'),
human('Approve spec?', 'approval'), # Pauses for human input
)
# 2. Create HermesConfig (the message)
config = HermesConfig(
name="generator",
system_prompt="You are a code generator...",
)
# 3. Combine into SDNAC
unit = sdnac('generate-code', thread, config)
# 4. Execute
result = await unit.execute({'initial': 'context'})
The Trinity
| Component | Role | What It Does |
|---|---|---|
| Ariadne | Threader | Context manipulation: inject, weave, dovetail, human input |
| Poimandres | Divine Mind | Generation moment - takes config, runs agent, returns output |
| HermesConfig | The Message | Runner configuration Ariadne sends to Poimandres |
Decision Tree: What to Build
Is this continuous improvement / optimization loop?
├── YES → SDNA^F (SDNAFlowchain)
│ Optimizer + target pairs. Meta-optimization.
│
└── NO → Are you composing multiple agent units in sequence?
├── YES → SDNAF (SDNAFlow)
│ Flow of SDNACs. Sequential execution.
│
└── NO → SDNAC
Single unit: AriadneChain → HermesConfig → Poimandres executes
Ariadne Elements
from sdna import (
ariadne, # Create chain
human, # Human input stop step
inject_file, # Inject file contents
inject_func, # Inject function result
inject_literal, # Inject literal value
inject_env, # Inject env variable
weave, # Context surgery between sessions
)
License
MIT
Metadata
Release files for sanctuary-dna 0.3.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| sanctuary_dna-0.3.6.tar.gz | 413.4 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sanctuary_dna-0.3.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 516.4 kB
Release files / sanctuary_dna-0.3.6.tar.gz
| Download URL | sanctuary_dna-0.3.6.tar.gz |
|---|---|
| Size | 413.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c83e61604e42455ef8240b95f344e6fee9fbab603b737c32eb5c5ab8476a8244
|
|
BLAKE2b-256 checksum How to use checksums |
b25684cfdfe72d2dfbe81353300a505fa19a33e3ded60ac28bcec631797f6d7b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Release files / sanctuary_dna-0.3.6-py3-none-any.whl
| Download URL | sanctuary_dna-0.3.6-py3-none-any.whl |
|---|---|
| Size | 103.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ac8318ee366e1640e9c28c23019615a7f8d427a03c881f1b7faf7950c29f4273
|
|
BLAKE2b-256 checksum How to use checksums |
8c5d320753268395453bf7d77062bc561a27fecc3318f04bd1c49ac10c4e16e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Security for sanctuary-dna 0.3.6
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.