Changelog
What changed in every version, newest first. Individual nightly builds are listed on GitHub.
Hexbot 0.1.6-alpha.1
Planned next alpha after 0.1.5-alpha.1. Not published.
Changes
-
Hexbot now ships a native daemon and a bundled agent runtime. Each section keeps its own persistent conversation. Your bots, rooms, memory and existing history stay in the same home directory.
-
Full packages include the daemon, web assets and bundled skills. First launch installs Python for code tools and voice tools through a pinned, checksum-verified installer. Client-only packages still install no daemon.
-
Runtime updates keep the active version and its predecessor. Older files are removed after activation, while files used by a running daemon are protected.
-
Existing background services can move to the native daemon through their usual update action. The app also updates old service definitions when opened. Hexbot refuses to start a second daemon while the old one still holds its home.
-
New sections reach connected tools through Pi’s built-in MCP and codemode. Manual asks for every connected-tool call. Auto runs read-only tools freely and asks for others. Allow in this section covers the server. Bypass runs without asking. Connection failures appear under the conversation header. Saved sections keep their existing tools.
-
New connected servers accept stdio or streamable HTTP. New SSE entries are rejected, and existing SSE servers are skipped in new sections with a notice.
-
Stdio servers now start in a daemon-owned directory and inherit only Pi’s allowlisted environment plus their own
env. Add explicit environment references for any connector credentials a server needs. Previously it inherited all of them. -
Each section starts its own stdio process per connected server. Servers are trusted code outside the shell sandbox. The last 2 KB of their stderr can reach the model in connection errors.
-
Removing or disabling a connected server revokes access in open sections, including Bypass. Changed credentials block old clients and reconnect at the next prompt without changing the section’s cached prompt or tool declarations.
-
Connected-tool approvals in sections with no visible chat or room fail immediately instead of waiting for an unseen card.
-
Connected server tool counts show the last probe result, Not tested, or Test failed. Replacing an entry clears the old result. Bot settings now has a Test button that starts the server in the same folder, with the same environment, as a section.
-
Nested connected-tool steps remain under their code step after reload. Connection notices name the bot, say what to do next, and show details on hover.
-
A daemon is now one person’s. Settings no longer has a Users tab, rooms no longer take other people, and bots can no longer be shared. Bypass is available to you everywhere. The name you give in Get Started is the one rooms show; change it in Settings, Memory.
-
Sections started on this version pick up soul, memory and About you changes after Hexbot compacts them, usually from your next message. Sections started earlier keep their starting text.
Upgrading
Back up your Hexbot home before upgrading. Existing background services retain one release of compatibility with their previous update feed. After handoff, Hexbot removes the old Python environment and source copies. A small forwarding script may remain until the app reloads an old background service.
If you invited other people to your daemon, upgrading makes their bots, sections and rooms yours and signs out their devices. Their bots keep Auto even if Bypass was stored. Rooms that held other people’s bots may now use a stricter approval mode; change it in Room settings. Former members’ sections on your Bypass bots now run in Bypass. Your name comes from your About you text if it still said Admin. Update the app on every computer you connect from: older apps still show a Users tab, and inviting someone there does nothing.
Python daemon rollback builds are removed. New conversations are stored by the native daemon and are not copied back into the former backend’s history.
Known gaps
Native update archives are checked against SHA-256 over HTTPS. Independent manifest signatures are planned for a follow-up release.
Hexbot 0.1.5-nightly.20260921.15
The 0.1.5 nightly of September 21, 2026. This note lists what the September 19–21 nightlies changed; earlier nightly builds are listed on GitHub.
Fixed
- The app restarts after installing an update. Before, Restart to update started the install and left the old version running until you quit by hand (#18). While it installs, a full-window notice says bots stop until the app is back.
- Bots no longer stop with a 400 error after their first tool call. A field that some model endpoints reject is now dropped from tool results (#20).
- A new section stays off the sidebar until its first message, and a bot’s Dreams section is never listed. Starting a section reuses the bot’s empty one instead of leaving “New section” rows behind (#22).
- A bot no longer answers its own dream. The daily dream summary is written as the bot’s message and costs no model turn (#22).
- A new bot’s first chat lines up with its messages. The question card matches the bubble style, the bot’s name no longer repeats above every bubble, and the questions follow the bot’s name and description (#19).
- The composer’s attach and send buttons sit evenly inside the pill: 32px, 10px from the edge on every side, in private chats and rooms (#21).
New
- Every section starts with one status light (#23): red when the bot stopped on a problem, purple when it asked you something, blue while it works, green when it finished, and a draft icon for an unsent draft. Green clears when you open the section and syncs across devices.
Hexbot 0.1.5-alpha.1
Local alpha build, September 6, 2026. Built and checked on one Apple Silicon machine; not tagged, not uploaded, not deployed.
Changes
- The two packages are named
Hexbot [alpha]andHexbot Client [alpha], with app idsapp.hexbot.desktopandapp.hexbot.client. The product name is also written into the packaged metadata, so the About item and the tray menu show it instead of the npm package name. - New app icon. The source is the Icon Composer bundle
apps/desktop/build/Hexbot.icon. A build on a machine with Xcode 26 ships the layered macOS 26 icon; every other surface (older macOS, Linux, the menu bar, the web bundle and site favicons) uses images rendered from the same bundle byscripts/desktop/make-icons.py. - The build-time edition is a plain constant in the main bundle, and a desktop test builds the main process as the client edition and checks the baked value.
- Alpha versions keep the
latestandbetaupdate feed names that the updater and the feed scripts expect (detectUpdateChannel: false). - Cleanup: unused web exports and helpers, an unused daemon helper, a Docker leftover in the Python staging filter, the duplicate icon upload, the old tray SVG, and the unused
@hermes/shareddependency of the web bundle are gone. - Versions: the app and the daemon both report
0.1.5-alpha.1; the site manifest and install docs name the0.1.5-alpha.1artifacts (still unpublished).
Packages
Artifacts are under apps/desktop/release/0.1.5-alpha.1/full and apps/desktop/release/0.1.5-alpha.1/client: Apple Silicon and Intel DMGs and ZIP archives with latest-mac.yml. The client package carries no hexbot-src.
These builds are ad-hoc signed, not Developer ID signed or notarized, and may trigger Gatekeeper warnings. Linux packages were not built.
Verification
- Desktop: typecheck and 22 unit tests, including the new edition build test.
- Web: typecheck, lint, and 65 tests. Site:
astro checkwith no errors. - Packaging scripts: 4 tests. Python: 135 tests passed, 1 skipped.
- Both Apple Silicon apps launched with a temporary
HEXBOT_HOME: the full package reports editionfulland opens on the “Where should Hexbot run?” choice; the client package reports editionclientand opens on the connect screen. Both bundles passcodesign --verify --deep --strictand carryicon.icnsplus the compiledAssets.car.
Limits
Clean-machine runtime installation, Intel execution, signed and notarized distribution, Linux packages, and update delivery were not verified. The GitHub runners in release.yml still use Xcode 15, so an alpha built by CI gets the pre-rendered icon.icns rather than the layered icon.
Hexbot 0.1.3
Local patch build, September 6, 2026. Not published.
User-facing fixes
- Phone-sized windows use a roster drawer and horizontally scrollable settings navigation. The profile panel no longer crowds the conversation on narrow screens.
- LAN changes restart the daemon with the new bind address. The browser pairs itself before authentication turns on, reconnects with current credentials, and refreshes the pairing code afterward.
- Browser pairing sends the required device username. Revoked clients return to the connection screen. Duplicate starts share one connection handshake.
- Provider search and distinct Kimi Global/China labels make configuration easier to find. Custom endpoints show daemon configuration instructions instead of an unusable API-key field.
- Saving a provider key no longer waits for model discovery. Busy buttons block repeated submissions.
- Viewing the Connect authorization page does not create a client session. Authorization happens only after an explicit form submission.
- Open conversations stay marked read as activity arrives. Section titles have an accessible input label, and profile navigation no longer presents incorrect tab semantics.
Packages
The full app includes the daemon source and runtime installer. The client-only app connects to a daemon elsewhere.
Artifacts are under apps/desktop/release/0.1.3/full and apps/desktop/release/0.1.3/client. Each contains Apple Silicon and Intel DMGs and ZIP archives, with updater metadata.
These local builds use ad-hoc signatures, not Apple Developer ID signing or notarization. They may trigger Gatekeeper warnings. The website download manifest remains unpublished. No release tag, upload, or deployment was performed.
Verification
- Backend: 135 tests passed; the opt-in Connect integration test was run separately and passed against temporary local storage and fake tunnels.
- Web: 64 tests, typecheck, and lint passed.
- Connect: 18 tests, typecheck, and lint passed.
- Desktop: 22 unit tests and typecheck passed; packaging scripts: 4 tests passed.
- Both final Apple Silicon packaged apps passed the desktop smoke flow: bot creation, a real model reply, and a second conversation. Client-only coverage includes pairing with a LAN-enabled daemon.
- All four DMGs passed
hdiutil verify; all four app bundles passedcodesign --verify --deep --strict. Bundle versions and CPU architectures were checked, and Homebrew hashes were generated from the final DMGs. - Browser checks at 390 × 844: conversation, roster drawer, provider/settings navigation, LAN on/off and automatic reconnection.
Limits
This is a tested patch, not a guarantee that every workflow is defect-free. Clean-machine runtime installation, Intel execution, signed/notarized distribution, production Cloudflare/Clerk/Neon integration, Linux packages, and update-server delivery were not verified in this local release.