Skip to main content

Overview

Track all changes to the Towns Bot SDK. Critical changes are clearly marked and include migration instructions when available.
Always review breaking changes carefully and test your bot after updating dependencies.

Version 0.0.435

Released December 12, 2025

Breaking Changes

Update membership pricing to have fee added on top of price

Migration guide needed: Please review the commit to see what changed. Files affected:
  • packages/sdk/src/tests/multi/spaceWithVariousPriceConfigurations.test.ts
View commit →

Bots: breaking change - move app initialization into the framework

Migration guide needed: Please review the commit to see what changed. Files affected:
  • packages/bot/src/bot.test.ts
  • packages/bot/src/bot.ts
  • packages/bot/src/smart-account.ts
View commit →

Add display name field to bot metadata

Migration guide needed: Please review the commit to see what changed. Files affected:
  • packages/bot/src/bot.test.ts
View commit →

Shared syncer

Migration guide needed: Please review the commit to see what changed. Files affected:
  • packages/sdk/src/client.ts
  • packages/sdk/src/sync-agent/syncAgent.ts
  • packages/sdk/src/syncedStreams.ts
  • packages/sdk/src/syncedStreamsLoop.ts
  • packages/sdk/src/tests/multi_ne/syncedStreams.test.ts
  • … and 2 more files
View commit →

Snapshot migration to flush lost session ids

Migration guide needed: Please review the commit to see what changed. Files affected:
  • packages/sdk/src/migrations/migrateSnapshot.ts
  • packages/sdk/src/migrations/snapshotMigration0004.ts
  • packages/sdk/src/tests/unit/snapshotMigration0004.test.ts
View commit →

Deprecations

Deprecated features will be removed in a future major version. Plan to migrate soon.

New Features

  • Allow bot owners update their bot profile image in stream (8743554)
  • Implement paid commands with x402 facilitator processing (329c59b)
  • Add x402 paid command option and update BotCommand type (d5c6022)
  • Roles support (8fabbb6)
  • Rule builder api to make easier rule structs (682b74e)
  • Improve mention behavior dx (7d52a47)
  • Add ERC-8004 identity metadata support for bots (f2ef316)
  • Sending link attachment (ad639b4)
  • Add owner parameter to AppCreated event (9905355)
  • getSmartAccountFromUserId (16ab699)
  • Allow bot to tip users (d4039c5)
  • Implement SimpleApp as ERC-4337 compatible account abstraction (ee02b5f)
  • Sync slash commands on bot initialization (22db3f0)
  • Viem + appAddress and simpleAppAbi (57df5f1)
  • Use sendTip instead of tip & use TipSent event in nodes (01a6875)
  • Upload device keys on makeTownsBot (b5a1654)
  • Custom message support using GM (read/write) (de880b7)
  • Initialize git project (416bc02)
  • Include app address in APP_PRIVATE_DATA (ad7ecd7)
  • Send chunked media (3ac8d40)
  • Add client version in status response (7aa84f2)
  • Sending image / embedded attachment (9439a7a)
  • Wrapper to get snapshot data (4a0529e)
  • Add apps Set in members stream view (fb31666)
  • Ban/unban support (12701d7)
  • Support for sending ephemeral messages (60dd39c)
  • Simplify handlers, improve onMessage (01586cd)
  • Get mentions from messages (d31897d)
  • Support for slash commands in threads and replies (473c422)
  • Feat(bots) add check permissions API (ae85137)
  • Feat(bots) add createdAt in base payload (eb14495)
  • Add support for slash commands (5060153)
  • Add towns-bot- prefix to app private data key (17fcca8)
  • Add app_address in stream view (ba0ad9d)
  • bot.onMentionedInThread (c0eeb7e)
  • Support for uninstall app (54d9cbe)
  • App registry rpc client (77a1296)
  • Expose towns + rewards shim to spaceDapp (2749e2c)

Bug Fixes

  • Use onchain free supply instead of hardcoding (e273ed8)
  • Implement LRU cache for CryptoStoreInMemory to prevent memory leaks (885392e)
  • Add withRetry wrapper to client-v2 for hash-too-old errors (ac4d254)
  • Don’t crash if setting slash commands fail (ce63a5c)
  • Filter getCreate/RegisterAppEvent by sender (281c124)
  • Properly redirect senderAddress to onTip (13152cc)
  • Clean generated artifacts and update references after SimpleApp→… (1ebec39)
  • Check if we have app address before parsing (61fe988)
  • Correct dotenv command separator in test scripts (0bb835d)
  • Add @connectrpc/connect-node as dependency (ba3f66c)
  • Assign correct content to embedded image message attachments (628c968)
  • Correct spelling errors (9e29b41)
  • Dont use window. to call crypto function (cb6ef64)
  • App-registry url uses https (73fea33)
  • Update contract address path (f32fbb7)
  • ChannelScrubbing.test.ts (a35dda2)
  • Add @connectrpc/connect-web as dev dependency of sdk (5364dc7)
  • Timeline event replace (fe4edb5)

Documentation

  • Improve bot documentation to match new updates to SDK (1df3edf)
  • Update AGENTS.md with ephemeral messages (a834b5b)
  • AGENTS.md (9a20458)
  • Update testing documentation for the sdk package (47f3a84)

How to Update

Update your bot dependencies to the latest version:
Or manually update your package.json: