conda-features documentation#
conda-features adds commands to inspect, enable, and configure optional features. Installed providers describe each feature’s prerequisites and setup. You review the changes before enabling a feature, and the plugin records which resources it can safely remove on disable.
The core package is distributed through PyPI and the jezdez Anaconda channel. See installation for the correct host environment and the separate source-only examples package.
The catalog is empty until you install a provider. The source-only conda-features-examples distribution supplies PyPI support and shell completion. Enabling either can install packages and change configuration or shell files.
Start here#
This demo runs the development version with the real PyPI provider. Prerequisites are installed beforehand, and the commands use a temporary configuration. It shows feature setup, not a package installation from PyPI.

Try PyPI setup with a temporary configuration file, then undo it.
Choose scopes, configure options, and protect dependent environments.
Build a working provider using conda settings and Pluggy.
Look up command arguments, output formats, and exit statuses.
Your task |
Read |
|---|---|
Try a complete deployment without editing your usual configuration |
|
Install the plugin into your conda runtime |
|
Verify downloaded artifacts and publication evidence |
|
Choose a scope and protect other environments |
|
Deploy PyPI support or shell completion |
|
Diagnose drift or recover interrupted setup |
|
Migrate a retired feature or move choices between machines |
|
Learn to publish a feature provider |
Look up a detail#
Command reference: commands, arguments, scopes, output, and exit statuses.
Provider API:
Feature, Pluggy hooks, built-in steps, and custom deployment steps.Deployment model: configuration precedence, readiness, ownership, and recovery.
Development: test environments, quality checks, and package builds.
Current scope#
The command examples use 0.2.0’s config FEATURE --set KEY VALUE syntax. On release 0.1.0, use configure FEATURE KEY=VALUE. The older command remains supported. The custom intent format and export/apply commands were removed in 0.2.0.
These pages cover the development version. The design goals include future work. Python 3.12 or newer and conda 26.9.4 or newer are required. Tests pin Python 3.12 and conda 26.9.4, with core CI on Linux x64, Windows x64, and ARM macOS and real-provider integration on Linux. Other conda versions and shell/platform combinations may not have been tested.
Authentication, telemetry, remote feature catalogs, and automatic migration are not implemented. Readiness covers configuration and local setup checks. It cannot tell you whether a provider ran successfully or a remote service works.