# 🤖 AI agent integration

### :robot: Integrate Sats Connect with AI coding agents

Sats Connect ships a library of **Agent Skills** — one per method — so that AI coding agents can more easily integrate Sats Connect into your app.&#x20;

***

#### How it works

[Agent Skills](https://agentskills.io/) is an open standard for giving coding agents reusable, method-level expertise. Each skill is a small folder containing precise instructions and usage examples that an agent loads on demand.

The [`sats-connect-skills`](https://github.com/secretkeylabs/sats-connect-skills) repository contains a skill for every Sats Connect method — `getAddresses`, `signPsbt`, `runes_transfer`, `spark_transfer`, and more. When an agent picks up these skills, it knows exactly how to call each method, what parameters to pass, and how to handle the response.

***

#### Quick start

Skills are automatically picked up by AI coding agents that support the [Agent Skills](https://agentskills.io) standard. To use them, clone the [sats-connect-skills](https://github.com/secretkeylabs/sats-connect-skills) repository into a location scanned by your agent.

For details on how agents locate skills, see [Where to Scan](https://agentskills.io/client-implementation/adding-skills-support#where-to-scan).

***

#### Available skills

Skills are organized by method category. Each skill covers the full method: parameters, TypeScript types, request/response shape, and a working code example.

| Category             | Skills                                                                                                                                                                                                                                                                                                                                                                                                                   |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Wallet**           | `wallet-connect`, `wallet-disconnect`, `wallet-getAccount`, `wallet-getNetwork`, `wallet-changeNetwork`, `wallet-addNetwork`, `wallet-openBuy`, `wallet-openReceive`, `wallet-openEarn`, `wallet-openBridge`                                                                                                                                                                                                             |
| **Bitcoin**          | `getAddresses`, `getBalance`, `signPsbt`, `signMultipleTransactions`, `sendTransfer`, `signMessage`, `signMultipleMessages`                                                                                                                                                                                                                                                                                              |
| **Ordinals**         | `createInscription`, `createRepeatInscriptions`, `ord-getInscriptions`, `ord-sendInscriptions`                                                                                                                                                                                                                                                                                                                           |
| **Runes**            | `runes-getBalance`, `runes-transfer`, `runes-mint`, `runes-etch`, `runes-getOrder`, `runes-estimateMint`, `runes-estimateEtch`, `runes-estimateRbfOrder`, `runes-rbfOrder`                                                                                                                                                                                                                                               |
| **Spark**            | `spark-getAddress`, `spark-getBalance`, `spark-transfer`, `spark-transferToken`, `spark-signMessage`                                                                                                                                                                                                                                                                                                                     |
| **Spark / Flashnet** | `spark-flashnet-getJWT`, `spark-flashnet-signIntent`, `spark-flashnet-signStructuredMessage`, `spark-flashnet-executeSwap`, `spark-flashnet-executeRouteSwap`, `spark-flashnet-createCPPool`, `spark-flashnet-createBondingPool`, `spark-flashnet-addLiquidity`, `spark-flashnet-removeLiquidity`, `spark-flashnet-confirmInitialDeposit`, `spark-flashnet-clawbackFunds`, `spark-flashnet-getClawbackEligibleTransfers` |
| **Stacks**           | `stx-getAccounts`, `stx-signMessage`, `stx-signStructuredMessage`, `stx-transferStx`, `stx-signTransaction`, `stx-callContract`, `stx-deployContract`                                                                                                                                                                                                                                                                    |

Browse the full list and source: [github.com/secretkeylabs/sats-connect-skills](https://github.com/secretkeylabs/sats-connect-skills)

***

#### Example prompts

Here are ready-to-use prompts you can give your agent depending on what you're building.

**Connect a wallet and get addresses**

```
Using Sats Connect, connect to the Xverse Wallet and retrieve the user's Bitcoin
and Ordinals addresses.
```

**Sign a Bitcoin transaction**

```
Implement PSBT signing in my app using Sats Connect.
```

**Transfer Runes**

```
Add a Runes transfer feature to my app using Sats Connect.
```

**Full Spark integration**

```
Integrate the full Spark wallet flow — address, balance, and BTC transfer.
```

***

#### Always-on Sats Connect context

If you're building a Bitcoin app and want AI agents to always have Sats Connect context when working in your codebase, add the following to an `AGENTS.md` file at the root of your project:

```markdown
## Sats Connect

This app uses Sats Connect for Bitcoin wallet integration.
When implementing or modifying wallet functionality, load the relevant Sats Connect skill.

Examples:

- Wallet connection → sats-connect-wallet-connect
- Get addresses → sats-connect-getAddresses
- Sign PSBT → sats-connect-signPsbt
- Runes transfer → sats-connect-runes-transfer
- Spark transfer → sats-connect-spark-transfer
```

This means any developer who opens your repo in an AI agent gets Sats Connect expertise loaded automatically — no prompt needed.

***

#### Resources

* [sats-connect-skills on GitHub](https://github.com/secretkeylabs/sats-connect-skills)
* [Agent Skills specification](https://agentskills.io/specification)
* [Sats Connect npm package](https://www.npmjs.com/package/sats-connect)
* [Developer Discord](https://discord.gg/tN84HhSDrz) Collapse


---

# 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.xverse.app/sats-connect/ai-agent-integration.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.
