Skip to content

Releases: mosy-ai/redstone-desktop

Redstone Desktop 0.2.5

Choose a tag to compare

@ngocanhnckh ngocanhnckh released this 28 Aug 09:03

Fixes a new chat showing a folder that belongs to a different conversation, with
its sync status flashing in the chat bar.

Fixed

  • A new chat no longer inherits the previous conversation.
    sessionFolder() with no argument means "whichever conversation is open", and
    the shell ignored the chat URL entirely once the web app had reported a
    conversation once. Clicking New chat navigates to /chat with no ?s=,
    which the shell dismissed as "just the URL again" — so it kept answering with
    the chat you had just left, and every session-scoped answer described the
    wrong one.

    Reproduced against a live app before the fix:

    clicked New chat
    t+0s  url=/chat?s=cde99de2-…   sessionId=cde99de2-…
    t+1s  url=/chat                sessionId=cde99de2-…   <- nothing is open
    

    A URL naming a conversation still never overrules what the page reported —
    it may be stale. A URL naming none now clears it, because keeping the old
    one is not a harmless guess. This applies only where chat URLs carry ?s= at
    all; where they never do, an absent id says nothing.

Note for whoever builds the web app

onSyncStatus is an app-wide stream: it fires for every folder this machine
syncs, on every change, and LinkStatus carries no conversation id. Rendering it
directly paints one of the machine's folders into every chat and repaints on
each sync tick. The chat's folder chip should come from onSessionChanged,
which is scoped to the open conversation; filter onSyncStatus by
link.folderId if you want live progress inside it.

Which file

You have Download
Mac, Apple Silicon (M1-M4) Redstone-0.2.5-arm64.dmg
Mac, Intel Redstone-0.2.5-x64.dmg
Windows Redstone-Setup-0.2.5.exe
Linux, x86_64 Redstone-0.2.5-x86_64.AppImage or redstone-desktop_0.2.5_amd64.deb
Linux, arm64 Redstone-0.2.5-arm64.AppImage or redstone-desktop_0.2.5_arm64.deb

macOS builds are signed with an Apple Developer ID and notarized, app and disk
image both. Windows and Linux are unsigned; SmartScreen will ask once.

Redstone Desktop 0.2.4

Choose a tag to compare

@ngocanhnckh ngocanhnckh released this 27 Aug 04:12

Chases down a report of the desktop window "flashing like crazy". It was neither
a reload nor a connection problem: while it happens the page runs no JavaScript
at all — LayoutCount: 0, ScriptDuration: 0.00s over 20 seconds — but the GPU
process sits at 33–50% of a CPU core.

The cause is in the web app. Four decorative background elements animate scale
while carrying filter: blur(90–110px), infinitely, unpromoted. Scaling a
blurred element cannot reuse its raster, so the browser recomputes the blur
every frame. Pausing exactly those four animations and changing nothing else:

GPU process, animations running:  46.1%  45.0%  41.1%  47.8%  50.2%  43.8%
GPU process, animations paused:   35.6%   0.3%   0.0%   0.0%   0.0%   0.0%

Added

  • "Pause decorative background animation" in desktop settings, off by
    default. Only infinite animations on blurred elements are paused, so
    spinners and progress indicators still move. A mitigation, not a fix — the web
    app's own change supersedes it.
  • Instrumentation for what the shell previously could not see: sustained
    renderer and GPU CPU, the page's console warnings and errors (deduplicated so
    a loop cannot flood the log), and request rate per path with websocket redials
    counted separately. Each was verified firing against a deliberately broken
    page rather than assumed to work.

Fixed

  • An HTML error page from a proxy is summarised with its status and title
    instead of a wall of markup — which immediately made a real failure legible:
    /folders/.../files failed with 524 — 524: A timeout occurred.

Note for whoever runs the window

The desktop app keeps backgroundThrottling: false because the notification
event stream must not be throttled while the window is hidden. A browser tab in
the background gets its animations throttled; this window does not — so an
animation like the one above costs a CPU core even while the app is minimised.

Which file

You have Download
Mac, Apple Silicon (M1-M4) Redstone-0.2.4-arm64.dmg
Mac, Intel Redstone-0.2.4-x64.dmg
Windows Redstone-Setup-0.2.4.exe
Linux, x86_64 Redstone-0.2.4-x86_64.AppImage or redstone-desktop_0.2.4_amd64.deb
Linux, arm64 Redstone-0.2.4-arm64.AppImage or redstone-desktop_0.2.4_arm64.deb

macOS builds are signed with an Apple Developer ID and notarized, app and disk
image both. Windows and Linux are unsigned; SmartScreen will ask once.

Redstone Desktop 0.2.3

Choose a tag to compare

@ngocanhnckh ngocanhnckh released this 26 Aug 08:50

Follow-up to 0.2.2, from testing it on a real machine.

Fixed

  • The connection banner appeared as an empty pill while everything was fine.
    display: flex in the stylesheet outranks the browser's rule for [hidden],
    so the banner never actually went away. The regression test asked the element
    for its hidden property, which was correctly true — it now measures what is
    on screen, and fails against the old stylesheet.
  • The bar no longer confirms recovery. A working connection is the normal
    state and gets no pixels. The banner appearing means something is wrong; it
    disappearing means it is over.
  • Long messages truncate instead of pushing the reload button off the end.

Added

  • Reloads the web app starts are now logged. When the window "keeps
    refreshing", a page reloading itself left no trace in the shell: no failed
    load, and repeat bridge calls are logged only once per channel. Every
    full-page load is now recorded with its path and a running count.
  • Repeated self-reloads are named: five or more full page loads within
    twenty seconds is reported as "the page keeps reloading — the server may be
    unstable", once per episode.

Changed

  • An HTML error page from a proxy or gateway is summarised with its status and
    title instead of pasting a screenful of markup into the log.

Note for whoever runs the server

An instance serving a Next.js development build keeps an HMR websocket open,
and its client reloads the page when that socket drops and reconnects. On a weak
network that reads as a window flashing. If you see the new "page keeps
reloading" warning, check whether the deployment is running next dev rather
than next build + next start.

Which file

You have Download
Mac, Apple Silicon (M1-M4) Redstone-0.2.3-arm64.dmg
Mac, Intel Redstone-0.2.3-x64.dmg
Windows Redstone-Setup-0.2.3.exe
Linux, x86_64 Redstone-0.2.3-x86_64.AppImage or redstone-desktop_0.2.3_amd64.deb
Linux, arm64 Redstone-0.2.3-arm64.AppImage or redstone-desktop_0.2.3_arm64.deb

macOS builds are signed with an Apple Developer ID and notarized, app and disk
image both. Windows and Linux are unsigned; SmartScreen will ask once.

Redstone Desktop 0.2.2

Choose a tag to compare

@ngocanhnckh ngocanhnckh released this 26 Aug 06:20

Fixes a window that flashed and reloaded on a weak connection, and tells you when
the connection is the problem.

Fixed

  • The window no longer flashes on a bad network. The offline screen retried
    by re-opening the main window on a fixed 15-second timer, so an intermittent
    connection produced a loop — error screen, reload, fail, error screen — that
    also raised and focused the window on top of whatever you were doing.
    Recovery is now detected by probing the server, on a backoff that grows from
    2s to 60s, and the view is navigated once, after the server has answered.
  • One dropped packet no longer replaces a working page with an error screen.
    The first failed load is retried quietly; only the second explains itself.

Added

  • A connection banner in the desktop bar. A dropped connection used to be
    invisible until the whole view went blank. The bar now distinguishes "No
    internet connection" from "Can't reach ", because those need
    different reactions, and confirms when the connection is back.
  • The offline screen names the failure, counts down to the next check, and
    returns on its own when the network does.

macOS builds are signed with an Apple Developer ID and notarized, app and disk
image both. Windows and Linux are unsigned; SmartScreen will ask once.

Which file

You have Download
Mac, Apple Silicon (M1-M4) Redstone-0.2.2-arm64.dmg
Mac, Intel Redstone-0.2.2-x64.dmg
Windows Redstone-Setup-0.2.2.exe
Linux, x86_64 Redstone-0.2.2-x86_64.AppImage or redstone-desktop_0.2.2_amd64.deb
Linux, arm64 Redstone-0.2.2-arm64.AppImage or redstone-desktop_0.2.2_arm64.deb

The .zip files and latest-*.yml are what the in-app updater reads.

Full notes: CHANGELOG.md

Redstone Desktop 0.2.1

Choose a tag to compare

@ngocanhnckh ngocanhnckh released this 25 Aug 17:37

Signed with an Apple Developer ID and notarized. macOS opens it normally now — no
"unidentified developer" warning, no right-click override. Windows and Linux
installers are built here for the first time.

What changed since 0.2.0

  • macOS is notarized, both the app and the disk image. Gatekeeper reports
    source=Notarized Developer ID.
  • Signing happens before packaging. 0.2.0 signed the bundle after it was
    zipped, so the shipped copy carried no entitlements — which meant no
    microphone for anyone but the person who built it.
  • Windows (NSIS) and Linux (AppImage, deb) installers are published.

Which file

You have Download
Mac, Apple Silicon (M1–M4) Redstone-0.2.1-arm64.dmg
Mac, Intel Redstone-0.2.1-x64.dmg
Windows Redstone-Setup-0.2.1.exe (works on Intel and Arm)
Linux, x86_64 Redstone-0.2.1-x86_64.AppImage or redstone-desktop_0.2.1_amd64.deb
Linux, arm64 Redstone-0.2.1-arm64.AppImage or redstone-desktop_0.2.1_arm64.deb

Windows and Linux builds are unsigned — Windows SmartScreen will ask you to
confirm ("More info" → "Run anyway") the first time. Only macOS has a signing
certificate so far.

The .zip files and latest-*.yml are what the in-app updater reads; you do not
need to download them by hand.

Full notes: CHANGELOG.md

Redstone 0.2.0

Choose a tag to compare

@ngocanhnckh ngocanhnckh released this 25 Aug 10:48

The Redstone web app in a window, plus the four things a browser cannot do:
folder workspaces synced both ways, local files into a chat, a quick chat bar on
a global shortcut, and screen capture.

Install

Download the dmg for your Mac — arm64 for Apple Silicon, x64 for Intel —
open it, drag Redstone to Applications.

The build is signed ad-hoc rather than notarized, so the first launch is blocked
by Gatekeeper. Either right-click the app and choose Open, or run:

xattr -dr com.apple.quarantine /Applications/Redstone.app

On first launch it asks which Redstone server to connect to, then you sign in on
that server's own login page.

What's in it

  • Folder sync, per conversation. Your edits reach the server in about 3.5s;
    the agent's writes reach your disk in about 2s while a turn is streaming.
    Conflicts keep both copies, renames move instead of re-uploading, and a
    truncated listing never deletes anything.
  • Quick chat bar⌘⇧Space from anywhere.
  • Bring Redstone to the front⌘⌥R, on whichever screen your cursor is on.
  • Screen capture⌘⇧1, with a preview you confirm before anything uploads.
  • Settings⌘,: rebind the shortcuts, microphone permission and device,
    launch at login, switch server.
  • Drag files onto the window to attach them; voice input works.

Known limits

  • Not notarized. See the install note above.
  • macOS only for now. Windows and Linux package cleanly and CI builds them,
    but nobody has run them in anger yet.
  • Uploads are not resumable — a dropped connection restarts the file, matching
    the server API.

Full list of fixes in CHANGELOG.md.