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
dm-haikuUse DeepMind dm-haiku as a JAX neural-network library for transforms, modules, state/RNG, layers, advanced JAX interop, and optional Flax interop.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this repo skill when a task involves the dm-haiku Python package, usually imported as import haiku as hk, or when a JAX neural-network workflow needs Haiku's object-oriented modules plus pure init/apply functions.
Haiku is in maintenance mode: it remains useful for existing Haiku code and research checkouts, but new greenfield projects may be better served by Flax. Do not present Haiku as a full training framework: it provides module, parameter, state, RNG, transform, and model-building utilities that compose with JAX, optimizers, datasets, checkpointing, and accelerators from other libraries.
Install a JAX build that matches the target machine first. CPU JAX is enough for API work; GPU/TPU execution requires the appropriate JAX backend package for that machine.
Install Haiku:
python -m pip install -U dm-haiku
For optional Flax interop, also install Flax:
python -m pip install -U flax
Run the bundled checker from this skill directory if import or backend state is uncertain:
python scripts/check_haiku_env.py
python scripts/check_haiku_env.py --require-flax
The checker imports haiku, jax, and optionally flax, runs a tiny hk.Linear transform, reports JAX backend/devices, and does not download data or train.
hk.transform, hk.transform_with_state, hk.without_apply_rng, hk.multi_transform, or diagnosing init/apply signatures.hk.Module subclasses, direct hk.get_parameter / hk.get_state / hk.set_state code, RNG flows, module naming, or creators/getters/interceptors.hk.nets models, or no-download model smoke tests.vmap, scan, grad, control flow, nested transforms/lifting, parameter tree utilities, mixed precision, summaries, or visualization.hk.experimental.flax APIs.references/repo-routing-metadata.json contains structured router metadata for managed repo-skill import.For most Haiku tasks, work in this order:
hk.transform, stateful hk.transform_with_state, or multi-transform. See core-transforms.hk.Module construction, hk.get_parameter, hk.get_state, and hk.next_rng_key inside Haiku contexts. See params-state-rng.modules-and-networks.jax-interop-and-advanced.flax dependency and variable collection mapping before mixing codebases. See flax-interop.dm-haiku repository source itself rather than using Haiku as a package, first decide whether a maintainer/repository-development skill is more appropriate; this skill is optimized for package usage.