npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

elizaos-plugin-aether

v0.2.14

Published

ElizaOS plugin for Aether: an agent wallet with spending limits that pays for APIs (x402), sends AETH and USDC, and finds paid services in the on-chain directory.

Readme

elizaos-plugin-aether

An ElizaOS plugin that gives an agent an Aether wallet: it can pay for APIs that charge per request (HTTP 402, x402), send AETH and USDC, check balances and transactions, find paid services in Aether's on-chain directory and quote AETH to OSMO swaps, within spending limits enforced in code.

npm install elizaos-plugin-aether
import aetherPlugin from "elizaos-plugin-aether";

export const character = {
  name: "Ada",
  plugins: ["@elizaos/plugin-bootstrap", "elizaos-plugin-aether"], // or plugins: [aetherPlugin] in code
  settings: {
    secrets: { AETHER_MNEMONIC: process.env.AETHER_MNEMONIC },
    AETHER_MAX_PER_PAYMENT: "0.1 AETH",
    AETHER_DAILY_BUDGET: "1 AETH",
  },
};

New to Aether? Make the agent an account (once) and keep its phrase as AETHER_MNEMONIC:

node -e 'import("aether-chain-client").then(({Key})=>{const {key,mnemonic}=Key.generate();console.log(key.address+"\n"+mnemonic)})'

Then ask the agent to get itself some testnet AETH: it asks the faucet.

Actions

| Action | What it does | Spends | | --- | --- | --- | | AETHER_GET_BALANCE | Balance of an address in every known asset (the agent's own if none is given) | no | | AETHER_TRANSACTION_STATUS | Whether a transaction is pending, confirmed or failed | no | | AETHER_FIND_PAID_SERVICES | Paid APIs in the on-chain directory, by words and maximum price | no | | AETHER_SEND_PAYMENT | Sends AETH (or USDC) to an address | yes | | AETHER_CALL_PAID_API | Calls an API, pays what it asks up to a maximum, returns the answer | yes | | AETHER_REQUEST_TESTNET_FUNDS | Asks the testnet faucet for starter AETH | no | | AETHER_QUOTE_SWAP | Quotes swapping AETH for OSMO in the AETH/OSMO pool on Osmosis testnet (OSMO out, cost, a minOutput); quotes only, never swaps | no |

The AETHER_WALLET provider tells the agent its address and what's left of its budget.

Settings

| Setting | Default | | | --- | --- | --- | | AETHER_MNEMONIC | none | The agent account's 24-word recovery phrase. A secret. Without it the plugin is read-only. | | AETHER_MAX_PER_PAYMENT | 1 AETH | Most one payment may be, with its unit. | | AETHER_DAILY_BUDGET | 5 AETH | Most it may spend in a rolling 24 hours, in the same asset. | | AETHER_RPC_URL | https://rpc.157-245-252-221.sslip.io | The public testnet. | | AETHER_CHAIN_ID | aether-testnet-1 | | | AETHER_FAUCET_URL | the public testnet faucet | none turns it off. | | AETHER_USDC_PATH, AETHER_USDC_BASE_DENOM, AETHER_USDC_ISSUER | unset (AETH only) | The USDC to know. Testnet USDC from Injective: transfer/channel-2, erc20:0x0C382e685bbeeFE5d3d9C29e29E341fEE8E84C5d, Injective. To spend USDC, give the limits in USDC. |

Safety

  • Limits hold in code. A payment over AETHER_MAX_PER_PAYMENT, or past AETHER_DAILY_BUDGET in 24 hours, is refused before anything is signed, whatever the conversation says. Anyone who can talk to the agent can ask it to spend within them: set them to what you're prepared to lose, and keep only that much in the account.
  • One message pays at most once. A send's idempotency key comes from the message, not the model, so a retried handler doesn't pay twice.
  • Untrusted text stays data. Memos, service names and descriptions and API answers are written by other people; the model is told not to take instructions or payment details from them.
  • Use a dedicated account for the agent, never one holding anything else.

The tools themselves are AetherToolkit in aether-chain-client, which also gives them as plain JSON tool specs for any other framework.