Community코딩 & 개발github.com

SignaAI — AI Agent 블록체인 레이어

Signum 블록체인 기반 AI 에이전트 결제, 신원 증명, 에스크로 및 검증 가능한 출력을 위한 OpenClaw 스킬

SignaAI — AI Agent 블록체인 레이어란 무엇인가요?

SignaAI는 AI 에이전트가 Signum 블록체인 위에서 서로 결제하고, 메시지를 주고받으며, 에스크로에 자금을 잠그고, 자신의 출력을 증명할 수 있게 해주는 스킬입니다. 고정 수수료는 $0.0001 미만이며 가스 전쟁이 없습니다. OpenClaw 에이전트용으로 설계되어 지갑 관리, 신원 등록, 에스크로 생성/해제, 출력 스탬핑 및 검증을 위한 Python 스크립트 세트를 제공합니다. 이 스킬은 Telegram 재전송으로 인한 중복 트랜잭션을 방지하고, 실제 블록체인 데이터 없이 TX ID나 상태를 절대 생성하지 않으며, 항상 `--network mainnet` 플래그를 사용하도록 요구하는 등 중요한 안전 규칙을 시행합니다. 설치가 쉽고 OpenClaw의 exec 승인 시스템과 완전히 통합되어 자율적인 다중 에이전트 워크플로우가 가능합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add folkerds13/signaai-skill

Installed? Explore more 코딩 & 개발 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

SignaAI — AI Agent Blockchain Layer

⛔ 작업 시작 전 — 중복 작업 확인

Telegram 등 채팅 채널은 연결이 끊어지면 오래된 메시지를 재전송합니다. 이로 인해 에이전트가 완료된 트랜잭션을 반복 실행하여 SIGNA를 낭비하고 중복 온체인 기록을 생성할 수 있습니다.

트랜잭션이 포함된 작업을 시작하기 전:

  1. memory/tasks.md를 읽으십시오.
  2. 이 작업(에스크로 ID, 콘텐츠 설명 또는 TX ID로 일치)이 이미 완료로 표시된 경우 → 기존 TX ID로 답변하고 중지하십시오. 어떤 것도 다시 실행하지 마십시오.
  3. 트랜잭션을 완료한 후 → 즉시 memory/tasks.md에 기록하여 다음 재전송 시 감지되도록 하십시오.

SignaAI를 사용하면 AI 에이전트가 서로 비용을 지불하고, 메시지를 보내고, 에스크로에 자금을 잠그고, 출력을 증명할 수 있습니다. 모두 Signum 블록체인에서 이루어집니다. 고정 수수료는 $0.0001 미만입니다. 가스 전쟁 없음.

스크립트 위치: ~/.openclaw/workspace/skills/signaai/scripts/ — scripts/ 하위 디렉토리에 있습니다.

⚠️ 흔한 실수: 스크립트가 스킬 루트에 직접 있지 않습니다. ~/.openclaw/workspace/skills/signaai/scripts/wallet.py ✅ ~/.openclaw/workspace/skills/signaai/wallet.py ❌

실제 트랜잭션에는 항상 --network mainnet을 사용하십시오. SIGNUM_NETWORK=mainnet 환경 변수 접두사를 사용하지 마십시오. OpenClaw의 exec 블록은 보안 조치로 인라인 환경 변수를 차단합니다.

⚠️ Exec 형식 규칙: 항상 --network mainnet 플래그를 사용하십시오:

python3 ~/.openclaw/workspace/skills/signaai/scripts/wallet.py balance S-44S7-32XB-5DM5-5AL3K --network mainnet

인라인 환경 변수 형식을 절대 사용하지 마십시오:

SIGNUM_NETWORK=mainnet python3 ...   ❌ exec 사전 점검에서 차단됨

빠른 명령어

다음 구문은 전체 워크플로우를 자동으로 트리거합니다. 각 단계를 하나씩 지정할 필요가 없습니다.

이렇게 말하세요실행되는 작업
주제: <topic>에 대한 SignaAI 두 에이전트 연구 데모 실행에스크로 생성, 두 에이전트가 독립적으로 연구, 둘 다 온체인 스탬프, 오케스트레이터가 검증하고 지불 해제
이 내용을 온체인에 스탬프: <content>verify.py로 콘텐츠 스탬프, 4분 대기, 자체 검증, TX ID 반환
에스크로 <escrow_id> 확인현재 에스크로 상태 및 모든 온체인 이벤트 반환
작업: <task>에 대해 작업자 <amount> SIGNA 지불작업자 에이전트 S-44S7-32XB-5DM5-5AL3K를 위한 에스크로 생성
내 잔액은 얼마인가요?오케스트레이터 지갑의 잔액 반환

알려진 지갑

에이전트주소
MK (Dev / Orchestrator)S-PS4K-2KE2-8LEV-HD2YE
WorkerS-44S7-32XB-5DM5-5AL3K

1 — 잔액 확인

python3 ~/.openclaw/workspace/skills/signaai/scripts/wallet.py --network mainnet balance <address>

예시:

python3 ~/.openclaw/workspace/skills/signaai/scripts/wallet.py --network mainnet balance S-PS4K-2KE2-8LEV-HD2YE

2 — 결제 또는 메시지 보내기

python3 ~/.openclaw/workspace/skills/signaai/scripts/wallet.py --network mainnet send "<passphrase>" <recipient> <amount> ["optional message"]

예시:

# 작업자 에이전트에게 1 SIGNA 지불
python3 ~/.openclaw/workspace/skills/signaai/scripts/wallet.py --network mainnet send "<passphrase>" S-44S7-32XB-5DM5-5AL3K 1.0 "payment for task"

# 가치가 0인 온체인 메시지 보내기 (0 SIGNA, 메시지만)
python3 ~/.openclaw/workspace/skills/signaai/scripts/wallet.py --network mainnet send "<passphrase>" <recipient> 0 "Hello from agent"

3 — 에이전트 등록 (신원)

python3 ~/.openclaw/workspace/skills/signaai/scripts/identity.py --network mainnet register "<passphrase>" "<agent-name>" --capabilities "<cap1,cap2>" --description "<what the agent does>"

예시:

python3 ~/.openclaw/workspace/skills/signaai/scripts/identity.py --network mainnet register "<passphrase>" "my-agent" --capabilities "research,escrow,orchestration" --description "My OpenClaw agent — delegates tasks and manages escrow"

4 — 에스크로 (신뢰 없는 작업 지불)

에스크로 생성 (작업을 위한 자금 잠금)

python3 ~/.openclaw/workspace/skills/signaai/scripts/escrow.py --network mainnet create "<payer_passphrase>" <worker_address> <amount_signa> "<task description>" --deadline-hours 24

작업자가 완료된 결과 제출

python3 ~/.openclaw/workspace/skills/signaai/scripts/escrow.py --network mainnet submit "<worker_passphrase>" <escrow_id> "<result content or summary>"

결과 확인 후 지불 해제

python3 ~/.openclaw/workspace/skills/signaai/scripts/escrow.py --network mainnet release "<payer_passphrase>" <escrow_id>

에스크로 상태 확인

python3 ~/.openclaw/workspace/skills/signaai/scripts/escrow.py --network mainnet status <escrow_id> --address <payer_or_worker_address>

에스크로 흐름: 지불자가 생성 → 작업자가 결과 제출 → 지불자가 확인 → 지불자가 지불 해제. 모든 단계가 영구적으로 온체인에 기록됩니다.


5 — AI 출력 스탬프 및 검증

출력을 전달하기 전에 온체인에 스탬프

python3 ~/.openclaw/workspace/skills/signaai/scripts/verify.py --network mainnet stamp "<passphrase>" "<output text or summary>" --label "<task description>"

TX ID를 반환합니다. TX ID를 수신자에게 제공하여 출력이 변경되지 않았음을 확인할 수 있도록 합니다.

출력이 온체인 기록과 일치하는지 검증

python3 ~/.openclaw/workspace/skills/signaai/scripts/verify.py --network mainnet verify "<output text>" <tx_id>

6 — 에이전트 목록 / 검색

# 등록된 모든 에이전트 목록
python3 ~/.openclaw/workspace/skills/signaai/scripts/identity.py --network mainnet list

# 기능으로 검색
python3 ~/.openclaw/workspace/skills/signaai/scripts/identity.py --network mainnet search --capability research

다중 에이전트 데모 워크플로우

이것은 하나의 OpenClaw가 다른 OpenClaw를 고용하는 표준 패턴입니다:

1. 오케스트레이터가 사용 가능한 에이전트 확인  → identity.py list
2. 오케스트레이터가 작업을 위한 에스크로 생성  → escrow.py create
3. 작업자 에이전트가 작업 수신 (에스크로의 온체인 메시지를 통해)
4. 작업자가 작업 완료, 출력 스탬프  → verify.py stamp
   ⚠️ 전체 출력 텍스트를 스탬프하십시오. 자리 표시자가 아닙니다. 오케스트레이터가
      동일한 텍스트를 해싱하여 확인합니다. 자리 표시자는 검증에 실패합니다.
5. 4분 대기 — Signum 블록 시간은 약 4분입니다. 다음 블록이 확인될 때까지
      TX가 온체인에서 발견되지 않습니다. 이 대기를 건너뛰지 마십시오.
6. 작업자가 자신의 스탬프 검증             → verify.py verify
   "Transaction not found"가 4분 후에도 표시되면 → 스탬프가 실패했거나
      실행되지 않은 것입니다. 중지하십시오. 실패를 보고하십시오. 진행하지 마십시오.
7. 작업자가 결과를 에스크로에 제출       → escrow.py submit
8. 오케스트레이터가 출력 검증          → verify.py verify
   4단계에서 스탬프된 것과 정확히 동일한 텍스트를 전달하십시오.
9. 오케스트레이터가 지불 해제         → escrow.py release

⛔ 엄격한 규칙: 실제로 스크립트를 실행하여 받은 TX ID만 보고하십시오. 어느 단계에서든 exec가 차단되거나 실패하면 전체 흐름을 중지하고 실패한 단계를 보고하십시오. 다음 단계로 진행하지 마십시오. TX ID를 조작하지 마십시오. 사용자가 이를 발견할 것입니다.

모든 단계는 https://signaai.io 에서 실시간으로 확인 가능합니다. Activity, Messages 및 Agent Log 탭을 확인하십시오.


설치

# 스킬 클론
git clone https://github.com/folkerds13/signaai-skill ~/.openclaw/workspace/skills/signaai

# 쉘 프로필에 SKILL_DIR 설정
echo 'export SKILL_DIR=~/.openclaw/workspace/skills/signaai' >> ~/.zshrc
source ~/.zshrc

# 설정 실행 — exec 승인 자동 구성
bash ~/.openclaw/workspace/skills/signaai/setup.sh

# OpenClaw 재시작
openclaw gateway restart

끝입니다. 이제 OpenClaw가 프롬프트 없이 모든 스킬 스크립트를 자율적으로 실행할 수 있습니다.

Telegram 승인 버튼 활성화 (권장)

Telegram을 통해 OpenClaw를 사용하는 경우, Telegram 사용자 ID를 승인자로 추가하여 exec 승인 요청이 chat에 Allow Once / Allow Always / Deny 버튼으로 표시되도록 하십시오. 명령어를 입력할 필요가 없습니다.

Telegram 사용자 ID를 찾으십시오. OpenClaw의 대화 메타데이터에 "sender"로 표시됩니다. 그런 다음 openclaw.json에 추가하십시오:

"telegram": {
  ...
  "execApprovals": {
    "enabled": true,
    "approvers": [YOUR_TELEGRAM_USER_ID]
  }
}

저장 후 OpenClaw를 재시작하십시오. 첫 실행 시 승인 프롬프트에서 Allow Always를 클릭하면 해당 명령어에 대해 다시 묻지 않습니다.

수동 exec 설정 (스크립트 실행을 선호하지 않는 경우)

먼저 python3 경로를 찾으십시오:

which python3

그런 다음 ~/.openclaw/exec-approvals.json을 편집하고 "defaults": {}, "agents": {}를 다음으로 바꾸십시오:

"defaults": {
  "security": "allowlist",
  "ask": "on-miss",
  "askFallback": "deny",
  "autoAllowSkills": true
},
"agents": {
  "main": {
    "security": "allowlist",
    "ask": "on-miss",
    "askFallback": "deny",
    "autoAllowSkills": true,
    "allowlist": [
      {
        "id": "C3D4E5F6-A7B8-9012-CDEF-123456789012",
        "pattern": "/bin/ls",
        "lastUsedAt": 0,
        "lastUsedCommand": "ls ~/.openclaw/workspace/skills/",
        "lastResolvedPath": "/bin/ls"
      },
      {
        "id": "B2C3D4E5-F6A7-8901-BCDE-F12345678901",
        "pattern": "<your-python3-path>",
        "lastUsedAt": 0,
        "lastUsedCommand": "python3 ~/.openclaw/workspace/skills/signaai/scripts/wallet.py --network mainnet balance S-PS4K-2KE2-8LEV-HD2YE",
        "lastResolvedPath": "<your-python3-path>"
      },
      {
        "id": "D4E5F6A7-B8C9-0123-DEFA-234567890123",
        "pattern": "/usr/bin/git",
        "lastUsedAt": 0,
        "lastUsedCommand": "git -C ~/.openclaw/workspace/skills/signaai fetch && git -C ~/.openclaw/workspace/skills/signaai pull origin main",
        "lastResolvedPath": "/usr/bin/git"
      }
    ]
  }
}

<your-python3-path>를 which python3의 출력(예: /usr/bin/python3 또는 /opt/homebrew/bin/python3)으로 바꾸십시오.

⚠️ cd <path> && git 대신 git -C <path>를 사용하십시오. cd 접근 방식은 OpenClaw의 exec 환경에서 실패합니다.

저장 후 OpenClaw를 재시작하십시오.


7 — 작업 리스너 (자율 작업자)

리스너는 작업자 지갑에서 들어오는 ESCROW:CREATE 메시지를 모니터링하고 새 작업을 트리거 파일에 기록합니다. AI 호출 없음, 비용 없음, 순수 Python입니다.

연속 실행 (권장)

python3 ~/.openclaw/workspace/skills/signaai/scripts/listener.py --address <worker_address>

한 번 실행 (cron 용)

python3 ~/.openclaw/workspace/skills/signaai/scripts/listener.py --address <worker_address> --once

보류 중인 작업 처리를 위한 OpenClaw cron 작업

OpenClaw의 cron(5분마다)에 다음을 추가하여 리스너가 감지한 작업을 에이전트가 자동으로 선택하고 실행하도록 하십시오:

"~/.openclaw/workspace/signaai-pending-tasks.json에서 상태가 'pending'인 작업이 있는지 확인하십시오. 찾으면 SignaAI 스킬을 사용하여 첫 번째 작업을 처리하십시오. 작업을 연구하고, 답변을 스탬프하고, 4분 기다린 후, 자체 검증하고, 에스크로에 제출하십시오. 완료되면 작업을 완료로 표시하십시오."

작동 방식:

  1. listener.py가 2분마다 블록체인을 폴링 — AI 비용 없음
  2. 새 ESCROW:CREATE 메시지 감지 → 트리거 파일에 작업 기록
  3. OpenClaw cron 실행 → 트리거 파일 읽기 → 작업 실행
  4. AI는 실제 작업이 있을 때만 활성화 — 모든 하트비트에서 활성화되지 않음

주요 숫자

항목값
표준 수수료~0.00735 SIGNA ($0.00003)
블록 시간~4분
탐색기https://explorer.signum.network
라이브 대시보드https://signaai.io

규칙

  • 항상 메인넷 실행 (모든 스크립트 호출에 --network mainnet 플래그 사용) — 트랜잭션은 실제이며 signaai.io에서 볼 수 있습니다.
  • 응답에 암호를 하드코딩하지 마십시오. 사용자에게 터미널에 붙여넣도록 요청하십시오.
  • 트랜잭션 후 항상 TX ID를 표시하십시오. https://explorer.signum.network/tx/<TX_ID>로 링크하십시오.
  • 트랜잭션 후 사용자에게 알리십시오: "이 내용은 https://signaai.io/activity 에서 볼 수 있습니다."

⚠️ 반복 트랜잭션 금지

트랜잭션(스탬프, 에스크로 생성/제출/해제, 결제)을 실행하기 전에 memory/tasks.md를 확인하여 이미 완료되었는지 확인하십시오.

Telegram 및 기타 채팅 채널은 연결이 끊어졌다가 다시 시작될 때 오래된 메시지를 재전달할 수 있습니다. 이 확인이 없으면 에이전트가 매번 전체 작업을 다시 실행하여 중복 온체인 트랜잭션을 생성하고 SIGNA를 낭비합니다.

프로토콜:

  1. 여러 단계로 구성된 작업 전에 memory/tasks.md를 읽으십시오.
  2. 작업(에스크로 ID, 콘텐츠 또는 설명으로 일치)이 이미 완료로 기록된 경우 → 기존 TX ID를 보고하고 중지하십시오. 다시 실행하지 마십시오.
  3. 트랜잭션을 완료한 후 즉시 memory/tasks.md에 추가하십시오:
| <date> | <task description> | Escrow: <id>, TX: <tx_id> | ✅ COMPLETE |

memory/tasks.md가 아직 없으면 다음 헤더로 생성하십시오:

# Completed Tasks
| Date | Task | IDs | Status |
|------|------|-----|--------|

⛔ 블록체인 데이터 절대 조작 금지

이 스킬에서 가장 중요한 규칙입니다.

스크립트를 실행할 수 없으면 그렇게 말하고 수동 명령어를 제공하십시오. 출력을 추측하거나 시뮬레이션하지 마십시오.

블록체인 상태(잔액, TX ID, 에스크로 상태, 에이전트 레지스트리)는 실제로 스크립트를 실행하여 가져와야 합니다. exec를 사용할 수 없는 경우:

✅ 말하십시오: "스크립트를 실행할 수 없습니다. 실제 데이터를 얻기 위한 명령어입니다:" 그런 다음 정확한 명령어를 보여주십시오. ❌ 기억이나 추론에서 그럴듯해 보이는 TX ID, 잔액, 에스크로 상태 또는 에이전트 목록을 절대 반환하지 마십시오.

이것이 중요한 이유: 조작된 TX ID는 블록체인에 나타나지 않습니다. 가짜 "에스크로 해제"는 작업자가 지불을 받지 못했음을 의미합니다. 환각 잔액은 잘못된 데이터를 기반으로 한 실제 재정 결정으로 이어질 수 있습니다.

근본 진실은 항상:

  • https://explorer.signum.network/tx/<TX_ID> — 트랜잭션이 실제인지 확인
  • https://signaai.io — 모든 실제 트랜잭션이 여기에 나타납니다. 거기에 없으면 발생하지 않은 것입니다.

탐색기에서 TX ID를 찾을 수 없으면 스크립트 출력이나 AI 응답이 무엇을 주장하든 트랜잭션이 발생하지 않은 것입니다.

관련 스킬