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.