К основному содержанию
скилл Claude Code CX Codex Cursor GitHub Copilot

agents · calesthio — скилл ElevenLabs для Claude Code: голосовые ИИ-агенты

Скилл для сборки голосовых агентов ElevenLabs: ассистенты, боты поддержки, интерактивные персонажи. Пригодится, когда нужен реальный голосовой диалог, а не текст.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add calesthio/OpenMontage --skill agents -a claude-code
Открыть на GitHub

Что делает agents

Скилл agents подключает к агенту платформу ElevenLabs. Из него ИИ-помощник узнаёт, как создавать голосовых ассистентов через CLI, Python, JavaScript или прямой вызов API, как запускать разговоры и встраивать виджет на сайт. Поддерживаются Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI и OpenCode.

Внутри — инструкции по шаблонам агентов: complete, minimal, voice-only, text-only, customer-service, assistant. Для диалога можно выбрать LLM от OpenAI, Anthropic, Google или ElevenLabs, голоса вроде George и Sarah, а также настроить eagerness — как быстро агент отвечает после паузы. Инструменты задаются в conversation_config.agent.prompt: вебхуки, клиентские функции и встроенные действия вроде завершения звонка или перевода на номер.

Для работы нужен доступ в интернет и ключ ELEVENLABS_API_KEY. Без него скилл бесполезен: все примеры кода обращаются к API ElevenLabs, и первая же попытка создать агента упадёт с ошибкой авторизации.

Какие задачи решает

  • создать голосового ассистента через CLI или SDK
  • подключить к агенту LLM от OpenAI, Anthropic, Google или ElevenLabs
  • встроить голосовой виджет на страницу
  • сделать исходящий звонок через Twilio
  • добавить агенту инструменты: вебхуки, клиентские функции, перевод на оператора

Примеры запросов агенту

  • создай голосового ассистента для поддержки клиентов по шаблону customer-service
  • покажи, как встроить виджет elevenlabs-convai на страницу
  • настрой agent на модель gemini-2.0-flash и голос Sarah

Как установить agents

1Через Skills CLI (Vercel)

npx skills add calesthio/OpenMontage --skill agents -a claude-code

2Вручную: положить файлы

~/.claude/skills/agents/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/agents/

Из того же набора28

Весь набор →
video-understand calesthio Скилл извлекает кадры из видео и расшифровывает аудио локально через ffmpeg и Whisper. Подходит для анализа роликов без API-ключей. Claude Code CX Codex Cursor +1 1 300установок remotion calesthio Скилл для вёрстки видео в Remotion с библиотекой переходов и правилами сборки сцен при 30 кадрах в секунду. Claude Code CX Codex Cursor +1 1 200установок video-download calesthio Скачивает видео, аудио и субтитры по URL через yt-dlp. Пригодится для получения файла, выбора качества или просмотра метаданных без загрузки. Claude Code CX Codex Cursor +1 1 200установок lottie-bodymovin calesthio Помогает переносить 12 принципов диснеевской анимации в векторные Lottie-ролики. Связывает формулы After Effects с управлением через JavaScript. Claude Code CX Codex Cursor +1 1 100установок create-video calesthio Скилл превращает описание в готовый видеоролик: пишешь, что хочешь видеть, а HeyGen генерирует сценарий, выбирает аватара, озвучивает и монтирует. Подходит для быстрого создания демо, объяснялок и промо без лишних настроек. Claude Code CX Codex Cursor +1 1 100установок video-toolkit calesthio Автоматизирует создание видео: генерирует закадровый голос, музыку, анимирует говорящие головы, компонует сцены через Remotion. Нужны Node.js, Python3, ffmpeg и доступ к облачным GPU (Modal или RunPod). Claude Code CX Codex Cursor +1 1 100установок text-to-speech calesthio Генерирует аудио из текста через HeyGen Starfish, подбирая голос, скорость и тон. Пригодится для озвучки, дикторского текста и подкастов. Claude Code CX Codex Cursor +1 1 100установок bfl-api Black Forest Labs Скилл помогает подключать BFL FLUX API для генерации и редактирования изображений. Нужен для асинхронных запросов, polling и вебхуков. Claude Code CX Codex Cursor +1 1 000установок

Другие версии agents

Похожие

openviking-memory volcengine Управляет долгосрочной семантической памятью через OpenViking MCP: находит решения прошлых задач в начале работы и сохраняет выводы после сессии. Claude Code CX Codex Cursor +1 502установок printing-press-amend mvanhorn Дорабатывает опубликованные CLI-утилиты по логам сессии или запросам пользователя, убирает конфиденциальные данные и отправляет пулл-реквест. Claude Code CX Codex Cursor +1 5 500установок ctf-writeup ljagiello Генерирует стандартизированный отчёт о решении CTF-задачи для проверки организаторами и передачи между участниками. Структурирует шаги решения, использованные инструменты и выводы в единый markdown-файл. Claude Code CX Codex Cursor +1 7 800установок sketch Hermes Agent (adapted from gsd-build/get-shit-done) Создаёт 2–3 HTML-варианта интерфейса, чтобы сравнить дизайн-направления до того, как начнёшь строить продакшн-код. Claude Code CX Codex Cursor +1 402установок argent-ios-device-setup software-mansion Инструкция для агента по подготовке физического iPhone, подключённого кабелем к Mac, для автоматизации argent. Пригодится при отладке тестов на реальном устройстве. Claude Code CX Codex Cursor +1 10 900установок gitnexus-guide abhigyanpatwari Справочник по инструментам GitNexus и схеме графа знаний проекта. Помогает агенту выбирать команды для поиска связей в коде и анализа изменений. Claude Code CX Codex Cursor +1 806установок setup-matt-pocock-skills Matt Pocock Скилл настраивает репозиторий для инженерных скиллов Matt Pocock: задаёт трекер задач, метки триажа и расположение доменной документации. Запустите его перед первым использованием остальных скиллов. Claude Code 1 052 851установок to-tickets Matt Pocock Разбивает план, спецификацию или переписку на небольшие сквозные задачи и отмечает, какие из них блокируют остальные. Пригодится, когда нужно согласовать порядок работы до публикации задач в трекере. Claude Code 711 230установок

Вопросы о agents

Как установить agents в Claude Code?

Выполни npx skills add calesthio/OpenMontage --skill agents -a claude-code. Скилл появится в ~/.claude/skills/agents/SKILL.md.

Что делает скилл agents?

Обучает ИИ-помощника работе с платформой ElevenLabs: создание голосовых агентов, запуск разговоров, настройка LLM и голосов, подключение инструментов, встраивание виджета и исходящие звонки.

Что нужно для работы скилла?

Интернет-доступ и ключ API ElevenLabs в переменной ELEVENLABS_API_KEY. Ключ обязателен для любых операций с платформой.

Исходный текст

SKILL.md · MIT
---
name: agents
description: Build voice AI agents with ElevenLabs. Use when creating voice assistants, customer service bots, interactive voice characters, or any real-time voice conversation experience.
license: MIT
compatibility: Requires internet access and an ElevenLabs API key (ELEVENLABS_API_KEY).
metadata: {"openclaw": {"requires": {"env": ["ELEVENLABS_API_KEY"]}, "primaryEnv": "ELEVENLABS_API_KEY"}}
---

# ElevenLabs Agents Platform

Build voice AI agents with natural conversations, multiple LLM providers, custom tools, and easy web embedding.

> **Setup:** See [Installation Guide](references/installation.md) for CLI and SDK setup.

## Quick Start with CLI

The ElevenLabs CLI is the recommended way to create and manage agents:

```bash
# Install CLI and authenticate
npm install -g @elevenlabs/cli
elevenlabs auth login

# Initialize project and create an agent
elevenlabs agents init
elevenlabs agents add "My Assistant" --template complete

# Push to ElevenLabs platform
elevenlabs agents push
```

**Available templates:** `complete`, `minimal`, `voice-only`, `text-only`, `customer-service`, `assistant`

### Python

```python
from elevenlabs import ElevenLabs

client = ElevenLabs()

agent = client.conversational_ai.agents.create(
    name="My Assistant",
    enable_versioning=True,
    conversation_config={
        "agent": {
            "first_message": "Hello! How can I help?",
            "language": "en",
            "prompt": {
                "prompt": "You are a helpful assistant. Be concise and friendly.",
                "llm": "gemini-2.0-flash",
                "temperature": 0.7
            }
        },
        "tts": {"voice_id": "JBFqnCBsd6RMkjVDRZzb"}
    }
)
```

### JavaScript

```javascript
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";
const client = new ElevenLabsClient();

const agent = await client.conversationalAi.agents.create({
  name: "My Assistant",
  enableVersioning: true,
  conversationConfig: {
    agent: {
      firstMessage: "Hello! How can I help?",
      language: "en",
      prompt: {
        prompt: "You are a helpful assistant.",
        llm: "gemini-2.0-flash",
        temperature: 0.7
      }
    },
    tts: { voiceId: "JBFqnCBsd6RMkjVDRZzb" }
  }
});
```

### cURL

```bash
curl -X POST "https://api.elevenlabs.io/v1/convai/agents/create?enable_versioning=true" \
  -H "xi-api-key: $ELEVENLABS_API_KEY" -H "Content-Type: application/json" \
  -d '{"name": "My Assistant", "conversation_config": {"agent": {"first_message": "Hello!", "language": "en", "prompt": {"prompt": "You are helpful.", "llm": "gemini-2.0-flash"}}, "tts": {"voice_id": "JBFqnCBsd6RMkjVDRZzb"}}}'
```

## Starting Conversations

**Server-side (Python):** Get signed URL for client connection:
```python
signed_url = client.conversational_ai.conversations.get_signed_url(
    agent_id="your-agent-id",
    environment="staging",
)
```

**Client-side (JavaScript):**
```javascript
import { Conversation } from "@elevenlabs/client";

const conversation = await Conversation.startSession({
  agentId: "your-agent-id",
  environment: "staging",
  onMessage: (msg) => console.log("Agent:", msg.message),
  onUserTranscript: (t) => console.log("User:", t.message),
  onError: (e) => console.error(e)
});
```

**React Hook:**
```typescript
import { useConversation } from "@elevenlabs/react";

const conversation = useConversation({ onMessage: (msg) => console.log(msg) });
// Get a signed URL for the target environment from your backend, then:
await conversation.startSession({ signedUrl: token });
```

## Configuration

| Provider | Models |
|----------|--------|
| OpenAI | `gpt-5`, `gpt-5-mini`, `gpt-5-nano`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo` |
| Anthropic | `claude-sonnet-4-6`, `claude-sonnet-4-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-haiku` |
| Google | `gemini-3.1-flash-lite-preview`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-2.5-flash`, `gemini-2.5-flash-lite`, `gemini-2.0-flash`, `gemini-2.0-flash-lite` |
| ElevenLabs | `glm-45-air-fp8`, `qwen3-30b-a3b`, `gpt-oss-120b` |
| Custom | `custom-llm` (bring your own endpoint) |

Use `GET /v1/convai/llm/list` to inspect the current model catalog, including deprecation state, token/context limits, and capability flags such as image-input support.

**Popular voices:** `JBFqnCBsd6RMkjVDRZzb` (George), `EXAVITQu4vr4xnSDxMaL` (Sarah), `onwK4e9ZLuTAKqWW03F9` (Daniel), `XB0fDUnXU5powFXDhCwa` (Charlotte)

**Turn eagerness:** `patient` (waits longer for user to finish), `normal`, or `eager` (responds quickly)

See [Agent Configuration](references/agent-configuration.md) for all options.

## Tools

Extend agents with webhook, client, or built-in system tools. Tools are defined inside `conversation_config.agent.prompt`:

Workspace environment variables can resolve per-environment server tool URLs, headers, and auth connections, and runtime system variables such as `{{system__conversation_history}}` can pass full conversation context into tool calls when needed.

```python
"prompt": {
    "prompt": "You are a helpful assistant that can check the weather.",
    "llm": "gemini-2.0-flash",
    "tools": [
        # Webhook: server-side API call
        {"type": "webhook", "name": "get_weather", "description": "Get weather",
         "api_schema": {"url": "https://api.example.com/weather", "method": "POST",
             "request_body_schema": {"type": "object", "properties": {"location": {"type": "string"}}, "required": ["location"]}}},
        # Client: runs in the browser
        {"type": "client", "name": "show_product", "description": "Display a product",
         "parameters": {"type": "object", "properties": {"productId": {"type": "string"}}, "required": ["productId"]}}
    ],
    "built_in_tools": {
        "end_call": {},
        "transfer_to_number": {"transfers": [{"transfer_destination": {"type": "phone", "phone_number": "+1234567890"}, "condition": "User asks for human support"}]}
    }
}
```

**Client tools** run in browser:
```javascript
clientTools: {
  show_product: async ({ productId }) => {
    document.getElementById("product").src = `/products/${productId}`;
    return { success: true };
  }
}
```

See [Client Tools Reference](references/client-tools.md) for complete documentation.

## Widget Embedding

```html
<elevenlabs-convai agent-id="your-agent-id"></elevenlabs-convai>
<script src="https://unpkg.com/@elevenlabs/convai-widget-embed" async type="text/javascript"></script>
```

Customize with attributes: `avatar-image-url`, `action-text`, `start-call-text`, `end-call-text`.

See [Widget Embedding Reference](references/widget-embedding.md) for all options.

## Outbound Calls

Make outbound phone calls using your agent via Twilio integration:

### Python

```python
response = client.conversational_ai.twilio.outbound_call(
    agent_id="your-agent-id",
    agent_phone_number_id="your-phone-number-id",
    to_number="+1234567890",
    call_recording_enabled=True
)
print(f"Call initiated: {response.conversation_id}")
```

### JavaScript

```javascript
const response = await client.conversationalAi.twilio.outboundCall({
  agentId: "your-agent-id",
  agentPhoneNumberId: "your-phone-number-id",
  toNumber: "+1234567890",
  callRecordingEnabled: true,
});
```

### cURL

```bash
curl -X POST "https://api.elevenlabs.io/v1/convai/twilio/outbound-call" \
  -H "xi-api-key: $ELEVENLABS_API_KEY" -H "Content-Type: application/json" \
  -d '{"agent_id": "your-agent-id", "agent_phone_number_id": "your-phone-number-id", "to_number": "+1234567890", "call_recording_enabled": true}'
```

See [Outbound Calls Reference](references/outbound-calls.md) for configuration overrides and dynamic variables.

## Managing Agents

### Using CLI (Recommended)

```bash
# List agents and check status
elevenlabs agents list
elevenlabs agents status

# Import agents from platform to local config
elevenlabs agents pull                      # Import all agents
elevenlabs agents pull --agent <agent-id>   # Import specific agent

# Push local changes to platform
elevenlabs agents push              # Upload configurations
elevenlabs agents push --dry-run    # Preview changes first

# Add tools
elevenlabs tools add-webhook "Weather API"
elevenlabs tools add-client "UI Tool"
```

### Project Structure

The CLI creates a project structure for managing agents:

```
your_project/
├── agents.json       # Agent definitions
├── tools.json        # Tool configurations
├── tests.json        # Test configurations
├── agent_configs/    # Individual agent configs
├── tool_configs/     # Individual tool configs
└── test_configs/     # Individual test configs
```

### SDK Examples

```python
# List
agents = client.conversational_ai.agents.list()

# Get
agent = client.conversational_ai.agents.get(agent_id="your-agent-id")

# Update (partial - only include fields to change)
client.conversational_ai.agents.update(agent_id="your-agent-id", name="New Name")
client.conversational_ai.agents.update(agent_id="your-agent-id",
    conversation_config={
        "agent": {"prompt": {"prompt": "New instructions", "llm": "claude-sonnet-4"}}
    })

# Delete
client.conversational_ai.agents.delete(agent_id="your-agent-id")
```

See [Agent Configuration](references/agent-configuration.md) for all configuration options and SDK examples.

## Error Handling

```python
try:
    agent = client.conversational_ai.agents.create(...)
except Exception as e:
    print(f"API error: {e}")
```

Common errors: **401** (invalid key), **404** (not found), **422** (invalid config), **429** (rate limit)

## References

- [Installation Guide](references/installation.md) - SDK setup and migration
- [Agent Configuration](references/agent-configuration.md) - All config options and CRUD examples
- [Client Tools](references/client-tools.md) - Webhook, client, and system tools
- [Widget Embedding](references/widget-embedding.md) - Website integration
- [Outbound Calls](references/outbound-calls.md) - Twilio phone call integration

© calesthio · MIT · calesthio/OpenMontage

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой