Behavioral health for Python applications. Not signatures. Not rules. Coherence.
Project description
Diogenesis SDK
Behavioral health for Python applications.
Not signature-based detection. Not rule-based blocking. Behavioral coherence.
Install
pip install diogenesis-sdk
Quick Start
import diogenesis_sdk
diogenesis_sdk.activate()
# your application runs normally — every import, file access,
# subprocess call, and network request is observed
print(diogenesis_sdk.status()) # what's being tracked
print(diogenesis_sdk.log(10)) # last 10 events
print(diogenesis_sdk.baseline()) # behavioral fingerprint (after 1000+ events)
diogenesis_sdk.deactivate() # cleanly restore all originals
What It Does
Diogenesis intercepts every import, file access, subprocess call, and network request in your Python application. It classifies each as KNOWN, UNEXPECTED, or SUSPICIOUS based on behavioral patterns. After observing 1000+ events, it generates a behavioral baseline that defines what "normal" looks like. Deviations are anomalies — whether from attacks, bugs, or dependency rot.
Zero Dependencies
Diogenesis uses only the Python standard library. A security product with supply chain risk is a contradiction.
Philosophy
Inspired by Michael Levin's xenobot research: biological systems maintain health through behavioral coherence, not programmed rules. Diogenesis applies the same principle to software.
Design Principles
- Never break the host application. Every interceptor is try/except wrapped. If Diogenesis fails, your code runs normally.
- Shadow mode only. Diogenesis observes. It does not block. Policy enforcement comes in future versions.
- Zero dependencies. stdlib only. No supply chain risk.
- Clean activate/deactivate. One function call to start. One to stop. All originals restored.
Configuration
Pass a config dict to activate():
diogenesis_sdk.activate({
"buffer_size": 5000,
"interceptors": {"import": True, "file": True, "subprocess": False, "network": True},
"whitelist": {
"import_modules": ["myapp", "mylib"],
"file_paths": ["/app/data/"],
"network_hosts": ["localhost", "api.myservice.com"],
},
"suspicious_patterns": {
"imports": ["ctypes"],
"subprocess_commands": ["rm -rf"],
},
})
Or place a diogenesis_sdk.json file in your working directory.
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
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 diogenesis_sdk-0.1.0.tar.gz.
File metadata
- Download URL: diogenesis_sdk-0.1.0.tar.gz
- Upload date:
- Size: 38.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c820d233291e3fa89fa95ea61004dc8d3b30c5e1e86761e86c04bb5e32cdb041
|
|
| MD5 |
5aa8def317b02f411bf1ffc57ef1567c
|
|
| BLAKE2b-256 |
c3eb73c86230678b78d2b7f46fb2b03a2fa38219f04bf0d88e69fb374a2b45fc
|
File details
Details for the file diogenesis_sdk-0.1.0-py3-none-any.whl.
File metadata
- Download URL: diogenesis_sdk-0.1.0-py3-none-any.whl
- Upload date:
- Size: 34.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e7a29165e012e0754e29009a5c30e313c692ccbd0d7b7404a96b6d861216f6cc
|
|
| MD5 |
02b19042bf39f31208522e0fff53b686
|
|
| BLAKE2b-256 |
f12a1287875938a59f722959e4a969bbbc5b1b1a8b806452b9bd66695245ebb0
|