Skip to main content

Halyn — NRP control plane with domain-scoped authorization.

Project description

Halyn

Halyn

NRP Control Plane

Connect any device to any LLM through NRP.

NRP control plane with domain-scoped authorization.

License: MIT Python 3.10+ Tests NRP


you:    "How's the factory?"

halyn:  All 12 arms running. Arm-7 joint 3 is 12°C above normal.
        Soil moisture in the north field dropped to 18%.
        3 urgent emails. Hetzner invoice due tomorrow.
        Want me to handle any of these?

What It Does

Halyn connects AI to:

Domain Examples
Servers Deploy, monitor, fix, scale
Robots Move, pick, navigate, patrol
Sensors Temperature, humidity, soil, air
APIs Stripe, GitHub, Slack — any REST/GraphQL
Factories PLCs, SCADA, OPC-UA, Modbus
Smart Home Lights, climate, security
Vehicles Navigate, charge, maintain
Drones Survey, photograph, deliver

One protocol. One conversation. Everything.

Quick Start

pip install halyn

halyn scan       # discover your world
halyn connect    # plug your LLM
halyn serve      # start running

Any LLM

# halyn.yml
llm:
  provider: claude        # or: openai, ollama, huggingface, vllm
  model: claude-sonnet-4-20250514

Halyn doesn't lock you in. Claude today. Local Ollama tomorrow. Same nodes. Same drivers. Same safety.

Human Always in Control

5 autonomy levels. Per domain. Per node. Per hour.

Level Name Behavior
0 Manual AI proposes. You approve every action.
1 Supervised AI reads alone. Asks before acting.
2 Guided Safe actions alone. Dangerous = confirm.
3 Autonomous Does everything. You can interrupt anytime.
4 Full Auto Handles routine. Reports daily.
# halyn.yml
domains:
  physical:
    level: 1                              # supervised
    nodes: [robot/*, drone/*]
    confirm: [move, pick, deploy]

  financial:
    level: 0                              # manual — confirm everything
    nodes: [finance/*, bank/*]
    blocked: [delete]

  monitoring:
    level: 4                              # full auto
    nodes: [sensor/*, monitor/*]

  infrastructure:
    level: 2                              # guided
    nodes: [server/*, cloud/*]
    confirm: [restart, deploy, delete]

Your banking requires approval for every action. Your sensors run on autopilot. Your servers auto-handle safe ops but confirm deploys. You set the rails once. The AI rides them.

Security

Not optional. Not a feature. The foundation.

Layer What It Does
Auth API key with timing-safe HMAC
Autonomy 5 levels per domain, rate limiting
Shield Per-node safety rules from NRP
Sanitizer Injection, traversal, overflow protection
Audit SHA-256 hash-chain on disk, tamper-detectable
Watchdog Health monitoring, failsafe on crash
Redaction No internal paths or secrets in errors

If Halyn crashes, nodes enter safe state automatically.

The audit trail is a hash chain. Tamper with one entry and the chain breaks. Every action records: who asked, which AI decided, what reasoning, what result, which domain policy authorized it.

Architecture

Any LLM
  │  MCP
  ▼
Halyn Control Plane
  │  ┌─ Autonomy (5 levels)
  │  ├─ Audit (SHA-256 chain)
  │  ├─ Watchdog (failsafe)
  │  ├─ Auth + Sanitizer
  │  └─ Memory (SQLite + FTS5)
  │
  │  NRP (Node Reach Protocol)
  │
  ├──→ SSH (servers)
  ├──→ Docker (containers)
  ├──→ Chrome CDP (browsers)
  ├──→ ROS2 (robots)
  ├──→ Unitree (humanoids)
  ├──→ MQTT (IoT sensors)
  ├──→ OPC-UA (industrial PLCs)
  ├──→ HTTP Auto (any API — auto-introspected)
  └──→ Your driver (~100 lines)

HTTP Auto-Introspection

Point Halyn at any API. It reads the OpenAPI/GraphQL spec. Generates the manifest. Creates the tools. Automatically.

nodes:
  - id: nrp://cloud/api/stripe
    driver: http_auto
    base_url: https://api.stripe.com/v1
    auth_token: Bearer ${STRIPE_API_KEY}

  - id: nrp://cloud/api/github
    driver: http_auto
    base_url: https://api.github.com
    auth_token: Bearer ${GITHUB_TOKEN}

Any API in the world becomes an NRP node. Zero custom code.

Docker

docker compose up -d
# docker-compose.yml included — non-root, healthcheck, resource limits

Stats

Metric Value
Source lines ~5,200
Drivers 9
LLM connectors 5 (Claude, GPT, Ollama, HF, vLLM)
Tests 48 passed, 0 failed
Dependencies 1 (aiohttp)
Docker image ~150MB
MCP native Yes (Claude.ai direct)
Tested on Real hardware across 3 countries

Built on NRP

Halyn implements the Node Reach Protocol — the universal standard for AI-to-world control. Any NRP-compatible device works with Halyn automatically.

Contributing

See CONTRIBUTING.md.

Security

See SECURITY.md. Report vulnerabilities to Elmadani.SALKA@proton.me.

License

MIT

Author

Elmadani SALKA

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

halyn-0.2.1.tar.gz (68.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

halyn-0.2.1-py3-none-any.whl (75.5 kB view details)

Uploaded Python 3

File details

Details for the file halyn-0.2.1.tar.gz.

File metadata

  • Download URL: halyn-0.2.1.tar.gz
  • Upload date:
  • Size: 68.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for halyn-0.2.1.tar.gz
Algorithm Hash digest
SHA256 dadfc34ef26ab3615ce4e1fe025c2fe906a52f059d2b9c97f5c86eff1ad9c575
MD5 4b3e1832eaa521d331ec80f8b58e31a4
BLAKE2b-256 2c3c5313f03802f7e452873bbeab0d06f4c021e1defcf5efb8ae392b635b4574

See more details on using hashes here.

File details

Details for the file halyn-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: halyn-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 75.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for halyn-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6ec94e2965b11e350a47d84732e3857c7060e7be531f64df24ef65540d7ef8d4
MD5 a8789ea19b2df4d9e9797af6c8f29dc5
BLAKE2b-256 3a867f99c3d65a769448ee16037f7a6aebd8eebd6dc6cf4b015bb5ca93e45b37

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page