Skip to content

Changelog

  • New — Docs: We’ve published comprehensive docs covering the whole platform, including agent capabilities like network throttling and GPS override that weren’t previously discoverable. They’re available at docs.semaloop.com.
  • New — Webhooks: You can now notify your own tooling the moment a test run finishes, so you can kick off whatever should happen next: open a ticket, page someone, or point a coding agent at the failure. To get started, go to Settings and choose “Set up webhooks”.
  • New — API key support for MCP: Previously we only supported OAuth. You can now authenticate with an API key, which lets our MCP server be used where a browser isn’t available to complete the OAuth flow, such as in your CI pipeline.
  • Improved — Video replay: When our agent gets the position of something in order to interact with it, we now show an outline of that area in both test run replays and on signals. This makes it easier to see which parts of your app’s UI the agent is looking at.
  • Improved — Re-run on previous builds: You can now run all tests against an earlier build, which makes it easier to check whether a problem was introduced by a specific release.
  • Improved — Clearer TestFlight errors: When a run can’t install your build because of TestFlight access, the run now says so instead of failing for an unclear reason.
  • Fixed — Signals from deleted tests: Deleting a test now removes its signals from your issues inbox, so you no longer see problems from tests that no longer exist.
  • Fixed — Agent reliability: We’ve improved how the agent clears pre-filled text fields, handles keyboards that cover the login button, and retrieves email OTPs.

  • New — Sandbox accounts: Semaloop agents can now pay for in-app purchases using Apple sandbox accounts, which reset before each test run. This means you can reliably test paywalls and other subscription workflows without making custom API calls or dealing with Apple’s APIs. Let us know if you’d like this set up on your Semaloop account.
  • New — Managing the issue lifecycle: Issues surfaces the problems our agents notice while testing, and you can now manage their lifecycle within Semaloop. Choose from open, archived and resolved to stay on top of your inbox.
  • New — GPS: You can now override the device’s location during a test run. Include a latitude and longitude pair, or a description of a location, in your test spec (for example “set device location to the Eiffel Tower”) to set the location for the remainder of the test.
  • New — iOS 27: Agents can now run on iOS 27. Get in touch if you’d like iOS 27 devices added to your environment.
  • New — Device locales and languages: Tests can now run across different device locales and languages.
  • New — MCP updates: You can now manage secrets and tools, and cancel runs, through our MCP server.
  • Improved — Agent search: We’ve improved the search tool available to our agents, so they have a better understanding of what happened earlier in a test. This improves tests that check state set earlier in their run.

  • New — Simulators: Semaloop now supports testing on simulators, not just physical devices via TestFlight. That means you can start testing earlier in your development process, and test biometric flows like Face ID that aren’t possible on real devices. Get in touch if you’d like to explore adding simulators to your Semaloop account.
  • New — GitHub integration: For customers running builds on simulators, Semaloop can now post test results straight onto your PR as a GitHub status check, so you can see at a glance whether the current build passed or failed without leaving GitHub.
  • New — Create tests with MCP: Create and edit tests directly from your coding agent using Semaloop MCP. Describe a feature or a user journey and we turn it into a well-formed test. We’ve baked our own guidance on what makes a Semaloop test pass reliably into a prompt, so the specs your agent writes follow our best practice.
  • New — Run tests on previous builds: Open the test you want to run, choose the dropdown next to the re-run button, and select “Rerun on build”. This lets you check whether a recent backend change affects an older version of your app.
  • New — Test feedback: Feedback can now be given per test, which helps our agent understand where it is going wrong and perform better in future.
  • New — Highlighting test spec failures: When a test fails we now highlight which part of the spec failed. Clicking the highlight jumps to that point in the trace.
  • Improved — Resolve test failures with MCP: We’ve improved the “Send to agent” prompt for handling failing tests. Your agent can pull the run, video, logs and network data as before, and now decide whether the app is broken or the test was brittle. You can then either fix your app, or reword the test and re-run it.
  • Improved — Edit folder descriptions: Folder descriptions are now editable after creation.
  • Improved — Edit tests on the test run page: The test spec can now be edited on the test run page. This tightens the loop when you spot a problem in the trace, since you can edit the spec without changing page.
  • Fixed — Video handling: We now handle video correctly when the device changes orientation.

  • New — MCP: Access Semaloop context directly from your coding agent. When a test fails, ask a tool like Claude Code or Codex to pull the test run, video, logs and network data, and help fix the bug on the spot. To speed up bug hunting we’ve built a “Send to agent” workflow for failures inside Semaloop, so you can go from “test failed” to “bug fixed” much faster. Setup details are in Settings under “MCP”. If you have feedback, ask your coding agent to send it to us.
  • Fixed — Audio capture: Audio input wasn’t being captured on certain test runs.
  • Fixed — Map zooming: Composite zoom-out gestures, used where pinch-to-zoom isn’t supported, were failing intermittently.
  • Fixed — Video replays: Clicking play on a signal near the end of a test run restarted playback from the beginning.
  • Fixed — Video sync: Video playback drifted out of sync when a test changed the device’s region mid-run.

  • New — Issues: A new way to find problems your tests miss, by observing how your app behaves across all of your test runs. Issues surfaces the problems our agents notice while testing, such as screens hanging before they load, buttons that need multiple taps, or flows that technically work but don’t feel right. No setup is required: it runs on the tests you already have.

  • New — Error analysis: When a test fails, Semaloop now examines every artefact from the session, including the trace, app logs and network traffic, and determines the true root cause. It also suggests next steps, so you don’t have to spend time working out what went wrong.

  • New — Folders: You can now organise tests into folders. Create a folder from the test page, then assign tests on creation via the folder dropdown, or move existing tests from the row menu. Folders expand in place, so you can open a spec without leaving the page.

  • New — Per-test notifications: You can now subscribe to notifications for a particular test run. Semaloop messages you directly on Slack when the run finishes.
  • New — Dynamic build notifications: Slack notifications now update to match your dashboard. When you fix a failing test, the Slack notification updates to reflect that it no longer fails, so you can tell the current state of each build from Slack.
  • New — Control automatic test runs: You can now stop tests from running automatically as soon as we discover a new TestFlight build. Configure this in the “Test runs” section of your settings.
  • New — Skill feedback: You can now rate learned skills up or down in test run traces. Rating a skill down stops it running again in future.

  • New — Apple IDs: All of our devices now have a unique Apple ID, which lets you test Apple authentication workflows. This works alongside existing Google authentication flows and any accounts you have added through Secrets. Apple IDs on device also enable in-app purchases, so you can test subscription workflows within a test rather than upgrading accounts by hand beforehand.
  • New — Keyboard shortcuts: You can now move through test videos step-by-step with the j and k keys. Press ? for a reminder of the other shortcuts we support. Spoiler: for now it’s just Space to play and pause.
  • Improved — Faster video: We tweaked some video settings, so recordings of recent test runs are now much quicker to start playing.
  • Fixed — Credential selection: In some cases we picked the wrong credentials when getting past TestFlight login screens.
  • Fixed — Blank video: A blip in our video pipeline could cause the remainder of a recording to show up blank.

  • New — Secrets: You can now bring your own accounts or API tokens into Semaloop. For example, you can add multiple email accounts, then prompt the agent to “log in with a premium account” or “log in with a free account” depending on what you want to test. When creating a test you choose which secrets to make available; to use custom accounts in an existing test, edit the spec and select the secrets you want the agent to access. Custom accounts are optional and sit alongside the default on-device Google and Apple accounts, giving you far more options for how you authenticate to your app.

  • Security — SOC 2 Type 2: We have obtained our SOC 2 Type 2 certification following an independent audit conducted over a three-month period. The audit reviewed our operational processes and software management practices, and confirmed compliance with a set of high security standards.

  • New — Mobile UI: We improved the mobile experience for quick check-ins on the go. There’s now a movable test run preview, so the trace and session video can be viewed side by side on mobile. This makes it easier to spot false positives and understand what happened in a failing test before digging deeper on a larger screen.

  • New — Skip inactivity in session replays: Session replays now fast-forward through inactivity automatically, so you only watch the parts where something is happening. This is on by default: open a test, hit play, and the recording skips past the parts you don’t need. Replaying a test is now several times faster.

  • New — Slack integration: Get test summary notifications in Slack every time your test suite runs after a TestFlight build is pushed. We tell you what passed and failed, and link you to the right place to investigate. Manually triggered runs stay notification-free to keep the noise down.

  • New — Bring your own tools: You can now provide your own tools for the agent to use during a test run. This is especially useful for resetting server-side state, such as test user accounts. Pass in an API endpoint, for example a reset user endpoint, and reference it in your test spec. When the test runs, we call your tool at the right time.
  • Improved — Playback scrubbing: Clicking through the session trace now feels considerably smoother.
  • Fixed — Touch gestures: Complex swiping interactions are now captured accurately in the video player.
  • Fixed — Video reloading: When a test completes you no longer need to refresh the page for the video to load.

  • New — Draft tests: You can now mark tests as drafts so they don’t run on every build. This makes it easier to iterate on tests, investigate issues, and keep all your tests in one place without running them before they’re ready. Draft tests can still be triggered manually at any time.
  • New — Audio controls: For tests using audio input and output, we now play those sounds in the video player, with a control for each audio stream.
  • Improved — Model provider error messages: If a model provider is having an outage and your test fails, we now tell you that’s what happened, so you can monitor the outage and re-run the test.
  • Fixed — System logs: We reworked how we capture system logs, which has significantly reduced device CPU load.

  • New — Skills: Introduced reusable skills (repeatable Python scripts learnt while testing) for a given test spec. Inspired by Cloudflare’s code mode post, this speeds up some tests by up to 2x once enough skills have been collected.
  • New — Auto re-runs: If a test fails, we now automatically re-run it on the same device to confirm it isn’t a random failure.
  • New — Cancel queued tests: You can now cancel a test run while it is still queued. Handy if you want to update the test spec. You can’t yet cancel a run once it has started.
  • Fixed — Auto-scroll: You can now scroll through the test trace while the video is playing. Previously you had to pause first.
  • Fixed — Video playback: Refreshing the page or sharing a test run link now keeps your playback progress.