- fix(desktop): suppress Windows console flashes and reject WSL bash alias (#2587) (
5afa16157) - fix(desktop): fix Windows PATH clobber and .cmd shim EINVAL (#2563) (
cca16635d) - Gate default relay auto-connect behind release flag (#2589) (
e67303f60) - fix(desktop): fast-track relay restart reconnects (#2579) (
f3f7688c3) - fix(sharing): preserve agent/team snapshot tEXt chunks through media sanitization (#2438) (
b096b0a15) - test(desktop): live relay kill/restart reconnect gate (#2583) (
6a56c8bda) - fix(desktop): retry failed initial relay dials (#2564) (
9ec52cfed) - Refine channel lifecycle settings (#2427) (
daeaf7c33) - Fix avatar upload lifecycle edge cases (#2277) (
80244f823) - fix(observer): eager archive hydration on panel open + 200-frame pages (#2574) (
8cb05028b) - chore: Omit the Model control when an optional-model harness has nothing to select (#2262) (
9cf953904) - fix(media): sanitize animated image uploads (#2524) (
8f8f5fa5a) - fix(desktop): populate team instructions when opening the edit team dialog (#2565) (
55c921124) - feat(desktop): add drag-to-reorder for community rail (#2549) (
1e68c6c05) - fix(channels): strip leading hash prefixes from names (#2250) (
d0ab3fdb0) - fix(desktop): allow skipping harness setup onboarding (#2360) (
06e3d82b0)
- fix(desktop): strip GIF metadata extensions before upload (#2425) (
47d7eb698) - feat(desktop): gate sign-out behind key backup + typed confirmation (#2424) (
fd967c6ea) - feat(desktop+acp): spawn a harness per (agent, community) pair at GUI startup — warm sockets, lazy LLM pool (#2122) (
61cc738ee) - Show team count separately in channel template rows (#2404) (
6d04d279a) - fix(onboarding): skip community profile setup for existing relay members (#2300) (
25f631870) - Unify sidebar chrome across themes (#2380) (
f8fd055b9) - fix(desktop): refresh cached channel member names (#2258) (
5a3b8176a)
- Keep avatar preview visible during upload (#2237) (
f609fcee0) - fix(desktop): keep machine onboarding for unrecognized identities after reset (#2244) (
fd55ab662) - fix(managed-agents): stale harness pin shadows runtime edits; add Restart quick action (#2252) (
ec0e450f1) - fix(desktop): surface model discovery failures in agent config UI (#2246) (
083f6d625) - Hide bundled harnesses from onboarding (#2233) (
50f441216) - Restore npub copy option for private community joins (#2232) (
9cd13f3d5) - fix(desktop): align onboarding runtime auth (#2229) (
c1de3e7c0) - fix(desktop): survive degraded networks with rate-limit-aware relay client (#2197) (
258cc9206) - feat(desktop): browse immutable repository tags (#2231) (
c11b7b611) - Update built-in agent avatars (#2215) (
396ce6473) - fix(mesh): dedupe models + retry throttled startup channel discovery (#2063) (
97b8b22ee) - fix(desktop): keep project branches after reload (#2214) (
001184395) - fix(git): make project branch workflows reliable (#2213) (
166f27be4) - feat(desktop): manage project branches (#2212) (
b2c38c775) - feat(cli): manage repository protection rules (#2193) (
f94324598)
- fix(desktop): clarify data deletion action (#2208) (
e315c498) - feat: brand authentication complete page (#2192) (
1470ac3a) - fix(buzz-acp,buzz-agent): surface stall duration and fate (#2204) (
cd6b573f) - fix(desktop): resolve activity feed showing channel UUID instead of message content (#2201) (
c5d00a35) - feat(cli): add agents archive/unarchive/archived subcommands (#2173) (
7d799206) - Simplify first-community onboarding choices (UI only) (#2194) (
6ab45d75) - Fix persisted agent defaults display (#2182) (
d538111b) - fix(timeout): unified turn-timeout fix — cap inheritance, steer renewal, activity-aware requeue, LLM stall surfacing (#2175) (
0f86a608) - fix(desktop): scope draft store per workspace relay (#2179) (
2eff2cb3) - fix(desktop): avoid forwarding click event as channel callback (#2174) (
9ed843a0) - Polish agent defaults surfaces: app dropdowns + collapsed Advanced env vars (#2184) (
8c77a0cf)
- fix(desktop): composite harness loader opacity (#2180) (
77900e69) - fix(desktop): modal sign-in + branded communities onboarding page (#2147) (
8a65d81f) - test(desktop): model membership relay in invite QR spec (#2178) (
9ab52d4f) - fix(desktop): prefer live agent mentions (#2149) (
a4dfead2) - fix(desktop): close focused threads on Escape (#2154) (
9fb1a90b) - fix: skip membership lookup for open relays (#2107) (
fc1db469) - fix(desktop): make invite QR downloadable (#2168) (
144b4f6c) - Archive managed agents when deleted (#2135) (
4d58deaf) - chore(deps): update rust crate rustls to v0.23.42 (#2151) (
984645ec) - Add Agent Config Core: harness capability model behind agent config surfaces (#2158) (
6881a337) - fix(desktop): derive default clone URL for relay-hosted repos (#2166) (
21dbd326) - fix(desktop): mask composer rounded corners (#2165) (
8024ce72) - feat(desktop): add PR merge conflict recovery (#2164) (
4fe3835e) - fix(desktop): mask scrolled content behind channel and thread composers (#2163) (
6ecc8946) - feat(desktop): add inline PR diff comments (#2162) (
73ac59a0) - feat(desktop): add commit-scoped PR review decisions (#2161) (
de2220a7) - fix(desktop): batch project work item queries (#2160) (
ba07de36) - feat(desktop): make missing project checkouts actionable (#2159) (
ac8c5261) - Fix harness default model states in onboarding (#2156) (
a6432ab1) - Reduce agent config flags to canonical behaviors + disclosure presets (#2148) (
ad990b0d) - fix(desktop): align inbox layout and draft details (#2143) (
7f769b24) - fix(desktop): scope Emacs keys to lines (#2127) (
9a251fbe) - feat(desktop): add fuzzy onboarding cards (#2141) (
e84f3fe8) - Add back action to community profile onboarding (#2136) (
1342fc56) - fix(desktop): restore channel header hidden behind shared backdrop (#2139) (
916c67d1) - refactor(desktop): rename agent config files to agent-config family (#2140) (
c5db0943) - feat(desktop): complete project git workflows (#2119) (
ed432f91) - Add owned community onboarding (#2123) (
cd0e7402) - Improve agent runtime settings (#2026) (
2b0f5e9f) - fix(desktop): refine onboarding copy (#2130) (
d04a4c97) - fix(ui): relabel agent owner attribution from "owned by" to "managed by" (#2133) (
a1e977cd) - remove relay field from invite link step (#2131) (
3881bff6) - Polish onboarding avatar capture (#2118) (
46a63a86)
- Polish onboarding runtime error states (#2116) (
31090b186) - feat(desktop): add tooltips to channel header actions (#2115) (
cab47905a) - feat(desktop): add focused thread mode (#2108) (
2d0bd6ec4) - feat(desktop): polish community access request (#2112) (
860263b1b) - Align intro-to-your-team onboarding (#2102) (
b6aa71789) - Add native Builderlab auth and community client (#2099) (
8908bd6b7) - Open community creation signup from desktop (#2110) (
af4b7087d) - fix(desktop): stop DMs from firing duplicate desktop notifications (#2105) (
da2e2592a) - Polish community profile onboarding UI (#2088) (
c81806d1c) - test(desktop): fix Escape-before-mount race in channel browser e2e (#2101) (
d011c3f74) - style(desktop): match PendingInviteGate to startup interstitials (#2097) (
68bd8630e) - Remove additional agents gallery (#2098) (
836cf5f6e) - fix(agents): stop the reply loop and the premature kickoff closer (#2094) (
284a76c1c)
- fix(desktop): recover first community joins (#2087) (
775cf672d) - fix: recover community access visibility (#2074) (
ca384d082)
- fix(desktop): onboarding defaults — API key field and model search (#2081) (
741610f13) - feat(desktop): show agent owners in messages (#2080) (
463db6de3) - fix(desktop): restore onboarding provider choices (#2079) (
b18a79476) - Fix Claude onboarding terminal popup (#2078) (
f125f0868) - fix(desktop): complete request access flow (#2073) (
426497a18) - fix(desktop): preserve profile descriptions across communities (#2068) (
0dda0ad2f) - Fix membership-denied community onboarding recovery (#2072) (
f347dcac2) - feat(desktop): add channel archive and delete actions (#2067) (
929d3aa12) - fix(desktop): restore channel browsing and add recent sorting (#2065) (
2cb7753fa) - feat(desktop): polish onboarding harness (#2039) (
66a0f7bcb) - Expose model selection for provider-locked runtimes (#2071) (
3ad180a60) - Speed up the Welcome kickoff and show the team arriving (#2066) (
1fdb73e17) - Add identity key help and reveal toggle to machine onboarding (#2064) (
1bdd93849) - fix(desktop): keep Private toggle when picking a channel template (#2070) (
89bcbd826) - fix(agents): explain why Create/Save is disabled and fix Codex/Claude gate (#2050) (
87dc4dccb) - fix(desktop): recover relay-closed subscriptions (#2060) (
79598bdb3)
- Polish private key onboarding texture (#2051) (
7873135a0) - Fix community profile onboarding back navigation (#2058) (
385dde113) - fix(desktop): route text copies through native clipboard (#2054) (
9f8285095) - BOT-1359: Continue onboarding after key import (#2056) (
738d45636) - fix(desktop): route first community deep links into onboarding (#2055) (
34ef70263)
- fix(desktop): honor selected onboarding runtime config (#2047) (
0bbcafe9e) - Polish community onboarding flow (#2048) (
2ea71de24) - fix(desktop): retry transient runtime installs and repoint Goose to official upstream (#2046) (
51c2d1ca6) - fix(agents): anchor active-turn timer to authoritative start time (#2033) (
4be5c6ae3) - Add preferred runtime onboarding (#2040) (
c19e0ce2d) - fix(desktop): limit channel composer blur to input (#2038) (
0e0383601) - Bug-bash round 2: table scroll, Goose instructions, workflow mention wake (#2034) (
64b8fea6d) - feat(desktop): clean up Agents page copy and streamline agent defaults (#2031) (
3e80b7666)
- fix(desktop): restore Doctor ACP login discovery (#2017) (
e179f88ad) - feat(desktop): animate starter team onboarding (#2032) (
1aab50e95) - fix(desktop): include exe dir and ~/.local/bin in provider discovery (#2007) (
ac404ba67) - fix(desktop): close mention popup after an exact name + trailing space (#2030) (
fb0a4d5e7) - test(desktop): harden observer archive policy regression coverage (#1994) (
fd2eaac73) - Bug-bash: mention/code-span, feed titles, autocomplete, edit-mentions, draft routing, and right-click media Download (#2027) (
084e442d2) - fix(desktop): keep mesh allowlist on transient roster query failure (#2024) (
f205e6693) - Polish Buzz theme and sidebar (#1971) (
2121fd045) - Welcome new users with a live agent team kickoff (#1998) (
85fc64835)
- fix(desktop): compare relay media origins case-insensitively so uploads render when the saved community URL has uppercase characters
- fix(desktop): invalidate stale media lookups so an in-flight relay-origin fetch cannot repopulate caches after a community reset
- fix(desktop): proxy authenticated relay media after cold-start community initialization
- fix(desktop): keep shared-compute consumers admitted (WIP: multi-workspace publishing) (#2000) (
5d77fa57) - feat(desktop): reskin provider, config, community, profile, and team onboarding pages (#2003) (
f054df73)
- Fix policy receipts for cold-launch invite links (#2005) (
1d8d006a) - Preserve persistent agent audience order (#1989) (
fb8e6827) - feat(desktop): create channels in sections (#1996) (
9b649740) - feat(desktop): graduate community rail (#1995) (
f06b59ff)
- feat(desktop): onboarding step dots, identity/key page restyle, overflow scroll (#1993) (
f2522995c) - chore(desktop): add AppShell.tsx file-size override to unblock main CI (#1992) (
db57bc8a2) - feat: add invite QR and mobile direct join (#1957) (
648cbf361) - feat: open add community from deep links (#1970) (
adb48311e) - fix(desktop): enforce observer archive policy reconciliation on internal builds (#1923) (
896974554) - feat(desktop): streamline nostr identity pairing (#1974) (
1eae8575e) - feat(desktop): ensure starter channels during onboarding (#1937) (
74f3f2975) - test(desktop): make omission-preservation test discriminate on instructions (#1988) (
2b015cb5d) - fix(desktop): omission must not wipe team persona_ids/instructions (#1985) (
1e91fd473) - [codex] Prevent actor-tag UI impersonation (#1931) (
c540ec967)
- Restyle onboarding: branded landing screen, yellow/gradient backgrounds, new starter avatars (#1982) (
831c80c1a) - Guide CLI installation and subscription sign-in (#1980) (
8d3666c5f) - unify channel add + search into one entry point (#1964) (
3dd236eb6) - Apply optional relay join policy across join flows (#1894) (
6c2d66757) - fix(desktop): preserve relaunch through mesh shutdown (#1966) (
a1626f96c) - Persist agent audiences with native inline mentions (#1949) (
19dc33bda)
- fix(desktop): restore default community join option (#1969) (
a84fe13a8) - feat(desktop): refine Projects navigation and overview hierarchy (#1956) (
158259d95) - Log handoff token counts (#1954) (
ca8324d2c) - fix(onboarding): add Welcome finalize skip escape hatch (#1960) (
7ed6422c1) - Welcome channel: Browse channels card, browser sorting, shortcut hint placement (#1948) (
f20d79658)
- feat(desktop): confirm invites with an Opening-invite loading gate before machine onboarding (#1950) (
2510a4b4c) - feat(desktop): remove theme selection from onboarding, default to Buzz + System (#1947) (
2c08271ba) - fix(desktop): sentence-case runtime descriptions in onboarding setup (#1944) (
36c3c4994) - feat(desktop): Projects v3 — overview redesign, activity feed, agent access & sync controls (#1851) (
72a5c388d) - Rework first-launch community onboarding (#1936) (
8688c0416) - fix(desktop): stop marking users away while active on the machine (#1942) (
e1865cb7f) - fix(desktop): variant-aware connecting gate for first-run handoffs (#1938) (
dd39b6249) - Redesign agent AI configuration and defaults (#1935) (
2910ea45d) - Add Buzz-managed Node runtime for agent installs (#1930) (
0722346b1) - feat(desktop): return nostr binding proof in browser fragment (#1933) (
ccf7f1a2d) - Use selected relay for desktop pairing socket (#1934) (
91be66a2d) - fix(desktop): allow editing built-in agents (#1928) (
202201f3a) - fix(desktop): load downloaded mesh runtime on signed macOS builds (#1932) (
32957692e) - feat(media): require auth for relay media reads (#1926) (
f30876285) - fix(desktop): remove superseded built-in agents (#1929) (
dbf2cfc21) - Move agent AI defaults into Settings (#1919) (
3e90dd5dd) - feat(desktop): add Honey and Bumble starter agents (#1925) (
335413461) - feat(desktop): expand owned team mentions (#1918) (
470458d32) - Fix live agent reactions in Inbox and channels (#1921) (
8212a8723) - refactor(desktop): unify page/section header hierarchy across Agents and Settings (#1912) (
7fbdacb03)
- Polish agent and team sharing and snapshots (#1852) (
2f3fa586f) - fix(desktop): filter punctuation from avatar initials (#1904) (
63e099709) - fix(desktop): preserve snapshot attachment URLs (#1905) (
1ab7bbfe4) - Chat-first agent creation via portable buzz CLI drafts (#1878) (
54e174b5e) - feat(desktop): enable community rail by default (#1902) (
55a46b063) - feat(desktop): redesign Nostr bind verification flow (#1850) (
abfe78aaf) - fix(desktop): simplify sign out settings row (#1903) (
3e8dae7ff) - feat(desktop): Send feedback modal + profile presence chip (#1756) (
f5c33d333) - fix(desktop): seed timeline virtualization row heights (#1887) (
406cf7911) - fix(desktop): dedupe react-dismissable-layer to stop modal menu → dialog freezes (#1899) (
366567ac2) - fix(desktop): clean up Remind me later dialog footer and loading state (#1898) (
40fe65095) - fix(desktop): let sidebar action card description wrap over multiple lines (#1891) (
b36ee3e30) - mesh: upgrade runtime, enforce membership, add shared compute provider (#1656) (
54638ff4b)
- test(desktop): remove stale collapsed home chrome check (#1871) (
395a3f149) - fix(desktop): hide message action for inaccessible agents (#1883) (
8ce9e7914) - feat(desktop): add API key field, global default indicators, and collapsed advanced (#1875) (
1742dce7b) - fix(desktop): foreground app for deep links (#1880) (
a26168f55) - chore(desktop): replace setup ? operators with clean exit (#1882) (
4c106d878) - fix(desktop): remediate all onboarding dead paths (D1-D7) (#1856) (
5bb619295)
- fix(desktop): allow staged updater commands (#1870) (
109c2c526) - feat(teams): unify team model, snapshot sharing, and PNG memory parity (#1846) (
448baeef7) - fix(desktop): always start agents and hide unavailable mesh (#1860) (
37bc962cb) - Relay mesh: cross-pod tunnel + huddle transport (buzz-relay-mesh) (#1670) (
ccb021d71) - feat(desktop): add Sign Out to Settings to reset and relaunch (#1842) (
cf9723796)
- Stabilize persona and stream end-to-end tests (#1865) (
916de4e4d) - refactor(clients): standardize product naming on community (#1858) (
3e76481a1) - fix(desktop): retain live rows after window exhaustion (#1810) (
fa6f4819b) - Add private product feedback sidecar (#1857) (
af190c93e) - fix(desktop): resolve Doctor install shell and command detection on Windows (#1854) (
1aec7ea7a) - fix(desktop): navigate to channel from inbox thread header (#1847) (
ff11f26bc) - feat(desktop): surface needsRestart badge on live UI surfaces (#1853) (
b1d323c4e) - fix(desktop): prevent menu-to-dialog UI lockups (#1839) (
7f81d93eb) - feat(desktop): add conversation-style DM composer (#1768) (
bb9d9b0c0) - feat(push): add public APNs gateway (#1770) (
1c006822e) - fix(desktop): stabilize agent identity restore (#1831) (
3370cd083) - fix(observer): align scroll-anchor ids with transcript display-block keys (#1849) (
1df4a4e77) - [codex] Add view activity label to agent popover (#1748) (
458c7f915) - ci(desktop): surface flaky E2E tests instead of retry-masking them (#1838) (
a65340630) - fix(desktop): treat channel creator as member before 39002 provisioning (#1830) (
7e62a25af)
- fix(desktop): unify observer feed scroll onto useAnchoredScroll (#1825) (
d75c2e913) - fix(desktop): sync sidebar update card copy with global installing state (#1827) (
b63a2e423) - fix(desktop): parse codex ACP plan entries[] into checklist (#1824) (
34dcd13d5) - fix(desktop): resolve Git Bash for Windows shell tool via PATH/git/registry fallback (#1821) (
020ac7f40) - feat(desktop): show read-only MCP server config (#1780) (
51ee1c473) - fix(desktop): require user action before applying updates (#1820) (
deed64a14) - fix(desktop): preserve selected inbox rows through reflow (#1817) (
c06ddcf14) - fix(snapshot): send Buzz shares as PNG avatar cards (#1811) (
a6cfd6551) - test(desktop): consolidate and stabilize scroll coverage (#1815) (
d41b4c390) - fix(buzz-agent): support max effort for gpt-5.6 family (#1806) (
e34e0974a) - fix(desktop): widen probe test timing margins for parallel pre-push (#1812) (
fac79215a) - fix(desktop): keep pairing tests after production items (#1807) (
68909629f) - chore(deps): update rust crate nostr to v0.44.4 (#1789) (
f1f5002a9) - Add optional standalone pairing relay to Helm chart (#1799) (
9b47c8548) - chore(ci): lint desktop Tauri crate in CI (#1801) (
bea507d8a) - fix(desktop): preserve live events and window order across channel refreshes (#1802) (
e09e94ab8) - fix(desktop): restore macOS navigation chrome alignment (#1797) (
109800fe5) - fix(desktop): omit invalid snapshot imeta thumbnails (#1800) (
b32f2c08f) - fix(desktop): centralize known-agent trust set in useKnownAgentPubkeys (#1703) (
095f3c728) - chore(deps): update all non-major dependencies (#1778) (
221aceb1c) - fix(desktop): pass augmented PATH to codex-acp version probe (#1794) (
10ae66893) - feat(desktop): add team snapshot sharing commands (#1790) (
150514f66) - feat(managed_agents): add buzz-team-snapshot v1 codec (#1784) (
aceb5e045)
- feat(desktop): auto-restart setup-mode agents after adapter install, badge drift fallback (#1786) (
11a286b9a) - Retain a stable message window in channel timelines (#1698) (
b0ad2b66d) - refactor(desktop): remove legacy persona-card flows (#1781) (
1fa91f569) - Serialize managed agent PATH tests (#1777) (
1fc7488ea) - fix(desktop): stable inbox selection and scroll/draft preservation (#1760) (
7e3252ea3) - feat(desktop): add buzz-agent-snapshot v1 export, import, sender-native send, and recipient card/import (#1753) (
1580046b3) - refactor(desktop): remove vestigial MCP toolsets config (#1776) (
dfec75b3c) - feat(desktop): add key backup and agent defaults to onboarding, make avatar optional (#1767) (
d2e87e1ca) - fix(desktop): correct provider and model handling in agent config dialogs (#1764) (
f3319dd11) - fix(desktop): cascade persona deletes and restart agents on global config save (#1766) (
7c346d7f8) - fix(desktop): make doctor installs retryable with per-runtime progress and auth status (#1765) (
25bb71475) - fix(codex): swap to @agentclientprotocol/codex-acp 1.x + detect outdated adapter (#1750) (
6d1a77e49) - fix(desktop): show thread replies loader (#1773) (
e07e02c0e) - fix(desktop): restore multi-image mosaic galleries (#1769) (
2c41e9e6b) - Group channel membership events (#1713) (
5dc70bd0b) - Fix desktop launch motion and reaction spacing (#1717) (
89e2e2e4a) - fix(desktop): align sidebar search across themes (#1712) (
53c177e34) - fix(desktop): Buzz theme flicker, white bar & accent-picker motion (#1681) (
5e15a588e) - feat(desktop): surface Team Instructions as distinct observer section (#1759) (
56d822dc2) - fix(desktop): separate system prompt from turn context (#1754) (
84ec63aa2) - fix(desktop): preserve archived observer history (#1752) (
51234bd89) - fix(desktop): surface codex config-parse failures and -32603 internal errors clearly (#1745) (
ec3762552) - fix(desktop): fix workspace rail badge disappearance and persist mark-as-unread (#1747) (
e8df6ba69) - chore(desktop): remove container-only npm-preflight E2E harness (#1749) (
9895b4d39) - fix(desktop): preflight npm prefix writability in doctor installs (#1732) (
58aee8f91) - fix(workspaces): exclude muted channels and unfollowed threads from rail unread badge (#1738) (
ea1c75b0d) - feat(desktop): add explicit Edit avatar CTA in agent instance edit dialog (#1736) (
26966aace) - fix(observer): order system prompt below current-session divider on restart (#1734) (
67a2d047e)
- feat(desktop): default observer archive on for dev-nest builds (#1726) (
d9e4edbbf) - feat(desktop): thread baked build env into global agent config UI (#1722) (
2f2ad409a) - feat: relay invite links (mint + claim + landing page + deep link) (#1668) (
2e529aab7) - fix(desktop): pass GlobalAgentConfig to spawn_config_hash in tests (#1721) (
b97777350) - feat(desktop): global agent config defaults with readiness/spawn parity (#1448) (
77c08365e) - fix(desktop): remove "Remove all stopped" bulk action from agents menu (#1720) (
651efe8d9) - fix(desktop): retire single-member built-in Fizz team (#1718) (
f12bd3689) - fix(desktop): hide relay mesh option when mesh-llm feature is absent (#1719) (
f0b8f806f) - fix(desktop): propagate agent definition edits to instances and remove dead config knobs (#1715) (
1f48860b7) - perf(desktop): thread panel rebuilt on every render — fix memo + add typing-latency benchmark (#1652) (
9b2f0c8cb) - fix(drafts): stop clearing drafts on workspace switch and hide sent section (#1708) (
e2d104f66) - fix(inbox): reply at same thread level as inbox item (#1714) (
177fc30be) - fix(desktop): make @mention clicks reliably open the profile panel (#1705) (
5f0d8309d) - fix(desktop): walk ancestor chain in orphan sweep exemption (#1711) (
7fb215c4f) - fix(desktop): stop showing /dev/null in diff labels, keep type badge visible (#1704) (
868c9ad05) - perf(desktop): stop re-rendering the app shell on every keystroke; fix two latent cache races it unmasked (#1692) (
129c91a2b) - fix(observer): widen live subscription lookback to capture session/prompt (#1710) (
715df2537) - test(desktop): stabilize custom emoji e2e (#1685) (
20c40d176) - fix(observer): use lifecycle item title as verb instead of hardcoded "Status" (#1709) (
95bc640a5) - chore(desktop): remove dead archive-migration and keyring load_readonly helpers (#1701) (
389a956e0) - fix(desktop): stop losing imported identity on every launch (#1568) (
e15f06857) - fix(desktop): use augmented PATH for readiness probes (#1613) (
94ec2c2bc) - fix(desktop): isolate dev keyring from production and make BUZZ_SHARE_IDENTITY keyring-aware (#1680) (
e5d215e3c) - fix(desktop): migrate Databricks V1→V2 records at boot and fix readiness gate (#1686) (
1f2afce29) - B5 residue: inbound-event security hardening + persona→agent copy sweep (#1688) (
f0e65589a) - fix(desktop): paginate complete channel directory (#1690) (
b41cf3ffc) - fix: flush debounce on Tab/Enter to prevent stale autocomplete (#1661) (
841282141) - fix(desktop): preserve agent timer state across workspace switches (#1679) (
46613dcce) - fix(desktop): honor macOS title-bar double-click preference (#1674) (
6b2147a5d) - feat(desktop): projects overview v2 — aggregate rail, PR review flow, commit detail, and straighter layout (#1677) (
58fe9388c) - B5: one create path — behavioral quad activation, backfill, menu collapse, legacy dialog deletion (#1667) (
3a7e40027) - Polish Buzz sidebar theme (#1671) (
cdba2a08e) - fix(agents): harden structured error-code classification edge cases (#1663) (
fc8a17445) - feat: add deeplink nostr identity binding flow (#1648) (
cecd03142) - perf(desktop): cache parsed markdown across channel-switch remounts (#1635) (
2b3246934) - fix(agents): surface provider errors structurally instead of raw dumps (#1653) (
9b244ff22) - feat(relay,desktop): canonicalize agent definitions on kind:30175 (Phase 2) (#1655) (
b2c63291f) - fix(desktop): scope observer feed by channel and add session-boundary dividers (#1634) (
fd5d04de0) - feat(config-nudge): distinguish install/auth state in cli_login nudge cards (#1633) (
4f1a487ab) - fix(desktop): async-ify the auto-restart setter after the perf-sweep merge collision (#1651) (
dc7ececdc) - feat(desktop): auto-restart agents on config change (Chunk F) (#1649) (
a415f0f31) - perf(desktop): GUI performance sweep — async offload, poll reduction, render stabilization (#1641) (
2cc0eb539) - fix: user search returns zero results for partially typed names (#1603) (
11608ef67) - copy(desktop): finish the persona→agent rename in rendered UI (B4.1) (#1647) (
577fc8df5) - Community moderation UI: integration branch (data layer + member surface base) (#1617) (
c9c868b25) - Community moderation Phase 1: reports, bans/timeouts, audit, tombstones, relay-DM notices (#1616) (
863aeb79f) - copy(desktop): the word "persona" leaves the UI (Phase 1B.4) (#1646) (
41b187f93) - feat(desktop): flapping bee on the setup loading screen (#1631) (
c145037aa) - fix(desktop): make ⌘K open the composer link editor for selections (#1644) (
3e982fd37) - fix(linux): make AppImage work on Mesa 25+ / GLib 2.88 distros (#1567) (
563dab92e) - fix(desktop): add unread dot to workspace rail for channel unreads (#1637) (
f968601ef) - refactor(desktop): converge the three definition→instance mappings (Phase 1B.3.5) (#1645) (
9683ef807) - Hide non-invocable member agents from @-mention autocomplete (#1611) (
f929aa09e) - fix(desktop): clamp HDR avatar images to SDR range (#1642) (
fa816d5bf) - refactor(desktop): definition-edit routes through AgentDialog — single dialog entry point (Phase 1B.3c) (#1643) (
aa17294ad) - fix(desktop): refresh persona env vars on respawn — record.env_vars is overrides-only (#1640) (
79a057534) - refactor(desktop): re-host instance edit as AgentInstanceEditDialog behind AgentDialog (Phase 1B.3b) (#1639) (
8af18ee32) - feat(desktop): show full URL tooltip on masked link hover (#1625) (
01c6b8566) - fix(desktop): paint Buzz gradient on the workspace rail (#1636) (
2f1cd6771) - refactor(desktop): single-home the definition form as AgentDefinitionDialog (Phase 1B.3a) (#1627) (
48bd8abfe) - feat(desktop): unified AgentDialog create entry point with create intents (Phase 1B.2) (#1626) (
6f38db680) - Update DMG background and label size (#1629) (
5b1a53ceb) - test(desktop): deflake mid-scroll older-history spinner smoke test (#1632) (
7ff58d9af) - feat(desktop): add Buzz light + dark themes with branded sidebar gradient (#1630) (
290be2a03) - fix(desktop): render thread facepile oldest-replier-first (#1595) (
f9701a386) - fix(desktop): keep sidebar section actions visible while ⋮ menu is open (#1584) (
943d7a663) - refactor(desktop): extract shared runtime/provider/model selection + env-var helpers (Phase 1B.1) (#1624) (
4b5cac074) - feat(desktop): fold personas.json into the unified agent store (Phase 1A.2) (#1623) (
381c7714f) - fix(desktop): hash spawn config as the env receives it, not raw record fields (#1621) (
f0eb4eccd) - test(desktop): add edit-agent dialog e2e coverage (Phase 1B.3b-pre) (#1628) (
a609e796b) - feat(desktop): unified AgentRecord groundwork — record-first resolution + runtime materialization (Phase 1A.1) (#1618) (
5dce80aff) - fix(desktop): backfill edits for thread replies so edited replies survive refetch (#1610) (
d1f3194e7) - chore(desktop): clear desktop-tauri clippy backlog (#1612) (
36fd41c5c) - fix(desktop): restrict shared-agent sync to dev data dirs (#1597) (
e5f831d2c) - feat(desktop): restart-required badge from spawn-time config hash (#1602) (
cc42a4979) - feat(desktop): boot-time reconcile of managed agents to relay events (#1601) (
c5a541ee2) - feat(desktop): canonical component — hover to view/copy full keys, owner "you" labels (#1589) (
777babf39) - fix(desktop): hydrate reactions for Inbox context messages (#1596) (
cdf982bdb)
- fix(desktop): preserve agent model/provider when persona snapshot fields are blank (#1583) (
a3ee2c569) - feat(acp,desktop): identify and reap stale agent harness processes (#1582) (
3c6c0d447) - feat(desktop): active-draft badge, send-from-drafts confirm dialog, thread-deleted state (#1581) (
b394e95ef) - fix(desktop): treat baked build env vars as satisfying required agent config (#1580) (
b90e80443) - feat(desktop): add "Copy image" to image right-click context menu (#1579) (
683f7fec1) - fix(nest): use buzz-dev symlink name for dev builds (#1587) (
dcbb3ff78) - fix(composer): address image-editor follow-up nits on #1491 (#1565) (
49391d807) - fix(desktop): render black static boot screen (#1570) (
10444d248) - feat(agents): group activity tool bursts (#1571) (
426f04484) - feat(desktop): aggregated overview rail, commit detail page, and full breadcrumbs (#1573) (
c97263901) - fix(desktop): fetch profiles for reaction actors and thread-reply authors (#1550) (
62def1459) - refactor(desktop): unify EditAgentDialog styling with PersonaDialog (#1540) (
c258ffc4a) - feat(desktop): add 10-minute message grouping window (#1578) (
564ead385) - feat(desktop): unify sidebar section actions into a per-section ⋮ menu (#1577) (
d94561795) - feat(desktop): emoji avatar picker for agents + reliable picker scroll (#1576) (
ed84a8735) - fix(desktop): sync derived active-turn liveness in channel activity path (#1492) (
1f5ba5bb2) - fix(personas): remove goose runtime pin from Fizz built-in (#1566) (
e3008b360) - feat(acp,buzz-agent): thread model name through NIP-AM kind 44200 emit path (#1564) (
08e707eb5) - sync channel sort preferences across clients (#1556) (
04a9d1029) - fix desktop canvas header blur in split channel management (#1558) (
2ef26ec21) - feat(composer): compose spoiler, annotation, and tooltip controls (#1491) (
1aa87bb26) - feat(channel list): add persistent channel sort toggle (#1505) (
36ac5243f)
- chore(deps): bump crossbeam-epoch to 0.9.20 for RUSTSEC-2026-0204 (#1563) (
75b52ad7e) - fix(archive): atomic remove-kind path + split test modules (#1562) (
484bede75) - feat(archive): add agent turn-metric (kind 44200) local archive (#1555) (
429f54b4f) - feat(desktop,buzz-acp): add harness-agnostic config bridge and setup-listener mode (#1411) (
d8355d318) - fix(desktop): stop edit-channel dialog hanging on "Saving..." (#1557) (
76806cb1f) - feat(archive): add local-save archive with observer-feed default-on option (#1442) (
711078807) - feat(desktop): add Slack-like Drafts inbox with persistence and image fix (#1539) (
4c598dcef) - fix(setup): fix syntax error in seed-local-community.sh (#1547) (
3729a6515) - feat(desktop): add right-click context menu to workspace rail (#1552) (
0e87998f8) - fix(desktop): restore saved window geometry on launch (#1554) (
e790c9828) - feat(desktop): add typeahead search to persona model dropdown (#1542) (
3b43743e1) - fix(desktop): publish new agent profiles to active relay (#1546) (
346efe08b) - chore(desktop): use dot access for host header assignment (#1548) (
ccfdf45bc) - fix(onboarding): guard against webkit2gtk WAL race with explicit profile-event signal (#1508) (
c2ee4d162)
- fix(desktop): keep thread-summary badges mounted through scrollback prepends (#1533) (
6abf614fd) - refactor(shell): drop bundled PortableGit, add BUZZ_SHELL override + dialect hint (#1536) (
cfa208983) - feat(nips,relay,acp): NIP-AM durable encrypted agent turn metrics (kind 44200) (#1441) (
71265ca36)
- fix(desktop): sync agent relay profile when persona avatar changes (#1512) (
ce901f7c1) - feat(desktop): redesign appearance settings with mode-first theme picker (#1528) (
9e773f103) - fix(deps): restore windows-* crates downgraded by chrono bump (fixes Windows Rust on main) (#1532) (
d40837085) - chore(renovate): stop rebase churn between weekly sweeps (#1530) (
a8238cd67) - fix(deps): unversion isomorphic-git pnpm patch key (#1529) (
2a24765fd) - chore(deps): update dependency @tanstack/react-virtual to v3.14.5 (#1523) (
b66a53f5b) - chore(deps): update redis to v1.2.2 (#1049) (
f1b29140c) - feat(desktop): restore section icon/emoji picker (#1516) (
232b6066c) - chore(deps): update radix-ui-primitives monorepo (#1524) (
dc383c199) - fix(desktop): stop Leave-channel dialog from freezing the app (#1482) (
668d30b0c) - perf: lazy-load avatars and message images (#1517) (
d09d7dea5) - Live thread-summary push: badge counts update on reply ingest (#1521) (
74a30c3de) - chore(deps): update all non-major dependencies (#1163) (
a255a7735) - chore(deps): update rust crate anyhow to v1.0.103 (#1525) (
26d609cbe) - chore(deps): update cashapp/activate-hermit digest to cea9af7 (#1522) (
19d98319a) - chore(deps): update rust crate chrono to v0.4.45 (#1050) (
3caa66d4f) - chore(deps): update actions/cache digest to caa2961 (#1341) (
8dea817fa) - chore(deps): pin dependencies (#1162) (
4b01040af) - feat(desktop): replace placeholder icon with actual app icon on welcome screen (#1527) (
5b88e5956) - feat(desktop): enable native spellcheck in message composer (#1515) (
a1b5983e5) - fix: let agent owners delete their agent's messages (relay kind:5 + desktop/mobile UX) (#1519) (
642800548) - chore(desktop): bring ChannelScreen back under the size gate (#1520) (
8174f2b0a) - fix(zoom) desktop chrome clearance under text zoom (#1490) (
ee4c9ef13) - fix(activity panel): handle back navigation (#1487) (
caf644eda) - Port channel windows to mobile (#1518) (
6716cd31a) - perf: GIN index for e-tag containment + delta profile fetch (scroll-back ~2.1s/page) (#1514) (
33886e3de) - GUI read-model overhaul: server-assembled channel windows (Correct™ pagination + relay-signed bounds) (#1500) (
62bb9fe8c) - feat(desktop): show activity timestamps on demand (#1506) (
c7a8b0bab) - feat(reconnect): replace top banner with animated sidebar overlay (#1510) (
f35aeb798) - docs(nest-skill): explain agent-owned git repos and automatic auth (#1437) (
20d3cdc22) - fix(agent): make stop-hook rejection budget per-prompt, fix stale hook docs (#1503) (
4a0951042)
- fix(desktop): bound read-state localStorage growth and recover from quota errors (#1502) (
a3cf7eec1) - Customize macOS DMG installer (#1496) (
bbf8d8912) - mobile: thread scroll-to-bottom and desktop-parity mention autocomplete (#1499) (
e9318f66d) - fix(agent): honor stop hook retry budget (#1501) (
1c297d2f2) - feat(profile): embed live activity feed in profile aux panel (#1380) (
654b6c374) - feat(desktop): contribution heatmap and graphical cards on projects overview (#1497) (
204a0fd2e) - feat(desktop): repository-first projects with git workflows (#1471) (
8e3c0ee95) - fix(desktop): lock horizontal webview pan (Magic Mouse side-scroll) (#1480) (
5d4edf153) - Add agent catalog modal (#1302) (
228122fdd) - fix(desktop): actually close relay sockets — plugin:websocket|disconnect does not exist (#1481) (
e70dd1a1e) - feat(buzz-agent): config parity — thinking effort, model switching, normalized token limits (#1470) (
3e282a241) - fix(sidebar): scope channel sections storage to relay URL (#1477) (
f9d06ae21) - chore(mobile): declare non-exempt encryption usage in Info.plist (#1474) (
453b8b1e4) - fix(desktop): bind channel and thread context at compose time to prevent wrong-channel send (#1472) (
d369ca9df) - fix(relay-reconnect): resilient reconnect with fast-path, escalation, and polling (#1456) (
02ff06cac) - feat: per-community workspace icon set by admins, served via NIP-11 (#1463) (
5bfd5ca27) - perf(relay): batch outbound websocket data frames (#1464) (
01b92faa1) - Make reaction ingest atomic (#1458) (
835302cc8) - Serialize fan-out EVENT frames once (#1459) (
3c661fb48) - fix: agent reliability — no restart on channel-add, visible dead-letter notice (#1468) (
d9c4e4aa7) - fix(profile): consolidate agent profile runtime metadata (#1451) (
c48006fc3) - fix(desktop): simplify workspace rail badges (#1462) (
e42dae3f9) - perf(desktop): instant channel switching — non-blocking first paint, persisted snapshots (#1452) (
deb3e6adc) - perf(relay): bounded-concurrency multi-filter query execution (S2) (#1457) (
a9e752e25) - fix(desktop): classify timeline prepends so history loads don't bump unread (#1416) (
9967b97f5) - fix(desktop): quiet gate for workspace switches instead of boot splash (#1449) (
b779a3ee2) - fix(read-path): reach complete threads, dense-second timelines, and all people in the GUI (#1418) (
7da936fff) - E1+E3: reduce relay ingest/fan-out DB round trips; ack p99 −7–16%, fd p99 −6–28%, p999 tails −29–53% vs PR #1453 tip (#1454) (
a504ad619) - perf(relay): defer post-commit dispatch and avoid verify clone (#1453) (
7bd3760c8) - fix(relay): include git hook tools in runtime image (#1326) (
88c089d3b) - feat(chart): per-pod emptyDir git scratch when persistence disabled (multi-replica HA) (#1450) (
c88799ac6) - fix(relay): remove media bearer-token auth (#1444) (
0701f47f4) - fix(desktop): stop search shortcut from hijacking the sidebar (#1447) (
15ad7ae87) - fix(ci): set PGSCHEMA_PLAN_* in start-relay-for-tests.sh to avoid embedded-PG fetch (#1443) (
89c4f7657) - feat(desktop): restore observer-feed regressions from #1381 and classify 4 new session/update types (#1412) (
fec768436) - fix(desktop): disable spellcheck/autocorrect/autocapitalize on emoji picker search (#1438) (
bdeab23b5) - feat(relay): add OpenTelemetry tracing, keep Prometheus metrics (#1398) (
b1d9d955d) - feat(buzz-agent): emit agent_thought_chunk for reasoning content (#1436) (
9f2a11b33) - feat(git): move repo-name registry to Postgres + relax RWM chart gate (HA relay) (#1432) (
e5aa4a213)
- Group consecutive desktop messages (#1429) (
3d08c3b0) - Update Buzz app icon (#1430) (
db2a9701) - feat(desktop): add workspace rail unread observer (#1428) (
ce1f13e8) - Prioritize channel members in mention autocomplete (#1431) (
8fb33bdb) - Tighten message density (#1426) (
6a08a3f4) - Tighten sidebar section actions (#1424) (
c0e10d67) - Add memory copy actions (#1427) (
6c0e6f0b) - Limit agent profile quick actions (#1425) (
177fe5a3) - Fade sidebar pinned chrome edges (#1423) (
3e4e9dda) - Apply smooth corners to inline media (#1422) (
2fc8b9cf) - Align thread summary rows (#1421) (
4ae5a0d5) - Keep channel day dividers sticky (#1420) (
8c388479) - fix(deps): pin aws-creds to fork with EKS Pod Identity support (#1419) (
86d6388e) - fix(relay): enable Redis TLS for rediss:// (ElastiCache) (#1417) (
3292b502)
- fix(desktop): stabilize channel-timeline scrollback with per-row height reserves (#1413) (
4fdc68f1) - fix(sidebar): trim working badge label and name working agents in tooltip (#1408) (
697f63dd) - Mobile tab bar polish (#1368) (
c444e344) - feat(desktop): let thread pane expand on ultrawide monitors (#1407) (
f86f97bb)
- fix: close cross-process keychain race and namespace dev-build nest (#1409) (
e8adc3383) - feat(relay): allow agent owners to edit/manage agent-owned content (#1403) (
0042c8e10) - fix(media): support IRSA/credential-chain S3 auth and configurable signing region (#1406) (
06ef533ec) - fix(desktop): fold baked build env into in-process model discovery (#1376) (
f061ae9c8) - docs: link VISION_ACTIVITY from the VISION index (#1405) (
aa1042b16) - test(desktop): gate keychain-write test behind --ignored (#1404) (
36f32291e) - Refactor oversized mobile widgets (#1401) (
71b2c41e9) - perf(desktop): stop beachballs on agents menu and thread open (#1402) (
34d61acc9) - feat(desktop): rebuild agent activity feed around a classifier registry and twelve render classes (#1381) (
5cc09e698) - fix(thread): stop mid-scroll content jump in live threads (#1397) (
42ec17f13) - fix(ci): restore main to green — tauri fmt, personas.rs file-size split, Windows path test (#1399) (
67c47de69) - fix(desktop): enable buzz-dev-mcp MCP server for Codex agents (#1394) (
b74ed858f) - fix(ci): restore E2E flakiness fixes for pgschema, docker-pull, and spec timing (#1396) (
fdf29c457) - fix(personas): persist pack-backed persona UI edits across reboot (#1392) (
a7e1202cc) - fix(buzz-acp): clear steer_rx on all run_prompt_task exit paths (#1391) (
10aaa72f0) - Restore channel date divider rule (#1395) (
0827171d5) - Speed up profile wave action (#1379) (
2fc5dd35b) - Restore visible links for rich previews (#1378) (
8d8fc6331) - Mobile channel list polish (#1367) (
09d8965ab) - style(desktop): unify corner radii to rounded-2xl (16px) (#1393) (
2f496debc) - fix(desktop): skip keychain write when blob contents are unchanged (#1377) (
5a64ee4a6) - fix(desktop): stop clipping the agent-activity row under the composer (#1371) (
2044ad76f) - Constrain macOS overscroll to conversations (#1317) (
9b711f47a) - Mobile appearance foundation (#1366) (
945e9b879)
- feat(desktop): provider-agnostic model selection + databricks discovery (#1307) (
eacbbe880) - release(helm): buzz chart 0.1.1 (#1374) (
2561cbd06) - Harden relay attack surfaces (#1369) (
29368cf17) - ci(helm): publish chart to GHCR on chart-v* tags (#1372) (
2722ce422) - feat(buzz-agent): add databricks_v2 provider for AI Gateway v2 (#1311) (
15a73aa27) - refactor(desktop): centralize auxiliary panel shell (#1343) (
e6738c501) - perf(desktop): stop typing from re-rendering the channel pane + timeline (#1364) (
db1b617ab) - fix(desktop): check PGID in orphan sweep and signal correct process groups (#1359) (
59be27ff3) - feat(desktop): harness-agnostic config bridge (#887) (
c65989a61) - fix(acp): enable sandbox network access for Codex MCP subprocesses (#1363) (
401bb51bf) - perf(desktop): don't block channel create on channel-list refetch (#1360) (
cf57bcbea) - refactor(desktop): split global styles and markdown renderers (#1361) (
c27b4251a) - feat(read-state): multi-slot splitting + no-op suppression for oversized blobs (#1309) (
2612324fd) - fix: unconditionally replace CLI symlink on boot (#1357) (
50873ef98)
- feat(buzz-acp): steering as the default mid-turn mention delivery (#1160) (
e567491a) - Multi-tenant Buzz relay: community_id as a server-resolved key (comprehensive rewrite) (#1321) (
14fba21e) - Disable persona start while runtime discovery runs (#1353) (
92a5f1fc) - chore(deps): update dependency @tanstack/react-virtual to v3.14.4 (#1342) (
1c221eaa) - Fix sidebar unread indicator placement (#1319) (
51b2613c) - fix(desktop): un-clip hover action bar's upward bleed under content-visibility (#1354) (
7adbd05b) - Allow Huddle between 2 humans in DM (#1347) (
b58f671b)
- Polish agent runtime cards (#1327) (
a3c4f3f6) - Rework desktop message-timeline scrolling: de-virtualize + native overflow-anchor (#1338) (
4d619693) - Keep wave huddles pending for placeholder profiles (#1349) (
c1d6f3f2) - Polish profile hover cards (#1346) (
e3fc0e02) - Fix channel header shared blur layering (#1336) (
360d2e54) - Add rich link previews (#1334) (
bc925780) - Revamp new agent dialog (#1201) (
826d735f) - Image attachment gallery lightbox (#1345) (
7d3ee683) - Reset prevent-sleep cap on agent activity (#1335) (
433b1794) - docs: update sprout repository references and document buzz mem (#1333) (
52b6365e) - fix(buzz-agent): charge images a token-equivalent for the handoff gate (#1332) (
744c77bc) - Polish thread reply hover states (#1329) (
aca40b62) - Add persona and team import polish (#1203) (
f00c86e7) - fix(desktop): reserve PTT shortcut only during active huddle (#1315) (
6c60cb59)
- fix(desktop): split lib modules under size guard (#1314) (
e7d43dc2) - Fix desktop notifications on GNOME 46+ Linux (#1246) (
ca50d832) - perf(desktop): debounce channel-list refetch + profile get_channels (#1310) (
c6e3e947) - feat(desktop): move agent management into profile sidebar (#1274) (
8d40150c) - feat(desktop): re-land virtualized timeline to fix macOS beachball (#1250) (
8c3d0c92) - feat(acp): add BUZZ_ACP_ALLOWED_RESPOND_TO and BUZZ_ALLOWED_CHANNEL_ADD_POLICIES gates (#1304) (
1a61d783) - fix(read-state): enforce byte-budget eviction in currentContexts() (#1305) (
6b056461) - feat(media): transcode HEIC/HEIF to JPEG on desktop upload (#1257) (
d32f3c0a) - Bring mobile sidebar unread and DM parity (#1303) (
1843a057) - Multi-tenant relay: spec + mechanized formal proof (S1–S8) (#1285) (
2ecdcce7) - Polish side panel motion and composer alignment (#1294) (
34b2d3e8) - feat(mobile): harden unread badges and float tabs (#1298) (
59b21592) - feat(desktop): restore archive identity UI in profile panel (#961) (
4fce5aab) - fix(sidebar): non-selectable channel names + copy/leave context menu actions (#1260) (
4481f8fd) - fix(runtime): sweep node wrapper processes hosting managed agent shims (#1296) (
f072032a) - fix(buzz-agent): follow symlinks when discovering skill directories (#1295) (
8717ddf2) - chore: add grab-emoji.sh to register Slack emoji in Buzz (#1292) (
dfa864fc) - Fix cross-pod membership notification fanout (#1291) (
e1c51d71) - fix(buzz-acp): strengthen agent communication rules in base prompt (#1293) (
ccdb8975)
- feat(desktop): refresh Agents tab live on inbound relay sync (#1256) (
9a59e308) - fix(buzz-acp): inject Codex network allowlist for relay hostname at spawn time (#1287) (
0379247e) - refactor(desktop): consolidate notification helpers and add channel names to toasts (#1286) (
dd5592e3) - feat(buzz-agent): lazy skill loading via load_skill tool (#1283) (
25396c06) - fix(buzz-acp): human-aware reply anchoring to keep threads flat (#1281) (
6c920d21) - feat(desktop): add 'Follow system' theme mode (#1262) (
c996be39) - Fix mention autocomplete layout in narrow threads (#1282) (
227518c2) - Clean up screenshot e2e tests (#1284) (
2499d339) - fix(desktop): DM close button replaces unread badge on hover (#1280) (
e3663721) - Add NIP-34 git pull request CLI support (#1279) (
5fef9b72) - fix(desktop): preserve timeline scroll when opening threads (#1278) (
d05f122d) - chore: remove LLM-slop comments across the codebase (#1277) (
73cc31cc) - fix(desktop): allow saving personas with an empty system prompt (#1276) (
996a3f89)
- fix(desktop): always use legacy keyring for blob entry on macOS (#1271) (
e7c3638fe) - chore(release): release Buzz Relay version 0.1.1 (#1269) (
68a0cc850) - perf(desktop): consolidate keychain secrets into a single blob entry (#1267) (
fa942cb51) - feat(desktop): re-snapshot persona config on every agent spawn (#1268) (
048e8fdc0) - feat(relay): add buzz-admin member management CLI with NIP-43 roster publish (#1265) (
0cee0435f) - fix(desktop): fall back to old keychain when DPK unavailable (unsigned builds) (#1266) (
958ac7aaa) - Align channel management panel with profile (#1066) (
9f35b0188) - fix(relay): multi-pod subscription coherence (one access-gated fan-out path + cross-pod cache invalidation + REQ/COUNT DB guard) (#1261) (
628445429) - fix(desktop): switch macOS keychain to Data Protection Keychain (#1264) (
35522311a) - fix(desktop): use IPv4 loopback for media proxy URLs (#1245) (
cee2c5f26) - perf(relay/git): stream read-path, manifest info/refs fast path, idx sidecar (A/B/C) (#1240) (
856815994)
- fix(desktop): restore solid dot for top-level channel unreads (#1253) (
9d3bfd38b) - Allow explicit root posts from reply prompts (#1251) (
ebd74d11b) - feat: publish personas, teams, and managed agents as relay events (#939) (
d256935c3) - fix(observability): gate agent observability on declared ownership, not key custody (#1229) (
e993b9e74) - fix(desktop): split AppShell notification effects (#1248) (
a9ce477a0) - feat(desktop): store nsec private keys in the OS keyring (#1172) (
4be43d708) - fix: add evict-completed-work prompt rule and unblock desktop file-size gate (#1247) (
048228889) - fix(desktop): scope mention/add autocomplete to reachable identities (#1243) (
a3e8fb6fd) - test(e2e): raise scroll-history pagination test timeout to 90s (#1234) (
09dbeb86f) - Polish thread and media layout (#1239) (
b264a32cf) - Polish desktop navigation chrome (#1238) (
092546495) - fix: propagate persona harness edits to live agent instances (#1244) (
2e426b2fd) - fix(desktop): render autolinked message links as chips (#1241) (
45067ec13) - fix(desktop): clear unread projections from message read markers (#1242) (
733c766eb) - fix(desktop): resolve repos_dir symlink at boot before agent restore (#1231) (
86d7748eb) - Fix presence fan-out across relay pods (#1227) (
36d3d2ed1) - fix(relay): raise grace limit, add replay backpressure, and NOTICE on oversized frames (#1226) (
142a5c909) - [codex] Make relay frame limit configurable (#1225) (
38a953343)
- fix(release): publish versioned relay Docker tags via independent release lanes (#1173) (
549b7d24) - fix(desktop): align settings section headers (#1165) (
6ad68a6b) - fix(desktop): ground agent workspace, migrate legacy nest, configurable repos_dir (#1194) (
1011cea2) - fix(desktop): enable mesh llm for release builds (#1221) (
fa1262a9) - fix(desktop): move crypto commands off the main thread (#1222) (
e35e84b0) - fix: tolerate missing private_key_nsec in agent store (#1220) (
c58e9880) - Update navigation header height (#1212) (
6b5cf325) - Improve global search (#1195) (
5130a6a0) - Parse Typesense multi_search errors (#1208) (
65ccb126) - fix(desktop): keep settings shortcut from opening search (#1204) (
89ff9504) - Polish sidebar channel navigation (#1213) (
c0a872e8) - fix(desktop): restore channel unread badges (#1218) (
89aaa264) - Fix collapsed home header chrome overlap (#1215) (
b4e75a1e) - fix(desktop): dedupe welcome intro per channel (#1216) (
2a522826) - fix(desktop): defer agent page secondary requests (#1217) (
bee2d64c) - ci(release): enable Tauri auto-updater on Windows and Linux builds (#1206) (
3ef2a8e5) - Hydrate reactions for rendered messages (#1205) (
ed556f3d) - fix(desktop): show NIP-OA owners in profile pane (#1198) (
40070a58) - fix(desktop): preserve login-shell PATH for managed agents (#1193) (
29978b6f) - Fix nav chrome offset in fullscreen (#1192) (
b3b0704e) - fix(desktop): show due-reminder count in the Inbox nav badge (#1191) (
c0858dac)
- fix(desktop): collapse mark-read/unread menu into one toggling item (#1188) (
ce994df74) - fix(channels): replace thread-unread badge frontier with per-message read markers (#1178) (
28db41dfd) - fix(relay): resubscribe agents when an archived channel is restored (#1187) (
6780ea21e)
- build: make mesh-llm opt-in for dev/staging to speed up iteration (#1183) (
ce526106) - feat(desktop): default temporary channels to 7-day expiry (#1182) (
4b518fc4) - fix(desktop): render lightbox image sharply at full resolution (#1181) (
ff727af9) - fix(desktop): keep thread guides behind the reply composer (#1179) (
781d1acf) - Sort direct messages alphabetically (#1180) (
04df2c8d) - Add composer selection formatting tray (#1133) (
7dcf22d5) - fix(desktop): honor per-agent relay override, default to workspace relay (#1131) (
ea97e219) - [codex] Stabilize desktop E2E flakes (#1174) (
141f7118) - feat(desktop): show reminder author + source and click-to-navigate in inbox (#1176) (
1186ea48) - Improve inbox thread updates (#1114) (
de3f21ab) - docs(readme): mark git hosting as shipped in status table (#1175) (
26fdfb67) - feat(windows): bundle full Git-for-Windows toolchain for the shell tool (#1145) (
592508ad) - fix(buzz-dev-mcp): resolve MSYS-absolute paths in the Windows file tools (#1169) (
ec5cfa37)
- Improve thread branch display (#1166) (
342a251a) - Copy channel name from header (#1157) (
a96d173e) - docs: add product screenshots to README (#1168) (
ff976e69) - Use accent color for video timecodes (#1167) (
c243a013) - Add video playback speed control (#1164) (
f218b815) - Update README.md (
fee4b1f5)
- chore: remove block team id from Xcode (#1156) (
67fcf41b) - fix(desktop): keep channel chrome clear of window controls (#1159) (
fa10871d) - desktop: polish sidebar search dialog (#1155) (
5f79830e) - desktop: fix scrollback paging and visible history depth (#1153) (
6cca7599) - Fix ACP activity tool title detection (#1149) (
4c7df9b0) - fix(desktop): clear channel unread badges from thread reads (#1148) (
7c3e411f) - desktop: move global search into sidebar header and remove vestigial top band (#1150) (
c488d845) - Update README.md (
7c67dfa6) - Hide channel intro actions until history start (#1151) (
7aa6daa4) - fix(desktop): remount timeline scroll node per channel (#1147) (
0c5dbf34) - Render custom emoji in the inbox; DRY up emoji derivation (#1146) (
39626197) - desktop: open thread pane optimistically (#1143) (
663b554c) - fix(desktop): keep channel header search/add icons always visible (#1144) (
9c685282) - fix(desktop): show skeleton during channel switch (#1141) (
d1c3574b) - Avoid duplicate thread event fetches (#1129) (
959f2598) - desktop: restore channel browse button (#1140) (
cc8958f5) - desktop: make date dividers pill shaped (#1139) (
bee41597) - fix(desktop): align sidebar unread pills (#1138) (
59754218) - Fix display names flashing to pubkeys when loading older messages (#1137) (
c448f1c7) - desktop: keep sidebar unread pill below top chrome strip (#1136) (
aeafb0b0) - fix(desktop): restore sticky date divider handoff (#1135) (
3e9d7ff4) - desktop: drop redundant post-subscribe history refetch (#1130) (
b2bf471e)
- ci: cache Flutter pub packages in the Mobile job (#1128) (
ceb5eff53) - Delete RESEARCH directory (
a1d5570d3) - feat(cli): support ephemeral channels via --ttl on create/update (#1126) (
4f671a255) - fix(justfile): suppress grep exit code in release changelog formatter (
d40c86626) - fix(desktop): single-owner anchored scroll for dynamic loading (#1115) (
047db4214) - fix(buzz-dev-mcp): resolve non-WSL bash so the MCP shell works on Windows (#1119) (
4d2eb52a6) - ci: key main-push concurrency group on SHA to stop run eviction (#1124) (
e99105edc) - fix(desktop): seed up agent JSON files in sync_shared_agent_data (#1121) (
065625bb4) - fix(acp): emit per-section prompt blocks so observer counts every section (#1122) (
a1cf1db67) - refactor(justfile): rename, relay auto-start, bootstrap, DRY cleanup (#1117) (
1dc4fb5da) - fix(desktop): keep active-turn badges through transient relay drops (#1120) (
cf122fcf1) - Polish desktop sidebar navigation (#1107) (
7072281f6) - fix(desktop): collapse thread-unread badge on thread-open (#1118) (
0176d5f31) - feat(desktop): unify unread pills into one shared UnreadPill component (#1111) (
826945e1b) - fix(cli): use relay workflow id on create (#872) (
762ca43d2) - Fold agent core memory into the session system prompt (#1112) (
633544788) - feat(cli): add patches and issues commands for NIP-34 git collaboration (#1073) (
cd8292fe9) - fix(desktop): stop random timeline message loss + page reconnect replay (#1105) (
0181603eb) - Update README.md (
c338d8840) - fix(desktop): keep thread replies from scrolling channel (#1109) (
d24eac61a) - fix(buzz-acp): accept siblings under allowlist author gate (#1108) (
dd9ce0902) - feat(deploy): add production Helm chart for Buzz (#990) (
629fb57bf) - fix(desktop): keep MembersSidebar input usable while an add is in flight (#1106) (
aadbe6735)
- fix(desktop): stop dimming deferred message lists (#1104) (
718b596e5) - Smooth channel loading: single-surface timeline state machine (#1099) (
d47572209) - feat: surface base + persona system prompts in observer feed (#1103) (
5004758fb) - ci: move reminder e2e to a dedicated backend-integration job (#1098) (
466bb993c) - fix: give agent-observer sub a replay-capable limit (#1100) (
959fc6e9d) - fix: make managed-agent spawn and teardown portable to Windows (#1097) (
420131182) - fix(desktop): constrain message timeline width with min-w-0 (#1092) (
7de5517f1) - feat(desktop): reminders notifications, snooze, overlay, and inbox view mode (#1093) (
22b47db8e) - feat(prompt): add memory hygiene and hoist universal engineering discipline to base prompt (#1085) (
010e8022b) - fix(desktop): correct thread-unread badge flicker, stale clear, phantom count, mention gate, and nested count (#1080) (
c8e1120fc) - Fix mention chip alignment (#1094) (
4f93d52e1) - perf(desktop): virtualize unbounded lists and warm the emoji index (#1089) (
a4fbebb39) - Adjust unread pill spacing (#1091) (
3bf2ac004) - Improve image lightbox controls (#1084) (
bb9b6674e) - Use Inter for app typography (#899) (
7b0500c93) - fix(desktop): paint thread replies on open without scroll nudge (#1090) (
422a90f5e) - Polish sidebar update and relay cards (#1009) (
d4cd919b8) - Normalize desktop icon sizing (#1088) (
1a37ee395) - fix(desktop): normalize loopback host for HTTP writes and stop Reminders nav flicker (#1086) (
771086fd6) - feat(composer): link editing — inline popover, modal picker, buzz:// in-app nav (#1045) (
770266d2a) - chore(Pulse): gate Follow button behind Pulse feature flag (#1019) (
48994e01b) - fix(desktop): wrap long markdown autolinks (#1081) (
b7e22f4b5) - feat(desktop): add NIP-ER reminder UI — create, view, and manage encrypted reminders (#963) (
ff824a365) - feat(relay): add NIP-ER push scheduler with cross-pod delivery (#957) (
26563968c) - feat(relay): implement NIP-ER event reminder support (kind:30300) (#934) (
79fcfd82b) - feat(desktop): adding ui state into the history stack (#967) (
538f33341) - fix(desktop): restore timeline zoom via rem tokens + chat-as-base type scale (#1052) (
c22c54e7a) - fix(release): format changelog as linked markdown bullets (#1075) (
d879fac4c)
- feat(desktop): refine thread-unread badge to two-token form (#1069) (
de24b90aa) - fix(buzz): prevent reconnect storms from reaped ephemeral channels (#1071) (
fd2553726) - fix(buzz-acp): trim oversized observer frames to fit instead of dropping (#1072) (
5a651632d) - perf(ci): speed up PR CI wall clock and local dev builds (#1028) (
07efae7b5) - chore(deps): update react monorepo (#1048) (
56a5ac279) - Polish desktop visual details (#1067) (
9f99e62d4) - ci: use running postgres for pgschema desired-state planning (#1070) (
e3736f08b) - fix(desktop): anchor active-turn badge to skew-corrected agent start (#1068) (
2d26db6d8) - feat(desktop): add configurable transport reconnect hook (#1059) (
ba776b995) - Add automatic database migrations (#988) (
2300248d3) - Add composer spoiler formatting (#1055) (
f8715612a) - feat(desktop): in-channel and in-thread unread indicators (#1008) (
2a2c1c800) - perf(timeline): gate heavy message render behind useDeferredValue (#1022) (
cbc754cff) - Add animated profile avatars (#1031) (
116486592) - Polish direct message and members modals (#1054) (
89ae31d20) - Polish huddles UI (#1041) (
5234fc816) - Fix video review comments in threads (#1056) (
424ea7025) - Polish message reaction tray (#1002) (
81296d976) - Refine app loading skeletons (#1001) (
c30d7274c) - Polish channel modal forms (#1000) (
ee34ca818) - Normalize desktop icon sizing (#999) (
19656fff4) - Add shared skeleton loader primitives (#998) (
7a2e35521) - chore(scripts): update post-screenshots repo name to block/buzz (#1042) (
9ee5aeebd) - docs: fix stale sprout repo references in RELEASING.md (#1043) (
b2ad3074b)
- fix(release): publish rolling updater manifest for automated release tags
- fix(release): use signed NSIS installer for updates (#1036) (
4d19a5901) - handoff: pass full session history to summarizer (#1033) (
fa1cade3b) - feat(emoji): latest-set-wins union for custom emoji across desktop, mobile, and CLI (#989) (
6e4c8680c) - Fix relay NIP-11 software URL (#1030) (
5f8ab33b3) - fix(desktop): make Windows release compile cleanly (#1029) (
5c2f46e62) - Add production Docker Compose bundle (#985) (
6caa359d7) - feat(profile): show active turn badges on agent profile panel and popover (#1026) (
a32681fd4)
- fix(release): ignore prerelease tags in changelog generation (#1021) (
faf00724f) - fix: repair main build after cross-PR merge skew (#1020) (
b8c0556e7) - feat(agents): show per-turn duration and prune dead turns within ~25s of host crash (#1017) (
87e45c65b) - fix(release): replace hermit with native tool setup on Windows job (#1018) (
2fef8d664) - feat(acp): surface error-class outcomes to the activity feed only, never the channel (#1010) (
6db90514b) - fix(desktop): migrate Sprout workspace storage (#1016) (
563f68434) - feat(auth): force token refresh on rejected token (401/403), never the browser (#1015) (
5a8cc79c6) - fix(release): mark prerelease versions so they do not become latest (#1013) (
59a7e5da8) - feat(acp): implement systemPrompt with protocol version gating (#981) (
f08588245) - fix(release): update repository name check from block/sprout to block/buzz (#1012) (
d07c8216c) - feat(release): all-OS desktop builds + universal auto-update manifest (#1011) (
de641fce5) - Add relay disconnect UX: friendly errors, reconnect, cached identity (#1004) (
8c9211ffc) - feat(agents): add active turn indicators to Agents Menu (#1005) (
7983bf675) - ci: add fork guards to docker, release, and auto-tag workflows (#1007) (
39d9aa826) - docs(nip-rs): add optional thread read context scheme (#1006) (
43d1ce353) - fix(huddle): Pocket TTS quality overhaul — reference parity + cross-message pipelining (#997) (
12433077a) - Add manual ACP session rotation command (#932) (
00dc4915d) - fix(desktop): heal stale persona_team_dir paths in release builds (#1003) (
df8896f13) - ci(docker): publish public ghcr.io/block/buzz image (native multi-arch) (#986) (
1fa63bada) - fix(buzz-agent): cap tool-result text at 50 KiB with middle elision (#952) (
84f499cb6) - feat(huddle): sentence-at-a-time voice-mode guidelines for lower TTS latency (#996) (
2846a96ed) - Shard desktop Playwright CI jobs (#992) (
a1c28f487)
- Video Player Improvements (#993) (
05fc69b84) - Improve first-run welcome setup (#970) (
d9ce0943e) - fix(release): use legacy updater key secret (#991) (
50986406f) - Replace built-in personas with Fizz (#987) (
ea5a0a9b4) - docs(buzz-acp): rewrite Communication Patterns for mention accuracy and threading clarity (#982) (
654176541) - chore(justfile): build git-credential-nostr in dev and staging recipes (#980) (
a101fd6ad) - Fix Buzz command migration for saved agents (#979) (
824c55114) - fix(desktop): resolve effective model and prompt from persona in display path (#972) (
63738139b) - docs: clean up remaining Buzz references (#977) (
1bb8b8d54)
- docs: finish Buzz rename cleanup (#974) (
79bcee55c) - fix(desktop): let channel members bypass mention agent gate (#965) (
6f3733d43) - Rename desktop app to Buzz (#960) (
8f580f308) - feat(desktop): open profile panel from MembersSidebar rows (#962) (
dcb2639b3) - feat(desktop): per-event notification sounds and alert controls (#968) (
4e4dc723e) - fix(desktop): make header chrome zoom-correct and tidy split-pane (#941) (
1ca16c898) - fix(desktop): rename SPROUT_ env vars to BUZZ_ for child agent processes (#971) (
8c8312932) - fix(justfile): complete buzz rename in dev and staging recipes (#966) (
31b0665cf) - refactor: rename sprout backend to buzz (#958) (
d99ad131f) - fix(desktop): reap orphaned agent processes across instances (#954) (
53e3f0948) - Rename web app to Buzz (#959) (
c5a54dcc3) - fix(desktop): allow restarting saved relay-mesh agents from the UI (#956) (
510009c11) - feat(acp): agent timeout resilience — idle margin, tool-call reset, death notices, keepalive (#935) (
60c8c5036) - Rename mobile app to Buzz (#955) (
c63e018b0) - fix(desktop): repair team-persona mismatch and deduplicate legacy imports (#949) (
929cc8861) - fix(desktop): populate last_message_at in channel browser (#951) (
b792aa470) - Kit/circular avatars (#927) (
e5f0c3264) - fix(relay): accept mesh signaling kinds (24620/24621) via POST /events (#946) (
dbe973dac) - feat(sprout-dev-mcp): add read_file tool and replace_all to str_replace (#928) (
f49cdcdd3)
- fix(desktop): land live presence updates for not-yet-cached pubkeys (#947) (
34c8bdab1) - fix(release): make
just releaseidempotent for re-runs (#948) (5c0af0bc9) - Improve mentions for agents + people (#942) (
e9cd1c392) - feat: agent memory viewer (read-only) in profile panel (#917) (
384eb6cba) - Fix channel visibility controls (#940) (
2dc466fe0) - fix(delete): make agent-deleted messages disappear from desktop UI immediately (#918) (
3e56331e9) - Fix emoji message rendering (#938) (
e08937cdd) - refactor(desktop): consolidate packs into teams (#852) (
ba2fdbf69) - Update README.md wording (
384a34ec3) - Fix post-compact handoff context for OpenAI providers (#931) (
fe14daa5d)
- fix: persona is source of truth at spawn + thread-depth conventions (#930) (
877048d68) - fix: skip avatar reconciliation for legacy agent records (#933) (
73cd8d082) - feat(desktop): add nest commit identity guidance with human sign-off (#929) (
165b9f7a5) - feat: provider/model selection for personas and runtime-aware env injection (#794) (
9a98e60fc) - fix: reconcile agent profile on startup when relay publish was missed (#921) (
762a45969) - Revamp first-run onboarding (#924) (
5d927aba0) - Update setup loading screen (#926) (
f36265019) - fix(dm): keep hidden DMs hidden across refetch via relay-signed visibility snapshot (NIP-DV) (#857) (
c38301bca) - Maximize desktop window on launch (#925) (
4dfae61f2) - feat: preview features (experiments settings UI) (#888) (
ae430d4dd) - fix(updater): send no-cache header on update check to avoid stale manifest (#922) (
a357e220d) - fix(desktop): refresh channel state after unarchive (#923) (
56230c144) - Add channel visibility & ephemeral TTL controls to manage sidebar (#911) (
7dd5b3453) - ci(release): add Intel macOS (x86_64) DMG as a release target (#748) (
4b78fe3be) - mesh: Rust-owned coordinator — fix saved-agent reconnect flakiness + DRY the start path (#879) (
421593062)
- fix(sdk): resolve multi-word display names and add NIP-27 nostr:npub mention extraction (#905) (
bfafdd46b) - fix(desktop): re-enable mcp_command reconciliation and harden spawn site (#909) (
15f610dcd) - Fix desktop DM and sidebar UI polish (#908) (
da80c7340) - Animate reaction counts (#904) (
dd08f988d) - Mobile custom emoji + settings redesign (#906) (
10b6674bd) - Renew TTL when unarchiving ephemeral channels (#902) (
732e23dd5)
- Collapse channel header actions (#901) (
ecca5e77e) - sprout-agent: make Databricks defaults env-only (#868) (
4ec7f8125) - Restyle settings sections (#894) (
b384354e2) - Add emoji reaction particles (#890) (
fdcbb696f) - Move settings into the app shell (#893) (
32039b9a2) - Tune chat text sizing (#891) (
45f3dfe5b) - Style channel header navigation (#889) (
29f6ccf9e) - fix: rename missed known_acp_provider_exact → known_acp_runtime_exact (#900) (
2ebe55174) - chore(deps): update radix-ui-primitives monorepo (#898) (
97bdb79de) - chore(deps): update actions/checkout digest to df4cb1c (#897) (
4a93100e1) - refactor: rename ACP "provider" to "runtime" across the codebase (#783) (
0a6067ca1) - Unify avatar radius (#892) (
056b87d3d)
- Show hover cards for inline message emoji (#885) (
1b7b6978f) - Fix monotonic read-state merges (#884) (
5268fac2d) - Refine sidebar behavior and borders (#869) (
0a4783c6f) - fix(presence): clear on disconnect, fix heartbeat/TTL, drop broken REST path (#877) (
5d7c74896) - fix(cli): publish ephemeral events over WebSocket via sprout-ws-client (#876) (
ef98ae942) - docs(sprout-acp): add communication discipline rules to base prompt + deprecate --mention flag (#883) (
2f50011bd) - Polish thread summaries and reactions (#881) (
5c2476a71) - feat(cli): add emoji export and import subcommands (#882) (
7129cd6f2) - Polish message row hover states (#880) (
b84f8e6a0) - Improve emoji naming and custom emoji UX (#878) (
bc5300867) - docs: add ecosystem section to CONTRIBUTING.md, fix stale release info (#873) (
581c7e95a) - fix(relay): wire custom filter fields through HTTP bridge (#864) (
031152221) - chore: deprecate sprout-mcp — fill CLI gaps, remove crate and all references (#850) (
f1c672fea) - Fix custom emoji status in profile popover (#874) (
5bdac0566) - fix(agent): gate handoff on provider token usage, not byte estimate (#821) (
b295f51c9) - docs: add VISION_MESH.md — the compute-commons vision (#867) (
cdb7bc27e) - fix(desktop): simplify profile popover header (#853) (
d4bb7f66e) - fix(desktop): remove thread comment hover outline (#861) (
ccff5464a) - feat(desktop): always show channel section search/add buttons (#856) (
ad7ab482e)
- fix(mobile+desktop): cross-device read state sync + diagnostic logging (#843) (
269b35e8d) - feat(mobile): star channels (Slack-style favorites) (#863) (
3ddfe5fcc) - feat: desktop-screenshot skill to stop agents uploading relay media to PRs (#862) (
36d7dbd7c) - feat(desktop): star channels (Slack-style favorites) (#860) (
c10b4f8f5) - fix(desktop): handle symlinked persona pack directories (#859) (
f748f7126) - feat: channel muting for desktop and mobile (#838) (
1fe7bf287) - feat(acp): default SPROUT_ACP_MEMORY to on (#854) (
4ead7de46) - fix(desktop): eliminate image-hover layout jump in messages (#813) (
759e5cd92)
- fix(desktop): harden relay mesh connect p-tag (#834) (
34ac3ba1d) - fix(desktop): scroll activity panel to bottom on open (#848) (
b3aefae15) - Polish desktop profile menu interactions (#836) (
a13691b62) - fix(desktop): outline thread hover targets (#845) (
0d9b8148f) - fix(desktop): keep message actions hover-only (#844) (
b3be9ecba) - fix(desktop): let inbox composer fill available width (#841) (
db46c4254) - fix: use immutable commit-SHA URLs in screenshot PR comments (#842) (
2a0572c0d) - feat(mobile+desktop): two-tier Slack-style app icon badge (#802) (
3b78dc569) - chore: simplify file-size check to a flat 1000-line limit (#839) (
0c225f4d7) - fix(desktop): robust emoji picker — unify picker + fix custom emoji in editing, status, reactions (#837) (
d8b602a35) - feat(desktop): reusable screenshot workflow for agents (#826) (
06bc67fd3) - desktop(mesh-llm): let a serving node route a different model (#833) (
9f0c22a43)
- fix: native arbitrary-file download + image context-menu flash (#830) (
82ae85f79) - fix(desktop): custom emoji reaction rendering + picker autofocus (#831) (
7797ae77f) - Mesh-LLM v1: relay-gated direct-iroh inference between users (WAN) (#822) (
33cfc8529)
- feat: custom emoji — user-owned NIP-30 sets with a client-side union (#816) (
234942130) - Install sprout-cli skill at repo root + fix desktop clippy (#818) (
7a12e5051) - fix(desktop): use public re-export path for ensure_client_node_for_model (#824) (
2ea3fd88d) - refactor(desktop): feature-gate mesh-llm-sdk behind optional Cargo feature (#823) (
fb514c891) - fix(desktop): align workflow read/save commands to the frontend contract (#820) (
b72eee365) - fix(desktop): disable mesh-llm auto-build to prevent git config corruption (#819) (
5b572d6f5) - fix(desktop): clear clippy lints in agents/mesh_llm commands (#817) (
192388a3c) - fix(desktop): let channel members add members and bots without admin (#815) (
41a3fc158) - Desktop #806 follow-ups: panel/inbox fixes + top-bar backdrop (#814) (
a25ca5d1b) - Fix desktop right-side panel chrome overlap (#806) (
5bed17a11) - Sprout × mesh-llm: in-process mesh node (serve/consume) + relay admission (#798) (
ede8ddb42) - fix(desktop): resolve flaky integration tests via project-level assertion timeout (#812) (
6481428e2)
- feat(mobile): add channel sections with relay sync (#800) (
5cbedb180) - feat(desktop): sync channel sections across devices via Nostr (#792) (
753d0fe26) - feat(media): support arbitrary file types with download cards (#810) (
2b052eb46) - feat(desktop): add user-defined channel sections to sidebar (#789) (
247ac5239) - feat(desktop): keyboard shortcuts — ⌘⇧N new channel + ↑-to-edit last message (#809) (
d810608d8) - fix(desktop): scope agent sweep to the owning app instance (#808) (
39911e428) - fix(desktop): route notification clicks to thread context (#790) (
f2c266bac) - chore(deps): update all non-major dependencies (#804) (
33e37de6e) - fix(deps): re-pin isomorphic-git patch to 1.38.3 (#807) (
5670ffc6a) - chore(deps): update dependency @tanstack/react-query to v5.100.14 (#805) (
033d92f10) - Fix desktop glass chrome and inbox previews (#793) (
bc23620fc) - refactor(just): slim down mobile-dev to just run Flutter (#801) (
9b9cf4612) - refactor: consolidate infra management into justfile + add mobile-dev (#797) (
2a0385152)
- feat(mobile): Pulse polish — flat feed, compose page, shared filter chips, like + accent fixes (#796) (
b82042090) - feat(desktop): add standalone Playwright screenshot helper (#795) (
10f37e4ca) - feat(sprout-agent): load AGENTS.md and SKILL.md into system prompt (#762) (
f34a21d32) - feat: add code block support to message composer (#788) (
85861f33f) - fix(desktop): reap orphaned agent processes on shutdown and restart (#787) (
7beb0f8e6)
- Update desktop navigation chrome and search (#779) (
d77b111b1) - feat(desktop): reload webview on Cmd/Ctrl+R (#785) (
5ee2cd051) - fix(desktop): sync persona pack directory across worktree instances (#782) (
fa7febe40)
- fix(release): sync release tags during preflight (#780) (
c761a76ff) - feat(desktop): thread-aware notifications with mutable follow/mute controls (#761) (
3f3ec6479) - fix(desktop): improve model picker message and runtime dropdown clarity (#778) (
03e678cfb) - desktop: float unread indicator + fix sidebar scroll jump (#777) (
9db8f6ccb) - chore(hooks): standardize check/fix convention with auto-fix pre-commit (#776) (
3fbee555f) - web: clickable repo tree + per-file blob viewer (#773) (
0f89ad169) - fix(agent): keep parallel tool-result messages contiguous on OpenAI Chat (Databricks image fix) (#770) (
61297ac80) - fix(release): fetch tags so changelog tracks versions correctly (#775) (
5f2423c23)
- feat(mobile): add Pulse social feed tab (#772) (
1218572fa) - feat(sidebar): add More unread floating buttons (#771) (
fec6a683e) - chore: improve markdown spacing (#766) (
8eedec740) - fix: prevent inline links rendering in 2-column grid layout (#767) (
835a44aad)
- [codex] Default release command to patch bump (#768) (
4222a758c) - Polish desktop Pulse and Home views (#764) (
30654e95f)
- Initial release on the automated pipeline. Unifies OSS and internal version numbering above both v0.0.21 (OSS) and v0.2.38 (internal).