$npx skillfedfor your agent

python-discovery

Python interpreter discovery

Worth itPyPI LibrariesReleased Aug 2026289.9M downloads / mopermissive licensePure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — python_discovery-1.5.2-py3-none-any.whl
v1.5.2 · released 2026-08-12 · Python >=3.8 · 1 runtime deps: filelock

Yes. The package is actively maintained, has no known vulnerabilities, installs with minimal friction (one dependency), and solves a real problem for tools that manage multiple Python versions. Its permissive MIT license poses no restrictions. Install it if your tool or workflow needs to programmatically discover or verify Python interpreters.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Low install friction with a single lightweight dependency (filelock).
  • Actively maintained with a release 2 days ago; repository shows recent activity and is not archived.

License · maintenance · safety

permissive license (permissive) — MIT license (permissive) — you may use, modify, and distribute this package freely with minimal restrictions, provided you include the license notice.

last release 2026-08-12 (2 days) · last repo commit 2026-08-13 · 13 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 289,858,660 downloads/mo, #142 on PyPI

Verify before relying

from pathlib import Path
from python_discovery import DiskCache, get_interpreter

cache = DiskCache(root=Path("~/.cache/python-discovery").expanduser())
result = get_interpreter("python3.12", cache=cache)
if result:
    print(result.executable)  # e.g. /usr/bin/python3.12
  • Whether the package successfully discovers interpreters installed via all mentioned sources (pyenv, mise, asdf, uv, Windows registry) in practice
  • Performance characteristics when searching across many interpreter locations or with large cached datasets
  • Behavior and reliability when interpreters are uninstalled or moved after being cached
Same gist for agents: .md · .json

What it is and what it does

python-discovery is a library that locates Python interpreters on your machine and returns structured metadata about them. It searches multiple installation sources—system packages, version managers like pyenv/mise/asdf/uv, and the Windows registry—then caches results to disk for fast repeated lookups. You give it a requirement (a version number, a version specifier like `>=3.11,<3.13`, or a path), and it returns the executable path, implementation name, and version info for a matching interpreter.

The library runs on Python 3.8 and newer, and can discover interpreters as old as Python 3.6 (older versions trigger a warning). It's designed for tools that need to programmatically select or verify Python environments—build systems, test runners, and environment managers that must handle multiple Python versions across different installation methods.

Use it for

  • Build or test tools that need to locate a specific Python version to run code against
  • CI/CD pipelines selecting the right Python interpreter from multiple installed versions
  • Version managers or environment tools that must discover interpreters from pyenv, asdf, or other sources
  • Development workflows verifying that a required Python version is installed before proceeding
  • Cross-platform tools that need to find Python on Windows, macOS, and Linux uniformly

Worth the install?

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

Worth it

Yes.

The package is actively maintained, has no known vulnerabilities, installs with minimal friction (one dependency), and solves a real problem for tools that manage multiple Python versions. Its permissive MIT license poses no restrictions. Install it if your tool or workflow needs to programmatically discover or verify Python interpreters.

Install

python-discovery on PyPI

Before you install

Low install friction with a single lightweight dependency (filelock). Actively maintained with a release 2 days ago; repository shows recent activity and is not archived.

License in practice

MIT license (permissive) — you may use, modify, and distribute this package freely with minimal restrictions, provided you include the license notice.

Quickstart

from pathlib import Path
from python_discovery import DiskCache, get_interpreter

cache = DiskCache(root=Path("~/.cache/python-discovery").expanduser())
result = get_interpreter("python3.12", cache=cache)
if result:
    print(result.executable)  # e.g. /usr/bin/python3.12

Verify before relying

  • Whether the package successfully discovers interpreters installed via all mentioned sources (pyenv, mise, asdf, uv, Windows registry) in practice
  • Performance characteristics when searching across many interpreter locations or with large cached datasets
  • Behavior and reliability when interpreters are uninstalled or moved after being cached

Package facts

Licensepermissive license permissive
Python supportSupports the current Python release >=3.8
Install frictionLow. Pure-Python wheel
Runtime dependencies
1 package
filelock
MaintenanceActively maintained 2 days since the last release
Last repo commit
First released
Downloads289,858,660 / month, #142 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.15Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonTopic :: Software Development :: LibrariesTopic :: Utilities

Evidence: python_discovery-1.5.2-py3-none-any.whl

Tags

Capabilities
python interpreter discoveryfind python version installedpython version detectionlocate python executablepython environment discoverymulti-version python finderpython interpreter locator
Topics
interpreter-discoveryversion-managementcross-platform
PyPI keywords
discoveryinterpreterpython

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 › “python interpreter discovery”

  • python-discoveryDiscovers Python interpreters installed on your system across…
  • findpythonLocates Python interpreters on your system by version, architecture,…
  • cppyy-clingProvides Cling, an LLVM-based interactive C++ interpreter, packaged…

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

More Libraries packages

urllib3 Worth it
PyPI · Libraries · released May 2026

urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.

MITpure Python · 3.10+
1.8Bdownloads / mo
requests Worth it
PyPI · Libraries · released May 2026

Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.

Apache-2.0pure Python · 3.10+
1.8Bdownloads / mo
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
python-dateutil Worth it
PyPI · Libraries · released Mar 2024

Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.

Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.

Apache-2.0pure Python
1.2Bdownloads / mo
six With conditions
PyPI · Libraries · released Dec 2024

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.

MITpure Python
1.2Bdownloads / 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

See also find-libpython · findpython · unifi-discovery · identify · kenbun · relenv · translation-finder · pyrootutils · findlibs · entrypoints