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

# Meteora Agent Skill

> Install and use Meteora's Agent Skill for onchain actions and SDK development.

The Meteora Agent Skill is a portable set of instructions for AI coding agents. It helps an agent choose the right Meteora product, collect the required inputs, run supported studio commands, and write TypeScript against the SDK APIs the repository currently uses.

The skill lives at [`skills/meteora`](https://github.com/MeteoraAg/meteora-invent/tree/main/skills/meteora) in the `meteora-invent` repository and follows the open [Agent Skills format](https://agentskills.io). You can install the same folder in Claude Code, OpenClaw, Hermes, Cursor, or another compatible runtime.

<Note>
  An Agent Skill is an instruction pack, not a hosted transaction service or wallet. The agent still needs terminal and network access to run commands, and you remain in control of the wallet and signing environment.
</Note>

## When to Use It

The skill separates requests into two paths:

| Path      | Use it when                                                                                                 | What the agent uses                                                        |
| :-------- | :---------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------- |
| **ACT**   | You want to launch, swap, create a pool, manage liquidity, claim fees, or run another supported action      | The config-driven CLI in `meteora-invent/studio`                           |
| **BUILD** | You want a bot, backend, frontend, custom transaction flow, or an operation that the studio does not expose | Meteora's TypeScript SDKs and the skill's version-specific reference packs |

For current product concepts and API documentation, use the [Documentation MCP](/agents/mcp) or [llms.txt](/agents/llms-txt) alongside the skill. The skill provides the workflow and safety rules; the docs provide the broader protocol reference.

## What the Skill Covers

### Studio Actions

The ACT path documents 81 commands from the Meteora Invent studio. Each entry records the command, accepted selector flags, config block, important units, expected output, and approximate SOL requirement.

| Area          | Commands | Common uses                                                                                                                                          |
| :------------ | :------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- |
| Setup         | 2        | Convert a private key into the studio keypair file and request devnet or localnet SOL                                                                |
| DBC           | 8        | Create configs and pools, swap, claim trading fees, inspect graduation status, transfer the pool creator, and migrate to DAMM v1 or DAMM v2          |
| DLMM          | 10       | Create and seed pools, control pool status, place or cancel limit orders, swap, read positions, and claim fees and rewards                           |
| DAMM v2       | 10       | Create balanced or one-sided pools, add or remove liquidity, split or close positions, refresh vesting, swap, and read positions                     |
| DAMM v1       | 5        | Create legacy pools, lock LP, create Stake2Earn farms, lock LP into those farms, and swap                                                            |
| Alpha Vault   | 7        | Create a vault, deposit, withdraw, claim, withdraw remaining quote, crank the fill, and read vault and escrow state                                  |
| Presale Vault | 9        | Create a presale, deposit, withdraw, claim, sweep remaining quote, withdraw the raise, handle unsold supply, close an escrow, and read status        |
| Met Lock      | 5        | Create a vesting escrow, attach escrow metadata, claim vested tokens, and read one or all escrows for a wallet                                       |
| Stake2Earn    | 6        | Stake into a fee farm, claim fees, start or cancel an unstake, withdraw after the cooldown, and read farm and staker state                           |
| Pool Farms    | 5        | Stake DAMM v1 LP, unstake, claim rewards from one farm or several, and read farm and user state                                                      |
| Dynamic Vault | 3        | Deposit into a lending vault, withdraw, and read supply, withdrawable amount, and virtual price                                                      |
| Fee Sharing   | 8        | Create a fee vault, fund it directly or from DAMM v2 fees, rewards, or DBC fees, transfer a position to the vault, claim a share, and read the split |
| Zap           | 3        | Enter a DAMM v2 or DLMM position with a single token and exit a position into one token                                                              |

The studio uses one fixed JSONC config file per protocol. Command-line flags select an account such as a mint, pool, or limit order; they do not select a different config file. For example:

```bash Terminal theme={"system"}
pnpm studio dbc-get-status --baseMint <MINT>
pnpm studio dlmm-swap --poolAddress <POOL>
pnpm studio damm-v2-get-positions --poolAddress <POOL>
```

Before a write, the agent edits the relevant file under `studio/config`, keeps `dryRun` set to `true`, and shows you the simulation result. It changes `dryRun` to `false` only after you confirm the real execution and the target network, then returns it to `true` after the action.

### SDK Development

The BUILD path contains focused references for the four main liquidity protocols:

| Product | Package and pinned version                     | Use it for                                                                                   |
| :------ | :--------------------------------------------- | :------------------------------------------------------------------------------------------- |
| DBC     | `@meteora-ag/dynamic-bonding-curve-sdk@1.5.11` | Token launches, curve configuration, trading, fee claims, graduation, and migration          |
| DAMM v2 | `@meteora-ag/cp-amm-sdk@1.4.5`                 | Constant-product pools, position NFTs, swaps, liquidity, locks, vesting, fees, and rewards   |
| DLMM    | `@meteora-ag/dlmm@1.9.14`                      | Bin-based liquidity, strategies, swaps, positions, fee claims, limit orders, and rebalancing |
| DAMM v1 | `@meteora-ag/dynamic-amm-sdk@1.4.1`            | Existing v1 pools, LP tokens, lock escrows, Dynamic Vault integration, and Stake2Earn        |

The root `SKILL.md` pins the SDK versions verified by the reference packs. It also records compatibility rules that are easy to miss when combining the SDKs:

* The covered SDKs use `@solana/web3.js` v1 transaction types.
* DBC, DAMM v2, and DLMM use Anchor 0.31, while DAMM v1 uses Anchor 0.29 and is best isolated when dependency types conflict.
* SDK amounts use `BN` values in base units. Studio configs normally use human token units, except where a config field explicitly says otherwise.
* Builders return unsigned transactions. Some operations return multiple transactions or additional keypairs that must also sign.
* Pool state should be refreshed before quoting or building a transaction.

Compact SDK notes are also included for the helper programs that sit on top of the liquidity protocols:

| Product             | Package and pinned version                  |
| :------------------ | :------------------------------------------ |
| Alpha Vault         | `@meteora-ag/alpha-vault@1.1.16`            |
| Presale             | `@meteora-ag/presale@0.1.1`                 |
| Met Lock            | `@meteora-ag/met-lock-sdk@1.0.1`            |
| Stake2Earn          | `@meteora-ag/m3m3@1.0.10`                   |
| Pool Farms          | `@meteora-ag/farming-sdk@1.0.18`            |
| Dynamic Vault       | `@meteora-ag/vault-sdk@2.3.1`               |
| Dynamic Fee Sharing | `@meteora-ag/dynamic-fee-sharing-sdk@1.1.0` |
| Zap                 | `@meteora-ag/zap-sdk@1.3.2`                 |

Each of these products also has studio commands, so the ACT path covers the ordinary lifecycle. The notes exist for the surfaces the studio does not expose — account discovery, read helpers, and the individual gotchas worth knowing before you call these SDKs directly, such as which parameter names do not match the units they take. The versions above reflect the current skill; check `SKILL.md` before installing dependencies in case the packages have moved forward.

## What's in the Skill

```text theme={"system"}
skills/
├── evals/
│   └── trigger-set.md
└── meteora/
    ├── SKILL.md
    └── references/
        ├── studio-actions.md
        ├── studio-setup.md
        ├── dbc.md
        ├── damm-v2.md
        ├── dlmm.md
        ├── damm-v1.md
        ├── other-products.md
        ├── wallets-and-txs.md
        ├── data-and-apis.md
        ├── troubleshooting.md
        ├── scaffolds.md
        └── configs/
            ├── dbc_config.jsonc
            ├── damm_v2_config.jsonc
            ├── dlmm_config.jsonc
            ├── damm_v1_config.jsonc
            ├── alpha_vault_config.jsonc
            ├── presale_vault_config.jsonc
            ├── lock_config.jsonc
            ├── dynamic_vault_config.jsonc
            ├── fee_sharing_config.jsonc
            ├── farming_config.jsonc
            └── zap_config.jsonc
```

The files have distinct jobs:

| File                                            | Purpose                                                                                                                                                                           |
| :---------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `SKILL.md`                                      | Defines when the skill should activate, selects ACT or BUILD, maps products to use cases, and applies intake and verification rules                                               |
| `studio-actions.md`                             | Documents all studio commands, their flags, config blocks, outputs, and common prerequisites                                                                                      |
| `studio-setup.md`                               | Covers Node and pnpm requirements, installation, wallet import, RPC setup, devnet funding, and localnet                                                                           |
| `dbc.md`, `damm-v2.md`, `dlmm.md`, `damm-v1.md` | Provide protocol mental models, SDK method maps, working flows, and version fences for outdated API patterns                                                                      |
| `other-products.md`                             | Summarizes the SDK surfaces for Alpha Vault, Presale, Met Lock, Stake2Earn, Pool Farms, Dynamic Vault, Dynamic Fee Sharing, and Zap, including how to find their accounts onchain |
| `wallets-and-txs.md`                            | Covers key handling, RPC selection, priority fees, simulation, signing, multi-transaction results, and explorer verification                                                      |
| `data-and-apis.md`                              | Helps the agent choose REST APIs for discovery or SDK state fetchers for transaction-time accuracy                                                                                |
| `troubleshooting.md`                            | Maps common studio, TypeScript, and onchain errors to likely causes and fixes                                                                                                     |
| `scaffolds.md`                                  | Explains when to start from the DBC-based `fun-launch` frontend rather than build a custom UI                                                                                     |
| `configs/*.jsonc`                               | Supplies commented config templates synchronized with `studio/config`                                                                                                             |
| `evals/trigger-set.md`                          | Lists prompts that should and should not activate the skill, including near-miss requests for other Solana protocols                                                              |

Only the `skills/meteora` folder needs to be installed. The trigger eval is maintained beside it in the repository for testing skill discovery.

## Requirements

| Use case               | Requirements                                                                                               |
| :--------------------- | :--------------------------------------------------------------------------------------------------------- |
| Studio CLI             | Node.js 22.12 or newer, pnpm 10 or newer, a Solana RPC, and a funded keypair for writes                    |
| Standalone SDK code    | Node.js 18 or newer, npm or another package manager, a Solana RPC, and the SDK version pinned by the skill |
| Onchain and data reads | An RPC or Meteora data API, depending on whether the request needs exact onchain state or indexed data     |

## Install the Skill

Clone the repository, then copy the complete `meteora` folder into a skill directory supported by your agent runtime. Keep the folder name and its internal structure unchanged.

<Tabs>
  <Tab title="Claude Code">
    Install it for your user account:

    ```bash Terminal theme={"system"}
    git clone https://github.com/MeteoraAg/meteora-invent.git
    mkdir -p ~/.claude/skills/meteora
    cp -R meteora-invent/skills/meteora/. ~/.claude/skills/meteora/
    ```

    When you work inside a `meteora-invent` checkout, Claude Code can also discover the repository copy under `skills/`.
  </Tab>

  <Tab title="Shared .agents path">
    Use the cross-runtime convention when your agent supports it:

    ```bash Terminal theme={"system"}
    git clone https://github.com/MeteoraAg/meteora-invent.git
    mkdir -p ~/.agents/skills/meteora
    cp -R meteora-invent/skills/meteora/. ~/.agents/skills/meteora/
    ```
  </Tab>

  <Tab title="OpenClaw or Hermes">
    Install the folder in the runtime's skill directory:

    ```bash Terminal theme={"system"}
    # OpenClaw workspace
    mkdir -p <openclaw-workspace>/skills/meteora
    cp -R meteora-invent/skills/meteora/. <openclaw-workspace>/skills/meteora/

    # Hermes user-level DeFi skills
    mkdir -p ~/.hermes/skills/defi/meteora
    cp -R meteora-invent/skills/meteora/. ~/.hermes/skills/defi/meteora/
    ```
  </Tab>
</Tabs>

After installation, confirm that the runtime can see a file at `<skills-directory>/meteora/SKILL.md`. Restart or reload the agent if it only discovers skills at startup.

## Ask the Agent to Run an Action

You can make a plain-language request. Include the network, public addresses, amounts and units, and the outcome you want when you already know them. Do not include a private key or seed phrase.

```text theme={"system"}
Use the Meteora skill to create a DBC token launch on devnet. Use SOL as the quote token, target a 600 SOL migration market cap, and keep the first run in dry-run mode. Ask me only for the required launch details I have not provided.
```

```text theme={"system"}
Use the Meteora skill to show the DLMM positions owned by <WALLET> in <POOL>. If fees are claimable, prepare a dry run but do not submit a transaction.
```

For a write, the expected flow is:

1. The agent selects the protocol and ACT path.
2. It collects or confirms the network, RPC, wallet, funding, amounts and units, addresses, and protocol parameters.
3. It edits the relevant JSONC config and runs the action with `dryRun: true`.
4. It reports the simulation result and asks for explicit confirmation before changing to a real execution, with an additional check when the target is mainnet.
5. After execution, it confirms the signature and re-reads the affected onchain state.

## Ask the Agent to Build an Integration

For development work, name the product and the behavior you need. The agent should read the matching reference pack before it writes code.

```text theme={"system"}
Use the Meteora skill's BUILD path to write a TypeScript service that quotes a DLMM swap, checks the minimum output, and returns an unsigned transaction for the caller to sign. Use the SDK version pinned by the skill.
```

```text theme={"system"}
Use the Meteora skill to add DBC graduation handling to this launchpad. Detect migration, find the successor DAMM v2 pool, and switch the trading route without changing the wallet-signing boundary.
```

If your project already uses a newer SDK version, tell the agent to compare the installed package with the reference pack and the SDK changelog. The skill's version fences are there to prevent older method names and signatures from being reused without checking them.

## Safety Rules

The skill requires the agent to:

* Use devnet for a first run unless you explicitly choose another network.
* Simulate or quote every state-changing flow before sending it.
* Obtain explicit confirmation before changing from a dry run to a real transaction, and confirm the network again for mainnet.
* Keep private keys in `.env` or keypair files and refer to wallets by public address in chat.
* Confirm whether each amount is in human token units or base units before execution.
* Set explicit slippage and minimum-output protection for swaps.
* Verify a submitted transaction and re-read state before reporting success.

<Warning>
  Review every transaction before signing, especially one assembled by an SDK or remote service. Check the program IDs, token mints, amounts, receivers, and fee payer against the action you approved.
</Warning>

<Card title="Browse the Meteora Agent Skill" icon="github" href="https://github.com/MeteoraAg/meteora-invent/tree/main/skills/meteora" horizontal>
  Read the router, protocol references, studio action guide, and config templates on GitHub
</Card>
