Installation
IntentusNet is distributed as a Python package. This guide covers installation options and verification.
Requirements
- Python: 3.9 or higher
- Operating System: Linux, macOS, Windows
- Optional: Docker for containerized deployments
Quick Install
Install from PyPI:
pip install intentusnet
Verify installation:
python -c "import intentusnet; print(intentusnet.__version__)"
# Output: 1.3.0
Installation Options
Standard Installation
pip install intentusnet
Includes core runtime, file-based storage, and in-process transport.
With HTTP Transport
pip install intentusnet[http]
Adds FastAPI-based HTTP server and client.
With All Transports
pip install intentusnet[all]
Includes HTTP, WebSocket, and ZeroMQ transports.
Development Installation
pip install intentusnet[dev]
Adds testing tools: pytest, mypy, black, ruff.
From Source
Clone and install from source:
git clone https://github.com/Balchandar/intentusnet.git
cd intentusnet
pip install -e ".[dev]"
Docker
Pull the official image:
docker pull intentusnet/runtime:1.3.0
Run a container:
docker run -it --rm \
-v $(pwd)/config:/app/config \
-v $(pwd)/records:/app/.intentusnet/records \
intentusnet/runtime:1.3.0
Verify Installation
Check Version
python -c "import intentusnet; print(intentusnet.__version__)"
Run Self-Test
from intentusnet import IntentusRuntime, BaseAgent, AgentResponse
# Create minimal runtime
runtime = IntentusRuntime()
# Verify core components
assert runtime.router is not None
assert runtime.registry is not None
print("IntentusNet installed correctly!")
Check Dependencies
pip show intentusnet
Expected output:
Name: intentusnet
Version: 1.3.0
Summary: Deterministic execution runtime for multi-agent systems
Requires: cryptography, websockets, pyzmq, fastapi, uvicorn, python-dateutil
Configuration
IntentusNet uses sensible defaults. Optional configuration:
Environment Variables
# Execution record storage path
export INTENTUSNET_RECORDS_PATH=".intentusnet/records"
# Enable debug logging
export INTENTUSNET_LOG_LEVEL="DEBUG"
# Disable recording (for high-frequency operations)
export INTENTUSNET_RECORDING_ENABLED="false"
Programmatic Configuration
from intentusnet import IntentusRuntime
runtime = IntentusRuntime(
enable_recording=True,
records_path=".intentusnet/records",
log_level="INFO"
)
Directory Structure
After installation and first run:
your-project/
├── .intentusnet/
│ └── records/ # Execution records
│ ├── exec-a1b2c3d4.json
│ └── ...
└── your_code.py
Troubleshooting
Import Error
ModuleNotFoundError: No module named 'intentusnet'
Solution: Verify installation: pip list | grep intentusnet
Version Mismatch
AttributeError: module 'intentusnet' has no attribute 'IntentusRuntime'
Solution: Upgrade to latest: pip install --upgrade intentusnet
Permission Error
PermissionError: [Errno 13] Permission denied: '.intentusnet/records'
Solution: Ensure write permissions or set custom path:
runtime = IntentusRuntime(records_path="/tmp/intentusnet/records")
Missing Optional Dependencies
ImportError: ZeroMQ transport requires pyzmq
Solution: Install with extras: pip install intentusnet[all]
Next Steps
- Quickstart — Run your first intent
- Walkthrough — Complete example with policy filtering and crash recovery