Taqwright LIME
Beta. LIME is in active development. It is usable for real work, and we run it on our own
projects, but settings, the chat protocol and the shape of exported tests may still change
between releases. Please report anything that breaks: support@taqwright.ai.
Agentic mobile testing inside your IDE. Start a device session, describe a test in plain English,
watch the LIME agent drive the device live, and export the recorded test into your project as a
taqwright spec, WebdriverIO, or Appium (Java, Python, Ruby, C#).
Full documentation: taqwright.ai/docs/vscode.
Install
Search for Taqwright LIME in the Extensions view, or run:
code --install-extension taqwright.lime-vscode
You need a Taqwright account to sign in. Accounts are provisioned rather than self-serve, so
request access at taqwright.ai/contact.
Getting started
- Open the LIME panel from the activity bar.
- Click Sign in with Taqwright. Your browser opens, you approve this editor, and the
credential comes back automatically. LIME then appears in VS Code's Accounts menu.
- One editor at a time: authorizing a new one signs the previous editor out. Your CI token is
never affected.
- Signing out revokes the session on the server, not just locally.
- Remote-SSH, Codespaces and air-gapped installs use a token instead: choose Paste a CI
token instead and paste a
lime_ci_… token from LIME Settings, LIME CI tokens. First use
from a new machine sends you a security-alert email, which is expected.
- Connect a device:
- Local: pick a device and Connect. This needs the LIME Agent installed on your machine
(
lime-agent on PATH, or point lime.agentPath at the executable). See the
agent docs. Its output goes to the "LIME Agent"
output channel.
- Cloud: pick a provider (BrowserStack or LambdaTest), the device, an app id (
bs://… or
lt://…), and your provider credentials. Those are sent per run and never stored on the
LIME server.
- Type a goal, for example
Login with demo@example.com / 10203040 and verify the home screen.
Consecutive goals build up one recorded test.
- Export test writes it into your workspace. The format picker pre-selects the framework
detected there.
Exploring an app
LIME: Explore App crawls the connected app, maps the screens it finds, and suggests tests
worth writing. A crawl visits many screens, so it gets its own step budget
(lime.exploreMaxSteps, default 60) rather than sharing the per-goal one.
Asking questions
The composer takes more than goals. Greetings, "what can you do", "how many credits do I have
left" and similar are answered by LIME instead of starting a run. Anything that reads as an
instruction still runs on the device. Answers come from the server, are written in your
lime.chatLanguage, and are billed against AI credits like a run.
See taqwright.ai/docs/chat.
Queued goals
One goal runs at a time per device. You do not have to wait: send the next one while a run is in
flight and it starts on its own when the current one finishes. A Stop, or a run that fails, hands
the queued text back to the composer rather than launching it into a broken session.
What gets sent
Running a test necessarily sends data to the LIME service: screenshots of the device under test,
the text and locators of the elements the agent interacts with, your goals, and the resulting
recorded steps. Questions typed into the composer are answered server-side and billed like a run.
Your workspace is not uploaded unless you turn on lime.matchExistingStyle. With that setting
on, export sends a few of your existing test files and convention documents (CLAUDE.md,
AGENTS.md) so generated tests match your project's conventions, and chat sends a file listing so
LIME can answer questions about your project. It is off by default.
Run history stays on your machine in VS Code's extension storage. Credentials, cloud access keys,
AI keys and the Applitools key are held in VS Code secret storage, never in settings.json.
Settings
General
| Setting |
Purpose |
lime.serverUrl |
LIME server base URL (default https://www.taqwright.ai) |
lime.project |
Project name runs are scoped to (must exist on the server) |
lime.maxSteps |
Max agent actions per goal before stopping (1 to 100, default 40) |
lime.exploreMaxSteps |
Max actions during an Explore App crawl (1 to 100, default 60) |
lime.chatLanguage |
Language the conversation is written in (24 available). Goals, recorded steps and exported code stay English |
lime.modelProvider |
AI vision provider for your own key: gemini or qwen. Empty uses the key provisioned for your account |
lime.matchExistingStyle |
Share workspace context with LIME so generated tests match your conventions. Off by default |
Export
| Setting |
Purpose |
lime.exportFramework |
Framework to export as. Empty auto-detects from your project |
lime.exportAgent |
Coding agent used to generate and verify exported tests: claude-code or copilot. Empty uses the first installed |
lime.claudePath |
Path to the Claude Code CLI. Empty resolves claude automatically |
lime.copilotPath |
Path to the GitHub Copilot CLI. Empty resolves copilot automatically |
lime.alsoEmitTaqwright |
When exporting to another framework, also write the equivalent runnable taqwright spec. Off by default |
Local device agent
| Setting |
Purpose |
lime.agentPath |
Path to the lime-agent executable (empty runs lime-agent from PATH) |
lime.agentRestartOnOpen |
Restart the local agent each time you open a Local device (on by default) |
lime.appiumPort |
Fixed port for the agent's bundled Appium (0 means auto, 4723, climbing on conflict) |
Cloud devices
| Setting |
Purpose |
lime.cloud.provider |
Cloud device provider: browserstack or lambdatest |
lime.cloud.browserstackUsername |
BrowserStack username (access key stored securely via the Settings pane) |
lime.cloud.lambdatestUsername |
LambdaTest username (access key stored securely via the Settings pane) |
lime.cloud.lambdatestRegion |
LambdaTest data-centre region: US, EU or AP |
lime.cloud.capabilities |
Advanced: per-run BrowserStack, LambdaTest and Appium capability overrides, as JSON |
Commands
| Command |
Purpose |
LIME: Sign In |
Sign in via the browser, or paste a CI token |
LIME: Sign Out |
Revoke this editor's session and forget the credential |
LIME: Disconnect Device |
End the device session |
LIME: Start a New Test (clear recording) |
Drop the recorded steps and start fresh |
LIME: Export Recorded Test |
Write the recorded test into the workspace |
LIME: Explore App (map screens & suggest tests) |
Crawl the app and suggest tests worth writing |
LIME: Open Device Screen in Editor |
Live device screen as a splittable editor tab |
LIME: Open Settings Pane |
Open the panel's Settings overlay |
LIME: Open Chat History |
Open the panel's History overlay |
LIME: Check Dependencies (lime-agent) |
Verify the lime-agent executable resolves |
LIME: View Documentation |
Open the docs |
LIME: Report a Bug |
Email a bug report, pre-filled with your version and platform |
LIME: Contact Support |
Email support |
The panel
- View title bar: the clock icon opens History, the gear opens Settings, and the overflow menu
links to docs, bug reports and support.
- PANELS: "Test Cases" lists test files found in your workspace plus recorded runs. "Failure
Analysis" lists failed runs with their first error.
- History: every agent run (goal, status, and transcript without screenshots) is saved locally.
Searchable, sortable, favouritable, deletable. Nothing extra is sent to the server.
- Settings pane: General (server URL, project, chat language, AI model, visual testing), Keys,
Cloud, Usage (your AI-credit gauge) and About.
- The maximize button opens the live device screen as an editor tab you can split or maximize. It
shows "Session ended" on disconnect.
Notes
- One device session per user: connecting here takes over any session the web console holds, and
vice versa. A CI runner sharing the same account shares that one session and one run slot, so
give runners their own account.
- Generated tests never contain hardcoded coordinates, only locators.
- Agent runs need an AI vision key. Either bring your own under Settings, General, AI model
(Google Gemini or Alibaba Qwen, one at a time, validated against the provider and kept in the
editor's secret storage), or leave the provider as "Use my LIME account key" and have one
provisioned for your LIME user. Qwen additionally has to be enabled for your account
server-side.
- Visual testing: save an Applitools API key under Settings, General, Visual testing to enable
the Visual check button in a session. Name a checkpoint and it compares the current screen
against the Applitools baseline of that name. The first capture creates the baseline. The
checkpoint is recorded as a step, so it replays with the exported test (which reads
APPLITOOLS_API_KEY from the environment). A mismatch is reported, not a failure. Writing
"visually verify <name>" in a goal does the same thing.
- Applitools, BrowserStack, LambdaTest, Google Gemini and Alibaba Qwen are third-party services.
You bring your own account and credentials for each, and their terms apply to your use of them.
Requirements
- VS Code 1.90 or later.
- A Taqwright account.
- For local devices, the LIME Agent installed on your machine. For cloud devices, a BrowserStack
or LambdaTest account.
Support
License
Copyright (c) 2026 TAQWRIGHT PTE. LTD. All rights reserved. Licensed under the Taqwright LIME End
User License Agreement, included as LICENSE in this package.
| |