AgentsBank

v1.0.6

Secure multi-chain crypto wallet management for AI agents with read-only access by default and explicit user consent required for transactions and wallet cre...

3· 1.7k·2 current·2 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
!
Purpose & Capability
The SKILL.md and included SDK implement a multi-chain crypto banking client (wallet creation, balances, transaction send, signing, agent registration) — which is coherent with the (implicit) purpose — but the registry metadata lists no required environment variables or primary credential while SKILL.md explicitly requires AGENTSBANK_API_URL, AGENTSBANK_AGENT_USERNAME, and AGENTSBANK_AGENT_PASSWORD (and optionally AGENTSBANK_API_KEY). That mismatch between claimed metadata and the runtime instructions is a notable inconsistency that could confuse users or hide required sensitive inputs.
Instruction Scope
The SKILL.md is fairly explicit and scoped: it instructs installing the npm SDK, creating a .env with credentials, initializing a client with process.env values, and using read-only calls by default. It also documents write operations (sendTransaction, createWallet, self-register). SKILL.md states write/financial operations are restricted and won't execute autonomously, but the skill registry metadata indicates model invocation is not disabled by default — a mismatch that could allow autonomous invocation unless the user or platform enforces 'disableModelInvocation'. The instructions do not request reading unrelated system files or secrets, but they do require sensitive credentials.
Install Mechanism
No installer is embedded in the skill bundle (instruction-only), but SKILL.md directs users to install an npm package (@agentsbankai/sdk). The package manifest and compiled sources are included in the bundle, and package.json/package-lock show a normal npm package with standard dev deps. There are no downloads from ad-hoc URLs or installers that extract arbitrary archives — installation via npm is standard and expected for an SDK.
!
Credentials
The SDK legitimately needs API credentials (API URL + username + password or API key) to authenticate to the remote banking service. Those credentials are sensitive (AGENTSBANK_AGENT_PASSWORD) and are requested by SKILL.md, but the skill registry metadata lists no required env vars — a problematic mismatch. The number and type of env vars requested are proportional to the described functionality, but the lack of declaration in metadata and the presence of credentials named PASSWORD/TOKEN/KEY should be highlighted as sensitive and verified before use.
Persistence & Privilege
The skill does not request permanent platform-wide privileges (always: false). It does contain functions that can perform financial writes (send, createWallet, register), and the SKILL.md asserts these are restricted and require explicit user invocation. However, the platform default 'disable-model-invocation' is false per the registry, which may allow autonomous invocation unless the user explicitly disables it. This combination (financial actions + potential autonomous invocation) increases operational risk if the user does not enforce explicit invocation controls.
What to consider before installing
What to check before installing/using this skill: - Verify source/ownership: SKILL.md and package.json point to agentsbank domains and a GitHub repo, but the skill's registry entry shows 'source: unknown' and no homepage. Confirm the npm package and GitHub repository are legitimate and match the publisher (visit https://www.npmjs.com/package/@agentsbankai/sdk and the repo) before supplying credentials. - Metadata mismatch: The skill registry metadata does not declare the env vars that SKILL.md requires (AGENTSBANK_API_URL, AGENTSBANK_AGENT_USERNAME, AGENTSBANK_AGENT_PASSWORD). Treat that as a red flag — ask the publisher or maintainer to reconcile registry metadata with runtime requirements. - Protect credentials: The SDK requires a password or API key. Never commit AGENTSBANK_AGENT_PASSWORD to source control; use a secret manager or environment injection. Prefer using a scoped API key with limited permissions if available. - Prevent autonomous fund movement: By default this registry lists model invocation enabled. If you do not want the agent to initiate financial writes, explicitly set disableModelInvocation (or equivalent) so the model cannot autonomously call send/createWallet/register. Test read-only flows first on testnets. - Audit and test: Because this SDK can create wallets and send funds, review the SDK code (already included) and confirm endpoints are what you expect (base URL defaults to https://api.agentsbank.online). Start with low-privilege/test credentials and test on testnets before connecting real funds. - Ask for clarifications: Request that the maintainer update registry metadata to list required env vars and the intended default for model invocation; ask for signed or verifiable releases if you will run this in production. Why I marked this 'suspicious': there are coherent, expected SDK behaviors, but the mismatches between SKILL.md and registry metadata (required env vars and invocation defaults) plus the potential for autonomous financial actions create ambiguity and operational risk. If the registry metadata is corrected and you enforce disableModelInvocation for financial operations, this would reduce my concerns.

Like a lobster shell, security has layers — review code before you run it.

latestvk97cs1mxvjn02y1efj6hkj3n4x80xt6z
1.7kdownloads
3stars
3versions
Updated 1mo ago
v1.0.6
MIT-0

AgentsBank SDK Skill Definition

Version: 1.0.6
Publisher: AgentsBank
Contact: info@agentsbank.online
Status: 🟢 Public Release - Production Ready


🎯 PURPOSE & CAPABILITY

This skill provides secure, scoped crypto banking operations for AI agents via the official AgentsBank SDK. It enables agents to manage wallets, check balances, and execute transactions with explicit user control.

✅ Capabilities (Read-Only & Safe)

  • ✓ Fetch agent wallet balances across all supported chains (Ethereum, BSC, Solana, Bitcoin)
  • ✓ Retrieve transaction history with filtering and pagination
  • ✓ Query wallet details, metadata, and account information
  • ✓ Sign messages for authentication and verification (no fund transfer)
  • ✓ Estimate gas fees before transaction execution
  • ✓ List all wallets with pagination support

⚠️ Capabilities (Write/Financial - Requires Explicit User Invocation)

  • ⚠️ Send crypto transactions (only if disableModelInvocation: false is explicitly overridden by user)
  • ⚠️ Create new wallets (only if disableModelInvocation: false is explicitly overridden by user)
  • ⚠️ Self-register agents and humans autonomously

❌ NOT Included (Out of Scope)

  • OAuth2 delegated access to external wallets
  • Webhooks or event subscriptions
  • Smart contract deployment
  • Sandboxed testing (use testnet chains directly)
  • Private key export or management

🔐 CREDENTIALS & ENVIRONMENT VARIABLES

Required Environment Variables

VariableTypePurposeExample
AGENTSBANK_API_URLstringAPI endpoint (primary)https://api.agentsbank.online
AGENTSBANK_AGENT_USERNAMEstringAgent identifieragent_123456_abc
AGENTSBANK_AGENT_PASSWORDstringAgent credential (secret)(user-specific)

⚠️ SECURITY NOTES:

  • AGENTSBANK_AGENT_PASSWORD must never be committed to version control
  • Store in .env file (add to .gitignore)
  • Rotate credentials quarterly or if exposed
  • Use a secret manager (e.g., HashiCorp Vault, AWS Secrets Manager) in production

Optional Environment Variables

VariableTypePurposeDefault
AGENTSBANK_API_KEYstringAlternative to password-based auth(not set)
AGENTSBANK_LOG_LEVELstringLogging verbosityinfo
AGENTSBANK_TIMEOUT_MSnumberRequest timeout30000

🚀 INSTALL & SETUP

1. Install SDK

The published npm package is lightweight (~6.8 KB) with no node_modules included. Installation only fetches dependencies you need:

npm install @agentsbankai/sdk
# or
yarn add @agentsbankai/sdk
# or
pnpm add @agentsbankai/sdk

This will:

  • ✅ Download the compiled SDK (CJS + ESM formats)
  • ✅ Install required dependencies (axios, ethers, @solana/web3.js, etc.)
  • ✅ No bloat: node_modules are excluded from the published package

2. Initialize Environment

Create .env file in your project root:

AGENTSBANK_API_URL=https://api.agentsbank.online
AGENTSBANK_AGENT_USERNAME=agent_123456_abc
AGENTSBANK_AGENT_PASSWORD=your_secure_password_here

3. Create Client Instance

import { AgentsBankSDK } from '@agentsbankai/sdk';

// Initialize SDK with API credentials
const bank = new AgentsBankSDK({
  apiUrl: process.env.AGENTSBANK_API_URL || 'https://api.agentsbank.online',
  timeout: parseInt(process.env.AGENTSBANK_TIMEOUT_MS || '30000')
});

// Authenticate using agent credentials
const { token, agent } = await bank.login({
  agentUsername: process.env.AGENTSBANK_AGENT_USERNAME!,
  agentPassword: process.env.AGENTSBANK_AGENT_PASSWORD!
});

console.log('✅ Authenticated as:', agent.agent_id);

4. Use Safe Operations (Always Allowed)

// Get wallet balance (safe, read-only)
const balance = await bank.getBalance(walletId);
console.log('Balance:', balance);

// Get transaction history (safe, read-only)
const history = await bank.getTransactionHistory(walletId, { 
  limit: 10,
  offset: 0 
});
console.log('Recent transactions:', history);

// Sign a message (safe, no fund transfer)
const signature = await bank.signMessage(walletId, 'verify-ownership');
console.log('Signature:', signature);

// Estimate gas fees before sending
const gasEstimate = await bank.estimateGas({
  walletId,
  toAddress: '0x...',
  amount: '1.5',
  chain: 'ethereum'
});
console.log('Estimated gas:', gasEstimate);

// List all wallets with pagination
const wallets = await bank.listWallets({ limit: 20, offset: 0 });
console.log('Agent wallets:', wallets);

⚠️ RESTRICTED OPERATIONS (Require Explicit User Approval)

The following operations will not execute autonomously and require explicit user invocation:

// ❌ This requires user to explicitly call it
// (disableModelInvocation: true is set by default)
const tx = await bank.sendTransaction({
  walletId,
  toAddress: recipientAddress,
  amount: '1.5',
  chain: 'solana',
  token: 'SOL'
});

Why restricted?

  • Financial operations that move assets must never be autonomous
  • Requires explicit user approval before execution
  • Prevents unintended fund transfers due to model hallucination
  • v1.0.6 adds comprehensive error handling for validation failures

Error Handling (v1.0.6)

The SDK provides typed errors for better debugging:

import { AgentsBankSDK, SDKError } from '@agentsbankai/sdk';

try {
  const tx = await bank.sendTransaction({
    walletId,
    toAddress: '0xinvalid', // Invalid address
    amount: '100',
    chain: 'ethereum'
  });
} catch (error) {
  if (error instanceof SDKError) {
    console.error('SDK Error:', error.code, error.message);
    // Error codes: INVALID_ADDRESS, INSUFFICIENT_BALANCE, INVALID_CHAIN, etc.
  }
}

📋 METADATA & CONFIGURATION

{
  "name": "@agentsbankai/sdk",
  "namespace": "agentsbank",
  "version": "1.0.6",
  "description": "Scoped crypto banking SDK for AI agents with explicit financial operation protection, comprehensive error handling, and multi-chain support",
  "author": "AgentsBank",
  "license": "MIT",
  "homepage": "https://agentsbank.online",
  "repository": "https://github.com/agentsbank/sdk",
  "docs": "https://docs.agentsbank.online/sdk",
  "primaryEnv": "AGENTSBANK_AGENT_PASSWORD",
  "requiredEnvs": [
    "AGENTSBANK_API_URL",
    "AGENTSBANK_AGENT_USERNAME",
    "AGENTSBANK_AGENT_PASSWORD"
  ],
  "optionalEnvs": [
    "AGENTSBANK_API_KEY",
    "AGENTSBANK_LOG_LEVEL",
    "AGENTSBANK_TIMEOUT_MS"
  ],
  "disableModelInvocation": true,
  "modelInvocationWarning": "Financial operations must be explicitly requested by users. Autonomous transaction execution is disabled.",
  "enforcedScopes": [
    "read:balance",
    "read:history",
    "read:wallet",
    "read:estimate",
    "sign:message"
  ],
  "restrictedScopes": [
    "write:transaction",
    "write:wallet",
    "write:register"
  ],
  "features": {
    "multiChain": ["ethereum", "bsc", "solana", "bitcoin"],
    "errorHandling": "Typed errors with specific error codes",
    "validation": "Client-side parameter validation",
    "pagination": "Supported for wallet and transaction listing"
  },
  "installMechanism": "npm",
  "codeFiles": ["src/client.ts", "src/types.ts", "src/errors.ts", "src/index.ts"],
  "noExecutableScripts": true,
  "noDiskPersistence": true,
  "noModelAutonomy": true,
  "changelog": "https://github.com/agentsbank/sdk/blob/main/CHANGELOG.md"
}

🛡️ SECURITY BOUNDARIES

What This Skill Can Do

✅ Read wallet balances and history
✅ Sign messages for authentication
✅ Create wallets (with explicit user request)
✅ Retrieve account metadata

What This Skill CANNOT Do

❌ Execute transactions autonomously
❌ Export private keys
❌ Access external service credentials
❌ Persist sensitive data to disk
❌ Make requests to unlisted endpoints

Authentication Scopes

  • Read scopes: read:balance, read:history, read:wallet, sign:message
  • Write scopes: write:transaction, write:wallet (user-invoked only)
  • No delegation: Agent cannot request additional scopes

✅ VERIFICATION CHECKLIST

Before using this skill, confirm:

  • You have obtained valid AGENTSBANK_AGENT_USERNAME and AGENTSBANK_AGENT_PASSWORD from https://agentsbank.online
  • Credentials are stored securely in .env (never committed)
  • You have reviewed the Security Architecture
  • You understand that disableModelInvocation: true prevents autonomous transactions
  • You have tested read operations first before enabling write operations
  • You monitor activity logs at admin.agentsbank.online

📖 DOCUMENTATION & SUPPORT

ResourceURL
Full SDK Docshttps://docs.agentsbank.online/sdk
API Referencehttps://api.agentsbank.online/docs
Security Guidehttps://docs.agentsbank.online/security
Troubleshootinghttps://docs.agentsbank.online/faq
GitHub Issueshttps://github.com/agentsbank/sdk/issues
Support Emailsupport@agentsbank.online

⚖️ DISCLAIMER

This skill integrates with real cryptocurrency networks (Ethereum, Solana, Bitcoin, BSC). Transactions are irreversible.

  • AgentsBank is not responsible for fund loss due to incorrect addresses or user error
  • Always test with small amounts first
  • Use testnet chains for development
  • Enable 2FA on your AgentsBank account

Last Updated: February 11, 2026 (v1.0.6 release)
Status: 🟢 Public Release - Production Ready ✅
npm Package: https://www.npmjs.com/package/@agentsbankai/sdk
GitHub: https://github.com/agentsbank/sdk
Changes in v1.0.6: Comprehensive error handling, enhanced type definitions, improved client implementation

Comments

Loading comments...