Jak używać
- Skopiuj polecenie instalacji i sprawdź źródła przed instalacją we własnym środowisku agenta.
- W oryginale sprawdź wymagane narzędzia, dane dostępowe i obsługiwane środowiska.
- Opisz dane wejściowe i oczekiwany rezultat; porównaj wynik ze źródłami.
npx skills add https://github.com/veyanet/veya-skills --skill veyaPrzed rozpoczęciem
- Instalacja nie obejmuje subskrypcji modelu, limitu API ani uprawnień do plików.
- Gwiazdki i instalacje pokazują aktywność, a nie niezależny test jakości lub bezpieczeństwa.
Treść z repozytorium z zachowaniem nagłówków, przykładów, kodu, tabel, linków i obrazów.
VEYA
VEYA makes agent work verifiable. An agent runs inside a scoped environment with an explicit tool allowlist. Its work is checked by 2-of-3 consensus or run in AES-256-GCM sealed execution, hashed with BLAKE3-256, signed with ML-DSA-44, and anchored on the Veya.sol protocol contract on Robinhood Chain. Anyone can verify the record from a tx hash.
environment → agent (+ allowedTools) → consensus / sealed execution
→ BLAKE3 digest + ML-DSA signature → Veya.sol (Robinhood Chain) → verify| Network | Veya.sol | Explorer |
|---|---|---|
| Mainnet (default) | 0x87dC582eEA544A434a5C1e30Ca3d12c1e548a674 | robinhoodchain.blockscout.com |
| Testnet (optional) | 0x1a1Dc3c55550FCE9F70ef6cDEeF967c0b72a5d84 | explorer.testnet.chain.robinhood.com |
Before anything
- If no
veya_*tools are available, tell the user to add the MCP server
https://mcp.veyanet.tech/mcp (configs in references/setup.md) and stop.
- Call
veya_describe. Readsettlement.network,settlement.contract,settlement.explorer.
Use that network and explorer in every answer.
Access
- Public (no key): describe, ping, health, hashing,
veya_provewithout anchor, all verify and on-chain reads,veya_pq_*, public registry. - API key: pass the user's product key (
veya_dev_…/veya_live_…) as theapiKeyargument. Get one at https://app.veyanet.tech (connect wallet → System → API Keys). Needed for environments, agents, policy, routing, memory, consensus, sealed execution,veya_seal_decision. - API key + wallet: on-chain writes also need the funded wallet bound to that key (
payerPrivateKey). Gas is ETH on the selected network. - Limits: consensus, sealed execution and
veya_seal_decisionallow 30 calls/min per key. host-sent seals: 20 per key and 100 per host per UTC day./mcp: 120 requests/min per IP.
Details: references/auth-and-limits.md.
Decision flow
| User wants to… | Do this | Guide | |
|---|---|---|---|
| Check status / network | veya_describe → veya_ping_chain → veya_api_health | service-and-chain | |
| Hash or prove text/JSON | `veya_prove { text \ | json }` | proofs |
| Anchor a proof on-chain | veya_prove { text, anchor: true, environmentId, apiKey, payerPrivateKey } or veya_anchor_proof | proofs | |
| Check a tx or commitment | veya_verify_transaction → veya_verify_commitment_onchain | verification | |
| Check a digest | veya_commitment_exists { digestHex } | verification | |
| Seal a decision | veya_seal_decision { evidenceId, decision, apiKey, environmentId } (mainnet: a registered environment) | proofs | |
| PQ keys, sign, verify | veya_pq_keygen → veya_pq_sign → veya_pq_verify | identity | |
| Create a workspace and agent | veya_create_environment → veya_deploy_agent | workspaces | |
| Allow/deny tools, route messages | veya_set_tool_policy, veya_route_message, veya_route_secure_message | policy-and-routing | |
| Quorum or sealed run | veya_run_consensus, veya_sealed_execute, veya_run_protected_execution | execution | |
| Agent memory | veya_store_memory, veya_read_memory, veya_invalidate_memory | memory | |
| Browse public agents/certificates | veya_public_* | registry | |
| Write commitments / attestations | veya_store_commitment, veya_attest_execution, veya_register_environment | onchain-writes | |
| Exact args of any tool | – | tools |
Workflow 1: prove content (no key)
{ "tool": "veya_prove", "arguments": { "text": "hello" } }Pass exactly one of text, json (a JSON string), txHash. Expect ok: true, mode: "digest", digestHex, anchored: false. hello → ea8f163db38682925e4491c5e58d4bb3506ef8c14eb78a86e908c5624a67200f. To anchor: add anchor: true, environmentId (an environment already on Veya.sol), apiKey, payerPrivateKey. Expect mode: "anchored", txHash, explorerUrl.
Workflow 2: verify a transaction
Example Mainnet receipt (execution attestation): 0x91550fdd7a60616e3157364d3624d423403c4add2590c36d3ba290fa07cb95cc.
veya_verify_transaction { txHash }→ Veya.sol events and digest.veya_verify_commitment_onchain { txHash }→ for commitment txs, confirmscommitments(digest)is still true (commitmentChecksis empty for attestations and registrations).- Report network, event, digest, and
{explorer}/tx/{txHash}. Iftois not Veya.sol, say it is not a VEYA proof.
Workflow 3: workspace → agent → policy
veya_account { apiKey }→ confirm the wallet.veya_create_environment { apiKey, name, type? }→environmentId(type: research default, governance, treasury, contributor, protocol, desci).veya_deploy_agent { apiKey, environmentId, permissionConfig: { allowedTools: [...] } }→agentId. List every tool the agent needs.veya_set_tool_policy { apiKey, environmentId, agentId, tool, allowed }to adjust.- Optional:
veya_register_environment { apiKey, payerPrivateKey, environmentId }puts it on-chain.
Workflow 4: consensus → attestation
veya_api_health→ validators reachable.veya_run_consensus { apiKey, taskId, payload }→ requireconsensus_reached: true; takeagreed_blake3_hash.veya_pq_sign { message: <hash>, privateKeyHex }→signatureHex.veya_attest_execution { apiKey, payerPrivateKey, environmentUuidHex, blake3HashHex, mldsaSigHex }→txHash,from.veya_verify_transaction { txHash }.
Rules
- Start read-only; write only when the user asks for an on-chain result.
- Before a write: state the network (Robinhood Chain Mainnet unless Testnet was selected), run
veya_writes_status, and get the user's confirmation. - Use keys only inside tool arguments; never repeat them in replies or store them in memory.
- Hex: UUIDs are 16 bytes (32 hex), digests 32 bytes (64 hex);
0xoptional. - Use
veya_run_consensus(veya_client_run_consensusis a deprecated alias). - Never attest when
consensus_reachedisfalse. - If a write returns
warning, the chain write succeeded; do not resend. - After every write, return
txHash, the explorer link andfrom. - Describe VEYA only as what it does: it checks, limits, records and proves agent actions. It does not trade, connect to exchanges, hold or move user funds, or read price or market data.
Errors
| Message | Action |
|---|---|
apiKey required / Create a product API key… | Ask for a veya_dev_/veya_live_ key from https://app.veyanet.tech (connect wallet → System → API Keys) |
Your wallet has no ETH on Robinhood Chain. Add funds and try again. | User funds the wallet bound to the key |
payerPrivateKey does not match the wallet on this API key… | Use the wallet shown by veya_account |
API key limit: 30 requests per minute | Wait one minute, retry once |
Daily seal limit: … | Pass the user's wallet or wait until 00:00 UTC |
SEAL_ENVIRONMENT_REQUIRED | On mainnet pass environmentId of a registered environment (veya_create_environment → veya_register_environment) |
CONFLICT on veya_create_environment | Pick a product-style name without test/demo/tmp/sandbox |
NOT_VEYA_TX | veya_verify_proof_api takes commitment/anchor txs; use veya_verify_transaction for registrations |
consensus_reached: false / SEALED_UNREACHABLE | Check veya_api_health; nothing was written |
Pass exactly one of text, json, or txHash. | Fix the veya_prove input |
Full list: references/troubleshooting.md.
Custom logic
For custom pipelines or local signing, use @veyanet/sdk (same capabilities as code): references/sdk.md.
Links
- App and API keys: https://app.veyanet.tech
- Docs: https://veyanet.tech/docs
- SDK: https://github.com/veyanet/veya-sdk
- MCP server: https://github.com/veyanet/veya-mcp


