> ## Documentation Index
> Fetch the complete documentation index at: https://docs.speckle.systems/llms.txt
> Use this file to discover all available pages before exploring further.

# Grasshopper in 2026.9

> Node names, Explore, and extra objects in the 2026.9 Grasshopper connector.

<Note>
  This is 2026.9 preview documentation. Coverage here is incremental: a page exists only where
  2026.9 differs or is newly documented.
</Note>

In 2026.9 the Grasshopper connector keeps existing scripts working. Nodes already on your canvas are
renamed and hidden from the ribbon. They are not deleted, and no wires break.

This page covers only what changed. For publish and load today, see
[How to use Speckle for Grasshopper](/connectors/grasshopper/grasshopper). For the step-by-step
script upgrade, see [Upgrade Grasshopper to 2026.9](/next/connectors/grasshopper/upgrading).

## What changed

* **Load** and **Publish** in the ribbon are the current nodes. Nodes you already placed are renamed
  **Load (legacy)** and **Publish (legacy)**. They still run. The same rename applies to **(Sync)
  Load** and **(Sync) Publish**.
* **Speckle Data Object** is renamed **Speckle Object**. It is the same node with the same ports.
  Existing scripts keep working.
* The current **Speckle Geometry** node has no Name or Properties inputs. Name and properties live
  on the **Speckle Object** that contains the geometry. Geometry nodes already on your canvas keep
  those inputs and are renamed **Speckle Geometry (legacy)**.

Existing scripts keep working on the renamed nodes. You only need the current Load node if you want
Explore, or if you are loading a version a teammate published with the current Publish node.

## Publish

Versions from the current **Publish** node need an upgraded connector to read. **Publish (legacy)**
can still be read by older connectors. Confirm collaborators have upgraded before you switch. The
two nodes are independent of Load.

## Load

The current Load node can return more objects than before, including property-only elements such as
Revit rooms, levels, and areas. Materials and colours arrive on each object. The **Proxies** output
is not on the current Load node. Model-wide properties such as project information arrive on a
**Properties** output. The current Publish node has a matching optional **Properties** input.

Name and properties live on the **Speckle Object**, not on geometry. A wall is one thing with one
name and one set of properties, even when it has three meshes. To set a name or properties, wire
geometry into a **Speckle Object**.

**Explore** is a new node. After you load a 2026.9 version with the current Load node, it surfaces
relationships such as level, room, host, and block definition.

Plug in a Speckle Object, Speckle Geometry, Block Instance, or Collection. Explore creates an output
for each relationship the model records for that object. The set of outputs changes with what you
plug in.

Explore does not repeat what the object already carries. Material, colour, and Collection path are
already set on the object when it loads.

<Note>
  Explore supports versions published with 2026.9 onwards, loaded with the current Load node.
  Versions published before then do not record these connections, so there is nothing for Explore to
  show. Objects loaded with **Load (legacy)** also produce no Explore outputs. If Explore reports
  that nothing is cached for a model that loaded correctly earlier, reload the model.
</Note>

## FAQ

<AccordionGroup>
  <Accordion title="Will my saved scripts break?">
    No. Nodes are matched by identity, not by name, so renaming them has no effect on your files. No
    node turns into a placeholder and no wire is dropped.
  </Accordion>

  <Accordion title="Why does Explore produce no outputs?">
    The usual cause is a version published before 2026.9, or a **Load (legacy)** node. Republish
    with the current Publish node, then load with the current Load node.
  </Accordion>

  <Accordion title="Why does my Speckle Geometry node have fewer inputs?">
    It does not. The node in your script is **Speckle Geometry (legacy)** and keeps all of its
    inputs. The **Speckle Geometry** in the ribbon is a new node without Name and Properties.
  </Accordion>
</AccordionGroup>
