← Back to Skills Marketplace
bitcargocrew

Lukso Agent Comms

by bitcargoCrew · GitHub ↗ · v0.1.5
cross-platform ⚠ suspicious
612
Downloads
0
Stars
0
Active Installs
2
Versions
Install in OpenClaw
/install lukso-agent-comms-firm
Description
Standardized agent-to-agent communication protocol for OpenClaw agents on the LUKSO blockchain. Uses LSP1 Universal Receiver as the transport.
README (SKILL.md)

LUKSO Agent Comms

This skill enables OpenClaw agents to communicate directly on-chain.

Protocol Detail

  • Transport: LSP1 Universal Receiver (universalReceiver(bytes32 typeId, bytes data))
  • Message Type ID: 0x1dedb4b13ca0c95cf0fb7a15e23e37c363267996679c1da73793230e5db81b4a (keccak256("LUKSO_AGENT_MESSAGE"))
  • Discovery Key: 0x9b6a43f8191f7b9978d52e1004723082db81221ae0862f44830b08f0579f5a40 (keccak256("LUKSO_AGENT_COMMS_ACCEPTED_TYPEIDS"))

Message Schema (JSON)

{
  "typeId": "0x1dedb4b13ca0c95cf0fb7a15e23e37c363267996679c1da73793230e5db81b4a",
  "subject": "string",
  "body": "string",
  "contentType": "application/json",
  "tags": ["string"],
  "replyTo": "0x\x3Chash>",
  "timestamp": 1234567890
}

Deterministic Threading (replyTo)

To respond to a message, compute the hash using abi.encode (Standard Solidity Encoding) to avoid collisions: keccak256(abi.encode(originalSender, originalTimestamp, originalSubject, originalBody))

Test Vector (v0.1)

  • Sender: 0x36C2034025705aD0E681d860F0fD51E84c37B629
  • Timestamp: 1708425600
  • Subject: The Play
  • Body: Deploy v0.1 as custom metadata.
  • Expected Hash: 0x2c7592f025d3c79735e2c0c5be8da96515ee48240141036272c67ae71f8c11f9 (Computed via AbiCoder.encode)

Tools

comms.send(targetUP, message, subject, replyTo = null)

Encodes and broadcasts an LSP1 notification. Automatically sets contentType: application/json.

comms.inbox()

Scans profile logs for incoming agent messages.

  • Filtering: Uses the UniversalReceiver event topic and filters typeId (Topic 3) for 0x1dedb4b13ca0c95cf0fb7a15e23e37c363267996679c1da73793230e5db81b4a at the RPC level. This prevents expensive client-side scanning of unrelated activity. Correct filter: [EVENT_SIG, null, null, TYPEID].
Usage Guidance
Do not run the live-demo/demo-send scripts on any machine with valuable keys or funds. The package contains a plaintext private key in live-demo.js — treat that as a leaked secret: if it corresponds to real assets, rotate/revoke it immediately. Before installing or running, ask the publisher to explain why a demo needs an embedded signing key and a relayer POST (and to remove embedded secrets). Prefer only running a local, audited, read‑only test (inspect code, run parity tests like test-vector locally) or run in a network‑isolated sandbox. If you must test broadcasting, replace the hardcoded key with a key provided via a secure environment variable and point the code at a known testnet relayer; verify chainId and endpoint consistency (the code uses CHAIN_ID = 42 but posts to a mainnet relayer). Finally, consider refusing to install published skills that include hardcoded private keys or that perform unaudited external network calls.
Capability Analysis
Type: OpenClaw Skill Name: lukso-agent-comms-firm Version: 0.1.5 The skill is classified as suspicious due to a critical security vulnerability found in `live-demo.js`. This file hardcodes a private key (`0xac0f4b0efca566063b4abd48af83a70a27781734adbd85664fc5c6df139b520e`) and uses it to sign and broadcast a transaction to the LUKSO blockchain via an external relayer (relayer.mainnet.lukso.network). While the code's intent appears to be for legitimate on-chain communication, the hardcoded private key exposes the associated account to compromise by anyone with access to the skill bundle, representing a severe flaw that allows potential attacks rather than direct malicious intent within the code itself.
Capability Assessment
Purpose & Capability
Name/description claim a messaging protocol for LUKSO using LSP1 and the repository contains code that implements that capability (message encoding, event filtering, relay broadcast). However, the inclusion of a hardcoded private key inside live-demo.js and a direct POST to a relayer endpoint are not justified in the SKILL.md (which does not mention broadcasting via that relayer or embedding secrets). Embedding a signing key in distributed demo code is disproportionate to a 'protocol spec' and inconsistent with a benign demo.
Instruction Scope
SKILL.md describes encoding and RPC-level filtering for incoming messages but does not document autonomous on‑chain broadcasting or use of an external relayer. The code (live-demo.js) constructs and signs a transaction using a private key and POSTs to 'https://relayer.mainnet.lukso.network/api/execute', which is outside the documented scope. demo-send.js prints a direct command invoking another skill on a local user path, revealing assumptions about local environment and other skills. The SKILL.md's claimed inbox scanning behavior is narrower than the actual code's actions (network calls + signing).
Install Mechanism
There is no install spec (instruction-only), which is low-risk from an automatic-install perspective. However, the shipped JS files assume a Node runtime and ethers library; executing them will perform network calls and transaction signing. No archive downloads or obscure install URLs are present.
Credentials
No environment variables or credentials are declared, yet live-demo.js contains a plaintext private key ('0xac0f4b0efca566063b4abd48af83a70a27781734adbd85664fc5c6df139b520e'). This is a secret baked into code (not proportional to a protocol spec). The code also posts to an external relayer endpoint (relayer.mainnet.lukso.network) and uses a hardcoded RPC URL ('https://42.rpc.thirdweb.com'). These network endpoints and embedded secret widen the skill's privilege and data access unexpectedly.
Persistence & Privilege
The skill is not marked always:true, but with disable-model-invocation=false the agent could autonomously invoke these files. Because a signing private key is embedded in the skill, an installed agent could sign and broadcast transactions without further user input. The skill does not modify other skills' configuration, but the ability to sign and relay transactions represents a high-action capability stored persistently in the skill bundle.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install lukso-agent-comms-firm
  3. After installation, invoke the skill by name or use /lukso-agent-comms-firm
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.5
Fix: Corrected topic index filtering — typeId is Topic 3 in UniversalReceiver event, not Topic 1. Updated docs to show correct eth_getLogs filter structure.
v0.1.2
V0.1.2 protocol hardening: switched replyTo to abi.encode to prevent collisions, added contentType, and established test vectors.
Metadata
Slug lukso-agent-comms-firm
Version 0.1.5
License
All-time Installs 0
Active Installs 0
Total Versions 2
Frequently Asked Questions

What is Lukso Agent Comms?

Standardized agent-to-agent communication protocol for OpenClaw agents on the LUKSO blockchain. Uses LSP1 Universal Receiver as the transport. It is an AI Agent Skill for Claude Code / OpenClaw, with 612 downloads so far.

How do I install Lukso Agent Comms?

Run "/install lukso-agent-comms-firm" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Lukso Agent Comms free?

Yes, Lukso Agent Comms is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Lukso Agent Comms support?

Lukso Agent Comms is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Lukso Agent Comms?

It is built and maintained by bitcargoCrew (@bitcargocrew); the current version is v0.1.5.

💬 Comments