$npx skillfedfor your agent

geckordp

A client implementation of Firefox DevTools over remote debug protocol.

With conditionsPyPI TestingReleased Sep 202494.1K downloads / mopermissive licensePure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — geckordp-1.0.3-py3-none-any.whl
v1.0.3 · released 2024-09-03 · Python >=3.10 · 2 runtime deps: jmespath, psutil

Yes, if you need Firefox-specific browser automation or remote debugging capabilities and are willing to work with a beta-stage library. Install it for UI testing, extension testing, or custom browser tooling. The low dependency count and permissive license make it low-risk to try. However, verify platform compatibility for your target OS and confirm Firefox version alignment before committing to production use.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Firefox 129.0 or compatible version installed; minimum Python 3.10; a pre-configured Firefox profile with remote debugging enabled.
  • Low install friction with only two runtime dependencies (jmespath, psutil).
  • The package is in beta status and has aged since its last release in September 2024, though the repository remains active with recent commits as of April 2025.

License · maintenance · safety

permissive license (permissive) — MIT License permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.

last release 2024-09-03 (710 days) · last repo commit 2025-04-26 · 37 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 94,092 downloads/mo, #13,343 on PyPI

Verify before relying

pip install geckordp

from geckordp.firefox import Firefox
from geckordp.rdp_client import RDPClient
from geckordp.actors.root import RootActor

Firefox.start("https://example.com/", 6000, "profile_name", ["-headless"])
client = RDPClient()
client.connect("localhost", 6000)
root = RootActor(client)
tabs = root.list_tabs()
  • Compatibility with Firefox versions other than 129.0 and whether older versions work reliably.
  • Windows and macOS platform support status (marked as uncertain in documentation).
  • Performance characteristics and scalability for concurrent browser sessions.
  • Whether all geckodriver API actors are fully implemented or if gaps exist.
Same gist for agents: .md · .json

What it is and what it does

Geckordp exposes Firefox's remote debug protocol as a Python library, enabling direct programmatic interaction with a Firefox browser instance. It acts as a low-level client that communicates with Firefox's debug server, allowing you to control tabs, inspect DOM, execute scripts, monitor network traffic, and automate browser behavior without relying on higher-level webdriver abstractions.

The package is designed as a foundation for building tools on top—web UI testing frameworks, browser automation scripts, extension testers, and network analysis tools. It requires a pre-configured Firefox profile with remote debugging enabled and uses helper classes like ProfileManager to handle profile setup. The API mirrors geckodriver concepts where possible and exposes actors that correspond to different Firefox subsystems.

Use it for

  • Automated web UI testing and browser interaction testing for Firefox-specific scenarios.
  • Building custom browser automation tools that need fine-grained control over Firefox internals.
  • Network traffic analysis and HTTPS recording by intercepting browser debug protocol messages.
  • Testing Firefox extensions and WebExtensions in an automated environment.
  • Web scraping with headless Firefox when standard webdriver tools are insufficient.
  • Remote browser control and monitoring for distributed testing or CI/CD pipelines.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need Firefox-specific browser automation or remote debugging capabilities and are willing to work with a beta-stage library.

Install it for UI testing, extension testing, or custom browser tooling. The low dependency count and permissive license make it low-risk to try. However, verify platform compatibility for your target OS and confirm Firefox version alignment before committing to production use.

Install

geckordp on PyPI

Before you install

Low install friction with only two runtime dependencies (jmespath, psutil). The package is in beta status and has aged since its last release in September 2024, though the repository remains active with recent commits as of April 2025.

Requires Firefox 129.0 or compatible version installed; minimum Python 3.10; a pre-configured Firefox profile with remote debugging enabled.

License in practice

MIT License permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.

Quickstart

pip install geckordp

from geckordp.firefox import Firefox
from geckordp.rdp_client import RDPClient
from geckordp.actors.root import RootActor

Firefox.start("https://example.com/", 6000, "profile_name", ["-headless"])
client = RDPClient()
client.connect("localhost", 6000)
root = RootActor(client)
tabs = root.list_tabs()

Verify before relying

  • Compatibility with Firefox versions other than 129.0 and whether older versions work reliably.
  • Windows and macOS platform support status (marked as uncertain in documentation).
  • Performance characteristics and scalability for concurrent browser sessions.
  • Whether all geckodriver API actors are fully implemented or if gaps exist.

Package facts

Licensepermissive license permissive
Python supportSupports the current Python release >=3.10
Install frictionLow. Pure-Python wheel
Runtime dependencies
2 packages
jmespathpsutil
MaintenanceAging 710 days since the last release
Last repo commit
First released
Downloads94,092 / month, #13,343 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3.10

Evidence: geckordp-1.0.3-py3-none-any.whl

Tags

Capabilities
firefox remote debug protocol pythonbrowser automation firefox rdpfirefox devtools clientheadless firefox controlfirefox ui testing librarybrowser remote debuggingfirefox webdriver alternative
Topics
firefox-automationbrowser-testingremote-debugging
PyPI keywords
crawlerdebugfirefoxrdpremote-debug-protocolui-testingwebconsole

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 remote debug protocol python”

  • geckordpGeckordp is a Python client for Firefox's remote debug protocol,…
  • marionette-driverMarionette Driver provides a Python client for automating Firefox…
  • marionette-harnessMarionette-harness is a test runner for automating Gecko-based…

Give your agent the search over MCP, or paste the wish link into any chat.

More Testing packages

pluggy Worth it
PyPI · Libraries · released May 2025

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.

MITpure Python · 3.9+aging
1.3Bdownloads / mo
pytest Worth it
PyPI · Libraries · released Jun 2026

pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.

MITpure Python · 3.10+
1.1Bdownloads / mo
virtualenv Worth it
PyPI · Libraries · released Aug 2026

virtualenv creates isolated Python environments where packages can be installed independently without affecting the system Python or other projects.

MITpure Python · 3.9+
532.9Mdownloads / mo
coverage Worth it
PyPI · Testing · released Aug 2026

Coverage.py measures which lines of Python code are executed during test runs, reporting coverage percentages and identifying untested code paths.

Install it if you want to measure test completeness or enforce coverage thresholds in your project.

permissive licensepure Python · 3.10+
335.8Mdownloads / mo
pytest-asyncio Worth it
PyPI · Testing · released May 2026

pytest-asyncio is a pytest plugin that enables writing and running async test functions using the asyncio library, allowing developers to await code directly within test cases.

Install it if you write tests for any asyncio-based code.

Apache-2.0pure Python · 3.10+
275.9Mdownloads / mo
pytest-json-ctrf Worth it
PyPI · Testing · released Jul 2026

A pytest plugin that generates test reports in Common Test Report Format (CTRF) as JSON, compatible with pytest-xdist and pytest-playwright for distributed and browser-based testing.

Install it if you need CTRF-formatted test output for CI/CD integration or cross-tool reporting.

MITpure Python · 3.8+
273.0Mdownloads / mo

See also mycdp · selenium · marionette-driver · geckodriver-autoinstaller · marionette-harness · choreographer · pychrome · nokap · primp · zendriver