See the latest version here
Released August 14, 2026
| Platform | Download | Authenticity |
|---|---|---|
| Windows (64-bit) | smudgy-v0.5.3-setup.exe | Signed with Microsoft Artifact Signing |
| macOS (universal) | smudgy-v0.5.3-universal.dmg | Signed and notarized via the Apple Developer Program |
| Linux (x86_64, flatpak) | smudgy-v0.5.3-x86_64.flatpak | Signed with smudgy's GPG key · signature: .asc |
| Linux (aarch64, flatpak) | smudgy-v0.5.3-aarch64.flatpak | Signed with smudgy's GPG key · signature: .asc |
Released August 1, 2026
| Platform | Download | Authenticity |
|---|---|---|
| Windows (64-bit) | smudgy-v0.5.2-setup.exe | Signed with Microsoft Artifact Signing |
| macOS (universal) | smudgy-v0.5.2-universal.dmg | Signed and notarized via the Apple Developer Program |
| Linux (x86_64, flatpak) | smudgy-v0.5.2-x86_64.flatpak | Signed with smudgy's GPG key · signature: .asc |
| Linux (aarch64, flatpak) | smudgy-v0.5.2-aarch64.flatpak | Signed with smudgy's GPG key · signature: .asc |
pane.swap() trades two panes' places, even across windows.official/tintin-emulator package now supports the #path family (load, save, map, run, walk, zip, and friends) and optional TinTin-style input speedwalks, which can be enabled in the package's settings.Released July 29, 2026
| Platform | Download | Authenticity |
|---|---|---|
| Windows (64-bit) | smudgy-v0.5.1-setup.exe | Signed with Microsoft Artifact Signing |
| macOS (universal) | smudgy-v0.5.1-universal.dmg | Signed and notarized via the Apple Developer Program |
| Linux (x86_64, flatpak) | smudgy-v0.5.1-x86_64.flatpak | Signed with smudgy's GPG key · signature: .asc |
| Linux (aarch64, flatpak) | smudgy-v0.5.1-aarch64.flatpak | Signed with smudgy's GPG key · signature: .asc |
awaited.official/tintin-emulator: an experimental but rich TinTin++ emulator turns familiar commands such as #alias, #action, #variable, and #highlight into native Smudgy automations.Rites of Passage and ArcticMUD.line.replace(), line.highlight(), and line.remove() calls now affect every matching occurrence on a line, rather than only the first.Released July 27, 2026
| Platform | Download | Authenticity |
|---|---|---|
| Windows (64-bit) | smudgy-v0.5.0-setup.exe | Signed with Microsoft Artifact Signing |
| macOS (universal) | smudgy-v0.5.0-universal.dmg | Signed and notarized via the Apple Developer Program |
| Linux (x86_64, flatpak) | smudgy-v0.5.0-x86_64.flatpak | Signed with smudgy's GPG key · signature: .asc |
| Linux (aarch64, flatpak) | smudgy-v0.5.0-aarch64.flatpak | Signed with smudgy's GPG key · signature: .asc |
<Canvas> widgets have landed, they can be used to draw all sorts of shapes: rects, circles, ellipses, lines, polylines, polygons, SVG paths, text, images, and transformed groups, with gradient fills and dashed strokes. Most of these shapes have animatable properties (animate), which allow for tweens inside of each canvas that don't rely on scripts running every frame to facilitate theminput object (from smudgy:core, or session.input) reads and writes the command input, moves the cursor, controls focus, and submits; there are also some new ways to edit the list of words used for tab autocompletehide()/show()/isHidden, resize(), and a live size, relocate() (across windows), and tearOut(); smudgy:events/pane surfaces some new events for panels. A pane created with input: { onSubmit } will get its own command input line, separate from the main panel's, where each sent line goes to a script rather than the game.<Image> widget and an image canvas shape display images and shapes. The images can be on disk or served from HTTP. Cache-Control HTTP headers are honored when deciding whether to download new copies of images remotely.Released July 22, 2026
| Platform | Download | Authenticity |
|---|---|---|
| Windows (64-bit) | smudgy-v0.4.2.exe | Signed with Microsoft Artifact Signing |
| macOS (arm64) | smudgy-v0.4.2.dmg | Signed and notarized via the Apple Developer Program |
| Linux (x86_64, flatpak) | smudgy-v0.4.2-x86_64.flatpak | Signed with smudgy's GPG key · signature: .asc |
| Linux (aarch64, flatpak) | smudgy-v0.4.2-aarch64.flatpak | Signed with smudgy's GPG key · signature: .asc |
line.replace(…) now preserves the style of the text being replaced, including when the text begins at a color boundaryReleased July 14, 2026
| Platform | Download | Authenticity |
|---|---|---|
| Windows (64-bit) | smudgy-v0.4.1.exe | Signed with Microsoft Artifact Signing |
| macOS (arm64) | smudgy-v0.4.1.dmg | Signed and notarized via the Apple Developer Program |
| Linux (x86_64, flatpak) | smudgy-v0.4.1-x86_64.flatpak | Signed with smudgy's GPG key · signature: .asc |
| Linux (aarch64, flatpak) | smudgy-v0.4.1-aarch64.flatpak | Signed with smudgy's GPG key · signature: .asc |
<smudgy>/maps into the appropriate <smudgy>/<server>/maps path.smudgy:state/msdp; msdp:ready and msdp:closed events mirror the ones already in place for gmcpmapper.createArea(name, { ephemeral: true }) creates a map that exists only for the current session and is never synced. Rooms may carry a server-reported identifier (externalId, from GMCP or MSDP); mapper.findRoomByExternalId resolves one to a room.July 12, 2026
smudgy:state/gmcpecho(`Hello ${style.red`World`}, go ${link`north`}`); syntax works in echo/line.replace/line.insert.createState/createEvent/createDerived/createProcedure calls are deeply tracked, scripts receive typed events and state through importing smudgy:state/… and smudgy:events/…| Platform | Download | Authenticity |
|---|---|---|
| Windows (64-bit) | smudgy-v0.4.0.exe | Signed with Microsoft Artifact Signing |
| macOS (arm64) | smudgy-v0.4.0.dmg | Signed and notarized via the Apple Developer Program |
| Linux (x86_64, flatpak) | smudgy-v0.4.0-x86_64.flatpak | Signed with smudgy's GPG key · signature: .asc |
| Linux (aarch64, flatpak) | smudgy-v0.4.0-aarch64.flatpak | Signed with smudgy's GPG key · signature: .asc |
This is the first public beta!
July 4, 2026
npm registry | Platform | Download | Authenticity |
|---|---|---|
| Windows (64-bit) | smudgy-v0.3.6.exe | Signed with Microsoft Artifact Signing |
| macOS (arm64) | smudgy-v0.3.6.dmg | Signed and notarized via the Apple Developer Program |
| Linux (x86_64, flatpak) | smudgy-v0.3.6-x86_64.flatpak | Signed with smudgy's GPG key · signature: .asc |
| Linux (aarch64, flatpak) | smudgy-v0.3.6-aarch64.flatpak | Signed with smudgy's GPG key · signature: .asc |
This is alpha software
July 3, 2026
session.mainPane to scripts, scripts can call pane#split() to create their own panes and sub-panesline.redirect(<pane>) and line.copy(<pane>) methods to allow triggers to redirect input to various panes. These work very efficiently and fire before the receiving terminal begins processing or rendering the incoming line, so scripts which multiplex mud output to various panel windows produce very little overhead.line.replace when the replacement text repeated the text to be replaced beyond the first index of the match, e.g., 'foo' ⇒ 'Xfoo'| Download for Windows (64 bit) | smudgy-v0.3.5.exe |
| Download for MacOS (arm64) | smudgy-v0.3.5.dmg |
This is alpha software
July 1, 2026
size attribute, and default to the theme base text color rather than black if given an invalid colorcan_copy permissions to may be exported. Imported maps are always created as local maps.mapper.importArea(area: string), mapper.importAreas(area: string[]), and mapper.exportArea(): stringgetDataDir() method to smudgy:core; scripts which have been given access to read/write only from their private $DATA directory can now learn where it is| Download for Windows (64 bit) | smudgy-v0.3.4.exe |
| Download for MacOS (arm64) | smudgy-v0.3.4.dmg |
This is alpha software
June 29, 2026
npm, jsr) and receive approval from the user (at install time) to do so| Download for Windows (64 bit) | smudgy-v0.3.3.exe |
| Download for MacOS (arm64) | smudgy-v0.3.3.dmg |
This is alpha software
June 28, 2026
jsr: and npm: imports, working fetch/TLS, and a companion DevTools inspector (an “Inspect” button on the toolbar). Portions of the API were revised, and should be fairly stable now, including capture templates, handle-based aliases/triggers/hotkeys, managed timers, and persistent vars.$PASSWORD in your login text now prompts once and is stored in your keyring. Prompt detection over telnet is more reliable. Signing in and creating an account are now one email-based flow, and your nickname alone is your unique handle (the old discriminator is gone).| Download for Windows (64 bit) | smudgy-v0.3.2.exe |
| Download for MacOS (arm64) | (tbd) |
This is alpha software
June 18, 2026
–data-dir and –keyring-user launch flags to run a second copy against a separate account.| Download for Windows (64 bit) | smudgy-v0.3.1.exe |
| Download for MacOS (arm64) | (tbd) |
This is alpha software
June 12, 2026
Added
Fixed
| Download for Windows (64 bit) | smudgy-v0.3.0.exe |
| Download for MacOS (arm64) | (tbd) |
This is alpha software
June 10, 2026
Performance
Added
Changed
Fixed
| Download for Windows (64 bit) | smudgy-v0.2.8.exe |
| Download for MacOS (arm64) | (tbd) |
This is alpha software
November 19, 2025
| Download for Windows (64 bit) | smudgy-v0.2.7.exe |
| Download for MacOS (arm64) | smudgy-v0.2.7.dmg |
This is alpha software
July 27, 2025
| Download for Windows (64 bit) | smudgy-v0.2.6.exe |
| Download for MacOS (arm64) | smudgy-v0.2.6.dmg |
This is alpha software
July 20, 2025
| Download for Windows (64 bit) | smudgy-v0.2.5.exe |
| Download for MacOS (arm64) | smudgy-v0.2.5.dmg |
This is alpha software