Changelog

What shipped in Daslab, release by release.

Currently on 1.7.0, released 2026-08-15 · Download

1.7.0
2026-08-15

New

  • Layers — Private, Shared and Public in every scene Keep a draft where only you can see it, move it to the team when it holds up, and publish exactly what a share link serves. Jobs carry a layer too, so a run can be rehearsed privately and moved up when it is worth showing; whatever it created travels with it.
  • Private work is counted, never shown A teammate's private runs appear as a number in the jobs header and a per-member line in Usage. Nobody can read the work, and there is no setting that hides the fact it happened.
  • Share links you can take back Any share token can be revoked, and disabling a scene's link moves everything it served back to the team in one click. Unsharing a job also closes the canvases that job's link exposed, which used to stay reachable on their own URLs.
  • Canvas history you can read back Every edit to a canvas is a version with an author and a message. Background enrichment no longer counts as an edit, so the history is the edits.
  • A shared job replays Open a share link and scrub the run: its steps, its calls, and the scene as it stood at each point.
  • One account per email Google, GitHub, Apple and a password now join the same identity instead of minting parallel accounts, and the methods you have linked are manageable from the web.
  • Markets without a vendor key Macro, energy, rates and crypto series answer on a default tier, so a question about a benchmark does not start with a signup.
  • Search across a world An agent can search every scene it is allowed to read, resolving as the transcript's audience rather than as whoever typed.
  • RingCentral Calls, messages and meetings as scene assets.
  • Edit a scene note in the browser Notes were readable everywhere and editable only on a native client.
  • Report an issue from inside a trace A verdict attaches to a point in a run, so the complaint arrives with its evidence.
  • Read-only S/4HANA accounts A flag on the account hard-disables every write tool, which keeps a security review small.
  • Newer models DeepSeek V4 Pro, Gemini 3.6 Flash and 3.5 Flash-Lite, and four agent slots move up a generation.

Improved

  • The asset menu is reachable at every tile size A tile sized icon, row or small offered no menu at all in the browser, and a 2×2 canvas offered none on iPhone. Right-click a tile on the desktop, or use the ⋯ every tile now carries.
  • One approval releases a whole staged batch Approving a held write used to release exactly one call, however many were waiting.
  • Drafts stop fighting the keyboard The composer saves once per typing pause rather than per keystroke, and a bottom sheet no longer hides its own input behind the keyboard.

Fixed

  • Escape closes a fullscreen canvas even after you have clicked into the page.
  • Links inside a shared canvas open in Chrome, where the frame's sandbox was dropping them.
  • A job's share link exposes only the assets that job touched , and never an account.
  • Worlds keep their order instead of re-sorting per person on every load.
  • RunPod tools reach an agent they were registered but never offered.
  • An MCP session survives a parked client rather than being killed by one left open.
  • A partial translation lands partially instead of discarding the page.
1.6.0
2026-08-09

New

  • Local files in the desktop app Work with files on your own machine without uploading them, on Windows, macOS and Linux. Reads run unattended; writing a file or running a command asks first. Scoped to your home folder, credential stores blocked, private to that machine.
  • Drop or paste files onto a scene canvas A file dropped or pasted on a scene becomes an asset there; one pasted into the job composer stays an attachment on that message. Large files upload behind a progress row, so a scene no longer looks like it ignored the drop.
  • Markets Ask for a price by symbol and get back the value, the unit it is measured in, the day it is for, and who published it, because dollars a tonne is not cents a pound. 29 symbols to start — six base metals at cash, three-month and warehouse stock, five currency pairs, and monthly benchmarks going back three decades — and every read is archived, so a baseline quoted against a contract months ago is still there beside the run that used it.
  • Uploads go to 1 GB A file up to 1 GB attaches to a message, showing a real percentage while it goes instead of a static "…". The ceiling is per plan; every plan is 1 GB today.
  • Power BI Workspaces, datasets, reports, dashboards and DAX queries, all read-only. Scoped to what the connected user can already see rather than the whole tenant, which keeps a security review small.
  • NetSuite and Oracle Both connect through the vendor's own hosted server, so the tool surface is whatever your account exposes, including anything a DBA registered in the database itself. NetSuite record changes go through approval.
  • Google Stitch Generate UI screens from a prompt. A project is an asset, rendered as a board of its screens.
  • A public MCP server for ABAP Open SQL daslab.run/mcp/abap-sql prepares a statement for an SAP ADT data-preview console, or explains the one the console rejected. It holds nothing and reaches nothing — every tool is a pure function over the SQL you send — so it needs no account and connects to no system of yours.

Improved

  • One asset menu, on every surface The ⋯ menu had been built three times and drifted: 15 items in the app, 6 on the Mac, none in the browser. There is one now, so a canvas's share link is reachable everywhere, including from the fullscreen view.
  • Copy or move an asset to another scene from the web The destination is any non-archived scene in the same world. Moving asks first and names where it is going, because it takes the asset out of the scene you are looking at; copying just goes.
  • Disconnect an account from the asset picker The checkbox only ever unlinked an asset from the scene. Hover or right-click a row to disconnect the account itself.
  • In-turn narration steps back "Let me fix the syntax…" from a model with no reasoning channel now renders in the same muted register as folded thinking, and the reply keeps full weight. Reopening a job also stops deleting the thinking of the models that do have one.
  • Host writes and commands ask before they run Reading a file you just named gains nothing from a prompt, but writing to your disk and running a shell command are the two a wrong answer cannot take back.
  • This Mac offers five tools instead of one The Mac app advertised itself as a plain shell, so every session ran with one command tool while the file and screenshot tools it had implemented all along stayed unreachable.

Fixed

  • The jobs header counts what actually needs you "3 waiting" was counting idle conversations, and a job now says what it is suspended on: an approval, a question, or a call that needs a particular device.
  • The model picker and the scene agree on which agent runs A pinned scene could run one model while the picker displayed another, and an explicit mid-job switch died with the job.
  • Copy Link gives a canvas its public share link The menu fell back to an internal render URL for exactly the canvases agents build.
  • Camera views play in the browser A camera asset came up as an empty card carrying its name and description and nothing else.
  • Translate is a submenu Nineteen inline languages pushed everything below them, Remove included, off the screen; the flyout is measured from its row and clamped to the viewport.
  • An icon-size tile renders a launcher Provider web views painted a whole branded card, head and badge and truncated rows, into a 96pt square.
  • Connecting a provider from the browser returns to the browser Every callback punted into a native app you may not have installed.
  • Drive and Calendar browse what you opened Drilling into a folder or a shared drive fell back to the account's 30 most recent files, and every calendar tab showed the primary calendar's events under its own name.
  • Gmail search returns every match Results were cut to the first ten with no sign they had been cut, so counting a week of sent mail came back as "10".
  • Signing in on the web lands on your last scene Every sign-in path dropped you on the billing dashboard instead.
  • Images dropped into a scene now render when opened full size.
  • The drop outline follows the scroll instead of sitting above the visible area.
1.5.0
2026-08-06

New

  • Canvases read in your language A canvas comes back in whatever language its data is in, and a world full of them is unreadable if that isn't yours. Pick a language from a canvas's menu and the page swaps in place, with no reload and no round trip back to the agent that built it. The choice is per canvas, and the last language you pick becomes the default for canvases you haven't decided about, so translating one carries the next you open while a canvas you set back to Original stays that way. iPhone, Mac and the browser run the same translation, so a fix reaches every surface at once, and adding a language is a server-side change that needs no app release. Numbers, currency, codes and URLs are left alone rather than handed to a model that might reformat them.
  • A job docks beside the scene instead of covering it (Mac) The scene is the work product, so putting the conversation on top of the thing it is changing was backwards. A job now opens in a rail on the trailing edge and the canvas reflows beside it, or expands to a card over the whole window and collapses back — the conversation survives the switch, including a reply still streaming. ⌘N starts a new job; Escape or a click outside closes an expanded one. On a window too narrow to hold both, the job covers the scene rather than squeezing it.
  • Drag a widget's corner to resize it Picking a shape out of a menu is an abstraction over something you can do directly. In the browser app, hover a widget and drag its bottom-right corner: the neighbours reflow live underneath and the size commits when you let go.

Fixed

  • Job titles, scene icons, grades and summaries stop paying for a model that never answered The model behind those small tasks returned an empty response on every single call, and the fallback chain quietly picked up after it, so nothing ever looked broken. Each of them spent a full round trip on nothing before the real work started.
  • Two widget-menu entries that did nothing are gone, and a third one works Configure and Tools were buttons with nothing behind them, so clicking them was silence. Remove from scene was inert in the same way, which was worse: it reads as destructive and left the widget exactly where it was.
1.4.1
2026-08-05

Fixed

  • The model picker no longer switches your job behind your back Opening a job could show a different model than the one it was started with: a job on Automatic would read as whatever model the router last happened to choose, and sending your next message silently made that wrong pick the job's real one. The picker now follows the job's own selection everywhere — iPhone, Mac, and the web chat — and switching the model mid-job now sticks for the rest of the job instead of lasting a single turn.
1.4.0
2026-08-05

New

  • An agent gets a real terminal, and you can watch it Running one command and waiting for it to exit cannot answer a prompt, resume a long build, or interrupt anything that hangs. A scene can now open an interactive session on a server it already holds, send keys including Enter and Ctrl-C, and read the screen back, and the same tools work inside Sandbox. A terminal asset renders that live screen as a widget so you can see the work as it happens. The widget is read-only on purpose: one that could send keys would put a browser window in front of a root shell.
  • A workspace exports to one file, and forks from it The export carries both halves of a workspace, its history and the configuration its assets need to run. An archive of names and types restores the shape of a workspace and none of its connections, so a SAP account would come back knowing what it was called and nothing about how to reach the system. Importing an export builds a second workspace with a fresh id for every scene and asset, so re-running the same fork updates it rather than making another copy.
  • Databases and brokers connect as assets MongoDB, MySQL, SQL Server, ClickHouse, InfluxDB, Prometheus and MQTT each connect as their own asset type, with their tools resolving from the scene like any other integration.
  • One-click MCP servers connect like native integrations 909 servers from the MCP catalogue now register as real providers, so Notion or Linear is picked the way GitHub is instead of pasting a URL into a generic form. One click means the connect flow needs nothing from you beyond consent.
  • Automatic picks the model for each turn Automatic sits in the model picker alongside every other choice, and picking it moves the model decision to each turn instead of fixing it for the scene. The trace records which model actually ran.
  • A public price list for every model we run daslab.run/models lists them at the provider's list price, grouped by who made it. We take no markup on model usage, so the number on the page is the number your credits are spent at. A toggle adds median time to first token and median output speed measured from our own runs, plus the share of each model's tool calls that the tool rejected.
  • Studio speaks and transcribes Studio could make images, video and meshes and had nothing to say. It now turns text into speech, billed per thousand characters, and audio into text, billed per minute.
  • A public price list for Studio too daslab.run/studio lists every image, video, speech and 3D model an agent can name, grouped by what you are making, with the rate each one bills at. Media is metered several incompatible ways, so every rate carries its unit: per megapixel, per image, per second, per thousand characters, per minute.
  • Search reaches what was said inside a job Search already covered scenes, assets and job titles. It now matches the content of a job's conversation too, so a phrase you remember reading finds the run it was in. Jobs you could already find by title stay out of those results.
  • Discord Channels, messages and threads in a scene. Channel and message access runs through a bot and stays bounded by the permissions you grant it.
  • HubSpot One search across contacts, companies, deals and tickets, records fetched with their associations, and property discovery, because portals run on custom properties. Notes and tasks write back, both behind approval.
  • Google Business Profile Locations and their full review history, so an agent can read what customers actually wrote rather than a rating average.
  • RocketReach Contact and company enrichment from inside a scene.
  • ZORT Orders, stock, returns and order tags for the Southeast Asian e-commerce back office, with vendor links that open the right screen for what you are looking at.
  • Daslab Flights Flight search with no account to connect: priced itineraries for a route on a date, the cheapest dates across a flexible window, and airport lookup by city or name.
  • Record your screen in the composer A walkthrough attaches to a message the way a file does. Screen audio and microphone are mixed into one track, so what you say while pointing at something survives the recording.
  • A setup page for every MCP client Each one has its own page under daslab.run/setup carrying the snippet that client expects, all generated from one registry so the instructions cannot drift.

Improved

  • A cell returns its value when you write it Writing a formula used to leave you to fetch the scene again to find out what it evaluated to.
  • Place details return up to ten reviews Google Maps lookups came back with a rating and almost nothing to read.
  • The agent picker leads with the job The recommended row named models; it now names what you are trying to do, with a pinned row at the top for the common case.
  • A long silent stretch no longer looks like a stall The progress nudge re-arms after a run of tool calls that print nothing, so a job that is working says so.
  • Asset forms name their fields and link the console Creating an integration asset asked for values without saying where to find them.
  • Webview assets fill their card on desktop The header came off in favour of floating controls, so the content gets the space.
  • A folded tool call leads with its title The title outranks the preview line, and unfolding shows the whole call rather than a truncated middle.

Fixed

  • Credits bought on top of a plan are spendable Once a workspace passed its monthly allowance, spend that credit had already paid for was counted a second time against the allowance. A balance drained at twice the rate it was being used and could read as empty while credit was still on it. The stored balances were correct throughout, so nothing had to be credited back.
  • Studio bills what a call actually cost Generation was priced from the request rather than the result.
  • Model prices corrected Fourteen prices were wrong and three agent slugs pointed at models that no longer exist.
  • Attachments past the first reach the server Sending several files at once delivered only one of them.
  • Opening a scene no longer stalls the app A large scene decoded on the main thread, so the interface froze for as long as it took.
  • Reopening a running job shows Stop It offered Send, as though the job had finished.
  • Dropping a file on the composer attaches it On Mac it pasted the file's path as text instead.
  • A shared frame can no longer be pointed at your network Unauthenticated frame and grid views accepted any URL, and now refuse addresses that are not publicly routable.
  • Redirects stay encrypted Some redirects sent clients through a plaintext hop before arriving.
  • A rate limit reported mid-answer retries Providers that report a limit partway through a response failed the whole job.
  • A cell cannot report success with nothing in it A failed evaluation could leave a cell looking fine and empty.
  • Airtable, Notion and Linear have a connect button They were listed with no way to connect them.
  • Tapping an asset in chat opens its preview Nothing happened.
  • Widget tiles no longer flash white They painted a blank card before their content arrived.
  • The web app works on a phone Layouts assumed a desktop window.
  • Recorded screen captures keep the microphone The mic landed on a track that was dropped.
1.3.0
2026-08-01

New

  • Cells hold formulas A cell now holds either a literal or a formula, the way a spreadsheet cell holds 5 or =SUM(A1:A3). A formula reads other cells by handle, re-evaluates when the scene is read, and keeps its last good value if a run fails. Dependencies are worked out from the formula itself, so nothing is declared twice. daslab_write_cell writes them, and daslab_add_cell creates any kind of cell, native or connected, through one call instead of three.
  • Cameras that send frames A camera asset can now push stills instead of holding a video stream open. The device posts a JPEG whenever it likes and the picture lands in the scene. Every frame is archived and listable, any window of it bundles into a short clip you can watch, and focus and exposure are settable from the asset by a person or an agent. The agent tools read the stored stills directly, so asking a camera for its current frame no longer waits on a video player to paint one.
  • Read-only SQL for S/4HANA s4_sql_query runs SELECT-only, row-capped queries through the tenant's own application server, and s4_describe_table returns every field with its key flag, type, length and label. On-premise systems publish only a fraction of their tables as OData services, and this reaches the rest without a database user or an open database port. Off by default, enabled per account.
  • Bluetooth devices from iOS Seven tools put the device radio in an agent's reach: scan, connect, read, write, subscribe, notifications, disconnect. Peripherals and characteristics are addressed by UUID, so any GATT device works.
  • The scene's history, with names The History button now opens the scene's commit log on the desktop. Changes an agent made point at the run that made them, changes a person made carry that person, and enrichment stays marked as the system.
  • The job sits beside the scene Above 1200px wide the job docks to the right and the scene reflows to fit, so the thing being changed stays visible while the agent changes it. Narrower windows are unaffected.
  • Reach us from any MCP client daslab_support opens a conversation with the team without leaving the client you're working in, with a support page at daslab.run/support.

Improved

  • The agent knows what a cell is The system prompt teaches the cell model once, and add_asset, write_widget and create_canvas all point at cells and formulas. Agents used to reach for browser JavaScript to fake what a cell already does.
  • A new SAP connection reports what the system registers It used to probe for one standard service that plenty of on-premise systems have never published.
  • A child scene inherits its world's description New scenes start with the context their world already carries instead of nothing.
  • The camera setup panel collapses once a stream is live It stayed open over the picture.

Fixed

  • Thai text renders Thai came out as empty boxes in canvas widget screenshots, because the rendering host had no font covering the script.
  • Link previews show the right card Every unfurl kept serving the first card it ever generated, and cards rendered in whatever font the host happened to have rather than the site's.
  • The Mac app stops stalling on clicks Every render pass asked the keychain for an auth token and waited on the system security service to answer, once for each widget webview on screen. A click in a busy scene could take seconds.
  • A shared canvas link can no longer retune a camera Anyone holding the link to a display-only canvas could change that camera's focus and exposure. Control changes now go only through the approval-gated tool. Reading the current settings from a shared canvas still works.
  • Signing in on the web no longer dead-ends "Open Daslab" left anyone signing in from a browser with nowhere to go.
  • Picking an agent in the web chat works The choice was dropped on the way to the job, which started on the default agent instead.
  • A tool call no longer fails on a convertible argument An input that didn't match a tool's declared schema was rejected outright, including plain scalars that only needed converting.
  • Transient model provider failures retry A provider hiccup failed the whole job.
  • The widget detail sheet always has a close On iOS it could open with no way out.
  • Integration logos show the right mark They rendered wrong, stale, or not at all.
  • On-premise SAP accounts can be created A tenant registering only custom services was reported as exposing nothing and rejected by the connection form.
1.2.1
2026-07-28

New

  • Joblogic Field service management in a scene: jobs, customers, sites, engineers, visits, quotes and invoices, with the write actions held behind approval.
  • Label Studio Queue work for human annotators and read their finished labels back as ground truth, against Label Studio Cloud or your own instance.
  • Download page One place to get the app: iPhone and iPad, Mac, Windows, or the browser, at daslab.run/download.
  • Public changelog Every release, readable at daslab.run/changelog.

Improved

  • Cheaper program runs Program mode no longer spends whole turns fetching things it can print directly. The same request that took nine turns and thirteen tool calls now takes a fraction of that.
  • Transform errors say what went wrong A failed transform now reports the shape it was actually handed instead of a bare type error, so the agent can correct itself rather than guess and retry.
  • Studio counts against your balance Media generation is metered to the workspace credit balance like every other run.
  • Live canvases in posts A post can embed a scene canvas that renders live rather than a screenshot of one.

Fixed

  • Search opens what you tapped Picking a child scene from search could land you on the workspace root instead of the scene itself.
  • The asset browser no longer goes blank A slow or failed provider reload replaced the whole browser with a spinner and no way back, which showed up as Gmail loading forever. It now keeps what it has and offers a retry.
1.2.0
2026-07-26

New

  • Workspace Search Find scenes, assets and jobs across every world you belong to, from iOS and macOS. Results appear the instant you type: matches already on the device are painted first, then the server fills in everything the cache couldn't know about, so search stays useful offline. Results are grouped by how close they are to where you're standing — this scene, then this world, then everywhere else — and open scenes, jobs and assets directly rather than dropping you nearby. Pull down to reach it on iOS; on the Mac it sits above the sidebar. No new buttons.
  • Studio A built-in media generation provider for images, video and 3D, available in every scene.
  • Provider Knowledge Bases Provider documentation now lives as real pages, tools and assets, with docs_list and docs_read available in every scene before you've connected anything.
  • Parts Engine Search parts catalogs, configure by use case, and mount any catalog JSON as a document. Cross-catalog slots and per-market buy links included.
  • Dataset Provider Query Hugging Face datasets directly through DuckDB, isolated per scene.
  • Trace Replay Watch a job replay against its real timeline, with timeline marks and accelerated idle waits.
  • SDK Public Mode useScene / useAsset hooks, a <Widget/> component, and anonymous keyless calls, served from /sdk/react.js.
  • Designed Cells Canvas splits data from view, so jobs populate cells through data writes and that data is visible to jobs and to look_at.
  • Slack Canvases Create, edit and share Slack canvases from a scene.
  • Adaptive Video daslab/video streams via HLS.
  • Poly Haven CC0 HDRIs, PBR textures and models as a provider.
  • Jobs as a REPL daslab_run_job drives a real metered agent job over MCP.
  • Worlds from the Agent daslab_create_world, with world/scene boundary guardrails.
  • Per-Scene Retention Set how long a scene keeps its history.
  • Account Billing Accounts, pricing and a balance-depleted email with a magic sign-in link.
  • New Models Grok 4.5 and 4.3, GPT-5.6.

Improved

  • World List Order Worlds now sort by your own most recent conversation. The previous order was effectively random and reshuffled on every launch, which also meant the world you landed in at startup was arbitrary.
  • Dates in the Transcript Jobs carry dates in search results, and long transcripts get a day divider above the first message and wherever the conversation crosses midnight.
  • macOS Responsiveness Faster job loading and smoother sidebar resizing.
  • Clearer Query Errors jq failures now report the real parse error along with idiom hints.

Fixed

  • Cross-World Navigation Opening something in another world landed on the world and lost the scene, and jobs lost their detail view. Both now arrive where you asked.
  • macOS Launch Crash The app could fail on window restore.
  • Webview Memory Widget and experience webviews are torn down properly, fixing a leak.
  • Unknown Models A typo'd or retired model id is now rejected outright instead of silently running a different model than you asked for.
  • Device Tools Fixed hangs and a race when approving several tool calls at once.
  • Chat Recovery Returning to the foreground resumes the stream instead of showing "Load failed".
  • SAP Reliability ABAP operations retry through transient session and gateway loss.

Docs

  • Website on the Paper Theme Docs, pricing, SAP, self-hosting, CLI and integrations pages moved onto the shared paper surface, with copy rewritten in the house register. The blog is now Lab notes.
  • Brand Kit /brand publishes the mark, wordmark, palette, type and downloads.
1.1.59
2026-07-18

New

  • Account Billing and Pricing Launched account-level billing with a redesigned pricing page driven by personas.
  • World Blueprints Ship a whole world from a blueprint: Server Health as the flagship catalog, plus Daslab Live, Daslab Ops and Procurement Bench.
  • Live Stream Assets Rokid live streams as scene assets, with branded RTMPS ingest and authenticated viewers.
  • New Models Kimi K3, Muse Spark 1.1, Inkling models, and Together/Tinker transports.

Improved

  • Daslab Search Hardened for reliability, with sources and a dedicated read tool.
  • macOS Responsiveness Faster app response and less launch refresh churn.
  • Canvas Link Previews Better unfurl previews.
  • Scene Light and Tool Rows Cleaner scene state and chat tool rows.

Fixed

  • Attachments Filenames are preserved.
  • Program Recovery run_program recovers from parallel failures, and tool results survive within the lossless budget.
  • Mac Tool Bridge Local tool results return reliably.
  • Webview Redirects Mixed-content redirects no longer break the browser webview.

Docs

  • Landing and Marketing Rewrite Landing, pricing, SAP and integrations pages rebuilt on the paper theme, with the nav lockup, flame and brand assets tuned throughout.
1.1.58
2026-07-06

Improved

  • MCP Setup Simpler install and API key setup.
  • Op Labels Tool activity reads "ops" rather than "rows".

Fixed

  • Billing Display Account auth and usage now display correctly.
  • MCP Gateway Tools refresh when you switch scenes, and run_program bindings are properly scoped.
1.1.57
2026-07-03

New

  • Google Docs Templates Template tools for the Drive provider.
  • Meet Links Calendar events get a Google Meet link by default.
  • SuccessFactors OAuth SAML-bearer act-as authentication.
  • Sonnet 5 Upgraded from the previous Sonnet.

Improved

  • Asset Previews in Jobs Clearer previews inside the job view.
  • Files Stay Files Providers return file URLs rather than pushing base64 at the model, including Gmail and IMAP attachments.

Fixed

  • Notes Image preview decorations and upload insertion point.
  • Scene Loading Detail skeletons, load timing and composer sizing.
  • Gmail Drafts no longer appear in the inbox widget.
  • PDF Previews look_at falls back correctly for PDFs.
1.1.56
2026-06-28

Improved

  • Note Sheet Clearer drag affordance.

Fixed

  • Quick Notes Fixed a crash when creating a note quickly.
  • Scene Startup Fixed a race during scene load.
1.1.55
2026-06-28

New

  • Note Asset Experience A server-driven experience for notes.
  • Right-Click Menus Scene-list context menus on macOS and desktop: Settings, Share, Archive.
  • SAP Grants New provider.

Improved

  • Tile Style Picker Rich live previews, moved into Scene Settings under Appearance.
  • Note Previews Better note widget previews.

Fixed

  • Widget Grid Order Consistent ordering across clients.
  • Provider Logos Restored in tiles after a white-tile regression.
  • Suggested Providers Tapping one opens it directly instead of the full list.
  • Agent Picker Content-fitted, with a dedicated Manage Agents view.
  • iPhone Webviews Fixed widget clipping.
  • Notes Share URLs, iOS scrolling, and timeline diffs.
1.1.54
2026-06-27

New

  • Redesigned App-Icon Squircle Tiles Reimagined scene icon tiles as gorgeous iOS-style squircle app icons with an elegant hairline default border. They are now larger, highly proportional, and blend seamlessly into the grid workspace.
  • Scene Share Captures & Previews Beautifully render scene share previews with real live widgets and capture full-page scene share views pinned to head refs.
  • Schedule Stability Major fixes for the schedule preview shape in shared chat, schedule edit stability, and metadata synchronization.

Improved

  • Consistent Typography & Layout Spacing Enhanced icon tiles with tighter layout spacing, looser icon gaps, and consistent 13pt native iOS .footnote labels and 12pt captions across both iOS and macOS, complete with dark-color guard safety filters.
  • Widget Layout Controls Improved widget order stability to guarantee smaller icon tiles remain below larger widgets reliably.
  • Scene Gating Policies Added strict permission and tool gating policies for the Daslab builder and clean scene composition tools.

Docs

  • Contributor Economy Deep-Dive Published a strategic exploration notes of the compute-backed contributor economy, covering legal design, the MCP advantage, and platform play.
1.1.53
2026-06-25

New

  • Microsoft Teams Integration Connect Microsoft Teams via standard OAuth. Browse channels, read conversations, and post message threads as a first-class unified provider.
  • Move to Top/Bottom Context Shortcuts Easily reposition widgets on iOS with new "Move to Top" and "Move to Bottom" buttons inside the widget context menu.
  • CLI Session Cost Tracking The CLI now displays the real job cost in /status and shows the final aggregated session cost upon exit.

Improved

  • Repetitive program runs now utilize stable, rich tool IDs.
1.1.52
2026-06-21

New

  • Kimi K2.7 Code Support Added full support for the Kimi K2.7 Code model and updated the pricing matrix to sync with the latest OpenRouter rates.
  • Scene Share Token Refresher Introduced the scene-token API which supports live refreshing of active share links and automatic token regeneration.
  • CLI Token Administration Manage active CLI sessions easily with the new daslab token (issue/list/revoke) CLI command.
1.1.51
2026-06-19

New

  • Drag-to-Upload Drop Zone Drop files directly onto the iOS app's interface to trigger background uploads directly into your active scene.
  • CLI Blueprint Push Apply scene blueprints to your workspace in real-time with the new daslab blueprint push CLI command.

Improved

  • Cesium Brand Theme Accent Applied the brand-new Cesium color accent (5F9EFF) and icon design across the entire mobile client.
  • macOS Menu Bar Icon Updated the native macOS menu bar status icon to use the new Caesium flame brand asset.
1.1.50
2026-06-18

New

  • Unified Provider Workshop Reconstructed the entire integrations layer under the new defineUnifiedProvider framework, significantly simplifying credential mapping, asset syncing, and API interactions.
  • Hugging Face Provider Browse and ingest models, datasets, and spaces directly into your scene.
  • Automated File Transcription Uploaded audio or video files are now processed in the background to automatically derive transcripts, summaries, and timestamped segments.
  • SuccessFactors HR Integration View organizational structures, check time-off eligibility, submit absences, and process manager approvals from chat.

Improved

  • Desktop Mode Upgrades Beautiful dark title bar theme for desktop/macOS Tauri app.
  • IMAP Separate Usernames Added support for separate username and email fields on custom IMAP server connections.
1.1.49
2026-06-08

New

  • Personio HR Integration Add Personio as a provider to track employees, leaves, absences, and organizational structures live.
  • SAP S/4HANA Sales Order Creation Enabled creating sales orders directly (s4_create_sales_order) with strict ABAP-run guardrails.

Improved

  • Steadier under load The server no longer stalls when many scenes are busy at once.
1.1.48
2026-06-08

New

  • SuccessFactors Headless Sandboxing Credentials are now automatically injected into Sandbox environments, letting headless agent scripts run complex HR automations natively.
  • SAP Bench v3 Demo Blueprint Integrated the latest benchmark blueprints for ACCE Europa.
  • /taste-mine Meta-loop Introduced an elegant meta-evaluation loop that allows inspecting and saving agent responses.
1.1.47
2026-06-06

New

  • Jetson Hardware Provisioning Added local hardware setup and headless provisioning tools for NVIDIA Jetson devices.
  • ESP32 BLE serial console Interface with ESP32-S3 boards directly over Bluetooth Low Energy serial console (NUS).
  • ESP32 BLE IR Bridge Capture and replay AC remote control IR signals over the BLE bridge.
  • Cloudflare Provider Integration Added full Cloudflare OAuth connect with PKCE.

Improved

  • Shared conversation links now update in real-time using SSE, entirely removing the old background polling mechanism.
1.1.46
2026-06-03

New

  • @daslab/trace Chat UI A beautiful, interactive tree visualizer that renders agent traces and reasoning blocks directly within the conversation.
  • Slick Conversation Sharing Share job conversations via beautiful /sj/:id/:token read-only URLs on both desktop and mobile.
  • Reasoning Stream Surface and view the chain-of-thought/reasoning output for supporting models.
1.1.45
2026-06-01

Improved

  • Legibility in Dark Mode Lifted near-black scene tints to guarantee standard icons and widgets are readable on dark backgrounds.
  • Dynamic grid column rendering based on device width instead of sidebar states.
1.1.44
2026-06-01

New

  • Daslab Search Provider Search global web, social platforms (Reddit, 小红书), and e-commerce wholesale catalogs (1688, Taobao).
  • Job Failure Auditor Quick 6-section diagnostic tool to trace and debug stuck/failed job turns.
1.1.43
2026-05-30

New

  • Unified Device Tools iOS device contacts, calendars, and system integrations available securely inside V2 engine scripts.
  • Beautiful /cli Landing Page One-tap copy-paste CLI installation with guides for setting up Claude Code.
1.1.42
2026-05-25

New

  • DSBottomSheet Custom Sheets Replaced native UIKit bottom sheets with a physics-tuned, smooth bottom sheet on iOS.
  • Rams-style App Icon Added a minimalist, dots-only app icon variant.
1.1.39
[1.1.41] — 2026-05-25

New

  • Caesium Flame Branding Fresh app icons with Caesium characters (with/without eyes, Rams style, charcoal gray backgrounds).

Fixed

  • Fixed iOS file-scope compiler warnings and term hoist issues.
1.1.35
[1.1.38] — 2026-05-24

New

  • Desktop Tauri Self-Updates Desktop app now downloads and applies updates automatically.
  • Scene Embedding Drop-in iframe embed support via /<world>/<scene>/embed.
  • OpenAI Responses API Native support for the OpenAI SDK completions endpoint inside the V2 agent execution engine.
1.1.34
2026-05-23

New

  • scenelight stream subcommand Stream scene updates directly to your terminal.
  • Serve desktop single page apps at daslab.run/<world>/<scene>.
1.1.31
[1.1.33] — 2026-05-21

New

  • @daslab/kern Secret Vault Secure key management and credentials storage.
  • SAP Glyphs Custom enterprise SF Symbols added to the library.

Improved

  • Custom tools now start in milliseconds instead of up to nine seconds.
1.1.30
2026-05-21

New

  • Gemini 3.5 Flash Support Upgraded Gemini family to the newest Flash release.
  • Pulse Sync Bridge In-process SSE bridge for instant V2 engine job streaming.
1.1.27
[1.1.29] — 2026-05-20

New

  • SceneScript V2 Dialect Completely revamped program IR with strict local scopes, inputs/outputs contracts, and robust validation.

Fixed

  • Job and widget previews show the right text again.
1.1.25
[1.1.26] — 2026-05-17

New

  • Durable job history Every job commit is kept in a verifiable history, so a scene's past cannot be lost or reordered.
  • Stripe MCP Integration Secure payment automation for agent-led workflows.
  • Stream Detail Parameterization Toggle between summary and verbose modes in server response streams.
1.1.24
2026-05-12

New

  • SAP Fieldglass Provider Manage workers, work orders, time sheets, and suppliers.
  • IMAP Saved Search Widgets Pin query-based folder lists to your scene workspace.
  • Scenecast-Swift Package Extracted iOS list renderer to a fast Swift Package.
1.1.19
[1.1.23] — 2026-05-06 to 2026-05-08

New

  • YouTube Video Widget Embed video players with native playback controls directly inside your scenes.
  • Editable View Code Edit scenescript code directly on iOS widgets via the inspector sheet.
  • Outbound Delivery Tracking Outbound deliveries, material documents, and process orders integrated into SAP S/4HANA.

Improved

  • Enumerate active scene assets directly within the agent system prompt.
1.1.18
2026-05-04

New

  • 3D models in your scenes Drop a USDZ into any scene; it renders as an interactive 3D widget. Drag to orbit, pinch to zoom, two-finger drag (or the in-sheet toggle) to pan. Tap AR on iOS to view at scale via AR Quick Look. Camera framing is saved per-scene and shared across everyone in the scene, so when a teammate positions a model the way they like it, you see the same view next time you open it.
  • Sketchfab provider — search the 3D catalog from inside Daslab Add a Sketchfab account; the Add Asset picker now searches Sketchfab's library filtered to AR-ready models. Pick one and it lands in your scene as a 3D widget — no manual download, no glTF→USDZ conversion.
  • 3D widgets work on Mac Full orbit camera and gestures, same as iOS (only the AR button is iPhone/iPad-only).
  • Download progress while loading 3D models Big USDZ files now show a progress ring with bytes counting up.
  • Connect package registries — pypi, npm, cargo Add a registry account once and your publish token is automatically available inside any sandbox in that scene. Agents can pip publish, npm publish, or cargo publish without you pasting tokens into prompts.
  • Onshape provider Connect Onshape API keys; agents in your scene's sandbox can drive the parametric-CAD API directly (read variables, update, regenerate, export STL).
  • Bambu Lab provider Connect a Bambu cloud account; agents can submit prints, monitor progress, and read AMS filament state.
  • Smithery — connect any MCP server Browse Smithery's catalog of ~7,000 MCP servers from the Add Asset picker; connect any of them in two taps.
  • Chat tool calls morph into result tiles When an agent calls a tool, the call now renders as a single tile that animates through queued → running → result states. Once finished, the tile stays as a tappable launcher to re-open the result. Approval prompts and failed calls share the same chrome.
  • GitHub Pull Requests button on repo widgets Agent calls to list_pull_requests now surface as the repository asset opened to its PR view, not a one-off search result.
  • More tools render as widgets out of the box Most MCP tool outputs (lists, tables, key-value pairs) now appear as proper widget tiles in the chat trace and tool cards, not raw JSON.

Improved

  • 3D pinch zoom range is much wider A single pinch covers more zoom; you can pull back to a full overview or get close enough to touch a feature on the model.
  • 3D bottom sheet uses the full screen The detail view no longer wraps the 3D canvas in a scroll view; orbit gestures stop fighting scroll.
  • Onshape and Sketchfab now have proper provider logos in the asset list.
  • Plan widget rows fit the tile Plan steps no longer overflow; row height matches the standard tile grid.
  • Faster scene reload during job activity Job ticks no longer flood the scene timeline with redundant updates.

Fixed

  • Empty scenes on macOS after recent updates A subtle decoding bug in saved 3D camera framing was throwing during scene load, leaving the scene apparently empty (with the "add an asset" suggestions visible) until you added something new. Now decodes cleanly even when older saved cameras are missing fields.
  • macOS detail sheet was 10pt tall Tapping into a widget on Mac opened a sheet that collapsed to a sliver because there were no iOS-style detents to size it. The sheet now opens at a sensible 880×720, resizable.
  • 1×1 widgets rendered as a thin sliver After the new sizing system landed, 1×1 widgets were being routed to the wrong renderer (a squashed expanded card) and 2×2 widgets to the icon-only tile. Routing is correct now.
  • 3D model re-downloaded every time you opened the bottom sheet Cache key was including the rotating signed-URL token; now keys on the model identity so reopens are instant.
  • 3D model camera applied on first render Your saved orientation/zoom now shows on the very first frame, instead of snapping into place when you touched the model.
  • 3D pinch zoom no longer snaps back on release The final pinch position is now committed reliably.
  • Inline images in Markdown Auto-linking no longer breaks ![…](…) syntax that's wrapped in a link or caption.
  • Google Sheets row counts Reading a sheet no longer returns the empty grid size when the data is shorter than the grid.
  • Stuck jobs Jobs that crashed during certain edge cases could be left neither running nor finished; they now resume or fail cleanly on the next engine tick.
  • Job detail on macOS Tapping a job on Mac now pushes it onto the navigation stack instead of presenting a bottom sheet that didn't size correctly.
  • Running-tile timer flash The timer starts at "0s" immediately instead of flashing an empty pill for a frame.
  • PDF understanding Agents can read PDFs again — they're now passed to the model as native document blocks instead of being mangled into raw text that broke context limits.
  • Share-conversation links Sharing a conversation now produces a URL that opens correctly instead of pointing at the wrong route.
1.1.15
2026-04-28

Fixed

  • Inspector asset tools now work The scry_* tools were silently failing: the inspector appeared connected but tool calls never reached the agent due to a stale org_id check that always returned null.
  • /v1/scry endpoint now reachable A catch-all handler was intercepting every /v1/* path, making the scry routes unreachable. Fixed mount order.
  • Scene pruning no longer errors on special characters Cleaning up a scene used to fail for certain assets. It now finishes whatever the asset names contain.
1.1.14
2026-04-23

Improved

  • Dynamic Type consistency across all widgets Map, 3D scene, gallery, image, web, chart, console, document, and table widgets now use the shared typography token system, ensuring text scales correctly with the user's device text-size setting.
1.1.13
2026-04-23

Improved

  • Table rows no longer show a trailing chevron Rows are already tappable; removing the per-row arrow gives data columns more horizontal space.

Fixed

  • Missing widgets after fresh app launch On a device where the asset cache was cleared but the stored state hash survived, the server would send only a partial diff, leaving most assets absent from the scene until the next server-side change. The client now sends no hash when its cache is empty, guaranteeing a full snapshot on first connect.
1.1.12
2026-04-23

New

  • Editable staged tool calls When an agent drafts a tool call that requires approval (e.g., a Gmail send), tap Edit to modify the subject, body, or recipients before approving. Changes are saved server-side so the approved call uses your edited version.
  • Kanban view Any list asset can be displayed as a Kanban board grouped by a field value such as status or priority.
  • SAP S/4HANA saved queries Create a persistent query asset with a custom OData filter and entity type; the widget shows live results every time it loads ("open invoices over 30 days", "new hires this month", etc.).
  • SAP S/4HANA record widgets for remaining entities Business Partner, Product, Purchase Order, Supplier Invoice, Sales Quotation, and Production Order now render full record cards with colored status pills.

Improved

  • Dynamic Type support in record widgets Record widget text scales with the device text-size setting; numeric values use monospaced digits for clean alignment.
  • Widget overflow eliminated All widget tiles now clip to their card bounds; no widget can spill into adjacent rows regardless of content length.
  • Unknown widget type shows a fallback When the server sends a widget type the current client doesn't recognize, a legible fallback card appears instead of a blank tile.

Fixed

  • Sidebar asset count Asset count badge now updates live via SSE instead of going stale after a scene refresh.
  • SAP status badges Status now renders as a colored pair row instead of an orphaned badge floating above the card.
  • Invisible scene members Members marked invisible are filtered from the settings list and excluded from the scene state hash, preventing spurious cache invalidations.
1.1.11
2026-04-23

New

  • LINE conversation inbox LINE DMs, group chats, and rooms are now tracked as conversation assets with a live transcript widget. New tools let the agent list conversations, read messages, send replies, mark threads read, and archive them.
  • SAP S/4HANA: three new entity types Billing Document, Sales Quotation, and Production Order join the asset catalog, each with a live widget.
  • SAP S/4HANA: sub-entity views Pinning a Business Partner or Sales Order now expands into related tiles: a customer's recent sales orders and A/R invoices, or a Sales Order's line items.
  • Salesforce, Notion, Linear and Airtable listed They now appear in the asset browser.

Improved

  • Glass composer redesign The message input is now a translucent floating pill with a real blur effect; the model picker is icon-only, removing the chrome band at the bottom of conversations.
  • Plan widget fits its tile Steps are capped to the tile's row budget with a "+N more" footer for longer plans; the "Updated X ago" timestamp moves to the context menu so the full title is always visible.
  • Widget reorders persist across reconnects Rearranging widgets now propagates correctly through the scene state hash; previously a reconnect could restore the old order from the local cache.
  • SAP Business Partner listing Default sort order now surfaces real company partners before test data entries.

Fixed

  • SAP S/4HANA widgets no longer fail silently Account lookup was using the wrong field, causing widgets to return empty without any error.
  • App Store Connect browse Browse no longer requires an explicit account selection when only one account is connected.
  • Chat scroll under glass pill Conversation content now scrolls correctly beneath the floating composer so the blur has content to render against.
1.1.10
2026-04-20

New

  • OpenAI-compatible /v1 endpoint Point any OpenAI-SDK-compatible client at Daslab and use it as a model. Tools, memory, and the approval flow come along for the ride.
  • Desktop app (experimental) Early-preview Tauri client for macOS and Windows, with loopback OAuth sign-in.
  • Together AI as a BYOK provider Bring your own Together key to reach their open-weight catalog.
  • Per-agent account pinning Agents can now pin a specific account asset, and the agent editor shows which providers are actually available.
  • Test-run assets Job test runs render as live widgets with real-time status.
  • Daslab SDK (developer preview) @daslab/sdk is on npm with codegen, runtime, and React bindings for building on top of Daslab.
  • LINE stateless auth Sign in with a LINE Channel ID + Secret; tokens auto-minted, no persistent OAuth state needed.

Improved

  • Anthropic prompt caching System prompts and tool definitions are cached by Anthropic, so jobs start faster and cost less. System prompts are split into stable + dynamic sections for better cache hit rates.
  • Snappier scene reopen Reopening a scene reuses what the device already has, so going back in is visibly faster.

Fixed

  • Negative cost after cache reads Cost display no longer dips below zero when Anthropic's cache is hit.
  • Cost leak on empty-response retry Retries after empty Anthropic responses no longer double-count cost.
  • Asset actions 500 errors Actions now use the correct user identifier; long-press actions on widget items work reliably again.
  • App Store Connect accounts Registering and browsing App Store Connect accounts works again.
  • Agent asset type normalized Bedrock managed default dropped, so agent configuration no longer silently overrides user intent.
1.1.8
2026-04-17

New

  • File upload as a first-class asset Tap + in a scene to add a file. "Files" lives at the top of the asset browser; one tap opens the system picker, the file lands as a medium-sized widget.
  • QuickLook previews for any file PDF, Word/Excel/PowerPoint, Pages/Numbers/Keynote, CSV/TSV, RTF/text, audio, video, USDZ, and zip archives all render a thumbnail in-grid and open in the native iOS QuickLook viewer when tapped.
  • SAP Integration Suite provider Cloud Integration + Open Connectors as Daslab assets.
  • SAP S/4HANA provider OData business objects (orders, materials, partners) browsable as scene assets.
  • Zapier tables CRUD Create/delete tables and manage fields directly from chat.
  • Claude Opus 4.7 New top-tier model added; Opus 4.6 and Sonnet 4.5 retired.

Improved

  • Setup wizard polish Slot checklist redesigned in native iOS style, Continue button, live SSE-driven status updates, correct "done" state when reopening a partially-configured wizard.
  • Asset browser inside jobs Deep links to daslab/asset_browser open the picker right inside the job view.
  • Branded provider tiles Distinct tinted logos for SAP Integration Suite vs S/4HANA; Open Connectors catalog wired into per-asset brand icons.
  • Zero-config public APIs ChEMBL, ClinicalTrials.gov, and PubMed materialize a default account on first use, no setup needed.

Fixed

  • GitHub markdown viewer restored — the new file-preview path no longer steals .md rendering away from the markdown engine.
  • LLM can read large photos image size limit now applies after the vision-resize step, so iPhone passport snaps and similar 5–12 MB images aren't rejected upfront.
  • PDF sheet fills the screen dragging the bottom sheet up now expands the QuickLook preview to full screen height instead of stopping at a third of the way.
  • Upload paths cleaned up new file uploads no longer write to a /uploads/undefined/ namespace; existing files keep working.
  • Empty LLM responses retry instead of silently failing.
  • Anthropic API stability strip unpaired UTF-16 surrogates from prompts before calling the API.
  • Setup wizard empty state no longer hidden by admin singletons; shows correctly on a fresh scene.
  • Zapier add-asset uses the form-based flow with snake_case response fields; cryptic placeholders dropped so labels are visible.
  • scene3d widget subtitle switch case handled.
1.1.7
2026-04-15

Fixed

  • Scene widgets refresh reliably again Google Sheets, Gmail, Drive, and Calendar widgets now update in real time when rows, threads, or events change. Previously pull-to-refresh silently failed for any scene that also had the corresponding account asset visible.
  • No more flickering jobs widget The most recent job title used to rapidly switch between two values; widget enrichment now produces stable output so the scene stays calm.
  • No more "previous head" flash on scene re-entry Navigating back into a scene no longer briefly shows an older state before snapping to the latest.

Improved

  • Locale-aware relative times everywhere "2m ago", "3d ago" date labels now tick forward live on screen instead of being frozen at the moment the server computed them, and respect the user's locale. Applies to PR/issue/commit details, Google Drive file lists, Gmail threads, Render deploys, and asset tile stats.
  • GitHub folder browsing New github/folder asset type shows readable file lists; commit-date formatting fixed on folder widgets.
1.1.6
2026-04-13

Fixed

  • List row heights now match native iOS style consistently
  • App Store Connect builds widget: removed redundant "Valid" badge, shows title + upload date only
1.1.5
2026-04-12

New

  • Reactive SDK runtime Signal-based hooks with actions and per-item interactivity; list views support tappable actions directly from scene code
  • Stripe credit top-ups Buy credit packs ($5 / $20 / $50) via Stripe Checkout from the web account page
  • Web OAuth login Sign in with Google or GitHub on the web account dashboard
  • Bulk job management Mark done, archive, or unarchive multiple jobs in a single tap

Improved

  • Jobs widget redesigned with horizontal scroll — browse up to 10 recent jobs with a "View All" card at the end
  • Generated images from AI tools (Replicate, fal.ai) now display inline in the conversation automatically
  • App Store Connect builds now show marketing version alongside build number (e.g. "v1.1.5 (42)")
  • Old completed and failed jobs open again instead of coming up empty
1.1.4
2026-04-11

New

  • Zapier SDK provider Connect 7,000+ apps via Zapier's action catalog
  • Enterprise page and pricing tier Dedicated enterprise landing page and plan
  • Kaggle provider Browse datasets and competitions from Kaggle

Improved

  • Updated fal.ai tool descriptions with latest SOTA models (SAM2, Nano Banana, Seedance, Kontext, 3D)
  • Google Sheets widget now supports tab-level enrichment
  • Strip assetType from tool schemas for Gemini and OpenAI compatibility
  • Auto-resolve account for daslab_add_asset when not provided
  • Google sub-providers listed in daslab_add_asset tool description

Fixed

  • App Store widget list layout cleaned up
  • Gmail header spread causing errors
  • Never upload raw image data when resize fails — fallback to UIImage compress
  • Techmeme logo uses high-res Brandfetch URL instead of favicon
1.1.3
2026-04-08

Improved

  • List widgets automatically use single-line row style when items have no subtitles
  • App Store Connect widget simplified — shows version + date only, no per-item badges
1.1.2
2026-04-08

New

  • Video analysis Attach videos from your photo library, auto-compressed to 720p before upload. AI extracts frames and transcribes audio for analysis
  • Screen recording tools Record your screen on macOS and analyze the capture with AI
  • Kaggle provider Browse and reference Kaggle datasets and competitions
  • Custom domain support for Render Manage domains directly from Daslab
  • Gemma 4 default agent New agent powered by Google's Gemma 4 model

Improved

  • Scenes reconnect immediately after a dropped connection, however many are open
  • Video URLs auto-return a grid overview when inspected with look_at
  • Image viewer supports drag-to-dismiss with spring animations and edge bouncing
  • Upload progress shows real-time bytes transferred (e.g. "2.3 MB / 8.1 MB")
  • EXIF metadata (GPS, date, camera) preserved through image uploads and resizing
  • File metadata included in job context via HEAD requests
  • Expanded icon picker with more SF Symbols per category
  • Chat markdown visual hierarchy restored
  • WebView text autosizing disabled in chat for consistent rendering

Fixed

  • "Run was interrupted" message no longer shows when user taps Stop
  • Local device file tools prefixed to avoid duplicate tool name collisions
  • Engine stalls now surfaced visibly — empty, failed, or cancelled LLM turns are reported
  • Plan continuation enabled by default — auto-retries when LLM stops mid-plan
  • notify_user text preserved in conversation history on resume
  • Index out of range crash fixed, video quality lowered to 540p
  • Image viewer opacity calculation fixed for macOS
  • Audio track extraction before sending to Deepgram
  • SSE done event sent immediately instead of blocking on title generation
  • Swift 6 concurrency warnings resolved
  • Screen recording service hardened against edge cases
  • Stuck jobs can now be continued in a new job with full history
  • Stricter OAuth token validation prevents Bun header errors
1.1.1
2026-04-04

New

  • On-device LLM inference Run language models locally via Apple MLX (mlx-swift-lm, HuggingFace Transformers). No cloud needed for basic tasks.
  • Reactive SDK Define scenes with JavaScript hooks (useInbox, useSheet, useIssues, usePullRequests, useQuery) and views (Table, Chart, Metric, List, MapView, Calendar, Document, KeyValue). Fetch data in parallel, transform with JS, render structured widgets in one shot.

Improved

  • Updated model catalog with new entries, added mlx-bench CLI tool for local model benchmarking
  • Widget headers now show relative dates ("2h ago") instead of raw timestamps
  • App Store Connect version context included in job system prompt

Fixed

  • TestFlight CI now always uploads on tag push (was skipped on workflow_dispatch)
  • Skip macro validation for mlx-swift-lm package macros (CI build fix)
  • Restored suggested providers empty state in asset browser
1.1.0
2026-04-04

New

  • Google Shared Drives Full Team Drive support: browse, list, and manage files across shared drives
  • macOS support (WIP) Menu bar screen capture, system audio, improved job composer
  • App Store v1 preparation Permission descriptions, inline Note/Todo creation, provider filtering for review

Improved

  • Redesigned map widget Full-bleed map with tappable annotations and collapsible bottom drawer (replaces fixed-height list)
  • Instant tool feedback Tool call spinners appear in the UI during LLM streaming, not after the response completes
  • Context compaction Old tool results (3+ turns back) are compressed to one-line summaries, preventing context bloat in long conversations
  • Better error messages for unknown providers/asset types — now suggests correct names ("Did you mean: googlemaps?")
  • Google Maps deep links use correct iOS URL format
  • Tavily research deprioritized in favor of faster tavily_search unless explicitly requested

Engine

  • Smarter job continuation — only forces extra LLM turns when a plan has incomplete steps (no more accidental stops mid-task)
  • Plan tool descriptions rewritten to match agentic best practices (execute immediately, don't pause for confirmation)
  • Trailing assistant messages stripped before Anthropic API calls (fixes prefill errors)
  • Timeouts added to Tavily MCP client (15s connect, 30s tools, 120s research)
  • OAuth token validation catches all HTTP-invalid control characters

Fixed

  • Runner widget now appears correctly after SSE reconnect
  • Document/web widget no longer shows duplicate titles as subtitle
  • Deep-linking to a specific provider in the asset browser sheet works reliably
  • Fixed registry.getDefinition crash in hook-tools endpoint
  • Fixed existingCalls ReferenceError crashing all jobs
  • Bash provider hidden for security
  • Fly.io cpu_kind defaults to "shared" (no more rejected machine configs)
  • Fixed Release build type-checker timeout by extracting sceneContent
1.0.7
2026-04-04

New Integrations

  • Fly.io Full infrastructure management: deploy apps, run commands, manage secrets, volumes, Postgres databases, and custom domains
  • Techmeme Tech news feed integration

App Store Connect — Full Write Support

  • Edit app descriptions, keywords, and "What's New" text directly from Daslab
  • Upload and manage App Store screenshots
  • Submit versions for App Store review
  • Manage phased releases (pause, resume, complete rollouts)
  • Add and remove TestFlight beta testers
  • App widget now shows live version status and recent builds at a glance

Google Drive — File Management

  • Move, copy, and rename files and folders
  • Trash and restore files (safer than permanent delete)
  • Batch move multiple files at once
  • Star and unstar files
  • New folder widget showing file listings

Improved

  • Tapping a provider icon on the welcome screen now jumps directly to that provider's setup
  • Better error isolation — a single provider failing no longer blocks scene loading
  • Gemma 4 model support (Gemini API + OpenRouter)

Fixed

  • Fixed widget data not updating in real-time
  • Fixed map widget showing duplicate titles
  • Fixed scene list sorting by job activity
1.0.6
2026-04-02

Improved

  • Redesigned login screen — cleaner typography and layout
  • Scene settings UX — auto-save, markdown description, reordered sections

Fixed

  • New jobs now appear immediately in the scene widget (no more stuck loading)
  • Fixed job detail flickering on load
  • Gmail search works correctly again
  • Fixed issues with Gemini model switching
  • Improved engine reliability — no more duplicate or concurrent job execution
1.0.3
2026-02-07

New

  • Scene widgets WebView-based widget area on every scene showing live asset data
  • Google Sheets formatting Read and write cell values with sheets_get_cells and sheets_update_cells
  • Wise (TransferWise) Create recipients, send transfers, cancel transfers
  • Content-addressable file uploads Instant deduplication for all file uploads
  • Cost tracking Job costs tracked and visible per tool call
  • Deepgram Migrated to job provider architecture for audio transcription
  • Claude Opus 4.6 & GPT-5.2 Codex Latest models added
  • TestFlight CI Automated builds and uploads via GitHub Actions

Improved

  • Full-width tool cards for better screen usage
  • Smoother text streaming with fade-in animations
  • AI welcome message matches user's tone
  • Auto-refresh widgets when page becomes visible
  • HTML emails converted to plain text for better AI readability
  • Better tool call parameter display with fade truncation
  • Job titles generated immediately after first user message

Fixed

  • SSE stream cleanup race condition causing crashes
  • Failed jobs can be retried by sending new messages
  • Org members can access shared jobs
  • Job deletion works correctly
  • Stale account filter cleared when switching providers
  • Scene visibility and notification updates are server-first
0.1.11
2026-01-16

New

  • Tint colors Customize scene and organization icons with color
  • CLI improvements Fuzzy select for slash commands, inline filtering, semver update checks, ad-hoc macOS signing

Fixed

  • Asset decoding and multi-provider support in CLI
  • Null UUID casting in trace saving
  • Asset filtering with empty arrays
0.1.6
2026-01-16

New

  • CLI /update command Update the CLI directly from chat
0.1.5
2026-01-16

New

  • Daslab CLI Terminal-based chat with slash commands for switching orgs, scenes, and models
  • MCP integration GitHub tools available in chat via Model Context Protocol
  • iOS GitHub repo picker Browse and select repos directly in the app
  • Landing page First website with CLI install instructions and feature overview
  • Scene-scoped assets Assets are now scoped to scenes, filtering available tools per context

Improved

  • Auto-login and stay in chat after login in CLI
  • Admin endpoint for fetching latest models from providers

Fixed

  • Empty conversation messages prevented
  • New scene chats persist correctly