user: Describe NodesModifier(Modifier) from the Blender manual or Python API, including usage steps and snippets.

assistant: # NodesModifier(Modifier)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`Modifier`](bpy.types.Modifier.html#bpy.types.Modifier "bpy.types.Modifier")

*class* bpy.types.NodesModifier(*Modifier*)
:   bake_directory
    :   Location on disk where the bake data is stored

        Type:
        :   string, default “”, (never None, blend relative `//` prefix supported)

    bake_target
    :   Where to store the baked data

        - `PACKED`
          Packed – Pack the baked data into the .blend file.
        - `DISK`
          Disk – Store the baked data in a directory on disk.

        Type:
        :   enum in [`'PACKED'`, `'DISK'`], default `'PACKED'`

    bakes
    :   Type:
        :   [`NodesModifierBakes`](bpy.types.NodesModifierBakes.html#bpy.types.NodesModifierBakes "bpy.types.NodesModifierBakes") [`bpy_prop_collection`](bpy.types.bpy_prop_collection.html#bpy.types.bpy_prop_collection "bpy.types.bpy_prop_collection") of [`NodesModifierBake`](bpy.types.NodesModifierBake.html#bpy.types.NodesModifierBake "bpy.types.NodesModifierBake"), (readonly)

    node_group
    :   Node group that controls what this modifier does

        Type:
        :   [`NodeTree`](bpy.types.NodeTree.html#bpy.types.NodeTree "bpy.types.NodeTree")

    node_warnings
    :   Type:
        :   [`bpy_prop_collection`](bpy.types.bpy_prop_collection.html#bpy.types.bpy_prop_collection "bpy.types.bpy_prop_collection") of [`NodesModifierWarning`](bpy.types.NodesModifierWarning.html#bpy.types.NodesModifierWarning "bpy.types.NodesModifierWarning"), (readonly)

    open_bake_data_blocks_panel
    :   Type:
        :   boolean, default False

    open_bake_panel
    :   Type:
        :   boolean, default False

    open_manage_panel
    :   Type:
        :   boolean, default False

    open_named_attributes_panel
    :   Type:
        :   boolean, default False

    open_output_attributes_panel
    :   Type:
        :   boolean, default False

    open_warnings_panel
    :   Type:
        :   boolean, default False

    panels
    :   Type:
        :   [`NodesModifierPanels`](bpy.types.NodesModifierPanels.html#bpy.types.NodesModifierPanels "bpy.types.NodesModifierPanels") [`bpy_prop_collection`](bpy.types.bpy_prop_collection.html#bpy.types.bpy_prop_collection "bpy.types.bpy_prop_collection") of [`NodesModifierPanel`](bpy.types.NodesModifierPanel.html#bpy.types.NodesModifierPanel "bpy.types.NodesModifierPanel"), (readonly)

    show_group_selector
    :   Type:
        :   boolean, default False

    show_manage_panel
    :   Type:
        :   boolean, default False

    bl_system_properties_get(*\**, *do_create=False*)
    :   DEBUG ONLY. Internal access to runtime-defined RNA data storage, intended solely for testing and debugging purposes. Do not access it in regular scripting work, and in particular, do not assume that it contains writable data

        Parameters:
        :   **do_create** (*boolean**,* *(**optional**)*) – Ensure that system properties are created if they do not exist yet

        Returns:
        :   The system properties root container, or None if there are no system properties stored in this data yet, and its creation was not requested

        Return type:
        :   [`PropertyGroup`](bpy.types.PropertyGroup.html#bpy.types.PropertyGroup "bpy.types.PropertyGroup")

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type