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

# protocols: Skills loader

> Skills loader: 4 exports of the protocols module of @eco-incorp/sauce, including getProtocolIndex, getProtocolSkill, listSkillSlugs, SKILLS_DIR.

`listProtocols()`, `getProtocol(slug)` and the category and chain filters read the protocol registry. Each protocol's ABIs and metadata live on `@eco-incorp/sauce/protocols/<slug>`; the `uniswap-v3` subpath is shown as the representative shape. `@eco-incorp/sauce/skills` loads the Markdown skill files shipped per protocol.

## Protocol slugs (129)

`aave-v2`, `aave-v3`, `abracadabra`, `across`, `aerodrome`, `aevo`, `alchemix`, `ambient`, `arbitrum-bridge`, `arrakis`, `axelar`, `balancer-v2`, `base-bridge`, `baseswap`, `beefy`, `benqi`, `camelot`, `cbeth`, `cctp`, `celer`, `chainlink`, `chainlink-ccip`, `compound-v2`, `compound-v3`, `connext`, `convex`, `cowswap`, `crvusd`, `curve`, `debridge`, `dodo`, `eigenlayer`, `ens`, `erc20`, `erc3156`, `erc4626`, `ethena`, `etherfi`, `euler-v2`, `fenix`, `fluid`, `frax`, `frax-ether`, `gains-network`, `gamma`, `gelato`, `gho`, `gmx-v1`, `gmx-v2`, `harvest`, `hegic`, `hop`, `hyperlane`, `instadapp`, `kelp`, `kim`, `kyberswap`, `kyberswap-aggregator`, `layerbank`, `layerzero`, `level-finance`, `lido`, `lifi`, `linea-bridge`, `liquity-v1`, `liquity-v2`, `lynex`, `maker`, `mantle-meth`, `maverick`, `moonwell`, `morpho-blue`, `mux-protocol`, `olympus`, `oneinch`, `openocean`, `optimism-bridge`, `opyn`, `pancakeswap-v2`, `pancakeswap-v3`, `paraswap`, `pendle`, `permit2`, `perpetual-protocol`, `polygon-bridge`, `premia`, `puffer`, `pyth`, `quickswap`, `radiant`, `ramses`, `reflexer`, `renzo`, `rocket-pool`, `sablier`, `safe`, `scroll-bridge`, `seamless`, `seaport`, `silo`, `socket`, `sommelier`, `spark`, `spookyswap`, `squid`, `stader`, `stargate`, `superfluid`, `sushiswap-v2`, `swell`, `synapse`, `syncswap`, `synthetix-v3`, `thales`, `thena`, `thruster`, `tokemak`, `trader-joe`, `uniswap-v2`, `uniswap-v3`, `uniswap-v4`, `velodrome`, `venus`, `vertex`, `wormhole`, `yearn-v3`, `zerolend`, `zerox`, `zksync-bridge`

This page covers `sdk/dist/skills/loader.d.ts`.

<Note>
  Generated from the type declarations shipped in `@eco-incorp/sauce` 0.99.4. Each entry shows the package authors' JSDoc and declaration for this SDK version. For runtime compatibility and deployed addresses, see [architecture and deployments](/programmable-transactions/sauce/architecture-and-deployments).
</Note>

### `getProtocolIndex`

*Function* · `sdk/dist/skills/loader.d.ts`

Load the master protocol index skill file.
Returns markdown content with all protocols, categories, operations, and chain coverage.

```typescript theme={null}
export declare function getProtocolIndex(): string;
```

### `getProtocolSkill`

*Function* · `sdk/dist/skills/loader.d.ts`

Load a specific protocol's skill file by slug.
Returns markdown describing the protocol, its operations,
SauceScript examples, contract addresses, and ABI methods.

The slug is matched against `listSkillSlugs()` before it ever reaches `join`, so it can only name
a skill file this package ships - a caller-supplied path can never escape `skillsDir`. Anything
else, including a slug whose file is unreadable, surfaces as the same not-found error.

```typescript theme={null}
export declare function getProtocolSkill(slug: string): string;
```

### `listSkillSlugs`

*Function* · `sdk/dist/skills/loader.d.ts`

List all available protocol skill slugs.

```typescript theme={null}
export declare function listSkillSlugs(): string[];
```

### `SKILLS_DIR`

*Variable* · `sdk/dist/skills/loader.d.ts`

Absolute path to the skills directory (for direct file access).

```typescript theme={null}
SKILLS_DIR: string
```
