> For the complete documentation index, see [llms.txt](https://docs.bunny.com/guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bunny.com/guide/tour/bunny-ai/skills-bunny-ai-toolkit.md).

# AI Agent Skills

Open-source Agent Skills that teach your AI assistant to build on Bunny and to operate your account — for Claude Code, VS Code, Cursor, Gemini CLI, OpenAI Codex, and other compatible tools

Bunny publishes an [**Agent Plugin**](https://agent-plugins.org/): an open, vendor-neutral package that installs into Claude Code, VS Code, Cursor, Gemini CLI, OpenAI Codex, and other compatible tools, and teaches your AI assistant how to work with Bunny.

The plugin carries two things — a library of **Agent Skills**, and the configuration for Bunny's [MCP server](/guide/tour/bunny-ai/mcp-server.md) — so one install covers both jobs:

* **Building on Bunny.** Skills for the GraphQL API, the official SDKs, React components, webhooks, and the customer portal. When you ask your assistant to "track signup subscriptions," "accept a payment," or "drop the customer portal into this page," it already knows the correct endpoints, auth patterns, components, and lifecycle steps — instead of guessing or relying on potentially outdated training data.
* **Operating your account.** Skills that teach an assistant to use the [MCP tools](/guide/tour/bunny-ai/mcp-server.md) well — which tool answers which question, how to read revenue metrics correctly, and why a subscription change goes through a quote. These are the same guidance files that steer Bunny's own [RevOps Agent](/guide/tour/bunny-ai/revops-agent.md), which is what closes the gap described in [A note on results across clients](/guide/tour/bunny-ai/mcp-server.md#a-note-on-results-across-clients).

The plugin is open source and maintained by the Bunny team: [github.com/bunnyapp/skills](https://github.com/bunnyapp/skills). For broader API reference, see [docs.bunny.com/developer](https://docs.bunny.com/developer).

### What are Agent Skills?

[Agent Skills](https://docs.anthropic.com/en/docs/claude-code/skills) are packaged instructions that an AI assistant loads on demand. Each skill covers one area of Bunny — the GraphQL API, the React component library, webhooks, and so on — and gives the assistant the right patterns, examples, and guardrails for that area. Your assistant pulls in the relevant skill automatically based on what you're working on, so guidance stays accurate and you don't have to paste in documentation by hand.

### What are Agent Plugins?

[Agent Plugins](https://agent-plugins.org/) are an open standard for packaging skills and MCP servers together, so one repository installs into many different assistants. Bunny's plugin follows version 1.0 of that specification.

Two things follow from that:

* **One install, both halves.** You get the skills *and* the MCP configuration in a single step. Your assistant is set up to write integration code and, once you connect your account, to operate it.
* **No per-tool packaging.** Claude Code, VS Code, Gemini CLI, Cursor, and Codex all read the same repository. There is no separate build or per-platform variant that can drift out of date.

### Installing

Install the whole plugin, or pull in individual skills à la carte.

{% hint style="success" %}
Using the **Claude app** or **ChatGPT** rather than a coding tool? Those have their own step-by-step walkthroughs, covering the account connection as well as the install:

* [Install in Claude →](/guide/tour/bunny-ai/install-in-claude.md)
* [Install in ChatGPT →](/guide/tour/bunny-ai/install-in-chatgpt.md)
  {% endhint %}

#### Claude Code

Run these two commands in a chat:

```
/plugin marketplace add bunnyapp/skills
/plugin install bunny-plugin@bunny-ai-toolkit
```

#### VS Code (GitHub Copilot)

Open the Command Palette (`Cmd+Shift+P` on Mac, `Ctrl+Shift+P` on Windows/Linux), run **Chat: Install Plugin From Source**, then paste the repository URL:

```
https://github.com/bunnyapp/skills
```

VS Code clones the repository and loads the skills and MCP configuration directly — it implements the Agent Plugins standard.

#### Gemini CLI

Run this in your terminal:

```
gemini extensions install https://github.com/bunnyapp/skills
```

#### Cursor

Install **Bunny** from the Cursor Marketplace.

#### OpenAI Codex

In the Codex CLI, run `/plugins`, search for **Bunny**, and select **Add to Codex**.

#### Other Agent Plugins hosts

Any host that implements the Agent Plugins standard can load the plugin from a directory. The standard doesn't define how plugins are distributed, so clone the repository and point your host at the folder:

```
git clone https://github.com/bunnyapp/skills bunny-plugin
```

#### Individual skills only

For any [agentskills.io](https://agentskills.io/)-compatible tool, when you want one skill rather than the whole plugin:

```
npx skills add bunnyapp/skills --skill <skill-name>
```

### Connecting it to your Bunny account

Installing the plugin gives your assistant the skills. To let it read or change real data, connect the [MCP server](/guide/tour/bunny-ai/mcp-server.md) as well.

Bunny's MCP endpoint is the same address for every account:

```
https://auth.bunny.com/api/mcp
```

That URL ships working in the plugin, so for most clients there is nothing to edit. The server supports **dynamic client registration**, so your client enrols itself and sends you straight to the Bunny login and consent screen — no API client to create, no client ID or secret to copy. Your account is carried by the token you consent with, which is why the URL needs no subdomain. The [MCP Server page](/guide/tour/bunny-ai/mcp-server.md) covers the full setup, including what to do for the few hosts that cannot register themselves.

{% hint style="info" %}
The developer skills work without this step — they teach your assistant to write integration code, which needs no connection to your data. Only the operator skills below require it.
{% endhint %}

### What you get

Once installed, your assistant gains:

* **Docs- and schema-aware help** — search Bunny's developer documentation and GraphQL schema from inside your editor.
* **SDK-guided integration** — correct setup and usage patterns for the Node (`@bunnyapp/api-client`) and Ruby (`bunny_app`) SDKs.
* **React components** — guided integration of `@bunnyapp/components` (BillingDetails, Invoice, Signup, Subscriptions, Quote, Quotes, Transactions).
* **Webhook handlers** — correct patterns for platform and workflow webhooks.
* **Lifecycle flows** — quote → apply → subscription; renewals, upgrades, and cancellation; invoices, payments, and credit notes.

### Common integration goals

If you're integrating Bunny, here's where to start depending on what you're building.

#### Track signups and subscriptions

To capture new signups and manage the subscriptions they create, the **`bunny-subscriptions`** skill covers the subscription lifecycle — renewals, upgrades, cancellation, and usage — while **`bunny-quoting`** covers the quote-to-subscription flow (create → share → accept → apply) that underpins how subscriptions are created. If you'd rather embed a ready-made signup experience, the **`bunny-components`** Signup component and the **`bunny-customer-portal`** signup variant handle this for you.

#### Accept payments

The **`bunny-billing`** skill covers invoices, payments, credit notes, and reconciliation — the core of taking money and keeping your records straight. Pair it with **`bunny-webhooks`** so your application reacts correctly to payment and billing events as they happen.

#### Implement the customer portal

The **`bunny-customer-portal`** skill covers the portal's popup, standalone, and signup variants, guiding your assistant on which to use and how to wire it up so customers can manage their own billing, subscriptions, and invoices.

#### Use the React components

The **`bunny-components`** skill guides integration of the `@bunnyapp/components` library, including BillingDetails, Invoice, Signup, Subscriptions, Quote, Quotes, and Transactions — pre-built React building blocks for billing UIs.

### All available skills

The plugin contains fourteen skills in two families.

#### Integration skills

For building Bunny into your own application. These need no connection to your account.

| Skill                   | Covers                                                            |
| ----------------------- | ----------------------------------------------------------------- |
| `bunny-graphql`         | Direct GraphQL API: endpoint, auth, pagination, common operations |
| `bunny-node-sdk`        | `@bunnyapp/api-client` (Node / TypeScript)                        |
| `bunny-ruby-sdk`        | `bunny_app` gem (Ruby / Rails)                                    |
| `bunny-components`      | `@bunnyapp/components` React library                              |
| `bunny-webhooks`        | Platform and workflow webhook handling                            |
| `bunny-customer-portal` | Popup, standalone, and signup portal variants                     |
| `bunny-catalog`         | Products, plans, features, price lists, coupons                   |
| `bunny-quoting`         | Quote lifecycle (create → share → accept → apply)                 |
| `bunny-subscriptions`   | Subscription lifecycle: renewals, upgrades, cancellation, usage   |
| `bunny-billing`         | Invoices, payments, credit notes, reconciliation                  |
| `bunny-analytics`       | MRR / ARR / churn, RevRec schedules, reporting exports            |

#### Operator skills

For working with a live Bunny account through the [MCP tools](/guide/tour/bunny-ai/mcp-server.md). These require a connected account, and they are what turn a general-purpose assistant into one that uses Bunny's tools the way Bunny's own agents do.

| Skill                 | Covers                                                                                                                        |
| --------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `bunny-agent-tools`   | Which tool answers which request, the domain model behind them, and the rules that stop an assistant inventing IDs or amounts |
| `bunny-agent-data`    | Reading data: choosing between `gql_query`, `analytics_query`, resources, and `export_csv`, and how to shape each             |
| `bunny-agent-changes` | Making changes: why subscription edits go through quotes, the compose→apply lifecycle, discounts, cancellation, catalog       |

### Credential safety

Every code sample in the skills reads tokens from environment variables. When integrating Bunny:

* **Never** hardcode, log, or commit access tokens.
* Rotate tokens regularly.
* Scope each token to the minimum set of permissions you need.

### Feedback and contributing

The plugin is maintained by the Bunny team. To report a problem or request a skill, open an issue in the [skills repository](https://github.com/bunnyapp/skills). The repo's [CONTRIBUTING.md](https://github.com/bunnyapp/skills/blob/main/CONTRIBUTING.md) documents the authoring rubric and skill structure; external pull requests are considered case by case, so please open an issue to discuss first.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.bunny.com/guide/tour/bunny-ai/skills-bunny-ai-toolkit.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
