RecourseBench documentation
============================
**RecourseBench** is a modular framework for reproducible algorithmic recourse
evaluation. It composes five extensible component types — datasets,
preprocessing steps, target models, recourse methods, and evaluation metrics —
into experiments that are configured as data and run end to end.
Live example
------------
Edit the factual case and select a recourse method to see the kind of result
RecourseBench evaluates: a counterfactual that changes the model prediction with
a small set of feature edits.
.. raw:: html
Toy credit recourse run
Editable applicant, same toy model, different recourse method.
Factual case
Prediction
Counterfactual result
validity
L1 distance
features changed
.. grid:: 1 2 2 2
:gutter: 3
.. grid-item-card:: Getting started
:link: getting_started
:link-type: doc
Install the package, run your first experiment from a YAML config, and
use the Python API.
.. grid-item-card:: API reference
:link: reference/index
:link-type: doc
Full description of every public class and function: arguments, return
values, and behaviour.
.. grid-item-card:: Methods
:link: methods
:link-type: doc
Browse all registered recourse methods and open the RecourseBench paper.
.. grid-item-card:: Extending the framework
:link: extending
:link-type: doc
Register new datasets, preprocessing, models, methods, and metrics.
.. grid-item-card:: Agent tools
:link: agent_tools
:link-type: doc
Use the RecourseBench skills and MCP server from coding agents without
giving up reproducibility or safety.
.. toctree::
:maxdepth: 2
:hidden:
getting_started
methods
extending
agent_tools
reference/index