marionette-driver
Marionette Driver
Decision gist · record as of 2026-08-14
No, not recommended for new projects. The package is explicitly marked as no longer supported and inactive, despite recent release dates. The description directs users to Mozilla's documentation, suggesting the project has been superseded or deprecated. Existing projects using it should evaluate migration to actively maintained alternatives.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires a running Firefox instance with Marionette protocol enabled; Firefox must be launched with appropriate flags to accept Marionette connections.
- Low install friction with three lightweight runtime dependencies (mozrunner, mozversion, psutil).
- Maintenance status is active, though the package itself is marked as inactive in development status.
License · maintenance · safety
MPL (copyleft) — Licensed under Mozilla Public License 2.0 (MPL), a copyleft license. You may use and modify the code, but derivative works and distributions must retain the same license terms.
last release 2026-07-20 (25 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 171,273 downloads/mo, #10,374 on PyPI
Alternatives
Verify before relying
pip install marionette-driver
from marionette_driver.marionette import Marionette
client = Marionette('localhost')
client.start_session()- Whether the package is actively maintained despite the 'Inactive' development status classifier and the note that it is 'no longer supported'.
- Current compatibility with modern Firefox versions and whether the Marionette protocol remains the recommended approach for Firefox automation.
- Whether alternatives are now preferred for Firefox testing workflows.
What it is and what it does
Marionette Driver is a Python client library that communicates with Firefox's Marionette automation protocol, allowing you to control a Firefox browser instance programmatically. It depends on mozrunner (for launching Firefox), mozversion (for version detection), and psutil (for process management). The package supports Python 3.8, 3.9, 3.10, 3.11, 3.12, and 3.13 on macOS, Windows, and POSIX systems.
The library is explicitly marked as no longer supported in its own description, despite showing recent release activity. It was originally designed for browser automation and testing workflows, but the fact sheet does not clarify whether it remains the recommended tool or whether users should migrate to alternatives.
Use it for
- Automated testing of Firefox-specific browser behavior and web application functionality.
- Scripting repetitive browser tasks like form filling, navigation, and screenshot capture in Firefox.
- Integration testing of web applications that require Firefox-specific features or compatibility verification.
- Headless Firefox automation for CI/CD pipelines and automated quality assurance workflows.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No, not recommended for new projects.
The package is explicitly marked as no longer supported and inactive, despite recent release dates. The description directs users to Mozilla's documentation, suggesting the project has been superseded or deprecated. Existing projects using it should evaluate migration to actively maintained alternatives.
Install
marionette-driver on PyPI
Before you install
Low install friction with three lightweight runtime dependencies (mozrunner, mozversion, psutil). Maintenance status is active, though the package itself is marked as inactive in development status.
Requires a running Firefox instance with Marionette protocol enabled; Firefox must be launched with appropriate flags to accept Marionette connections.
License in practice
Licensed under Mozilla Public License 2.0 (MPL), a copyleft license. You may use and modify the code, but derivative works and distributions must retain the same license terms.
Quickstart
pip install marionette-driver
from marionette_driver.marionette import Marionette
client = Marionette('localhost')
client.start_session()
Verify before relying
- Whether the package is actively maintained despite the 'Inactive' development status classifier and the note that it is 'no longer supported'.
- Current compatibility with modern Firefox versions and whether the Marionette protocol remains the recommended approach for Firefox automation.
- Whether alternatives are now preferred for Firefox testing workflows.
Package facts
| License | MPL copyleft |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packagesmozrunnermozversionpsutil |
| Maintenance | Actively maintained 25 days since the last release |
| First released | |
| Downloads | 171,273 / month, #10,374 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 7 - InactiveIntended Audience :: DevelopersLicense :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)Operating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: PythonProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Quality AssuranceTopic :: Software Development :: TestingTopic :: Utilities |
Evidence: marionette_driver-3.7.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “firefox automation python”
- marionette-driverMarionette Driver provides a Python client for automating Firefox…
- geckordpGeckordp is a Python client for Firefox's remote debug protocol,…
- mozrunnerMozrunner manages the lifecycle of Mozilla applications (Firefox,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Utilities packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Detects and normalizes text encoding from unknown or ambiguous sources, supporting all IANA character sets that Python's core library provides codecs for, with the ability to register custom codecs.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Pygments is a syntax highlighter that colorizes source code and text in over 500 languages and formats, outputting to HTML, LaTeX, RTF, SVG, images, or ANSI terminal sequences.
Install it if you need to display or transform source code.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
See also marionette-harness · selenium · mozrunner · geckodriver-autoinstaller · geckordp · webdriver-manager · pytest-selenium · tdl-xoa-driver · robotframework-browser · mechanize