0.2.1
Released 16 October 2026.
Desktop app
- Newa tour of Studio, offered when you finish onboarding
- Newthe Renders tab shows what re-renders, what caused it, and which providers trigger extra renders, and warns you about render loops. The Inspector's Perf tab is now Renders too, and the component tree highlights each re-render
- NewStudio checks performance while you use the app, and tells you about each new problem once
- NewInsights can group recent sessions, so a problem that keeps coming back is one card
- Newthe Performance screen opens on a dashboard
- NewCompare puts several metrics on one chart, with presets. Hover a metric to see what it measures
- NewReplay charts show CPU per thread, dropped frames, garbage-collection pauses and network
- NewReplay draws a recording's touches over the device, and the heatmap follows the playhead
- Newcapture a CPU profile from the Flamegraph panel with one button
- Newthe device menu lists running Mac apps
- Newnotifications survive a restart, and clicking one takes you to what it's about
- NewHardware → Shake shakes the simulator
- FixStudio uses less CPU, and animations and tooltips run at the right speed
- Fixthe Inspector no longer shows "0 nodes" for a connected device after an agent session
- Fixhovering a row in the component tree outlines that component on the device
- Fixexpanding a row in the Network panel no longer shows an error
- Fixa restarted run's charts no longer start with a sample from the previous run
- Fixtaps made by a flow or an agent no longer count as rage taps or dead zones
CLI
- Breaking
install-macos-agent.shis gone. Squiggle adds the agent to your Mac app's Debug build for you, so remove any build step that runs the script - New
squiggle initfinishes setting up an Expo app, adding the Babel config and entry file if they're missing. Anything it can't change safely, it lists for you to do - New
squiggle initno longer creates a.envfile. Your iOS app finds Squiggle without one - New
squiggle init --agent claudealso installs the Squiggle agent kit into.claude/ - New
squiggle doctoralso checks your licence and the Babel plugin, and says how to fix either - Newwhen your trial or licence expires, Squiggle tells you where to buy a key
- Fix
squiggle perf diff --assertexits with code 1 when a threshold is breached - Fix
squiggle crawlexits with code 1, not 2, when it finds a crash - Fixtwo runs started at the same moment no longer merge into one history entry
Agents & MCP
- New
rendersgives your agent what Studio's Renders tab shows - New
propose_fixturns a performance finding into a plan of code changes - Fix
batchchecks every step before it runs any, so a malformed step no longer runs the steps before it - Fixafter a filtered
describe, the next action no longer reports elements that were already on screen as new - Fixa tap by
refhits that element, even when another one has the same label - Fixthe agent kit's Claude Code hooks run
Flows & device
- Breakinga misspelt key at the top of a flow file, such as
healng:, is an error that lists the valid keys. It used to be ignored - Newtest an iOS app and a Mac app from one project: list both under
appsin the config, and pick one with--platform.squiggle initfills them in - Newresults are kept per platform, so a flow that passes on iOS isn't counted as passing on macOS
- New
squiggle flow --recordworks for Mac apps - NewMac apps with App Sandbox turned on work too
- Fixa run for your iOS app no longer connects to your Mac app, or the other way round
- Fixscrolling works in Mac apps, sideways too
- Fixa Mac app left open no longer slows down the start of a run
- Fix
expectRouteon a tap no longer shows an error in your editor
Performance
- Newfindings link to the line that declares the component
- Newwhen a context value is recreated on every render, the finding names the context and the component that provides it
- Newmemo-miss also catches props that are new objects or arrays with the same contents
- New
nav-loopflags navigation loops your users don't usually take - New
squiggle perf insightslists a session's findings, andsquiggle perf watchshows them as they happen - New
perf diff --assertcan fail when a finding you name appears, withfailOnDetectors - New
perf diffand product analytics compare sessions from one platform at a time. Choose which with--platform
SDK
- Newrage taps and dead zones are detected on every control, not only gesture-handler ones
- Newcomponents wrapped in
memo()orforwardRef()show up under their own names - Fixa button with no label or testID appears once in
describe, not once for each component wrapping it - FixMac apps no longer report an impossible JS FPS
Website
- Newthe docs are rewritten, and cover every MCP tool, agent command and Performance panel
- Newmore docs pages have live demos you can try
- Newsearch (⌘K) finds entries in reference tables
- NewGet Squiggle walks you from install to your first flow
- Fixtooltips no longer stay open after you tap on a phone
- Fixthe phone menu lists every section of Why, Pricing and Download
- Perfsquiggle.sh pages load faster and jump around less while they load