brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
params-state-rngAuthor and debug Haiku Module classes, direct parameter/state APIs, RNG keys, naming scopes, and interception hooks.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill when you need to write or debug code that lives inside a Haiku transformed function and directly creates modules, parameters, mutable state, random keys, names, or API hooks.
hk.Module subclasses and their __init__ / __call__ patterns.hk.get_parameter, hk.get_state, and hk.set_state.hk.PRNGSequence, hk.next_rng_key, hk.next_rng_keys, and hk.maybe_next_rng_key.hk.custom_creator, hk.custom_getter, hk.custom_setter, and hk.intercept_methods.hk.transform, hk.transform_with_state, hk.without_apply_rng, or multi-transform wrappers: use the core-transforms sub-skill.modules-and-networks sub-skill.jax.vmap, jax.scan, jax.grad, control flow, lifting, or data-structure utilities: use the jax-interop-and-advanced sub-skill.flax-interop sub-skill.core-transforms.super().__init__(name=name) before creating submodules or values, and create parameters/state inside transformed calls rather than at import time.hk.transform_with_state and pass state into and out of apply.None JAX PRNG key to init or apply whenever hk.next_rng_key() may execute; use hk.maybe_next_rng_key() only for deliberately optional randomness.