# Fee Vaults

### What is the `FeeVault`?

The `FeeVault` contract extends `BaseVault` with fee functionality. It's used by default in both single depositor and multi depositor implementations and allows guardians and other operators to be rewarded for participating in vault operations.

Since Aera vaults can hold arbitrary assets, the `FeeVault` incorporates a fee calculator contract which computes and provides the vault value. In practice fee calculators operate as an oracle with an accountant submitting the updated vault price over time.

Finally, `FeeVault` adds a single fee recipient which will receive fees while a protocol fee recipient is provided by the fee calculator. In practice the protocol fee recipient is managed by the Aera team and the fee recipient is chosen for each vault by the vault owner or whoever has the required authority.

The fees are received in the form of a designated `FEE_TOKEN`.

There is also a protocol fee recipient which is set in the relevant fee calculator contract.

### Why it Matters

The `FeeVault` provides a consistent interface for fee recipients to claim fees independent of whether it is a single depositor vault or a multi depositor vault. It also abstracts details about what types of fees are charged. Specifically, while the protocol currently provides built-in support for TVL fees and performance fees, other fee types could be added in future fee calculators.

### How to Use the `FeeVault`

The `FeeVault` is built into single and multiple depositor vaults directly. For the vault owner, the choice of fee recipient will likely be related to the choice of guardian.

In the event that multiple different entities are operating as guardians the fee recipient would either be the single entity that is performing Guardian services (as opposed to more operational duties) or the fee recipient could be a splitter contract if there are multiple guardians operating as vault strategists.

To claim fees, the fee recipient should call `claimFees` on the vault directly. Both fee recipient and protocol fee recipient fees are collected when this function is called.

The protocol fee recipient can also trigger a claim separately by calling `claimProtocolFees`.

### Caveats

Depending on which fee calculator contract is used, it's generally appropriate for the fee recipient to be claiming fees regularly as a vault owner can usually remove a fee recipient without prior notice.


---

# 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.aera.finance/fee-vaults.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.
