Skip to main content

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