# Instructions

## What are Instructions? <a href="#what-are-instructions" id="what-are-instructions"></a>

Instructions define **what happens** when a proposal passes. A proposal without instructions is purely signaling, it doesn't execute any on-chain action.

### Adding Instructions to a Proposal <a href="#adding-instructions-to-a-proposal" id="adding-instructions-to-a-proposal"></a>

{% stepper %}
{% step %}

#### Create a Proposal

Navigate to your DAO and click **Create Proposal**.
{% endstep %}

{% step %}

#### Fill Proposal Details <a href="#step-2---fill-proposal-details" id="step-2---fill-proposal-details"></a>

Add a title and description explaining the purpose.
{% endstep %}

{% step %}

#### Add Instruction <a href="#step-3---add-instruction" id="step-3---add-instruction"></a>

Click **Add Instruction** and select the instruction type you need.
{% endstep %}

{% step %}

#### Submit <a href="#step-5---submit" id="step-5---submit"></a>

Review and submit the proposal for voting.
{% endstep %}
{% endstepper %}

### Instruction Types <a href="#instruction-types" id="instruction-types"></a>

#### Common Instructions <a href="#treasury-instructions" id="treasury-instructions"></a>

| Instruction              | Description                                 |
| ------------------------ | ------------------------------------------- |
| **Transfer Tokens**      | Send tokens from treasury to a recipient    |
| **Create Token Account** | Create a new token account for the treasury |
| **Burn Tokens**          | Burn tokens from treasury                   |
| **Update Metadata**      | Add or update DAO Metadata                  |

#### Treasury/ DeFi Instructions <a href="#token-instructions" id="token-instructions"></a>

| Instruction                              | Description                                                                         |
| ---------------------------------------- | ----------------------------------------------------------------------------------- |
| **DeFi Lending**                         | Earn yield on treasury assets by depositing on [Save Finance](https://save.finance) |
| **Staking (Stake, Deactivate, Unstake)** | Stake SOL from the treasury to a validator                                          |
| **Token22 Fees**                         | Claim fees from token22 token account                                               |

#### Streaming Instructions <a href="#streaming-instructions" id="streaming-instructions"></a>

| Instruction            | Description                                   |
| ---------------------- | --------------------------------------------- |
| **Create Stream**      | Set up token streaming to a recipient         |
| **Cancel Stream**      | Stop an active stream                         |
| **Lock Tokens**        | Locks token until a specific date             |
| **Cancel Lock Tokens** | Cancel an active token lock from the treasury |

#### Custom Instructions <a href="#custom-instructions" id="custom-instructions"></a>

| Instruction            | Description                                   |
| ---------------------- | --------------------------------------------- |
| **Base64 Instruction** | Execute any instruction using raw base64 data |
| **Empty Instruction**  | Signaling proposal with no execution          |

Use Base64 instructions for advanced use cases or protocols not yet integrated into the UI.

#### Governance Instructions <a href="#governance-instructions" id="governance-instructions"></a>

| Instruction                   | Description                  |
| ----------------------------- | ---------------------------- |
| **Set Governance Config**     | Modify DAO voting parameters |
| **Set Realm Authority**       | Change the realm authority   |
| **Set Realm Config**          | Update realm configuration   |
| **Add/Remove Council Member** | Manage council membership    |

#### Program Instructions <a href="#protocol-integrations" id="protocol-integrations"></a>

| Instruction               | Description                                 |
| ------------------------- | ------------------------------------------- |
| **Upgrade Program**       | Deploy a new version of a DAO-owned program |
| **Set Upgrade Authority** | Transfer program upgrade authority          |
| **Close Program Buffer**  | Clean up unused program buffers             |

### Multiple Instructions <a href="#multiple-instructions" id="multiple-instructions"></a>

A single proposal can contain multiple instructions. They execute in order when the proposal is approved.

Common multi-instruction patterns:

* Create token account → Transfer tokens
* Multiple treasury transfers in one proposal

### Instruction Hold-up Time <a href="#instruction-hold-up-time" id="instruction-hold-up-time"></a>

Each instruction can have a **hold-up time** a delay between approval and execution. This gives the community time to react before irreversible actions occur.

### Executing Instructions <a href="#executing-instructions" id="executing-instructions"></a>

After a proposal passes:

1. Wait for any hold-up time to expire
2. Click **Execute** on each instruction
3. Confirm the transaction

Anyone can execute approved instructions once the hold-up time passes. Instructions must be executed before they expire.

For developers wanting to add custom protocol instructions, please reach out.


---

# 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.realms.today/realms-v2/features/instructions.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.
