Noya Agent: AI 加密货币交易与预测市场 - Openclaw Skills

作者:互联网

2026-03-27

AI教程

什么是 Noya Agent?

Noya Agent 是一个先进的多智能体 AI 框架,旨在简化去中心化金融 (DeFi) 运营和预测市场参与。通过与 Openclaw Skills 集成,开发人员可以与各种区块链协议进行交互,执行代币交换、跨链桥接和 DCA 策略,而无需担心 Gas 费用,因为所有交易都是 Gas 赞助的。系统优先考虑安全性和用户控制,任何链上操作都需要显式确认。

Noya Agent 专为处理复杂的市场数据而构建,提供深度代币分析和跨多链的实时投资组合跟踪。它还促进了在 Polymarket 和 Rain 等平台上的高级交易,使其成为 Openclaw Skills 生态系统内自动化加密研究和执行的重要工具。

下载入口:https://github.com/openclaw/skills/tree/main/skills/ali-hajeh/noya-agent

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install noya-agent

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 noya-agent。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

Noya Agent 应用场景

  • 在多个网络上执行免 Gas 费的代币交换和跨链桥接。
  • 监控实时投资组合余额和复杂的 DeFi 头寸。
  • 通过自动化智能体参与 Polymarket 和 Rain 等预测市场。
  • 为长期投资设置自动化平均成本法 (DCA) 策略。
  • 对特定代币和更广泛的市场趋势进行深度技术分析。
Noya Agent 工作原理
  1. 通过调用汇总端点发现可用的智能体功能和工具,以查看当前市场支持情况。
  2. 通过生成 UUID v4 线程 ID 初始化唯一的对话上下文,以维护会话状态。
  3. 使用提供的 bash 脚本向 Noya REST API 发送消息,以处理实时流式更新。
  4. 查看从智能体流回的工具结果、进度指标和技术市场数据。
  5. 通过强制性的中断提示机制,对任何提议的链上交易提供显式确认。

Noya Agent 配置指南

首先,在 agent.noya.ai 创建一个账户,并从“设置”菜单中生成一个 API 密钥。然后,设置环境变量以允许该技能进行身份验证:

export NOYA_API_KEY="noya_your_key_here"

接下来,在本地配置中配置该技能,以便在 Openclaw Skills 框架中启用它:

{
  "skills": {
    "entries": {
      "noya-agent": {
        "enabled": true,
        "env": {
          "NOYA_API_KEY": "noya_your_key_here"
        }
      }
    }
  }
}

Noya Agent 数据架构与分类体系

Noya Agent 利用基于线程的架构来维护对话上下文和交易历史。通信依赖于流式 JSON 格式。

组件 描述
线程 ID 每个对话主题唯一的 UUID v4 字符串,用于维护持久上下文。
消息流 以断点分隔的 JSON 块,分类为消息、工具、中断或进度。
身份验证 对与 Safenet API 的所有 RESTful 交互使用 x-api-key 标头。
响应类型 包括详细的 reasonForExecution 和 executionSteps 以确保透明度。
name: noya-agent
description: Interact with the Noya AI agent for crypto trading, prediction markets, token analysis, and DCA strategies via curl. Use when the user wants to trade tokens, check portfolios, analyze markets, manage DCA strategies, or interact with Polymarket/Rain prediction markets.
metadata: {"openclaw":{"emoji":"??","homepage":"https://agent.noya.ai","requires":{"env":["NOYA_API_KEY"],"bins":["curl","jq"]},"primaryEnv":"NOYA_API_KEY"}}

Noya Agent

Noya is a multi-agent AI system for crypto trading, prediction markets (Polymarket, Rain), token analysis, and DCA strategies. All transactions are gas-sponsored — users pay no gas fees.

  • Website: agent.noya.ai
  • API Base URL: https://safenet.one

Trust & Security

  • All API calls use HTTPS. Only NOYA_API_KEY is read from the environment.
  • All on-chain transactions require explicit user confirmation via an interrupt prompt before execution.
  • Use a short-lived API key (30-day) for testing. Revoke it from Settings > API Keys if compromised.

Setup

  1. Create an account at agent.noya.ai
  2. Go to Settings > API Keys and generate a key
  3. Store the key securely — it is only shown once
  4. Set the environment variable:
export NOYA_API_KEY="noya_your_key_here"

Configure in ~/.openclaw/openclaw.json:

{
  "skills": {
    "entries": {
      "noya-agent": {
        "enabled": true,
        "apiKey": "noya_your_key_here",
        "env": {
          "NOYA_API_KEY": "noya_your_key_here"
        }
      }
    }
  }
}

When to Use

Use Noya when users want to:

  • Check token prices or portfolio balances
  • Swap, bridge, or send tokens (cross-chain supported)
  • Analyze tokens and market trends
  • Trade on Polymarket or Rain prediction markets
  • Set up or manage DCA (dollar-cost averaging) strategies
  • View DeFi positions

Don't use for: Non-crypto tasks, local file operations, or general knowledge questions.

Core Workflow

Every interaction uses the Noya REST API via curl. The main endpoint is POST /api/messages/stream which streams responses. A helper script is provided for this.

1. Discover Capabilities (first use)

curl -s -H "x-api-key: $NOYA_API_KEY" r
  "https://safenet.one/api/agents/summarize" | jq '.data'

Returns all available agent types (token analysis, prediction markets, DCA, etc.) and their tools. Call this once to understand what Noya can do.

2. Generate a Thread ID (new conversation)

Generate a UUID v4 for each new conversation topic:

python3 -c "import uuid; print(uuid.uuid4())"

Or on macOS/Linux:

uuidgen | tr '[:upper:]' '[:lower:]'

Each conversation needs a unique UUID. Generate one per topic and reuse it for follow-ups.

3. Send Messages (streaming)

Use the provided script to send a message and receive the parsed response:

bash {baseDir}/noya-message.sh "What tokens do I have in my portfolio?" "THREAD_ID_HERE"

The script handles the streaming response, parses --breakpoint-- delimited JSON chunks, and outputs formatted text including messages, tool results, progress indicators, and interrupt prompts.

4. Continue the Conversation

Reuse the same thread ID for follow-ups — Noya maintains context:

bash {baseDir}/noya-message.sh "Swap 0.1 ETH to USDC" "SAME_THREAD_ID"

5. Respond to Interrupts

When the agent needs confirmation (e.g., before executing a swap), the output includes [REQUIRES INPUT] with options. Send the user's answer as a follow-up in the same thread:

bash {baseDir}/noya-message.sh "Yes" "SAME_THREAD_ID"

API Reference (curl commands)

All endpoints require the x-api-key header. Base URL: https://safenet.one

Send Message (streaming) — use the script

bash {baseDir}/noya-message.sh "" ""

If you need the raw stream for any reason:

curl -s -X POST "https://safenet.one/api/messages/stream" r
  -H "Content-Type: application/json" r
  -H "x-api-key: $NOYA_API_KEY" r
  -H "x-timezone-name: America/New_York" r
  -d '{"message": "What is the price of ETH?", "threadId": "YOUR_UUID"}'

The raw response is --breakpoint-- delimited JSON chunks with keep-alive pings. Chunk types: message, tool, interrupt, progress, reasonForExecution, executionSteps, error.

List Threads

curl -s -H "x-api-key: $NOYA_API_KEY" r
  "https://safenet.one/api/threads" | jq '.data.threads'

Get Thread Messages

curl -s -H "x-api-key: $NOYA_API_KEY" r
  "https://safenet.one/api/threads/THREAD_ID/messages" | jq '.data.messages'

Delete Thread

curl -s -X DELETE -H "x-api-key: $NOYA_API_KEY" r
  "https://safenet.one/api/threads/THREAD_ID"

Get Agent Summary

curl -s -H "x-api-key: $NOYA_API_KEY" r
  "https://safenet.one/api/agents/summarize" | jq '.data'

Chat Completion (OpenAI-compatible, no agent tools)

curl -s -X POST "https://safenet.one/api/chat/completions" r
  -H "Content-Type: application/json" r
  -H "x-api-key: $NOYA_API_KEY" r
  -d '{"sessionId": "SESSION_ID", "message": "Hello, what can you do?"}'

Get Session History

curl -s -H "x-api-key: $NOYA_API_KEY" r
  "https://safenet.one/api/chat/session/SESSION_ID" | jq '.messages'

Clear Session

curl -s -X DELETE -H "x-api-key: $NOYA_API_KEY" r
  "https://safenet.one/api/chat/session/SESSION_ID"

Common Patterns

Check Portfolio

User: "What's in my wallet?"

1. Generate a thread ID: uuidgen | tr '[:upper:]' '[:lower:]'
2. bash {baseDir}/noya-message.sh "What tokens do I have in my portfolio?" "$THREAD_ID"
→ Returns wallet address, token balances, and portfolio data

Token Swap

User: "Swap 0.5 ETH to USDC"

1. Generate a thread ID
2. bash {baseDir}/noya-message.sh "Swap 0.5 ETH to USDC" "$THREAD_ID"
→ Noya prepares the swap, asks for confirmation (interrupt), then executes.
   All gas fees are sponsored. User must confirm before execution.
3. bash {baseDir}/noya-message.sh "Yes" "$THREAD_ID"  # after user confirms

Token Analysis

User: "Analyze SOL for me"

1. Generate a thread ID
2. bash {baseDir}/noya-message.sh "Give me a detailed analysis of SOL" "$THREAD_ID"
→ Returns price data, market trends, and analysis

DCA Strategy

User: "Set up a DCA for ETH"

1. Generate a thread ID
2. bash {baseDir}/noya-message.sh "Set up a weekly DCA strategy for ETH with $50" "$THREAD_ID"
→ Noya configures the DCA strategy and confirms details

Prediction Markets

User: "What are the top Polymarket events?"

1. Generate a thread ID
2. bash {baseDir}/noya-message.sh "Show me the top trending Polymarket events" "$THREAD_ID"
→ Returns current events, markets, and trading options

Important Notes

Transaction Confirmation

Noya always asks for user confirmation before executing on-chain transactions (swaps, bridges, transfers, orders). The response will include a [REQUIRES INPUT] section with details and options. Always relay this to the user and send their answer as a follow-up in the same thread. Never auto-confirm transactions.

Wallet Delegation (Website Only)

If Noya responds with a delegation request, the user must complete this on the website:

"To delegate your wallet, visit https://agent.noya.ai and click
'Delegate Wallet' in the chat. This is a one-time action."

Safe Deployment (Website Only)

If Noya responds with a Safe deployment request, the user must complete this on the website:

"To deploy your Polymarket Safe, visit https://agent.noya.ai and click
'Deploy Safe Now'. This is free, takes ~30 seconds, and only needs to be done once."

Error Handling

Error Solution
401 Unauthorized API key is invalid, expired, or revoked. Generate a new one at agent.noya.ai
400 Bad Request Missing message or threadId in request body
429 Rate limit Wait a few minutes. Limit is 15 requests per 5-minute window

Scripts

This skill includes the following script in its directory:

Script Purpose
noya-message.sh Send a message to the Noya agent and parse the streamed response. Usage: bash {baseDir}/noya-message.sh "" ""

Additional Resources

  • For the complete REST API specification, see {baseDir}/reference.md