Skip to content

feat(wdio-x): Introduce MVP CLI with complete feature and test implementation#15100

Draft
Winify wants to merge 1 commit intowebdriverio:mainfrom
Winify:feature/wdio-x
Draft

feat(wdio-x): Introduce MVP CLI with complete feature and test implementation#15100
Winify wants to merge 1 commit intowebdriverio:mainfrom
Winify:feature/wdio-x

Conversation

@Winify
Copy link
Copy Markdown
Contributor

@Winify Winify commented Feb 16, 2026

Proposed changes

  • Implement and polish all core commands: open, close, snapshot, click, fill, screenshot, session-list, and session-stop.
  • Add session, refs, and format modules for metadata handling, element resolution, and output formatting.
  • Port snapshot module (browser, mobile, accessibility support) from MCP into an extractable module.
  • Resolve TypeScript build errors, address compatibility issues with types, and refine type definitions.
  • Add integration test: end-to-end validation of commands interacting via shared state.

Try It Out

Check out the branch and build the package

pnpm -r --filter=@wdio/compiler run build -p @wdio/x

cd packages/wdio-x && pnpm link --global && cd -

wdiox --help

Start a session

# Start Appium (if using it for mobile testing)
appium

# Open an APK on a running emulator or open Chrome
wdiox open --app /path/to/app.apk --device "emulator-5554"
# wdiox open https://example.com

# Snapshot, click, etc. work the same
wdiox snapshot
wdiox click e1

# List sessions
wdiox session-list

# Close
wdiox close

Types of changes

  • Polish (an improvement for an existing feature)
  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update (improvements to the project's docs)
  • Specification changes (updates to WebDriver command specifications)
  • Internal updates (everything related to internal scripts, governance documentation and CI files)

Checklist

  • I have read the CONTRIBUTING doc
  • I have added tests that prove my fix is effective or that my feature works
  • I have added the necessary documentation (if appropriate)
  • I have added proper type definitions for new commands (if appropriate)

Backport Request

//: # (The current main branch is the development branch for WebdriverIO v9. If your change should be released to the current major version of WebdriverIO (v8), please raise another PR with the same changes against the v8 branch.)

  • This change is solely for v9 and doesn't need to be back-ported
  • Back-ported PR at #XXXXX

Further comments

Reviewers: @webdriverio/project-committers

…entation

- Implement and polish all core commands: `open`, `close`, `snapshot`, `click`, `fill`, `screenshot`, `session-list`, and `session-stop`.
- Add session, refs, and format modules for metadata handling, element resolution, and output formatting.
- Port snapshot module (browser, mobile, accessibility support) from MCP into an extractable module.
- Resolve TypeScript build errors, address compatibility issues with types, and refine type definitions.
- Add integration test: end-to-end validation of commands interacting via shared state.
@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented Feb 16, 2026

Open in StackBlitz

create-wdio

npm i https://pkg.pr.new/webdriverio/webdriverio/create-wdio@15100

eslint-plugin-wdio

npm i https://pkg.pr.new/webdriverio/webdriverio/eslint-plugin-wdio@15100

@wdio/allure-reporter

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/allure-reporter@15100

@wdio/appium-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/appium-service@15100

@wdio/browser-runner

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/browser-runner@15100

@wdio/browserstack-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/browserstack-service@15100

@wdio/cli

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/cli@15100

@wdio/concise-reporter

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/concise-reporter@15100

@wdio/config

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/config@15100

@wdio/cucumber-framework

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/cucumber-framework@15100

@wdio/dot-reporter

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/dot-reporter@15100

@wdio/firefox-profile-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/firefox-profile-service@15100

@wdio/globals

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/globals@15100

@wdio/jasmine-framework

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/jasmine-framework@15100

@wdio/json-reporter

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/json-reporter@15100

@wdio/junit-reporter

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/junit-reporter@15100

@wdio/lighthouse-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/lighthouse-service@15100

@wdio/local-runner

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/local-runner@15100

@wdio/logger

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/logger@15100

@wdio/mocha-framework

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/mocha-framework@15100

@wdio/protocols

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/protocols@15100

@wdio/repl

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/repl@15100

@wdio/reporter

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/reporter@15100

@wdio/runner

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/runner@15100

@wdio/sauce-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/sauce-service@15100

@wdio/shared-store-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/shared-store-service@15100

@wdio/smoke-test-cjs-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/smoke-test-cjs-service@15100

@wdio/smoke-test-reporter

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/smoke-test-reporter@15100

@wdio/smoke-test-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/smoke-test-service@15100

@wdio/spec-reporter

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/spec-reporter@15100

@wdio/static-server-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/static-server-service@15100

@wdio/sumologic-reporter

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/sumologic-reporter@15100

@wdio/testingbot-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/testingbot-service@15100

@wdio/types

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/types@15100

@wdio/utils

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/utils@15100

@wdio/webdriver-mock-service

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/webdriver-mock-service@15100

@wdio/x

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/x@15100

@wdio/xvfb

npm i https://pkg.pr.new/webdriverio/webdriverio/@wdio/xvfb@15100

webdriver

npm i https://pkg.pr.new/webdriverio/webdriverio/webdriver@15100

webdriverio

npm i https://pkg.pr.new/webdriverio/webdriverio@15100

commit: 10db2be

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant