# Chainlink Keepers

By implementing Chainlink Keepers we have solved the issues mentioned in the Uniswap V3 section. The Kromatika dapp will automatically collect and withdraw funds obtained on Uniswap V3 for the users, as soon as the market price surpasses the users target price. It is important to stress that this is done without any admin or third party intervention, including the automatic replenishment of the Keepers balance to pay itself for upkeep.

Chainlink Keepers are simple smart contracts that follow a certain structure and must have two functions implemented.

* **checkUpkeep** - Has a gas limit of 6,500,000 gas. This eﬀectively means that a single Chainlink Keeper can not monitor an unlimited number of limit orders. That is why our smart contracts use a pool of Chainlink Keepers, where each individual Keeper monitors up to 1,000 limit orders.
* ***performUpkeep  -*** Has a gas limit of 2,500,000 gas. This eﬀectively means we can not close too many limit orders within a single performUpkeep. This is why we use batches, limiting the number of orders closed per batch (upkeep).

For more details consider reading our Medium article about [processing limit orders](/fundamentals/how-it-works/processing-limit-orders.md):

{% embed url="<https://medium.com/coinmonks/processing-uniswap-v3-limit-orders-using-chainlink-keepers-part-2-cf48f5cce23c>" %}


---

# 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.kromatika.finance/fundamentals/how-it-works/chainlink-keepers.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.
