Sanctuary DNA - Gnostic agent workflow DSL. Ariadne (threading) + Poimandres (generation) = SDNA spiral
Project description
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sanctuary_dna-0.3.6.tar.gz
(413.4 kB
view details)
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
sanctuary_dna-0.3.6-py3-none-any.whl
(103.0 kB
view details)
File details
Details for the file sanctuary_dna-0.3.6.tar.gz.
File metadata
- Download URL: sanctuary_dna-0.3.6.tar.gz
- Upload date:
- Size: 413.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c83e61604e42455ef8240b95f344e6fee9fbab603b737c32eb5c5ab8476a8244
|
|
| MD5 |
8121eb041b10a801f6cc5ae8cfd2311c
|
|
| BLAKE2b-256 |
b25684cfdfe72d2dfbe81353300a505fa19a33e3ded60ac28bcec631797f6d7b
|
File details
Details for the file sanctuary_dna-0.3.6-py3-none-any.whl.
File metadata
- Download URL: sanctuary_dna-0.3.6-py3-none-any.whl
- Upload date:
- Size: 103.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ac8318ee366e1640e9c28c23019615a7f8d427a03c881f1b7faf7950c29f4273
|
|
| MD5 |
a62a43952cd69f624b7346b7e875d004
|
|
| BLAKE2b-256 |
8c5d320753268395453bf7d77062bc561a27fecc3318f04bd1c49ac10c4e16e7
|