Portable state transport for AI agents
Project description
Portable state transport for AI agents
Transport agent state between any two frameworks without manual migration
Install • How it works • CLI • Python SDK
How it works
- Spawn: read source agent artifacts, redact PII, and package everything into a portable Egg (
.eggarchive) - Hatch: decode an Egg into any supported target runtime, with optional LLM refinement and secret injection
Source artifacts → Spawn → Egg (.egg) → Hatch → Target-native files
The Egg format
An .egg file is a signed ZIP archive containing:
manifest.json # metadata, source type, versions
memory.json # labeled memory records
secrets.json # PII placeholders + secret requirements
skills/<slug>/SKILL.md # portable skill definitions (agentskills.io)
mcp/<server>.json # MCP server configs
raw/... # redacted source files (for pass-through hatch)
Install
pip install pynydus
CLI
# Create a Nydusfile in your project directory
cat > Nydusfile << 'EOF'
SOURCE openclaw ./my-agent/
REDACT pii
EOF
# Spawn an egg
nydus spawn -o agent.egg
# Inspect and validate
nydus inspect agent.egg
nydus inspect agent.egg --secrets --logs
nydus validate agent.egg
# Generate a template .env from the egg's secret requirements
nydus env agent.egg -o agent.env
# Hatch into a target runtime
nydus hatch agent.egg --target letta --secrets agent.env
# Compare two eggs
nydus diff v1.egg v2.egg
# Signing
nydus keygen
nydus spawn -o signed.egg # auto-signs if key exists
Python SDK
from pynydus.client import Nydus
ny = Nydus()
# Spawn from a Nydusfile in the current directory
egg_path = ny.spawn()
# Hatch into a target runtime with secret injection
result = ny.hatch(egg_path, target="letta", secrets="agent.env")
print(result.output_dir, result.files_created)
Project structure
pynydus/
api/ # Egg data model, schemas, errors
agents/ # Per-platform spawners + hatchers
openclaw/
zeroclaw/
letta/
engine/ # Core pipelines: spawn, hatch, pack, validate, diff, refine
cmd/ # Typer CLI
client/ # Python SDK
pkg/ # Utilities: presidio, LLM, signing, config
remote/ # Nest registry client
License
MIT
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
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
File details
Details for the file pynydus-0.0.4.tar.gz.
File metadata
- Download URL: pynydus-0.0.4.tar.gz
- Upload date:
- Size: 61.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd6df3e0dc261e0e3b4616505f61de6f6949ba79cd76fc91164355a13e41d8b3
|
|
| MD5 |
ac73d289c2e2e43ec7ccb449c6de79d4
|
|
| BLAKE2b-256 |
8482b94e128f104936acd42458837dbf4420d680032a5c6c93745757aa14d65e
|
Provenance
The following attestation bundles were made for pynydus-0.0.4.tar.gz:
Publisher:
workflow.yml on NydusAI/nydus
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynydus-0.0.4.tar.gz -
Subject digest:
dd6df3e0dc261e0e3b4616505f61de6f6949ba79cd76fc91164355a13e41d8b3 - Sigstore transparency entry: 1202701508
- Sigstore integration time:
-
Permalink:
NydusAI/nydus@91c0002f4660fa81809328de15ee879103d87a40 -
Branch / Tag:
refs/tags/v0.0.4 - Owner: https://github.com/NydusAI
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@91c0002f4660fa81809328de15ee879103d87a40 -
Trigger Event:
release
-
Statement type:
File details
Details for the file pynydus-0.0.4-py3-none-any.whl.
File metadata
- Download URL: pynydus-0.0.4-py3-none-any.whl
- Upload date:
- Size: 83.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e547f4bd13c07b9c82d4fe36d655676bc34dd838c869f37d49681d2ac910e82
|
|
| MD5 |
f095f4c06e342fde4d7f58a54b1fda82
|
|
| BLAKE2b-256 |
8258d1fffaf82c0206b5934a68f17db5c703cc07d8bece575c0bd02646b9fe96
|
Provenance
The following attestation bundles were made for pynydus-0.0.4-py3-none-any.whl:
Publisher:
workflow.yml on NydusAI/nydus
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynydus-0.0.4-py3-none-any.whl -
Subject digest:
6e547f4bd13c07b9c82d4fe36d655676bc34dd838c869f37d49681d2ac910e82 - Sigstore transparency entry: 1202701510
- Sigstore integration time:
-
Permalink:
NydusAI/nydus@91c0002f4660fa81809328de15ee879103d87a40 -
Branch / Tag:
refs/tags/v0.0.4 - Owner: https://github.com/NydusAI
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@91c0002f4660fa81809328de15ee879103d87a40 -
Trigger Event:
release
-
Statement type: