# Packages

Packages (formerly known as block folders) are intended to wrap one or several blocks to make them reusable. E.g., if you have blocks for some operation and want to use them in a different workflow, you can make a package with these blocks instead of copy-pasting them.

### Creating a package <a href="#creating-a-package" id="creating-a-package"></a>

There are two ways of making a package:

#### From Workflow Editor <a href="#from-workflow-editor" id="from-workflow-editor"></a>

To make a package from a workflow editor, select blocks first. You can select a block by pressing shift and dragging the mouse to the blocks you want to select. Next, right-click and choose "Set as package".

#### From Package Page <a href="#from-package-page" id="from-package-page"></a>

To make a package from a package page, browse to the packages page, choose "New package" and enter the name and description of the package.

### Editing a Package <a href="#editing-a-package" id="editing-a-package"></a>

To edit a package, open the packages page and choose the package you want to edit. It is the same manner you edit a workflow. The difference is that a package doesn't have the table and global data.

#### Set Package as Block <a href="#set-package-as-block" id="set-package-as-block"></a>

If you set the package as a block, it will only be treated as a block in a workflow. Proceed to the settings tab when editing a package to enable this option.

**Block Inputs & Outputs**

Right-click on a block input/output of the package to define the inputs/outputs of the block. Then select to set it as the package block input or output.

You'll see the inputs/outputs of the package block when using it in a workflow.

When you connect a block to one of the package block inputs, GoLess will start to run from the block you set as the input in the package.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.goless.com/reference/packages.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
