executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
filtered-transformationsUse Equinox filtered JAX transformations over mixed PyTree models.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill when applying JAX transforms to Equinox modules or other mixed PyTrees whose leaves are not all arrays.
jax.jit, jax.grad, jax.vmap, or jax.pmap rejects an Equinox
model or callable PyTree.filter_jit, filter_grad, filter_value_and_grad,
filter_vmap, filter_pmap, filter_eval_shape, filter_make_jaxpr,
filter_shard, filter_checkpoint, or filter_pure_callback.filter_custom_jvp or
filter_custom_vjp.../module-and-trees/ when the main task is defining fields,
partitioning a model manually, or performing tree surgery.../nn-and-state/ when the main task is layer construction, BatchNorm,
Sequential, State, or inference-mode toggles.../diagnostics-and-serialization/ for runtime error/debug behavior,
serialization, or pretty printing.../internal-advanced/ for equinox.internal.noinline, internal loops,
primitive authoring helpers, or other semi-public utilities.references/filtered-transformations.md for API groups, patterns, and
examples.references/troubleshooting.md for transform-specific failure modes.../../references/api-reference.md for signature summaries.eqx.filter_* transform
when a whole mixed PyTree crosses the transform boundary.eqx.partition/eqx.combine only when you need explicit control or a
raw JAX transform API.eqx.apply_updates inside one compiled function when possible.equinox.nn layers act on one example;
use jax.vmap or eqx.filter_vmap around the call.filter_pmap or filter_shard, check the device/sharding assumptions
before declaring backend coverage.From the generated skill root (set EQUINOX_SKILL_ROOT to its absolute path),
run the bundled smoke helper after installing Equinox:
cd "$EQUINOX_SKILL_ROOT" && python scripts/smoke.py --mode transformations
For CPU multi-device filter_pmap smoke coverage:
cd "$EQUINOX_SKILL_ROOT" && python scripts/smoke.py --mode transformations --two-cpu-devices
The helper configures two logical CPU devices before importing JAX when that flag is supplied.
This sub-skill distills Equinox's filtered transform behavior into the bundled references and smoke helper. The source repository and its test/docs checkout were construction evidence only, not runtime dependencies.
filter_pmap smoke validates API structure, not accelerator semantics.filter_grad differentiates floating-point/complex array leaves in the first
argument and returns a PyTree matching that input; nondifferentiable/static
leaves appear as None gradients.filter_jit supports donate="all",
"all-except-first", warning variants, and "none"; filter_pmap supports
"all", "warn", and "none".nn-and-state after confirming the transform boundary.