openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > Discord Voice Using Deepgram

Voice-channel conversations in Discord using Deepgram streaming STT + low-latency TTS

通信与消息

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v1.0.0

统计:⭐ 5 · 1.1k · 1 current installs · 1 all-time installs

5

安装量(当前) 1

🛡 VirusTotal :良性 · OpenClaw :可疑

Package:adriel1006/discord-voice-deepgram

安全扫描(ClawHub)

  • VirusTotal :良性
  • OpenClaw :可疑

OpenClaw 评估

The plugin largely does what its name says (connects Discord voice to Deepgram and your agent), but there are inconsistencies and noteworthy behaviors — most importantly it loads and runs your embedded agent with broad tool access (and persists session state) without that being clearly documented, and the registry metadata and SKILL.md disagree about required credentials.

目的

Name/description match the code: this is a Discord voice plugin that uses Deepgram for STT/TTS and routes transcripts to the agent. However, the registry metadata listed no required env vars while the SKILL.md and code expect a Discord token and a Deepgram API key (DISCORD_TOKEN / DEEPGRAM_API_KEY or config.deepgram.apiKey). That mismatch is an inconsistency to be aware of.

说明范围

The SKILL.md and code instruct the plugin to join voice channels, stream audio to Deepgram, and forward transcripts to the embedded agent. The code builds an extraSystemPrompt and calls runEmbeddedPiAgent (the agent is told it has access to its normal tools/skills and the user's Discord ID). The plugin also reads/writes the session store and agent workspace via core-bridge. Those actions go beyond simple STT/TTS plumbing because they give the …

安装机制

This is effectively an instruction-plus-source package (package.json present). There's no packaged install spec in the registry, so install is manual via npm (npm install). Dependencies are standard npm packages (discord.js, @discordjs/voice, ws, etc.) from normal registries — no obscure download URLs or extract steps were found.

证书

The plugin legitimately needs a Discord bot token and a Deepgram API key. The code reads Deepgram keys from config or environment and attempts to get the Discord token from the host OpenClaw/Clawdbot main config (mainConfig.channels.discord.token or mainConfig.discord.token) rather than directly requiring an env var. This is plausible but should be called out: the plugin expects access to your platform's Discord token storage and may also read…

持久

The plugin loads Clawdbot core modules and uses them to resolve agent workspace, session store, and to run an embedded agent. It also creates/updates session entries (saving a session store). It intentionally removed a commented-out 'lane' restriction and passes an extra system prompt telling the agent it 'has access to all your normal tools and skills'. That combination (embedded agent invocation + persisted session state + broad tool access)…

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「Discord Voice Using Deepgram」。简介:Voice-channel conversations in Discord using Deepgram streaming STT + low-laten…。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/adriel1006/discord-voice-deepgram/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: deepgram-discord-voice
description: Voice-channel conversations in Discord using Deepgram streaming STT + low-latency TTS
metadata:
  clawdbot:
    config:
      requiredEnv:
        - DISCORD_TOKEN
        - DEEPGRAM_API_KEY
      optionalEnv: []
      example: |
        {
          "plugins": {
            "entries": {
              "deepgram-discord-voice": {
                "enabled": true,
                "config": {
                  "streamingSTT": true,
                  "streamingTTS": true,
                  "ttsVoice": "aura-2-thalia-en",
                  "vadSensitivity": "medium",
                  "bargeIn": true,

                  "primaryUser": "atechy",
                  "allowVoiceSwitch": true,
                  "wakeWord": "openclaw",

                  "deepgram": {
                    "sttModel": "nova-2",
                    "language": "en-US"
                  }
                }
              }
            }
          }
        }
---

# Deepgram Discord Voice (Clawdbot/OpenClaw Plugin)

This plugin lets you talk to your agent **only from a Discord voice channel**.

Pipeline (low latency):
- Discord voice audio → **Deepgram streaming STT** (WebSocket)
- Transcript → your agent
- Agent reply → **Deepgram TTS** (`/v1/speak` streamed HTTP Ogg/Opus)
- Audio played back into the voice channel

## Requirements

- A Discord bot token (`DISCORD_TOKEN`)
- A Deepgram API key (`DEEPGRAM_API_KEY`)
- Discord bot permissions in your server:
  - **Connect**
  - **Speak**
  - **Use Voice Activity**

## Install

### Option A: Install from ClawHub

1. In your OpenClaw/Clawdbot dashboard, open **Skills/Plugins**.
2. Add/install **deepgram-discord-voice**.
3. Set the required environment variables.

### Option B: Manual install

1. Copy this folder into your extensions/plugins directory.
2. Run:

```bash
npm install
```

3. Restart OpenClaw/Clawdbot.

## Configuration

### Key settings

- `primaryUser` (recommended): Who the bot listens to by default.
  - Best: your **Discord user ID** (numeric)
  - Also supported: username/display name (e.g., `atechy`) if unique in-channel

- `allowVoiceSwitch`: If `true`, the primary user can switch who is allowed by voice.

- `wakeWord`: Prefix for voice control commands. Default: `openclaw`.

- `deepgram.sttModel`: Default `nova-2`.
- `deepgram.language`: Optional BCP‑47 language tag (e.g., `en-US`, `es`, `es-EC`).
- `ttsVoice`: Deepgram Aura voice model (e.g., `aura-2-thalia-en`).

### Example config

```json5
{
  "plugins": {
    "entries": {
      "deepgram-discord-voice": {
        "enabled": true,
        "config": {
          "streamingSTT": true,
          "streamingTTS": true,

          "primaryUser": "atechy",
          "allowVoiceSwitch": true,
          "wakeWord": "openclaw",

          "ttsVoice": "aura-2-thalia-en",
          "vadSensitivity": "medium",
          "bargeIn": true,

          "deepgram": {
            "sttModel": "nova-2",
            "language": "en-US"
          }
        }
      }
    }
  }
}
```

## Usage

### Join a voice channel

Use the plugin tool or slash command (depends on your OpenClaw setup):
- Join: `action=join` with the `channelId`
- Leave: `action=leave`

### Talk (voice channel)

Once the bot is connected, just speak.

### Safeguard: only listen to you (default)

When `primaryUser` is set, the plugin will only listen to that user unless you allow someone else.

### Let someone else talk (voice commands)

As the primary user, say:
- `openclaw allow <name>`
- `openclaw listen to <name>`

To lock it back:
- `openclaw only me`
- `openclaw reset`

### Switch via tool actions (optional)

- `allow_speaker` with `user` (id / @mention / name)
- `only_me`
- `status`

## Notes

- Lowest latency comes from `streamingSTT=true` and `streamingTTS=true`.
- Deepgram TTS is streamed over HTTP in **Ogg/Opus** so Discord can play it immediately.