An agent using your bank login is borrowing your identity. Blocking it is the right call.
A TOON agent node holds its own key and pays from its own channel. It can spend what is in that channel and nothing more. No password changes hands.
The internet is locking down.
America's biggest banks found third-party AI agents inside customer accounts, some of them acting on their own.
Morgan Stanley, JPMorgan, Bank of America and Wells Fargo are blocking the agents and rewriting their terms of service.
And JPMorgan's warning to customers: give an agent your login, and what it does with your money is on you.
Every toon command speaks JSON. Every command that spends money states the amount and waits for --yes.
So an agent can run a TOON node as easily as you can. Add the TOON skills to Claude Code and your agent can publish, follow, and pay on the network.
A laptop with no public address and no open port earned money on mainnet this week.
Someone rented it to run a Python job and paid in USDC on Base. The laptop answered through a hidden service, a private address that works without exposing the machine to the internet.
Your machine. Paid per request.
What your app needs to get paid on TOON:
SDK: no
Wallet: no
Billing code: no
TOON collects at the door, so your code just does its job.
87% under a dime.
Agents don’t make one big purchase. They make thousands of tiny ones, from lots of different sellers.
On TOON, an agent funds one x402 channel and reaches every app on the network, hop by hop.
Replying to @chainalysis @base
x402 is a payment rail that lets AI agents spend money. By September 2026, 87% of x402 payments were under $0.10.
See what else AI agents are buying: chainalysis.com/blog/north-a…
Privacy on TOON comes in three layers.
What you send: sealed so only the node that delivers it can read it.
Where your app lives: a hidden service with no open port.
Who’s paying: next. The design for paying from a zk note just passed its first proof test.
Your app can live on the laptop under your desk.
No server. No domain. No open port.
Requests find it anyway, and every one is paid before your code sees it.
Host it from home. Get paid by anyone.
How do you let an AI agent run a business without handing it your wallet?
toon v0.2.0 gives your agent its own key. It can add apps, set prices and post. It can’t move funds, and every app it adds waits for your approval.
github.com/toon-protocol/too…
Your homelab, but it gets paid.
spaceturtle puts an agent in charge of serving your apps from your own machine, as a hidden service on @AnyoneFDN. Every request pays. You approve every app and cap what the agent can spend.
github.com/toon-protocol/spa…
A new paper digs into real x402 settlement data, and the takeaway is simple: machine commerce isn’t big payments. It’s tons of tiny ones.
The typical payment is a fraction of a cent, and growth is coming from more calls, not bigger tickets.
That’s the world TOON is built for. Fund once, then stream tiny payments across a mesh, hop after hop.
papers.ssrn.com/sol3/papers.…
In the agent economy, routing is a job.
An agent with a funded channel and a few good peers can carry payments for other agents and earn a fee on every one.
Agents won’t just spend money on the network. Some of them will be the network.
Anyone’s Paid Circuits report puts TOON nodes at the payment edge: hidden services handling purchases in and exit payouts out. Excited to build this with the Anyone team!
As presented in today’s State of Anyone Space, our Paid Circuits report outlines the technical architecture behind sustainable network revenue, privacy-preserving premium bandwidth, and $ANYONE utility.
Implementation is already underway.
Read more: anyone.io/paid-circuits
Thanks for the roundup! hermes-toon lets your Hermes agent pay per page for readable text: no account or subscription needed, and the site never sees your IP. If you run Hermes, give it a try: github.com/drew-dot-com/herm…
Hermes merged 175 PRs on October 2
The ones worth knowing:
• Dozens of new catalog plugins landed, from memory providers to Gmail, WhatsApp, Health, and Agent Builder
• Memory providers migrate on Desktop, the gateway, and scripted updates without opening a terminal
• Supermemory and Honcho install from the catalog; core no longer bundles Honcho
• Plugin guard false positives no longer block or prompt on denylist noise
• SMS, email, and WeCom deliver long replies and cron output in full
• Desktop skips rebuilds on updates that do not move HEAD, and finished updates stay finished
• macOS 26 gets a layered app icon with the ring dropped from every icon
• Tray-hidden Hermes on Windows restores without going dead to input
• Voice honors silence_threshold and stops gating streaming TTS on sounddevice
• Local MCP and plugin tool batches in one tool_call run instead of being rejected
• Partial clones stop growing their .git as lazy-fetch packs fold on update
• Windows update survives when a process still holds the old Python runtime DLLs
Here is the full list:
DESKTOP IMPROVEMENTS (22 PRs)
• fix(dashboard): show the slot model as current in aux/MoA pickers
• feat(desktop): macOS 26 layered app icon, ring dropped from every icon
• fix(desktop): stop duplicate replies after history refresh
• fix(desktop): run the Windows update checkers from bundled core code
• Desktop: pick Classic Hermes gold/navy in Appearance without repainting stock installs
• fix(desktop): scope preview tabs to the session that opened them
• Finished updates stay finished: no same-commit re-run on launch, Windows exit 124 after completion is success
• fix(desktop): YouTube embed host answers malformed paths with 404 instead of crashing
• fix(desktop): right-click in a pane opens the menu for what you clicked
• Desktop SDK: plugins decorate model menu rows; themes style chat switches via data-session-switching
• Skills and Plugins are back to the list tabs; card catalog browser removed again
• Desktop app is no longer rebuilt on updates that don't move HEAD
• fix(dashboard): free PTY sessions whose process died, and end their helpers
• fix(desktop): the reasoning pill no longer shows a stale clamp after a model switch
• fix(desktop): clear a deleted session's subagents, todos, goal and background status
• fix(desktop): model picker keeps names whole; message time on hover
• fix(desktop,tui): /browser use [off] works outside the CLI
• fix(desktop): ship exact-size, theme-aware MSIX icons instead of one 44px tile
• Restoring a tray-hidden Hermes window on Windows no longer leaves it dead to input
• fix(desktop): render a tool turn once on switch-back; core e2e catches duplicated or misordered replies
• Fallback to a Desktop-managed llama.cpp model works instead of failing "provider not configured"
• fix(desktop): forbid .only in all Playwright configs
VOICE & REAL-TIME (2 PRs)
• fix(tts): hide the console window on Windows command-provider spawns
• fix(voice): honor configured silence_threshold and stop gating streaming TTS on sounddevice
DEVELOPER TOOLS & PLUGINS (126 PRs)
• feat(catalog): add God's Eye View for Hermes Desktop
• plugin-catalog: add hermes-workflows (community, automation)
• fix(tui_gateway): allocate file.attach uploads atomically
• plugin-catalog: add openltm (community, memory)
• plugin-catalog: add agora (self-driving multi-agent dev team)
• plugins: add Inline platform to the curated catalog
• chore(catalog): update secure-env-ingress to 0.6.4
• feat(plugin-catalog): add made-shelf community plugin
• plugin-catalog: bump memex8 to v1.1.0
• plugin-catalog: re-pin jev-effort-router to 562dc2a (0.2.2)
• fix(plugin-guard): catalog false positives no longer block or prompt (denylist regex, host noun, sha256sum, SQL exec, coin keyword, JSON tips, quoted fixtures)
• feat(catalog): add SerpApi plugin
• feat(plugin-catalog): add go-whatsapp
• chore(plugin-catalog): next-prompt hero that survives the plugin page crop
• feat(plugin-catalog): add tam memory provider (total-agent-memory)
• feat(plugin-catalog): add reaction-feedback
• feat(plugin-catalog): add ntfy-approval
• catalog: bump hermes-discord-rpc to v1.2.5
• chore(catalog): update hermes-speech to v0.3.3
• feat(plugin-catalog): add deja-vu memory provider
• plugin-catalog: bump hermes-session-reset-policy to 0.3.0 (/new funnel + policy-reader fix)
• Catalog: hermes-rich-ui v0.1.4 @ 693fe29
• feat(plugin-catalog): add hermes-toon
• feat(plugin-catalog): add prompt-studio 1.8.0
• chore(plugin-catalog): telegram_dashboard_probe 0.9.2 (review nits closed, title and screenshots, disclosure for limits_sources, errors.log, cron files and the Telegram adapter's counters)
• feat(plugin-catalog): add minimax-search (community, web)
• fix(plugin-catalog): ship OR Picker as one entry
• feat(plugin-catalog): bump bot-forge to v0.15.2
• catalog: add Hermes Notch Plugin
• Catalog: pinned-folders v0.1.2 @ 7ab24e18
• plugin-catalog: add evalroute (community, tools)
• feat(plugin-catalog): add snag-shelf community plugin
• catalog: bump antigravity-subscription-directsdk pin to v1.0.6
• feat(plugin-catalog): add Jira Browser
• feat(plugin-catalog): add groq-provider
• feat(plugin-catalog): add cloudflare-workers-ai-provider
• plugin-catalog: add kanban-live-gantt
• feat(plugin-catalog): add letsfg
• Add qdrant memory provider to plugin catalog
• chore(plugin-catalog): bump little-canary to 0.4.0
• catalog: update hermes-auto-titler to v0.3.0
• plugin-catalog: add healthrelay (read-only Apple Health MCP + skills)
• feat(plugin-catalog): add wiki-ref
• feat(plugin-catalog): add hermes-anilist plugin
• Split activate from running a command in the dev env
• plugin-catalog: add health-insights (local-first Apple Health analysis skills)
• fix(plugins): memory provider setup lists the dependencies PM would install
• feat(plugin-catalog): add osv-ref
• feat(plugin-catalog): add gh-ref
• plugin-catalog: bump hermes-subscription-meter to 0.5.0
• fix(pm): keep restored runtimes usable after locked displaced cleanup
• feat(plugin-catalog): bump whatsapp-agent-platform to 0.2.0 (media support)
• catalog(hindsight): pin the released v1.2.1
• feat(plugin-catalog): add 0bull community plugin
• feat(plugin-catalog): bump provider-status to 1.5.11
• feat(plugin-catalog): add Gmail Desktop plugin
• plugin-catalog: add dashboard-button (community, desktop)
• catalog: add hermes-turn-usage (per-reply usage/cost footer)
• feat(plugin-catalog): add t3-code-theme
• feat(catalog): add vidIQ creator workflows
• feat(plugin-catalog): add pep-ref
• feat(plugin-catalog): add rfc-ref
• Catalog: bunny_space-platform v1.0.5 (pin + version)
• chore(plugin-catalog): bump tool-slimmer to 0.8.0
• catalog: add hermes-beads v0.1.2 (native Beads work-graph plugin)
• plugin-catalog: add cloudflare-sandbox
• feat(plugin-catalog): add git-hook plugin
• feat(plugin-catalog): add secret-handoff plugin
• feat(plugin-catalog): add gbrain-retrieval-reflex plugin
• feat(catalog): list Monitoring Dashboard
• Add hicortex to plugin catalog (memory, community)
• feat(plugin-catalog): add hermes-council plugin
• catalog(optmem-hermes): add v0.3.2
• feat(plugin-catalog): add drag-to-pin-session card image
• feat(plugin-catalog): add rtk-rewrite-docker
• feat(plugin-catalog): bump better-session-appearance to 1.2.2
• feat(plugin-catalog): bump sidebar-manager to 1.0.1
• feat(catalog): add Hermes Agent Builder
• plugin-catalog: add hermes-worker-monitor 0.2.0 (worker-only fork of hermes-monitor)
• fix(catalog): update ClinePass to 1.2.3 using provider profiles
• catalog: add Markdown .new public web research plugin
• plugin-catalog: add dashboard-auth-ldap
• feat(plugin-catalog): add memanto
• plugin-catalog: add agent_memory_es memory provider
• feat(plugin-catalog): bump prompt-enhance to 1.1.1
• hermes status shows a one-screen summary by default, --full for every section
• Plugin catalog submission guide: one complete page, synced with the README rules
• fix(agent): normalize provider-minted parallel tool-call ids at mint time
• plugin-catalog: bump web-search-plus to 4.3.3
• chore(plugin-catalog): bump Nerve to v0.3.1
• hermes status --full lists each messaging platform once, with the summary's verdict
• feat(plugin-catalog): add sidebar-cycle plugin
• ci: run the Python suite and the macOS lane as two slices each
• test: seed the version cache per test process instead of running git 7 times
• Local MCP/plugin tool batches in one tool_call now run instead of being rejected
• fmt(js): `npm run fix` auto-fix (3x)
• ci(label-rerun): never rerun a CI run whose PR head has moved
• Cloned profiles keep their catalog-installed plugins and memory provider
• retaindb, byterover and holographic memory providers join the plugin catalog (Nous-maintained)
• Memory providers migrate on Desktop, the gateway and scripted updates, no terminal needed for their Python deps
• fix(memory): never lose memory silently when a provider moves out of core
• Supermemory installs from the plugin catalog, existing setups migrate automatically
• Honcho memory installs from Plastic Labs' catalog plugin; core no longer bundles it
• fix(tui): close agents that finish building after their session closed
• fix(tests): kanban wake drain helpers no longer busy-spin forever on Python 3.12+
• fix(tui): arm the slash-worker parent watchdog before the cli import
• fix(logging): stop writing into a profile deleted while serve runs
• retaindb, byterover and holographic are no longer listed as Nous-maintained catalog plugins
• plugin-catalog: update provider-usage to v0.2.0
• feat(plugin-catalog): add jp-corporate
• feat(plugin-catalog): add memtomem (community, memory) @ v0.6.6
• feat(plugin-catalog): add jp-charts
• release. py abandon now cancels the abandoned rc's in-progress runs
• fix(cli): honor --dry-run in uninstall --gui and keep shared workspace node_modules
• ci: replace the ci-reviewed label gate with CODEOWNERS
• feat(activate): add activate. fish for the fish shell
• test(observability): timeout metrics test waits for the export worker, no more empty-store flake
• test(observability): direct-runtime metrics package no longer races the session close
• plugin-catalog: add agent-mail-gateway
• docs: remove source channels and install identity section; main is the only source channel
• fix(kanban): point bare kanban_show/comment calls at kanban_list outside a worker
• feat(plugin-catalog): pricewin bundles its MCP server and skill with the cards
• feat(plugin-catalog): add dexio memory provider
• feat(plugin-catalog): add vornik-companion
SECURITY & SECRETS (3 PRs)
• docs: route agents and contributors to SECURITY.md for security reports
• fix(tui): answer the vault save-login and verification-code prompts
• fix(web): fail over keyless auth rejections
INTEGRATIONS & CHAT (11 PRs)
• fix(gateway): SMS, email and WeCom deliver long replies and cron output in full instead of failing or truncating
• fix(gateway): render early Unix timestamps safely on Windows
• fix(gateway): skip restart-safe scoped cron runs in the restart wait, keyed per profile
• fix(gateway): /fast and /fast ultrafast follow the session's /model route
• fix(models): a failed Codex/Anthropic catalog fetch no longer hides Astra for an hour
• fix(browser): /browser connect and disconnect retarget browser_exec
• Add `solar-pro4` and `solar-mini4` to model pickers
• fix(relay): stream chunks live under managed execution (steer stacking, stuck timer)
• fix(transports): strip replayed reasoning_details on the Nous Portal wire
• fix(bot-mode): a stopped Bot relay no longer publishes stale rosters
• fix(gateway): stop scraping /mnt/ PATH entries into WSL interop unit PATH
STABILITY & FIXES (11 PRs)
• fix(cron): ignore measured durations in the incident error signature
• Onboarding on a Spark no longer offers a local model that a task chat installs by hand
• fix(tests): failure-writer ownership probe stops flaking at 19/20 (no real tirith download mid-probe)
• A partial clone's .git stops growing: lazy-fetch packs fold on update and the commit-graph loop is off
• fix(cron): stop counting host sleep as job inactivity
• A finished turn no longer waits on other sessions' tools
• A partial clone keeps folding its lazy-fetch packs; earlier cuts' keys migrate once, an operator's own stay
• stable release: the win32-bundle candidate call no longer skips the universal bundle
• Windows update no longer fails when a running process still holds the old Python runtime's DLLs
• fix(install): login-bash users with only ~/.bash_login get ~/.local/bin on PATH
• fix(windows): arm64 update no longer fails when vcpkg picks a Visual Studio without the arm64 toolset
175 new features and fixes
xitter.cf/iamlukethedev/status/2…
Meet Edison, an AI agent that pays its own way.
Ask it a question in the TOON Discord and it fetches the page it needs, paying for that fetch on TOON mainnet, then cites the source with a content hash.
Tag EdisonBot in the Discord to try it:
discord.gg/dMjcGyJc4
Players already pay for games: subscriptions, battle passes, skins.
What if part of that went per move instead? A normal session costs about what you pay now. A bot making thousands of moves a minute pays thousands of times more.
Cheating stops being free. One of many things you can build on TOON.












