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

Uploaded Python 3

File details

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

File metadata

  • Download URL: halyn-0.2.0.tar.gz
  • Upload date:
  • Size: 68.1 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.0.tar.gz
Algorithm Hash digest
SHA256 9a084ca54f9daac0c35a03f7d1db1cbb25a403dc8314dab1b274690342f3e6fc
MD5 d94f8bdc20745f2ce7a622a5fbd23823
BLAKE2b-256 535820077b513125053c723b264b4cc4d75e71cf7a3abf211dd8923ccdf8e352

See more details on using hashes here.

File details

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

File metadata

  • Download URL: halyn-0.2.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bb7c0a3edaef1dd4dc9cc1b45095f29824d0192168abc3fc39fa11ec35bf7bfc
MD5 c8660cfa64ce149229fca4923785de92
BLAKE2b-256 73361fcc96f5c1eeeca91bf57a23443356906a0ffd04fca933f412c58099b1f8

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