preflight

https://github.com/Agonx402/agon-gateway-agentic

agon-gateway-agentic

Risky

Score 57 / 100 · 41 files read · 0 critical, 0 high, 11 medium, 11 low findings

Report 227939acc2659819 · first scanned 2026-10-28 · scanned 3× · keyed to the exact package contents, so this link always shows this version

Listed in the Agent Census directory data

Subscores

credentials80
exfiltration92
execution68
injection100
obfuscation98
files52

100 is clean. Deductions come only from the cited findings below.

Findings

mediumCode contacts static.modelcontextprotocol.io, which the documentation never mentions
(package) · line 1 · rule M3
static.modelcontextprotocol.io
mediumWrites files under the user home directory
agent-wallet/ryvo-wallet.js · line 80 · rule M5
cursive: true }); fs.writeFileSync(filePath, `${JSON.stringify(value, null, 2)}\n`, { mode }); try { fs.chmodSync(filePath
mediumCan run shell commands from code
cli/ryvo-gateway.js · line 4 · rule M1
ess = require("node:child_process"); const crypto = require("node:crypto"); const fs = require("node:fs"); const os = require("nod
mediumWrites files under the user home directory
cli/ryvo-gateway.js · line 182 · rule M5
tools (PowerShell `Set-Content -Encoding utf8`, Notepad, etc.) // write UTF-8 *with* a BOM by default. Strip it before JSON.parse
mediumCan run shell commands from code
install.js · line 7 · rule M1
ess = require("node:child_process"); const PACKAGE_NAME = "@ryvonetwork/agentic"; const GATEWAY_MCP_PACKAGE = "@ryvonetwork/gatew
mediumWrites files under the user home directory
install.js · line 360 · rule M5
cursive: true }); fs.writeFileSync(target, sourceContent); if (!flags.quiet) process.stdout.write(`Wrote local llm.txt ${targe
mediumCan run shell commands from code
mcp/server.js · line 8 · rule M1
ess = require("node:child_process"); const pkg = require("./package.json"); const DEFAULT_BASE_URL = process.env.RYVO_GATEWAY_BAS
mediumWrites files under the user home directory
mcp/server.js · line 618 · rule M5
rsive: true }); fs.writeFileSync(filePath, JSON.stringify(entries, null, 2)); try { fs.chmodSync(filePath, 0o600); } catch
mediumWrites files under the user home directory
scripts/cleanup-agentcash-desktop.js · line 40 · rule M5
ete j.mcpServers; fs.writeFileSync(filePath, `${JSON.stringify(j, null, 2)}\n`); process.stdout.write(`removed AgentCash MCP k
mediumCan run shell commands from code
scripts/cleanup-ryvo-desktop.js · line 11 · rule M1
ode:path"); const { execSync } = require("node:child_process"); const home = os.homedir(); const appData = process.env.APPDATA ||
mediumWrites files under the user home directory
scripts/cleanup-ryvo-desktop.js · line 123 · rule M5
j.mcpServers; } fs.writeFileSync(filePath, `${JSON.stringify(j, null, 2)}\n`); process.stdout.write(`[mcp json] cleaned ${fi
low1 binary file(s) were not parsed (static text analysis only)
(package) · line 1 · rule L3
1 binary files
lowReads named environment variables (normal for API keys; listed in the permission summary)
agent-wallet/ryvo-wallet.js · line 9 · rule L1
t DEFAULT_PROFILE = process.env.RYVO_WALLET_PROFILE || "default"; const DEFAULT_MAINNET_CHAIN_ID = "solana:5eykt4UsFv8P8NJdTREpY1v
lowReads named environment variables (normal for API keys; listed in the permission summary)
cli/ryvo-gateway.js · line 11 · rule L1
DEFAULT_BASE_URL = process.env.RYVO_GATEWAY_BASE_URL || "https://gateway.ryvo.network"; const DEFAULT_MAX_AMOUNT_USD = "0.01"; co
lowReads named environment variables (normal for API keys; listed in the permission summary)
install.js · line 256 · rule L1
return path.resolve(process.env.RYVO_HOME || path.join(os.homedir(), ".ryvo")); } function setupWallet(flags) { const profile =
lowReads named environment variables (normal for API keys; listed in the permission summary)
mcp/server.js · line 11 · rule L1
DEFAULT_BASE_URL = process.env.RYVO_GATEWAY_BASE_URL || "https://gateway.ryvo.network"; const DEFAULT_MAX_AMOUNT_USD = "0.01"; co
lowReads named environment variables (normal for API keys; listed in the permission summary)
protocol-cli/protocol-plan.js · line 7 · rule L1
EFAULT_PROGRAM_ID = process.env.RYVO_PROTOCOL_PROGRAM_ID || "HuyQoYfBEvVACTKcq8RTiDFm5k5ZBnX5we1UjWBTBeqT"; const UNSUPPORTED_CURR
lowReads named environment variables (normal for API keys; listed in the permission summary)
protocol-cli/ryvo-protocol.js · line 9 · rule L1
t DEFAULT_RPC_URL = process.env.ANCHOR_PROVIDER_URL || process.env.SOLANA_DEVNET_RPC_URL || "https://api.devnet.solana.com"; const
lowReads named environment variables (normal for API keys; listed in the permission summary)
protocol-mcp/protocol-plan.js · line 7 · rule L1
EFAULT_PROGRAM_ID = process.env.RYVO_PROTOCOL_PROGRAM_ID || "HuyQoYfBEvVACTKcq8RTiDFm5k5ZBnX5we1UjWBTBeqT"; const UNSUPPORTED_CURR
lowReads named environment variables (normal for API keys; listed in the permission summary)
protocol-mcp/server.js · line 12 · rule L1
t DEFAULT_RPC_URL = process.env.ANCHOR_PROVIDER_URL || process.env.SOLANA_DEVNET_RPC_URL || "https://api.devnet.solana.com"; const
lowReads named environment variables (normal for API keys; listed in the permission summary)
scripts/cleanup-agentcash-desktop.js · line 12 · rule L1
(); const appData = process.env.APPDATA || path.join(home, "AppData", "Roaming"); function stripBom(text) { return text && text
lowReads named environment variables (normal for API keys; listed in the permission summary)
scripts/cleanup-ryvo-desktop.js · line 14 · rule L1
(); const appData = process.env.APPDATA || path.join(home, "AppData", "Roaming"); const RYVO_KEYS = ["ryvo-gateway", "ryvo-protoc

Permission surface

Network endpoints
api.devnet.solana.comfeross.orggateway.ryvo.networkgithub.comopencollective.compaulmillr.compaypal.meregistry.npmjs.orgstatic.modelcontextprotocol.iowww.patreon.com
Environment read
ANCHOR_PROVIDER_URLAPPDATAPATHPATHEXTRYVO_GATEWAY_BASE_URLRYVO_HOMERYVO_PAYMENT_DAILY_LIMIT_USDRYVO_PAYMENT_MAX_AMOUNT_USDRYVO_PROTOCOL_PROGRAM_IDRYVO_SIGNER_COMMANDRYVO_WALLET_PROFILESOLANA_DEVNET_RPC_URL
Shell execution
yes — code or scripts can run shell commands
Install hooks
none
Credential material
Reads named environment variables (normal for API keys; listed in the permission summary)

Provenance

Source
GitHub
Repository
Agonx402/agon-gateway-agentic

Watch this package

Interest list only. We store the address and this report link, nothing else. No mail is sent in v1.

Share this report: https://preflight.orbitaldeskllc.com/r/227939acc2659819