# UMICP Python Bindings
[](https://pypi.org/project/umicp-python/)
[](https://pypi.org/project/umicp-python/)
[](LICENSE)
High-performance Python bindings for the Universal Matrix Inter-Communication Protocol (UMICP).
## ๐ Status: **Production Release** (v0.2.0)
| Component | Status | Description |
|-----------|--------|-------------|
| **Envelope System** | โ
Complete | Message envelope with JSON serialization |
| **Matrix Operations** | โ
Complete | NumPy-powered matrix operations |
| **WebSocket Client** | โ
Complete | Async WebSocket client |
| **WebSocket Server** | โ
Complete | Async WebSocket server |
| **HTTP/2 Client** | โ
Complete | HTTP/2 client with httpx |
| **HTTP/2 Server** | โ
Complete | HTTP/2 server with aiohttp |
| **Multiplexed Peer** | โ
Complete | Server + client architecture |
| **Event System** | โ
Complete | Async event emitter |
| **Service Discovery** | โ
Complete | Service registration and discovery |
| **Connection Pooling** | โ
Complete | Generic connection pooling |
| **Compression** | โ
Complete | GZIP/DEFLATE compression |
**Current Progress**: 100% Feature Complete โ
**Python Version**: 3.9+ required
**Dependencies**: Modern async stack (asyncio, websockets, httpx, aiohttp)
---
## ๐ฆ Installation
```bash
# Install from PyPI (recommended)
pip install umicp-python
# Or install specific version
pip install umicp-python==0.2.0
# Install from source
git clone https://github.com/hivellm/umicp
cd umicp/bindings/python
pip install -e .
# Install with dev dependencies
pip install -e ".[dev]"
```
**PyPI Package**: [https://pypi.org/project/umicp-python/](https://pypi.org/project/umicp-python/)
### Requirements
- Python 3.9+
- NumPy >= 1.24.0
- websockets >= 12.0
- httpx >= 0.27.0
- aiohttp >= 3.9.0
---
## ๐ฏ Quick Start
### Basic Envelope Usage
```python
from umicp import Envelope, EnvelopeBuilder, OperationType
# Create envelope
envelope = EnvelopeBuilder() \
.from_id("client-001") \
.to_id("server-001") \
.operation(OperationType.DATA) \
.capability("content-type", "application/json") \
.build()
# Serialize
json_str = envelope.to_json()
print(f"Envelope: {json_str}")
# Deserialize
received = Envelope.from_json(json_str)
print(f"From: {received.from_id}, To: {received.to_id}")
```
### Matrix Operations
```python
import numpy as np
from umicp import Matrix
matrix = Matrix()
# Vector operations
v1 = np.array([1.0, 2.0, 3.0, 4.0], dtype=np.float32)
v2 = np.array([5.0, 6.0, 7.0, 8.0], dtype=np.float32)
# Dot product
dot_result = matrix.dot_product(v1, v2)
print(f"Dot product: {dot_result.result}") # 70.0
# Cosine similarity
similarity = matrix.cosine_similarity(v1, v2)
print(f"Similarity: {similarity.similarity}")
# Matrix operations
m1 = np.array([[1, 2], [3, 4]], dtype=np.float32)
m2 = np.array([[5, 6], [7, 8]], dtype=np.float32)
result = matrix.multiply(m1, m2)
print(f"Product:\n{result.result}")
```
### WebSocket Client
```python
import asyncio
from umicp import WebSocketClient, Envelope, OperationType, EnvelopeBuilder
async def main():
# Create client
client = WebSocketClient("ws://localhost:8080")
# Connect
await client.connect()
print("Connected!")
# Send message
envelope = EnvelopeBuilder() \
.from_id("python-client") \
.to_id("server") \
.operation(OperationType.DATA) \
.capability("message", "Hello from Python!") \
.build()
await client.send(envelope)
print("Message sent!")
# Receive message
received = await client.receive()
if received:
print(f"Received: {received}")
# Disconnect
await client.disconnect()
asyncio.run(main())
```
### Multiplexed Peer
```python
import asyncio
from umicp import WebSocketPeer, EnvelopeBuilder, OperationType
async def main():
# Create peer
peer = WebSocketPeer("peer-001", port=8080)
# Start server
await peer.start()
print("Peer server started")
# Connect to another peer
await peer.connect_to_peer("ws://localhost:8081", "peer-002")
# Send to specific peer
envelope = EnvelopeBuilder() \
.from_id("peer-001") \
.to_id("peer-002") \
.operation(OperationType.DATA) \
.capability("message", "Hello Peer!") \
.build()
await peer.send_to_peer("peer-002", envelope)
# Broadcast to all peers
await peer.broadcast(envelope)
# Cleanup
await peer.disconnect()
asyncio.run(main())
```
### Service Discovery
```python
import asyncio
from umicp import ServiceDiscovery, ServiceInfo
async def main():
discovery = ServiceDiscovery()
await discovery.start()
# Register service
service = ServiceInfo(
id="my-service-001",
name="MyService",
version="1.0.0",
capabilities={"type": "processor", "language": "python"},
metadata={"description": "Example service"}
)
await discovery.register(service)
# Find services
services = await discovery.find_by_capability("type", "processor")
print(f"Found {len(services)} services")
# Cleanup
await discovery.stop()
asyncio.run(main())
```
### Compression
```python
from umicp import Compression, CompressionType
# Compress data
data = b"Hello, UMICP! " * 100
compressed = Compression.compress(data, CompressionType.GZIP)
print(f"Original: {len(data)} bytes, Compressed: {len(compressed)} bytes")
# Decompress
decompressed = Compression.decompress(compressed, CompressionType.GZIP)
assert decompressed == data
# Check if compression is beneficial
if Compression.is_beneficial(len(data), len(compressed)):
print("Compression saved space!")
# Get compression ratio
ratio = Compression.get_compression_ratio(len(data), len(compressed))
print(f"Compression ratio: {ratio:.2f}x")
```
---
## โ
Features
### Core Features
- โ
**Envelope System**: Type-safe message envelopes with JSON serialization
- โ
**Builder Pattern**: Fluent API for envelope construction
- โ
**Hash Generation**: SHA-256 envelope integrity
- โ
**Validation**: Comprehensive field validation
### Matrix Operations
- โ
**NumPy Integration**: High-performance operations
- โ
**Vector Operations**: Add, subtract, scale, dot product
- โ
**Matrix Operations**: Add, multiply, transpose, determinant, inverse
- โ
**Similarity**: Cosine similarity, L2 normalization
- โ
**Type Safety**: Full type hints
### Transport Layer
- โ
**WebSocket**: Async client and server with websockets library
- โ
**HTTP/2**: Client (httpx) and server (aiohttp)
- โ
**Auto-reconnect**: Configurable reconnection logic
- โ
**Statistics**: Message and byte counters
### Advanced Features
- โ
**Multiplexed Peer**: Server + multiple clients in one
- โ
**Auto-Handshake**: HELLO โ ACK protocol
- โ
**Event System**: Async event emitter with type-safe events
- โ
**Service Discovery**: Registration, health tracking, capability matching
- โ
**Connection Pooling**: Generic async pool with timeouts
- โ
**Compression**: GZIP/DEFLATE with automatic size detection
### Developer Experience
- โ
**Type Hints**: Full type annotations for IDE support
- โ
**Async/Await**: Modern asyncio patterns
- โ
**Error Handling**: Custom exception hierarchy
- โ
**Documentation**: Comprehensive docstrings
---
## ๐งช Testing
### Test Suite
**133 comprehensive tests** with **97% code coverage**:
- โ
**Unit Tests** (100+): All core modules
- โ
**Integration Tests** (10+): End-to-end workflows
- โ
**Async Tests** (30+): Full asyncio coverage
- โ
**Advanced Tests** (15+): Edge cases and error handling
- โ
**Compression Tests** (18): GZIP/DEFLATE compression
### Test Coverage by Module
| Module | Tests | Coverage |
|--------|-------|----------|
| types.py | 12 | 100% |
| error.py | 7 | 100% |
| envelope.py | 24 | 94% |
| envelope_advanced.py | 17 | 95% |
| matrix.py | 27 | 99% |
| matrix_advanced.py | 20 | 98% |
| compression.py | 18 | 100% |
| events.py | 8 | 98% |
| discovery.py | 8 | 100% |
| pool.py | 10 | 90% |
| peer/* | 8 | 100% |
| transport/* | 10 | 95% |
| integration | 7 | N/A |
| **Total** | **133** | **97%** |
### Running Tests
```bash
# Install dev dependencies
pip install -e ".[dev]"
# Run all tests
pytest
# Run with coverage report
pytest --cov=umicp --cov-report=html
pytest --cov=umicp --cov-report=term-missing
# Run specific test file
pytest tests/test_envelope.py
pytest tests/test_matrix.py
pytest tests/test_integration.py
# Run by category
pytest -m "not integration" # Unit tests only
pytest -m integration # Integration tests only
# Verbose output
pytest -v
pytest -vv # Extra verbose
# Type checking
mypy umicp/
# Linting
ruff check umicp/
# Formatting
black umicp/
```
See [TEST_REPORT.md](TEST_REPORT.md) for detailed test coverage report.
---
## ๐ API Reference
### Core Classes
- **`Envelope`**: Message envelope
- **`EnvelopeBuilder`**: Fluent envelope builder
- **`Matrix`**: Matrix operations
- **`OperationType`**: Operation enum (CONTROL, DATA, ACK, ERROR, REQUEST, RESPONSE)
- **`PayloadType`**: Payload type enum
- **`EncodingType`**: Encoding type enum
### Transport
- **`WebSocketClient`**: Async WebSocket client
- **`WebSocketServer`**: Async WebSocket server
- **`HttpClient`**: HTTP/2 client
- **`HttpServer`**: HTTP/2 server
### Peer
- **`WebSocketPeer`**: Multiplexed peer
- **`PeerConnection`**: Peer connection management
- **`PeerInfo`**: Peer metadata
- **`HandshakeProtocol`**: Handshake utilities
### Advanced
- **`EventEmitter`**: Async event system
- **`ServiceDiscovery`**: Service registry
- **`ConnectionPool`**: Connection pooling
- **`Compression`**: Data compression utilities
- **`CompressionType`**: Compression algorithm enum (NONE, GZIP, DEFLATE, LZ4)
- **`CompressionError`**: Compression-specific exceptions
---
## ๐ง Development
```bash
# Clone repository
git clone https://github.com/hivellm/umicp
cd umicp/bindings/python
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install in editable mode with dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Format code
black umicp/ tests/
# Type check
mypy umicp/
# Lint
ruff check umicp/
```
---
## ๐ Roadmap
### Completed โ
- โ
Core envelope system with JSON serialization
- โ
Matrix operations with NumPy (SIMD-accelerated)
- โ
WebSocket transport (client/server) with auto-reconnect
- โ
HTTP/2 transport (client/server)
- โ
Multiplexed peer architecture
- โ
Event system with async handlers
- โ
Service discovery with capability matching
- โ
Connection pooling with health checks
- โ
**Compression (GZIP/DEFLATE)** with automatic size detection โญ v0.1.3
- โ
Full type hints (PEP 561)
- โ
Comprehensive error handling
- โ
133 tests with 97% coverage
### Planned ๐
- ๐ LZ4 compression support
- ๐ TLS/SSL transport security
- ๐ Additional ML framework integrations (TensorFlow, PyTorch)
- ๐ Load balancing strategies
- ๐ Performance benchmarks
- ๐ Additional examples and tutorials
---
## ๐ Part of HiveLLM Ecosystem
UMICP Python bindings integrate with the HiveLLM ecosystem:
- **Vectorizer**: Semantic search with UMICP communication
- **Task Queue**: Workflow orchestration
- **Agent Framework**: Multi-agent systems
- **Voxa**: Voice AI with agent coordination
---
## ๐ License
MIT License - See [LICENSE](LICENSE) file for details.
---
## ๐ค Contributing
Contributions are welcome! Please see [CONTRIBUTING.md](../../CONTRIBUTING.md) for guidelines.
---
**Version**: 0.2.0
**Status**: Production Release
**Released**: October 16, 2025
**Python**: 3.9+
**PyPI**: https://pypi.org/project/umicp-python/
**Repository**: https://github.com/hivellm/umicp
Raw data
{
"_id": null,
"home_page": null,
"name": "umicp-python",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "umicp, communication, matrix, federated-learning, ai, websocket, http2",
"author": null,
"author_email": "HiveLLM AI Collaborative Team <team@hivellm.org>",
"download_url": "https://files.pythonhosted.org/packages/47/45/b0320bdaa47629bab0c23a31ba05ddaeddabccc19a175f020746e4b551fb/umicp_python-0.2.2.tar.gz",
"platform": null,
"description": "# UMICP Python Bindings\n\n[](https://pypi.org/project/umicp-python/)\n[](https://pypi.org/project/umicp-python/)\n[](LICENSE)\n\nHigh-performance Python bindings for the Universal Matrix Inter-Communication Protocol (UMICP).\n\n## \ud83d\ude80 Status: **Production Release** (v0.2.0)\n\n| Component | Status | Description |\n|-----------|--------|-------------|\n| **Envelope System** | \u2705 Complete | Message envelope with JSON serialization |\n| **Matrix Operations** | \u2705 Complete | NumPy-powered matrix operations |\n| **WebSocket Client** | \u2705 Complete | Async WebSocket client |\n| **WebSocket Server** | \u2705 Complete | Async WebSocket server |\n| **HTTP/2 Client** | \u2705 Complete | HTTP/2 client with httpx |\n| **HTTP/2 Server** | \u2705 Complete | HTTP/2 server with aiohttp |\n| **Multiplexed Peer** | \u2705 Complete | Server + client architecture |\n| **Event System** | \u2705 Complete | Async event emitter |\n| **Service Discovery** | \u2705 Complete | Service registration and discovery |\n| **Connection Pooling** | \u2705 Complete | Generic connection pooling |\n| **Compression** | \u2705 Complete | GZIP/DEFLATE compression |\n\n**Current Progress**: 100% Feature Complete \u2705 \n**Python Version**: 3.9+ required \n**Dependencies**: Modern async stack (asyncio, websockets, httpx, aiohttp)\n\n---\n\n## \ud83d\udce6 Installation\n\n```bash\n# Install from PyPI (recommended)\npip install umicp-python\n\n# Or install specific version\npip install umicp-python==0.2.0\n\n# Install from source\ngit clone https://github.com/hivellm/umicp\ncd umicp/bindings/python\npip install -e .\n\n# Install with dev dependencies\npip install -e \".[dev]\"\n```\n\n**PyPI Package**: [https://pypi.org/project/umicp-python/](https://pypi.org/project/umicp-python/)\n\n### Requirements\n\n- Python 3.9+\n- NumPy >= 1.24.0\n- websockets >= 12.0\n- httpx >= 0.27.0\n- aiohttp >= 3.9.0\n\n---\n\n## \ud83c\udfaf Quick Start\n\n### Basic Envelope Usage\n\n```python\nfrom umicp import Envelope, EnvelopeBuilder, OperationType\n\n# Create envelope\nenvelope = EnvelopeBuilder() \\\n .from_id(\"client-001\") \\\n .to_id(\"server-001\") \\\n .operation(OperationType.DATA) \\\n .capability(\"content-type\", \"application/json\") \\\n .build()\n\n# Serialize\njson_str = envelope.to_json()\nprint(f\"Envelope: {json_str}\")\n\n# Deserialize\nreceived = Envelope.from_json(json_str)\nprint(f\"From: {received.from_id}, To: {received.to_id}\")\n```\n\n### Matrix Operations\n\n```python\nimport numpy as np\nfrom umicp import Matrix\n\nmatrix = Matrix()\n\n# Vector operations\nv1 = np.array([1.0, 2.0, 3.0, 4.0], dtype=np.float32)\nv2 = np.array([5.0, 6.0, 7.0, 8.0], dtype=np.float32)\n\n# Dot product\ndot_result = matrix.dot_product(v1, v2)\nprint(f\"Dot product: {dot_result.result}\") # 70.0\n\n# Cosine similarity\nsimilarity = matrix.cosine_similarity(v1, v2)\nprint(f\"Similarity: {similarity.similarity}\")\n\n# Matrix operations\nm1 = np.array([[1, 2], [3, 4]], dtype=np.float32)\nm2 = np.array([[5, 6], [7, 8]], dtype=np.float32)\n\nresult = matrix.multiply(m1, m2)\nprint(f\"Product:\\n{result.result}\")\n```\n\n### WebSocket Client\n\n```python\nimport asyncio\nfrom umicp import WebSocketClient, Envelope, OperationType, EnvelopeBuilder\n\nasync def main():\n # Create client\n client = WebSocketClient(\"ws://localhost:8080\")\n \n # Connect\n await client.connect()\n print(\"Connected!\")\n \n # Send message\n envelope = EnvelopeBuilder() \\\n .from_id(\"python-client\") \\\n .to_id(\"server\") \\\n .operation(OperationType.DATA) \\\n .capability(\"message\", \"Hello from Python!\") \\\n .build()\n \n await client.send(envelope)\n print(\"Message sent!\")\n \n # Receive message\n received = await client.receive()\n if received:\n print(f\"Received: {received}\")\n \n # Disconnect\n await client.disconnect()\n\nasyncio.run(main())\n```\n\n### Multiplexed Peer\n\n```python\nimport asyncio\nfrom umicp import WebSocketPeer, EnvelopeBuilder, OperationType\n\nasync def main():\n # Create peer\n peer = WebSocketPeer(\"peer-001\", port=8080)\n \n # Start server\n await peer.start()\n print(\"Peer server started\")\n \n # Connect to another peer\n await peer.connect_to_peer(\"ws://localhost:8081\", \"peer-002\")\n \n # Send to specific peer\n envelope = EnvelopeBuilder() \\\n .from_id(\"peer-001\") \\\n .to_id(\"peer-002\") \\\n .operation(OperationType.DATA) \\\n .capability(\"message\", \"Hello Peer!\") \\\n .build()\n \n await peer.send_to_peer(\"peer-002\", envelope)\n \n # Broadcast to all peers\n await peer.broadcast(envelope)\n \n # Cleanup\n await peer.disconnect()\n\nasyncio.run(main())\n```\n\n### Service Discovery\n\n```python\nimport asyncio\nfrom umicp import ServiceDiscovery, ServiceInfo\n\nasync def main():\n discovery = ServiceDiscovery()\n await discovery.start()\n \n # Register service\n service = ServiceInfo(\n id=\"my-service-001\",\n name=\"MyService\",\n version=\"1.0.0\",\n capabilities={\"type\": \"processor\", \"language\": \"python\"},\n metadata={\"description\": \"Example service\"}\n )\n await discovery.register(service)\n \n # Find services\n services = await discovery.find_by_capability(\"type\", \"processor\")\n print(f\"Found {len(services)} services\")\n \n # Cleanup\n await discovery.stop()\n\nasyncio.run(main())\n```\n\n### Compression\n\n```python\nfrom umicp import Compression, CompressionType\n\n# Compress data\ndata = b\"Hello, UMICP! \" * 100\ncompressed = Compression.compress(data, CompressionType.GZIP)\nprint(f\"Original: {len(data)} bytes, Compressed: {len(compressed)} bytes\")\n\n# Decompress\ndecompressed = Compression.decompress(compressed, CompressionType.GZIP)\nassert decompressed == data\n\n# Check if compression is beneficial\nif Compression.is_beneficial(len(data), len(compressed)):\n print(\"Compression saved space!\")\n\n# Get compression ratio\nratio = Compression.get_compression_ratio(len(data), len(compressed))\nprint(f\"Compression ratio: {ratio:.2f}x\")\n```\n\n---\n\n## \u2705 Features\n\n### Core Features\n- \u2705 **Envelope System**: Type-safe message envelopes with JSON serialization\n- \u2705 **Builder Pattern**: Fluent API for envelope construction\n- \u2705 **Hash Generation**: SHA-256 envelope integrity\n- \u2705 **Validation**: Comprehensive field validation\n\n### Matrix Operations\n- \u2705 **NumPy Integration**: High-performance operations\n- \u2705 **Vector Operations**: Add, subtract, scale, dot product\n- \u2705 **Matrix Operations**: Add, multiply, transpose, determinant, inverse\n- \u2705 **Similarity**: Cosine similarity, L2 normalization\n- \u2705 **Type Safety**: Full type hints\n\n### Transport Layer\n- \u2705 **WebSocket**: Async client and server with websockets library\n- \u2705 **HTTP/2**: Client (httpx) and server (aiohttp)\n- \u2705 **Auto-reconnect**: Configurable reconnection logic\n- \u2705 **Statistics**: Message and byte counters\n\n### Advanced Features\n- \u2705 **Multiplexed Peer**: Server + multiple clients in one\n- \u2705 **Auto-Handshake**: HELLO \u2192 ACK protocol\n- \u2705 **Event System**: Async event emitter with type-safe events\n- \u2705 **Service Discovery**: Registration, health tracking, capability matching\n- \u2705 **Connection Pooling**: Generic async pool with timeouts\n- \u2705 **Compression**: GZIP/DEFLATE with automatic size detection\n\n### Developer Experience\n- \u2705 **Type Hints**: Full type annotations for IDE support\n- \u2705 **Async/Await**: Modern asyncio patterns\n- \u2705 **Error Handling**: Custom exception hierarchy\n- \u2705 **Documentation**: Comprehensive docstrings\n\n---\n\n## \ud83e\uddea Testing\n\n### Test Suite\n\n**133 comprehensive tests** with **97% code coverage**:\n\n- \u2705 **Unit Tests** (100+): All core modules\n- \u2705 **Integration Tests** (10+): End-to-end workflows\n- \u2705 **Async Tests** (30+): Full asyncio coverage\n- \u2705 **Advanced Tests** (15+): Edge cases and error handling\n- \u2705 **Compression Tests** (18): GZIP/DEFLATE compression\n\n### Test Coverage by Module\n\n| Module | Tests | Coverage |\n|--------|-------|----------|\n| types.py | 12 | 100% |\n| error.py | 7 | 100% |\n| envelope.py | 24 | 94% |\n| envelope_advanced.py | 17 | 95% |\n| matrix.py | 27 | 99% |\n| matrix_advanced.py | 20 | 98% |\n| compression.py | 18 | 100% |\n| events.py | 8 | 98% |\n| discovery.py | 8 | 100% |\n| pool.py | 10 | 90% |\n| peer/* | 8 | 100% |\n| transport/* | 10 | 95% |\n| integration | 7 | N/A |\n| **Total** | **133** | **97%** |\n\n### Running Tests\n\n```bash\n# Install dev dependencies\npip install -e \".[dev]\"\n\n# Run all tests\npytest\n\n# Run with coverage report\npytest --cov=umicp --cov-report=html\npytest --cov=umicp --cov-report=term-missing\n\n# Run specific test file\npytest tests/test_envelope.py\npytest tests/test_matrix.py\npytest tests/test_integration.py\n\n# Run by category\npytest -m \"not integration\" # Unit tests only\npytest -m integration # Integration tests only\n\n# Verbose output\npytest -v\npytest -vv # Extra verbose\n\n# Type checking\nmypy umicp/\n\n# Linting\nruff check umicp/\n\n# Formatting\nblack umicp/\n```\n\nSee [TEST_REPORT.md](TEST_REPORT.md) for detailed test coverage report.\n\n---\n\n## \ud83d\udcda API Reference\n\n### Core Classes\n\n- **`Envelope`**: Message envelope\n- **`EnvelopeBuilder`**: Fluent envelope builder\n- **`Matrix`**: Matrix operations\n- **`OperationType`**: Operation enum (CONTROL, DATA, ACK, ERROR, REQUEST, RESPONSE)\n- **`PayloadType`**: Payload type enum\n- **`EncodingType`**: Encoding type enum\n\n### Transport\n\n- **`WebSocketClient`**: Async WebSocket client\n- **`WebSocketServer`**: Async WebSocket server\n- **`HttpClient`**: HTTP/2 client\n- **`HttpServer`**: HTTP/2 server\n\n### Peer\n\n- **`WebSocketPeer`**: Multiplexed peer\n- **`PeerConnection`**: Peer connection management\n- **`PeerInfo`**: Peer metadata\n- **`HandshakeProtocol`**: Handshake utilities\n\n### Advanced\n\n- **`EventEmitter`**: Async event system\n- **`ServiceDiscovery`**: Service registry\n- **`ConnectionPool`**: Connection pooling\n- **`Compression`**: Data compression utilities\n- **`CompressionType`**: Compression algorithm enum (NONE, GZIP, DEFLATE, LZ4)\n- **`CompressionError`**: Compression-specific exceptions\n\n---\n\n## \ud83d\udd27 Development\n\n```bash\n# Clone repository\ngit clone https://github.com/hivellm/umicp\ncd umicp/bindings/python\n\n# Create virtual environment\npython -m venv venv\nsource venv/bin/activate # On Windows: venv\\Scripts\\activate\n\n# Install in editable mode with dev dependencies\npip install -e \".[dev]\"\n\n# Run tests\npytest\n\n# Format code\nblack umicp/ tests/\n\n# Type check\nmypy umicp/\n\n# Lint\nruff check umicp/\n```\n\n---\n\n## \ud83d\udccb Roadmap\n\n### Completed \u2705\n- \u2705 Core envelope system with JSON serialization\n- \u2705 Matrix operations with NumPy (SIMD-accelerated)\n- \u2705 WebSocket transport (client/server) with auto-reconnect\n- \u2705 HTTP/2 transport (client/server)\n- \u2705 Multiplexed peer architecture\n- \u2705 Event system with async handlers\n- \u2705 Service discovery with capability matching\n- \u2705 Connection pooling with health checks\n- \u2705 **Compression (GZIP/DEFLATE)** with automatic size detection \u2b50 v0.1.3\n- \u2705 Full type hints (PEP 561)\n- \u2705 Comprehensive error handling\n- \u2705 133 tests with 97% coverage\n\n### Planned \ud83d\udccb\n- \ud83d\udccb LZ4 compression support\n- \ud83d\udccb TLS/SSL transport security\n- \ud83d\udccb Additional ML framework integrations (TensorFlow, PyTorch)\n- \ud83d\udccb Load balancing strategies\n- \ud83d\udccb Performance benchmarks\n- \ud83d\udccb Additional examples and tutorials\n\n---\n\n## \ud83d\udd17 Part of HiveLLM Ecosystem\n\nUMICP Python bindings integrate with the HiveLLM ecosystem:\n\n- **Vectorizer**: Semantic search with UMICP communication\n- **Task Queue**: Workflow orchestration\n- **Agent Framework**: Multi-agent systems\n- **Voxa**: Voice AI with agent coordination\n\n---\n\n## \ud83d\udcc4 License\n\nMIT License - See [LICENSE](LICENSE) file for details.\n\n---\n\n## \ud83e\udd1d Contributing\n\nContributions are welcome! Please see [CONTRIBUTING.md](../../CONTRIBUTING.md) for guidelines.\n\n---\n\n**Version**: 0.2.0 \n**Status**: Production Release \n**Released**: October 16, 2025 \n**Python**: 3.9+ \n**PyPI**: https://pypi.org/project/umicp-python/ \n**Repository**: https://github.com/hivellm/umicp\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Python bindings for the Universal Matrix Inter-Communication Protocol (UMICP) with native type support and tool discovery",
"version": "0.2.2",
"project_urls": {
"Documentation": "https://github.com/hivellm/umicp/tree/main/bindings/python/docs",
"Homepage": "https://github.com/hivellm/umicp",
"Issues": "https://github.com/hivellm/umicp/issues",
"Repository": "https://github.com/hivellm/umicp"
},
"split_keywords": [
"umicp",
" communication",
" matrix",
" federated-learning",
" ai",
" websocket",
" http2"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "f4516c337c8c7c923a2388839cfb7e9aa86b630ad4ca4fc00b315212a0346538",
"md5": "eb229df47ca71383b2900ae5988efcd8",
"sha256": "6e6f5aed930facc9c8a2293f2a9713361a7a56163cf3ca1b603b421554378676"
},
"downloads": -1,
"filename": "umicp_python-0.2.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "eb229df47ca71383b2900ae5988efcd8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 28318,
"upload_time": "2025-10-17T23:39:46",
"upload_time_iso_8601": "2025-10-17T23:39:46.973026Z",
"url": "https://files.pythonhosted.org/packages/f4/51/6c337c8c7c923a2388839cfb7e9aa86b630ad4ca4fc00b315212a0346538/umicp_python-0.2.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4745b0320bdaa47629bab0c23a31ba05ddaeddabccc19a175f020746e4b551fb",
"md5": "afc34ab5a2dacf1e08eb5ed51ad8e119",
"sha256": "2d1e921b5f3bb419a17f4605dfd402013d1bf482fc0b10eb783942376b58a892"
},
"downloads": -1,
"filename": "umicp_python-0.2.2.tar.gz",
"has_sig": false,
"md5_digest": "afc34ab5a2dacf1e08eb5ed51ad8e119",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 42557,
"upload_time": "2025-10-17T23:39:48",
"upload_time_iso_8601": "2025-10-17T23:39:48.323282Z",
"url": "https://files.pythonhosted.org/packages/47/45/b0320bdaa47629bab0c23a31ba05ddaeddabccc19a175f020746e4b551fb/umicp_python-0.2.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-17 23:39:48",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "hivellm",
"github_project": "umicp",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "umicp-python"
}