A LUKSO-native research agent proposes one consequential vendor action
The agent may hold scoped controller authority through a Universal Profile, then ask to upgrade a model vendor plan, launch paid compute or release a vendor-side action.
NORNR
LUKSO can prove who holds authority on-chain. NORNR still decides what clears in business context.
NORNR / LUKSO root of trust
Identity adapterThis is the hybrid move: LUKSO proves who can hold authority on-chain through Universal Profiles and scoped controller posture. NORNR still decides whether one vendor action, payout or reviewable off-chain spend clears under mandate, policy decision, counterparty scope, review and audit export.
Where the line sits
The strongest reading is practical: if a LUKSO-native agent can legitimately hold authority on-chain, NORNR should still decide whether this exact off-chain action clears now, for this counterparty, under this mandate.
The agent may hold scoped controller authority through a Universal Profile, then ask to upgrade a model vendor plan, launch paid compute or release a vendor-side action.
The authority source is real, but the business-context release is still a NORNR decision: approved, queued or blocked before execution clears.
The same action should still land in trust manifest, proof packet and finance-readable export instead of disappearing into an on-chain permission check alone.
Decision path
The useful outcome is not “identity verified.” The useful outcome is one defended packet that starts from verified authority and still survives business review.
Verify who can hold authority on-chain and which controller posture is relevant to the agent lane.
Carry mandate, counterparty scope and reason into the same cold decision path NORNR uses elsewhere.
Authority provenance contributes context, but business release still belongs to the NORNR control layer.
The result should be defensible to operators, finance and external reviewers after the action settles.
What the adapter does
The point is not to replace NORNR identity. The point is to let one external authority source resolve into the same NORNR trust and audit model used everywhere else.
The adapter normalizes one LUKSO identity payload into a shape NORNR can bind cleanly without inventing a separate control model.
The adapter does not decide whether an action clears. It only contributes authority context to the governed decision path.
The result is a `nornr.lukso-binding.v1` packet that can travel with the same trust manifest and verification posture as the rest of the NORNR stack.
Code
It is strongest when it stays thin: authority source in, governed NORNR packet out.
from agentpay import LuksoIdentityAdapter, NornrClient
client = NornrClient(base_url="https://nornr.com", api_key="...")
adapter = LuksoIdentityAdapter(client)
identity = adapter.normalize_identity(
{
"universalProfileAddress": "0x1111111111111111111111111111111111111111",
"keyManagerAddress": "0x2222222222222222222222222222222222222222",
"chainId": "42",
"network": "lukso",
"profileMetadata": {
"name": "NORNR Research Worker",
},
"controllers": [
{
"address": "0x3333333333333333333333333333333333333333",
"permissions": ["CALL", "SUPER_CALL"],
}
],
}
)
binding = adapter.build_binding(
identity,
mandate={"scopeLabel": "research procurement lane"},
policy_decision={"policyId": "research-safe", "decisionMode": "review_required"},
counterparty_scope={"allowedCounterparties": ["openai"], "reviewRequiredAboveUsd": 25},
)
print(binding.to_dict())
Why not identity backbone
The right reading is not “NORNR now depends on LUKSO.” The right reading is “NORNR can verify one more identity root without giving up its own control model.”
Use it when the agent is born in a LUKSO-native environment or when on-chain authority posture genuinely matters to the lane.
Mandate, review, counterparty fit and audit export still belong to NORNR if the product is going to remain useful across Stripe, browser, MCP and off-chain spend surfaces.
The adapter is strongest when another party asks who can hold authority on-chain and you still need one business-context control path on top.