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

# Hermes Agent Plugin

> Install the community AnyAPI provider plugin for Hermes Agent

# AnyAPI Plugin for Hermes Agent

[Hermes Agent](https://github.com/NousResearch/hermes-agent) supports installable provider plugins. The **AnyAPI.ai plugin** registers AnyAPI as a selectable provider — alongside built-in providers — in `hermes model`, `hermes setup`, `hermes doctor`, and the `--provider` flag, so you don't have to hand-write a `custom_providers:` block.

> [!WARNING]
>
> This is a **community-maintained plugin** (author: `es697`, repo [`hermes-provider-anyapi`](https://github.com/es697/hermes-provider-anyapi)), not an official Nous Research or AnyAPI integration. It is MIT-licensed. If you'd rather configure AnyAPI manually with no third-party plugin code, see [Hermes Agent Integration](https://docs.anyapi.ai/integrations/hermes.md) instead.

## What it does

* Registers one `ProviderProfile` named **`anyapi.ai`** (alias `any-api`) via Hermes's `register_provider` hook.
* Adds no tools and changes no core Hermes files.
* Filters the model picker to routes tagged for tool/function calling. If the catalog is unreachable, or the filter would leave nothing, it falls back to the unfiltered `/v1/models` list.

## Requirements

* Hermes Agent `>= 0.20.0`
* Linux, macOS, or Windows
* An [AnyAPI API key](https://dash.anyapi.ai/?page=api-keys)

## Installation

**1. Install the plugin**

```bash theme={"system"}
hermes plugins install anyapi
```

Or from a local checkout:

```bash theme={"system"}
hermes plugins install /path/to/hermes-provider-anyapi/anyapi
```

The plugin pins a specific commit (`e5b7b98`). It only updates when you install a new pinned version — there's no auto-update.

**2. Set your API key**

```bash theme={"system"}
echo 'ANYAPI_API_KEY=your-key-here' >> ~/.hermes/.env
```

**3. Select the provider**

```bash theme={"system"}
hermes --provider anyapi.ai --model anthropic/claude-sonnet-4.6
```

Or run `hermes model` and pick **anyapi.ai** from the provider list.

## Configuration

| Variable | Required | Default | Purpose |
| - | - | - | - |
| `ANYAPI_API_KEY` | Yes | — | Your AnyAPI key |
| `ANYAPI_BASE_URL` | No | `https://api.anyapi.ai/v1` | Point at a self-hosted or staging gateway |

Model IDs use the `vendor/model` format, same as the rest of AnyAPI — e.g. `anthropic/claude-sonnet-4.6`, `openai/gpt-4o`. Browse the live catalog at [anyapi.ai/ai-models](https://anyapi.ai/ai-models) or via the dashboard.

> [!NOTE]
>
> Because the model picker only lists routes tagged `function_calling`, a model you expect to see may be filtered out if it doesn't support tool calling. Use the manual [`custom_providers:`](https://docs.anyapi.ai/integrations/hermes) setup if you need access to the full, unfiltered catalog.

## Data flow and permissions

Review this before installing any third-party plugin:

> **Network access**
>
> One call to `https://api.anyapi.ai/v1/models` to list models. All chat traffic you send through the `anyapi.ai` provider also goes to AnyAPI, which forwards it to the upstream vendor serving the selected model.

> **Files and shell**
>
> The plugin reads no files, writes no files, and runs no shell commands.

> **Telemetry**
>
> The plugin itself collects none. This does not cover AnyAPI's own request handling as your model relay — prompts, tool results, and your `ANYAPI_API_KEY` are sent to `api.anyapi.ai` to be routed to the upstream model provider and billed to your AnyAPI account, same as any other AnyAPI request.

## Troubleshooting

> **Provider not found after install**
>
> Restart Hermes, then confirm the plugin is listed:
>
> ```bash theme={"system"}
> hermes plugins list
> ```
>
> If it's missing, reinstall with `hermes plugins install anyapi`.

> **Authentication failed (HTTP 401)**
>
> Verify `ANYAPI_API_KEY` is set (`grep ANYAPI ~/.hermes/.env`) and that the key is active at [dash.anyapi.ai](https://dash.anyapi.ai).

> **Expected model is missing from the picker**
>
> The picker only shows `function_calling`-tagged routes. Either pick a tool-calling-capable model, or switch to the manual [`custom_providers:`](https://docs.anyapi.ai/integrations/hermes) setup for the unfiltered catalog.

## Next Steps

> **[Manual Hermes Integration](https://docs.anyapi.ai/integrations/hermes.md)**
>
> Configure AnyAPI as a custom provider without installing a plugin

> **[All Integrations](https://docs.anyapi.ai/integrations/overview.md)**
>
> Browse all supported tools

## Support

* **AnyAPI Dashboard**: [dash.anyapi.ai](https://dash.anyapi.ai)
* **AnyAPI Discord**: [Discord community](https://discord.gg/rJgyzGynHw)
* **AnyAPI Email**: [support@anyapi.ai](mailto:support@anyapi.ai)
* **Plugin repository**: [github.com/es697/hermes-provider-anyapi](https://github.com/es697/hermes-provider-anyapi)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.