Skip to content

Rakazo v0.1.0

Choose a tag to compare

@github-actions github-actions released this 03 Sep 13:10
· 23 commits to main since this release
cfd44b8

What's Changed

  • fix(adapters): sanitize connector tool names for OpenAI Codex by @victormorenos in #1
  • Prepare production release and portable scaling foundation by @elie222 in #5
  • Add locked-down production auto-deploy by @elie222 in #6
  • Make production deployment opt-in by @elie222 in #7
  • Add portable computer sandbox runtime by @elie222 in #8
  • test: expand verification coverage by @elie222 in #9
  • fix(adapters): persist OAuth credentials in Pi runtime by @victormorenos in #2
  • Refactor and simplify project internals by @elie222 in #10
  • Harden realtime and background job reliability by @elie222 in #16
  • fix(www): repair the mobile hero and header by @elie222 in #18
  • Collapse test commands to test:* and cover emulator gaps by @elie222 in #17
  • Improve marketing site SEO metadata by @elie222 in #24
  • Fix mobile Metro TypeScript source resolution by @elie222 in #14
  • Refresh the mobile bot list on return by @elie222 in #15
  • feat(www): add PostHog analytics by @elie222 in #22
  • Fix the live computer acceptance test by @elie222 in #13
  • Fix the testkit package-local test command by @elie222 in #26
  • Enforce server-side screen control boundaries by @elie222 in #23
  • feat: add bot context menu actions by @elie222 in #19
  • Fix Docker Compose quick start: supervisor workspace build, api EACCES on prisma generate, web missing env by @Belkouche in #12
  • feat: add bot read status by @elie222 in #20
  • Enforce takeover lease expiry by @elie222 in #25
  • Make spawn_bot retries idempotent by @elie222 in #36
  • Load durable memory into agent context by @elie222 in #37
  • Terminate timed-out sandbox commands by @elie222 in #39
  • Add daily Playwright visual reports by @elie222 in #44
  • Fix Playwright report table alignment by @elie222 in #45
  • Add Team Computer sharing with optional Private computers by @elie222 in #38
  • Add critical Playwright journeys by @elie222 in #46
  • Add safe bot archive and deletion by @elie222 in #40
  • feat: add Daytona sandbox provider and real-provider E2E by @elie222 in #49
  • Centralize sandbox preparation and rollback by @elie222 in #50
  • Speed up Electron startup and interactions by @elie222 in #51
  • Fix workspace-scoped model defaults and add model management by @bferanmi806-sketch in #48
  • Let routines be edited and deleted without deleting the whole bot by @taur-us in #62
  • Update README for Team Computer, Daytona, and rakazo.com by @elie222 in #64
  • Add screenshot gallery column controls by @elie222 in #65
  • Enforce PR review follow-through by @elie222 in #66
  • Wait for signup UI before Playwright screenshot by @elie222 in #67
  • Fix side panel overlap by @elie222 in #68
  • Add coding-agent setup prompt by @elie222 in #71
  • Remove archive and delete from bot settings by @elie222 in #69
  • Emulate Composio catalog in end-to-end tests by @elie222 in #70
  • Move routine run action into editor by @elie222 in #73
  • Add community badges to README by @elie222 in #74
  • Let Team bots run in parallel on distinct computer screens by @bnsd55 in #58
  • Publish safe screenshots for pull requests by @elie222 in #75
  • Allow attaching photos and files in chat by @bnsd55 in #57
  • Add Box sandbox provider by @elie222 in #80
  • Harden Box view-only desktop proxy by @elie222 in #82
  • Fix App Store computer overlay, screen URL retries, and health revision by @elie222 in #81
  • Add Supermemory-backed history compaction by @taur-us in #79
  • fix: sync Composio-live plugin auth into Rakazo connection rows by @dank0296 in #63
  • Allow clearing a conversation without deleting its bot by @elie222 in #42
  • Align Expo native modules with SDK 57 by @elie222 in #86
  • feat(www): refresh landing bot branding by @elie222 in #88
  • Improve pull request screenshot review by @elie222 in #87
  • Add voice mode with pluggable speech providers by @elie222 in #83
  • docs: fix missing article in self-host.md by @lunar-me in #89
  • feat(www): put landing demo bot list behind a hamburger on mobile by @elie222 in #92
  • Simplify voice credential schema and fix silent voice selection by @elie222 in #91
  • Teach a task by recording a live computer demonstration by @bnsd55 in #76
  • Fix takeover control state updates by @elie222 in #103
  • Sync computer panel status after RPC takeover by @elie222 in #107
  • Add pinned bot groups and sidebar sections by @elie222 in #109
  • Fix routine E2E request interception race by @elie222 in #110
  • feat(adapters): support local OpenAI-compatible model servers by @izkold in #105
  • Fix Chrome offering to save the account password in the chat message box by @taur-us in #104
  • Fix Chrome autofilling the account password into API key fields by @taur-us in #96
  • Fence Team Computer release to the active takeover lease by @bferanmi806-sketch in #78
  • Reconcile stale pending Composio connections on catalog fetch by @taur-us in #94
  • Add built-in history compaction without Supermemory by @bferanmi806-sketch in #112
  • Add Markdown artifact previews by @elie222 in #140
  • Group chats so several bots can share one thread by @bnsd55 in #84
  • Add concise UI copy guidance by @elie222 in #141
  • Fix tool-call narration splitting mid-sentence by @taur-us in #101
  • Add provider-neutral workspace memory with Supermemory adapter by @taur-us in #102
  • Fix landing waitlist and demo interactions by @elie222 in #145
  • Add provider-neutral connector support by @elie222 in #144
  • Add get started dialog to landing page by @elie222 in #146
  • Live inspectable charts (render_plot + chart blocks) and per-tool activity feedback by @dennisonbertram in #137
  • Wire model.reasoning through to PiAgentRuntime's thinkingLevel by @taur-us in #95
  • Add Claude Pro/Max subscription sign-in (Anthropic OAuth) by @sirakinb in #106
  • Ask before send and spend by @bnsd55 in #59
  • Resume takeover runs correctly after skipped control by @millson1 in #142
  • This PR fixes a few bugs around bot creation, settings panel UX, and custom model initialization. by @vivinarya in #143
  • Fix consequential-approval E2E stuck after Allow once by @elie222 in #148
  • Fix Windows CRLF breaking sandbox shebangs (#135) by @elie222 in #150
  • Add conversational onboarding and MCP server management by @elie222 in #147
  • Prevent OpenRouter mandatory-reasoning 400 from thinkingLevel "off" (#114) by @elie222 in #152
  • docs: document DOCKER_SOCKET override (closes #134) by @elie222 in #151
  • Fix mobile typecheck and takeover E2E by @elie222 in #156
  • Harden and end-to-end test MCP OAuth by @dennisonbertram in #136
  • feat(ui): add animated Grok-style bot avatars and multi-bot GroupAvatar by @coneborg in #153
  • Connect any OpenAI-compatible local model server by @bnsd55 in #149
  • Fix routine cron scheduling across weekdays and timezones by @elie222 in #155
  • [fix:dep bump] Show current xAI and OpenCode Go models in the picker by @jatinkrmalik in #175
  • Mirror UI chrome from locale and isolate user text direction by @bnsd55 in #171
  • Add chat-native schedule tools for bot reminders by @bnsd55 in #170
  • Add GHCR publish, Compose updater sidecar, and self-host upgrade path by @elie222 in #178
  • Contain Windows desktop-sandbox writes through final symlinks by @elie222 in #179
  • Ask which Rakazo instance the desktop app should use by @elie222 in #180
  • Add Stop control to computer overlay for active runs by @elie222 in #187
  • fix: disable Take control while a Team bot run blocks takeover by @elie222 in #188
  • Add desktop auto-update and signed release workflow by @elie222 in #177
  • fix(web): stop signing out a user the session lookup could not reach by @adam91holt in #185
  • Add a copy button to code blocks in chat messages by @yairixStudio in #159
  • fix(desktop): capture loopback OAuth codes from the sign-in popup by @elie222 in #191
  • Fix takeover state race in web E2E by @elie222 in #190
  • feat: per-bot scratchpad / open-work list by @elie222 in #196
  • Make rakazo.com agent-ready by @elie222 in #204
  • Fix production deploy and sharpen Grok Bot positioning by @elie222 in #205
  • Per-bot model and thinking effort overrides by @elie222 in #189
  • Default the Linux production deploy directory by @elie222 in #206
  • Make production updater sidecar opt-in by @elie222 in #207
  • Add shared agent skills (SKILL.md) storage, API, and tools by @elie222 in #192
  • fix(e2b): open http(s) URLs via named browser launcher by @elie222 in #201
  • fix: require VNC port readiness for E2B control stream by @elie222 in #202
  • fix: gate screenshot computer tools on model vision capability by @elie222 in #203
  • Fix Codex stream reliability and surface provider failures by @timvdhoorn in #208
  • Add composer / picker for skills above Actions by @elie222 in #193
  • ci: publish multi-arch server images (amd64+arm64) by @elie222 in #214
  • Fix working elapsed timer resetting when switching bots (#210) by @elie222 in #212
  • fix(web): auto-grow composer so Shift+Enter inserts newlines (#211) by @elie222 in #213
  • Add a workspace Now/Recent run list on web and mobile by @bnsd55 in #160
  • fix(api): close open SSE connections on graceful shutdown by @deepanshu1422 in #215
  • fix(sandbox): screen readiness check and per-bot network isolation by @deepanshu1422 in #216
  • Clarify homepage product positioning by @elie222 in #225
  • Replay exact persisted tool requests after approval by @timvdhoorn in #209
  • feat: let bots message each other by @adam91holt in #186
  • feat(routines): support multiple schedules per routine by @deepanshu1422 in #217
  • fix(sandbox): Team Computer was one desktop per bot, not one shared by @deepanshu1422 in #221
  • fix: bound computer cache and stop SSE reconnects on unrelated params by @deepanshu1422 in #223
  • Fix: define save_memory/recall_memory builtin tools by @kk078 in #224
  • Search groups and jump to the matching message by @elie222 in #226
  • feat: Grok-style @ mentions on the chip composer by @elie222 in #228
  • fix(api): normalize run routineId to null in thread snapshot by @mtsogias in #230
  • Fix write_file silently corrupting JSON object content by @elie222 in #237
  • Default new web routines to the browser timezone. by @elie222 in #239
  • Fix bot message run output validation by @Titozzz in #251
  • Default uncapped tool calls; optional MAX_TOOL_CALLS_PER_TURN soft-stop (#248) by @elie222 in #253
  • feat(web): Lingui i18n with English source, German + Korean catalogs by @elie222 in #254
  • Add German and Korean marketing homepage locales by @elie222 in #255
  • feat(web): Grok-style message hover Reply + Copy by @elie222 in #258
  • fix(web): keep message hover Reply+Copy above bubble text by @elie222 in #259
  • Quiet Integrations default; tool sources under Advanced by @elie222 in #268
  • fix(sandboxes): suppress Chromium --no-sandbox infobar with --test-type flag by @coneborg in #263
  • Recover, reset, and update a bot computer from settings by @elie222 in #272
  • fix(web): keep reply parent preview across pagination by @elie222 in #260
  • feat(web): add Turkish (tr) UI locale by @tuncasoftbildik in #274
  • fix(dev): skip Corepack download prompt that hangs pnpm dev by @elie222 in #278
  • fix(web): harden jumpToMessage against stale scroll races by @elie222 in #275
  • fix(dev): make COREPACK_ENABLE_DOWNLOAD_PROMPT cross-platform for Windows by @elie222 in #283
  • Pin Gmail, Calendar, Drive, Slack, and Notion in Integrations by @elie222 in #269
  • feat(web): add Hindi and Brazilian Portuguese UI locales by @elie222 in #284
  • fix: allow parallel Open Connector action batches by @Titozzz in #289
  • Add accessibility labels for Integrations Add/Remove and Speak by @elie222 in #288
  • fix(config): relax engines.node 24 floor to any 24.x by @elie222 in #290
  • Stop markdown tables collapsing to one character per column by @malikmmoaz in #291
  • fix(web): harden bot-crud computer panel E2E against skipped boot overlay by @elie222 in #293
  • fix(api): expose failed bot runs in threadSnapshot (not cancelled/completed) by @elie222 in #295
  • fix: key MCP session cache by identity, not server id by @shinjikhang in #296
  • fix: pair the deployment model key with the provider it belongs to by @shinjikhang in #297
  • fix: withhold the deployment key from a provider it was not issued for by @shinjikhang in #299
  • docs: refresh supported providers and integrations by @elie222 in #298
  • feat(web): model dropdown search + provider groups (#227 leftover) by @elie222 in #256
  • feat(bots): include descriptions in teammate directory by @luinbytes in #286
  • Add an organic avatar style preference by @elie222 in #311
  • test: isolate MCP session cache by workspace and user separately by @elie222 in #313
  • fix(mobile): keep avatar style on failed save by @elie222 in #316
  • fix: recover past checkpoint errors and claim stopped computers by @elie222 in #315
  • Clarify Rakazo development principles by @elie222 in #318
  • fix(mobile): serialize avatar style updates by @luinbytes in #319
  • fix(mobile): share pending avatar update by @luinbytes in #323
  • fix(web): follow new chat messages without interrupting readers by @elie222 in #305
  • fix(web): localize collaboration markers and reuse loading state by @luinbytes in #325
  • fix(agents): keep tool-only turns honest by @elie222 in #307
  • fix(web): preserve transcript reader position by @luinbytes in #324
  • Share a bot as config only (JSON and public link) by @elie222 in #302
  • Revert accidental share merge (#302) by @elie222 in #326
  • Masked secret handoff for 2FA and connector codes by @elie222 in #303
  • fix(dev): start the watched dev services with stdin detached by @ethanstoner in #322
  • fix(adapters): safely handle optional context in agent runtimes by @elie222 in #332
  • feat(groups): include escaped member titles in group chat context by @elie222 in #333
  • Refine generated bot avatars by @luinbytes in #336
  • Allow Tailscale server URLs in mobile app by @daniel18mobile-del in #338
  • Preserve avatar animation state across UI updates by @luinbytes in #340
  • Filter automatic successful Playwright screenshots by @elie222 in #341
  • perf: add native computer control fast path by @dennisonbertram in #342
  • feat(sidebar): add collapsible sections by @elie222 in #300
  • fix(onboarding): preserve chosen bot name and add password reveal by @david1asher in #292
  • Settings software update via Compose updater sidecar by @elie222 in #339
  • fix(web): keep queued transcript snaps reader-safe by @luinbytes in #328
  • Show agent titles in sidebar by @daniel18mobile-del in #337
  • fix(mcp): allow configured localhost HTTP servers by @luinbytes in #285
  • fix(web): reduce sidebar bot status polling latency and sync on send by @coneborg in #331
  • fix(adapters): harden computer observe prompt against webpage content and quote confusion by @coneborg in #264
  • Allow arming never-run one-shot routines by @elie222 in #327
  • Harden self-hosted security boundaries by @elie222 in #343
  • Fix: do not activate recurring routines on routine save by @elie222 in #346
  • feat(groups): add chat organization actions by @luinbytes in #345
  • Assert updater authorization failures precisely by @elie222 in #347
  • fix(db): make group index migrations retry-safe by @luinbytes in #348
  • fix(mcp): report an allowlist entry the server no longer offers by @shinjikhang in #349
  • Add pull-based Compose self-host path (no clone) by @elie222 in #350
  • fix(sandbox): boot a fresh sandbox when a reconnect cannot reach the old one by @shinjikhang in #351
  • fix(sandbox): keep transport errors out of replaceComputer by @elie222 in #353
  • feat(webhooks): add inbound webhook bot trigger endpoint and webhook run trigger by @coneborg in #334
  • fix(sandbox): give E2B screen setup commands a real timeout by @shinjikhang in #354
  • fix(docker): survive restrictive host umask in image builds by @akoenig in #355
  • feat(api): log the RPC errors that become an opaque 500 by @shinjikhang in #357
  • feat(self-host): Docker computers on published-images quick start by @elie222 in #361
  • fix(mcp): preserve credentials for configured localhost servers by @luinbytes in #368
  • fix(scripts): pass the root .env to Compose in backup and restore by @Scottcjn in #364
  • fix(sandbox): fail Docker stop and destroy on a supervisor error by @Scottcjn in #365
  • fix(supervisor): return container stderr instead of folding it into stdout by @Scottcjn in #366
  • fix(sandbox): recognise an E2B sandbox that is already gone by @shinjikhang in #358
  • fix(computer): paste host clipboard into take-control sandbox by @elie222 in #359
  • fix(web): surface run failures instead of ending the turn silently by @chudasamajd in #362
  • feat(approvals): Auto Review for unexpected consequential actions by @elie222 in #360
  • fix(computer): drop stale Chromium singleton locks on boot by @DaveVoyles in #370
  • fix(computer): route Docker browsers through Rakazo wrapper by @bferanmi806-sketch in #376
  • fix(web): preserve user message line breaks by @davidrobertson in #372
  • Fix delegated bot follow-through by @luinbytes in #369
  • Fix Playwright report publication for growing screenshot suites by @elie222 in #380
  • fix(web): support file drops in chat composer by @davidrobertson in #371
  • fix(adapters): canonicalize Composio toolkit slugs by @davidrobertson in #374
  • fix(web): add browser run notifications by @davidrobertson in #373
  • Simplify the published-image quick start by @elie222 in #381
  • fix(web): notify for bot messages by @davidrobertson in #384
  • fix(adapters): avoid Composio tool preload limit by @davidrobertson in #383
  • fix(web): stack peer messages on mobile by @davidrobertson in #386
  • Fix delegated reply surfacing by @luinbytes in #385
  • feat(mobile): bring Android chat parity by @luinbytes in #387
  • fix(desktop): make conversation header draggable by @davidrobertson in #390
  • fix(web): center composer and persist bot order by @davidrobertson in #392
  • fix(adapters): isolate scheduled routine context by @davidrobertson in #388
  • perf(mobile): keep live chats responsive by @luinbytes in #393
  • feat(phone): SendBlue iMessage surface — DM bots, approval-gated group channels, agent connections by @dennisonbertram in #377
  • fix(desktop): keep active conversation header draggable by @davidrobertson in #395
  • fix(adapters): expose schedule tools in group chats by @luinbytes in #391
  • feat(adapters): builtin web_search and web_fetch by @elie222 in #410
  • fix: suppress Chromium restore pages bubble on crash by @awhite0030 in #420
  • fix(adapters): prevent routine schedule recursion by @davidrobertson in #409
  • fix(desktop): open external links in default browser by @davidrobertson in #417
  • fix: persist replaced providerRef in reconnectComputer by @awhite0030 in #419
  • Fix computer_act hanging due to blocking subprocess in control.py by @awhite0030 in #422
  • fix: allow Tailscale MagicDNS hosts in integration URLs by @elie222 in #423
  • fix: do not persist split UTF-16 surrogates in stream events by @elie222 in #424
  • feat(web): show chat message timestamps on hover by @davidrobertson in #397
  • Fix golden E2E bot selector blocking production deploys by @elie222 in #430
  • Add isolated spaces for bot teams by @elie222 in #389
  • fix(chat): hide inter-bot exchanges from transcript by @davidrobertson in #426
  • feat(chat): persist thumbs-up message reactions by @davidrobertson in #428
  • fix(web): anchor routine toggle thumb by @davidrobertson in #434
  • fix(adapters): keep computers awake for background work by @davidrobertson in #435
  • Improve mobile authentication flow by @elie222 in #436
  • fix(adapters): harden background work probing by @davidrobertson in #438
  • Improve mobile authentication flow by @elie222 in #437
  • fix(web): keyboard completion for composer @mention picker by @elie222 in #432
  • Publish compatible mobile changes with EAS Update by @elie222 in #441
  • fix: suppress roster attention for silent routines by @davidrobertson in #439
  • feat(adapters): lazily load large tool schemas by @davidrobertson in #429
  • fix(chat): restore peer transcript markers by @davidrobertson in #443
  • Collapse bot tool activity in chat by @davidrobertson in #440
  • Multi-platform chat surface on Chat SDK (Slack, WhatsApp, Telegram + iMessage) by @elie222 in #444
  • feat(chat): add tappable choice prompts by @davidrobertson in #433
  • Don't fail every turn on an MCP tool enum TypeBox can't express by @timothyhoover in #450
  • Add password reset and provider-neutral email by @elie222 in #446
  • Stop labelling older models "latest" in the model picker by @david1asher in #456
  • fix(ci): restore computer image GHCR publishing by @elie222 in #454
  • fix(api): stop resurfacing a failed run after a newer run finishes by @sirakinb in #447
  • fix(web): stop seen run errors returning after reload by @davidrobertson in #449
  • Highlight PR-relevant Playwright frames in CI comments by @elie222 in #457
  • feat(chat): deliver steering messages while bots work by @davidrobertson in #453
  • fix(adapters): preserve cancellation and retry finalization by @davidrobertson in #459
  • fix(chat): remove steering composer helper copy by @elie222 in #460
  • fix(mobile): align Expo SDK 57 package versions for Typecheck CI by @elie222 in #467
  • fix(ui): unify error red across web and mobile by @chudasamajd in #462
  • fix(chat): show wall-clock worked duration by @davidrobertson in #461
  • Reuse Pi provider sessions across bot turns by @matt-from-uk in #466
  • Require PR descriptions to state why a change exists by @elie222 in #477
  • feat(web): add Simplified Chinese UI locale by @fetw882 in #480
  • fix(adapters): keep versioned OpenAI-compatible API roots by @fetw882 in #482
  • Match Grok Bot: teach in chrome, muted Routines +, simpler sidepanel by @elie222 in #481
  • fix(compose): allow generic installer download base override by @fetw882 in #484
  • docs(self-host): document Stage C image registry override for restricted networks by @fetw882 in #487
  • docs(self-host): add published-images TLS reverse-proxy snippet by @fetw882 in #489
  • fix(compose): wait for healthy services in published-images installer by @fetw882 in #492
  • fix(compose): allow overriding Hub postgres/busybox images by @fetw882 in #493
  • Simplify rakazo.com self-host to short CTAs by @elie222 in #501
  • Add Appearance control (System / Light / Dark) by @elie222 in #510
  • fix(desktop): use macOS-safe icon for the dev dock by @elie222 in #529
  • Align sidebar Search to selected conversation row width by @elie222 in #511
  • fix: clear stale user computer control blocking reset (#500) by @elie222 in #512
  • fix: tear down sandbox browser/shell work when a run is cancelled (#499) by @elie222 in #513
  • fix(web): complete Korean UI translations (rebase onto main) by @elie222 in #537
  • Desktop app installs and runs the local Rakazo stack with Docker Compose by @elie222 in #533
  • Fix inline code contrast in light mode by @elie222 in #544
  • docs: add a Run on a server section to the README by @elie222 in #545
  • ci: build server images natively per architecture instead of under QEMU by @elie222 in #546
  • feat: add Simplified Chinese on mobile and the marketing homepage by @elie222 in #539
  • Wire ui-tokens into mobile screen backgrounds by @elie222 in #506
  • ci: notarize macOS with an App Store Connect API key and make Windows optional by @elie222 in #547
  • fix(desktop): name the Linux executable so the AppImage builds by @elie222 in #549

New Contributors

Full Changelog: v0.1.0-beta...v0.1.0