> ## Documentation Index
> Fetch the complete documentation index at: https://hanabiaiinc-chore-update-openapi-schema.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# AI Coding Agents

> Install the Fish Audio skill so your coding agent writes correct SDK and API code

Install the Fish Audio **agent skill**, and your coding agent — Claude Code, Cursor, Codex, and others — writes correct, current Fish Audio code: right method names, units, and error types, instead of guessing.

## Install the skill

```bash theme={null}
npx skills add https://docs.fish.audio
```

This installs both Fish Audio skills into your agent (a canonical copy in `.agents/skills/`, with symlinks for Claude Code and Cursor). Run `npx skills update` later to refresh them.

<CardGroup cols={2}>
  <Card title="fish-audio-sdk" icon="cube">
    Python (`fish-audio-sdk`) and JavaScript (`fish-audio`) — exact method signatures and defaults, sync + async, model selection, and the real exception types.
  </Card>

  <Card title="fish-audio-api" icon="code">
    Raw REST + WebSocket for any language or edge runtime — auth, endpoints, MessagePack/JSON/multipart rules, and the streaming protocol.
  </Card>
</CardGroup>

### Install options

<CodeGroup>
  ```bash All skills theme={null}
  npx skills add https://docs.fish.audio
  ```

  ```bash One skill theme={null}
  npx skills add https://docs.fish.audio --skill fish-audio-sdk
  ```

  ```bash Target an agent theme={null}
  # claude-code, cursor, codex, ...
  npx skills add https://docs.fish.audio -a claude-code
  ```

  ```bash List / inspect first theme={null}
  npx skills add https://docs.fish.audio --list
  ```
</CodeGroup>

Want to read them before installing? The skills are served at [/.well-known/agent-skills/index.json](https://docs.fish.audio/.well-known/agent-skills/index.json), with each skill's markdown at `/.well-known/agent-skills/<name>/SKILL.md`.

## Try it

Once installed, ask your agent in plain language — it will use the correct client, methods, and error types:

<CardGroup cols={2}>
  <Card title="TTS in a cloned voice" icon="microphone">
    "Generate speech with Fish Audio in a cloned voice and save it to a file."
  </Card>

  <Card title="Transcribe with timestamps" icon="waveform">
    "Transcribe `speech.wav` with Fish Audio and print the segments."
  </Card>

  <Card title="Stream from an LLM" icon="bolt">
    "Stream an LLM's tokens to Fish Audio TTS over the WebSocket."
  </Card>

  <Card title="Raw API, any language" icon="code">
    "Call the Fish Audio TTS REST API from Go, no SDK."
  </Card>
</CardGroup>

## Or connect via MCP

The [Fish Audio MCP server](/overview/mcp) at `https://api.fish.audio/mcp` gives your agent tools instead of docs: it can search the voice library, generate speech, and transcribe audio with your Fish Audio account (OAuth sign-in, no API key). See the [MCP server guide](/overview/mcp) for client setup and the tool list.

<Note>
  This site also exposes [llms.txt](https://docs.fish.audio/llms.txt) and [llms-full.txt](https://docs.fish.audio/llms-full.txt) for agents that fetch docs directly.
</Note>

## Next steps

<CardGroup cols={2}>
  <Card title="Get your API key" icon="key" href="/developer-guide/getting-started/api-key">
    Create a key and make your first request.
  </Card>

  <Card title="Text to Speech" icon="microphone" href="/features/text-to-speech">
    Voices, formats, streaming, and the direct API.
  </Card>

  <Card title="API reference" icon="book-open" href="/api-reference/introduction">
    Endpoints, parameters, and the OpenAPI schema.
  </Card>

  <Card title="Errors" icon="triangle-exclamation" href="/api-reference/errors">
    Status codes, retries, and SDK exception handling.
  </Card>
</CardGroup>

## Support

* **Technical support**: [support@fish.audio](mailto:support@fish.audio)
* **Issues**: [GitHub](https://github.com/fishaudio)
* **Community**: [Discord](https://discord.gg/dF9Db2Tt3Y)
