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 PyPI 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.3.tar.gz (67.9 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.3-py3-none-any.whl (75.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: halyn-0.2.3.tar.gz
  • Upload date:
  • Size: 67.9 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.3.tar.gz
Algorithm Hash digest
SHA256 30ed2adfa9d9c642e792045689feeb5940343f17c5d34636d64cfbc4baf9d185
MD5 7bacc804d886ad7dc4776bde86e91bb4
BLAKE2b-256 dde3e1fb47b79e78525b07b2d949a402ad4017b6311810b3f76441a3933b1e0c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: halyn-0.2.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 dfa4eb0b5f57986fe5b13ff9493c8c26907a208cd4d78e1405ac5628c1a12d55
MD5 13f74bda2203911c80d4c9d3491c7c0f
BLAKE2b-256 ac9598d068b2ff464647dc36d94bb404d5e92dcfea62d8497772a9e042c8e7f5

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