agentCLAWHUBUnverified

The English Tutor

英语口语陪练助手。触发词:「练习英语」「我要说英语」「英语陪练」。功能:上传生词表 → 每日定时情景对话 → 语音输入即时纠错 → 飞书语音推送 → 自动艾宾浩斯复习。

OpenClaw

Rank

62

Safety

84

Downloads

969

Updated

Oct 12, 2026

Version

3.0.4

Source

CLAWHUB

About

What it does, and when to use it.

Capability contract not published. No trust telemetry is available yet. 969 downloads reported by the source. Last updated 10/12/2026.

Avoid when

  • Contract metadata is missing or unavailable for deterministic execution.

Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing

Public facts

Every fact links back to the source it came from.

Vendor
Clawhubvendor · observed Oct 12, 2026
Protocol compatibility
OpenClawcompatibility · observed Oct 12, 2026
Adoption signal
969 downloadsadoption · observed Oct 12, 2026
Latest release
3.0.4release · observed May 10, 2026
Handshake status
UNKNOWNsecurity

What changed

Newest first. Only changes that point at a source are listed.

  • Release 3.0.4release

    Security hardening: remove hardcoded API keys, add null guards, cross-platform paths, stop-word filtering, logging module, all-optional config check

    Observed May 10, 2026 · source

Install and run

Setup complexity: low.

clawhub skill install s17761jw9y1e7ynw7f9xfz3a7585k0qb:the-english-tutor
  1. Install using `clawhub skill install s17761jw9y1e7ynw7f9xfz3a7585k0qb:the-english-tutor` in an isolated environment before connecting it to live workloads.
  2. No published capability contract is available yet, so validate auth and request/response behavior manually.
  3. Review the upstream CLAWHUB listing at https://clawhub.ai/pandaltsgo/the-english-tutor before using production credentials.

Contract: missing

curl -s "https://www.xpersona.co/api/v1/agents/clawhub-pandaltsgo-the-english-tutor/snapshot"

Run-check

$0.02 USD

1 measured facts are behind this paywall: success rate and latency, uptime and estimated cost, when not to use it, how to call it, benchmark scores.

Agents pay $0.02 in USDC. A card payment is $0.50, the smallest a card allows.

Documentation

CLAWHUB

110,628 characters of source documentation, loaded on request.

Extracted files

5 files captured from the source.

SKILL.md

# 英语助教 · English Tutor Skill

> **模块化基座 Skill** — 功能按需配置,所有环境变量均为**选填**。
> 有配置就启用对应功能,无配置则跳过。完整功能需要飞书 + MiniMax + 多维表格。

---

## 功能模块(按需启用)

| 模块 | 环境变量 | 说明 |
|------|---------|------|
| 飞书语音推送 | `FEISHU_APP_ID`, `FEISHU_APP_SECRET`, `FEISHU_USER_OPEN_ID` | 发 TTS 语音到飞书 |
| MiniMax TTS | `MINIMAX_API_KEY` | 云端语音合成(主方案) |
| Piper 本地 TTS | `PIPER_BIN`, `PIPER_MODEL` | 完全离线的语音兜底 |
| SenseVoice 本地 ASR | `SENSE_VOICE_MODEL_DIR` | 完全离线的语音识别 |
| 多维表格记忆 | `BITABLE_APP_TOKEN`, `BITABLE_WORDS_TABLE_ID`, `BITABLE_CHAT_TABLE_ID` | 单词记录 + 艾宾浩斯 |
| 定时推送 | cron jobs | 08:00 / 12:00 / 20:00(可单独开启) |

**原则**:填了变量 → 启用该模块;没填 → 该模块静默跳过,不报错。

---

## 文件结构

```
english-tutor/
├── SKILL.md
├── metadata.json
├── _meta.json
├── agent/                    ← 核心 Node.js 运行时
│   ├── config.js             ← 配置(全部选填,env 注入)
│   ├── minimax.js            ← MiniMax TTS + Chat API
│   ├── memory.js             ← 多维表格记忆(可选)
│   └── agent.js              ← 主流程入口
├── scripts/                  ← Python 辅助脚本
│   ├── check_env.py          ← 环境检测
│   ├── config_manager.py     ← 配置管理
│   ├── download_model.py     ← SenseVoice 模型下载
│   ├── feishu_voice.py       ← 飞书语音发送(TTS→Opus→上传→发送)
│   ├── transcribe.py         ← ASR 转录(本地/云端)
│   └── wordlist_parser.py    ← 单词表解析器
├── references/
│   └── config-schema.md
└── assets/
    └── wordlist_example.csv
```

---

## 环境变量(全部选填)

### 飞书模块

| 变量 | 默认值 | 说明 |
|------|--------|------|
| `FEISHU_APP_ID` | `""` | 飞书应用 App ID(填了才发飞书语音) |
| `FEISHU_APP_SECRET` | `""` | 飞书应用 Secret |
| `FEISHU_USER_OPEN_ID` | `""` | 接收语音的飞书用户 Open ID |

### TTS 模块

| 变量 | 默认值 | 说明 |
|------|--------|------|
| `MINIMAX_API_KEY` | `""` | MiniMax API Key(不填则跳过云端 TTS) |
| `MINIMAX_TTS_MODEL` | `speech-2.8-hd` | TTS 模型 |
| `MINIMAX_TTS_SPEED` | `1.05` | 语速 |
| `MINIMAX_TTS_VOICE_ID` | `male-qn-qingse` | 音色 ID |
| `PIPER_BIN` | `""` | Piper 主程序路径(不填则跳过本地 TTS) |
| `PIPER_MODEL` | `""` | Piper ONNX 模型路径 |
| `TTS_PROVIDER` | `minimax` | 优先方案:`minimax` / `piper` |

### ASR 模块

| 变量 | 默认值 | 说明 |
|------|--------|------|
| `SENSE_VOICE_MODEL_DIR` | `""` | SenseVoice 模型目录(不填则跳过本地 ASR) |

### 多维表格模块

| 变量 | 默认值 | 说明 |
|------|--------|------|
| `BITABLE_APP_TOKEN` | `""` | App Token(不填则无艾宾浩斯记忆) |
| `BITABLE_WORDS_TABLE_ID` | `""` | words 表 ID |
| `BITABLE_CHAT_TABLE_ID` | `""` | chat_log 表 ID |

### 每日练习配置

| 变量 | 默认值 | 说明 |
|------|--------|------|
| `DAILY_WORD_MAX` | `15` | 每日新词上限 |

---

## 凭据声明(metadata)

本 skill 为 **Credential-Using Skill**,但**所有凭据均为选填**:

```json
{
  "credential_using": true,
  "required_credentials": [],
  "optional_credentials": [
    { "name": "FEISHU_APP_ID",      "description": "飞书语音推送" },
    { "name": "FEISHU_APP_SECRET",  "description": "飞书语音推送" },
    { "name": "FEISHU_USER_OPEN_ID","description": "飞书语音推送" },
    { "name": "MINIMAX_API_KEY",    "description": "云端 TTS + LLM 对话" },
    { "name": "BITABLE_APP_TOKEN",  "description": "艾宾浩斯记忆(可选)" },
    { "name": "BITABLE_WORDS_TABLE_ID", "description": "单词记录表" },
    { "name": "BITABLE_CHAT_TABLE_ID",  

_meta.json

{
  "ownerId": "kn77xweern9gx42a72z2rffk6185jmxm",
  "slug": "the-english-tutor",
  "version": "3.0.4",
  "publishedAt": 1778426033498
}

references/config-schema.md

# English Tutor · 完整配置参考

## 配置存储

用户配置统一保存在 `~/.openclaw/english-tutor/config.json`,由 `scripts/config_manager.py` 管理。

**首次由陪练助手通过对话引导创建,无需手动编辑。**

---

## config.json 字段说明

### 基础配置

| 字段 | 必填 | 默认值 | 说明 |
|------|------|--------|------|
| `setup_complete` | ✅ | `false` | 首次设置是否完成 |
| `word_list_path` | ✅ | `""` | 单词表 JSON 文件路径 |
| `daily_words` | ✅ | `5` | 每日练习单词数量(建议 5-15)|
| `schedule_times` | ✅ | `["08:00"]` | 每日推送时间(上海时区)|

### LLM 模型配置 🤖

| 字段 | 必填 | 默认值 | 说明 |
|------|------|--------|------|
| `llm_provider` | ✅ | `"openclaw"` | 模型提供商:`openclaw` / `minimax` / `openai` |
| `llm_model` | 否 | `""` | 指定模型 ID(留空用默认)|

> 选择 `openclaw` 时使用系统默认 LLM,无需额外配置。

### 飞书语音配置 📢

| 字段 | 必填 | 默认值 | 说明 |
|------|------|--------|------|
| `feishu_app_id` | ✅ | `""` | 飞书应用 App ID |
| `feishu_app_secret` | ✅ | `""` | 飞书应用 App Secret |
| `feishu_bot_token` | 否 | `""` | 飞书 Bot Token(可选)|
| `feishu_user_open_id` | ✅ | `""` | 接收消息的用户 Open ID |

### TTS 语音合成 🔊

| 字段 | 必填 | 默认值 | 说明 |
|------|------|--------|------|
| `tts_provider` | 否 | `"minimax"` | TTS 方案:`minimax` / `piper` / `espeak` |
| `minimax_api_key` | minimax时 | `""` | MiniMax API Key |

> MiniMax TTS 有 API Key 时推荐音色:`male-qn-qingse`(男声)、`female-tianmei`(女声);无 Key 时静默跳过,可配 Piper 本地兜底

### 多维表格(可选)

| 字段 | 必填 | 默认值 | 说明 |
|------|------|--------|------|
| `bitable_app_token` | 否 | `""` | 飞书多维表格 App Token |
| `bitable_words_table_id` | 否 | `""` | words 表 ID |
| `bitable_chat_table_id` | 否 | `""` | chat_log 表 ID |

### Piper 本地 TTS(可选)

| 字段 | 必填 | 说明 |
|------|------|------|
| `piper_bin` | piper时 | piper 二进制路径 |
| `piper_model` | piper时 | .onnx 模型文件路径 |

---

## 飞书 audio 消息发送流程

每日练习第一步,通过 `scripts/feishu_voice.py` 实现:

```
1. TTS 合成 mp3
   - minimax: POST /v1/t2a_v2 → hex audio → 解码为 mp3
   - piper:   piper CLI → WAV
   
2. ffmpeg 转 opus
   ffmpeg -i input.mp3 -ar 16000 -ac 1 -acodec libopus -b:a 128k output.opus

3. 上传获取 file_key
   POST /open-apis/im/v1/files
   Content-Type: multipart/form-data; boundary=...
   body: file_type=opus, file=opus二进制

4. 发送 audio 消息
   POST /open-apis/im/v1/messages?receive_id_type=open_id
   {
     "receive_id": "<user_open_id>",
     "msg_type": "audio",
     "content": "{\"file_key\": \"<file_key>\"}"
   }
```

**使用示例:**
```bash
# 使用配置发送语音
python3 scripts/feishu_voice.py "Good morning! Today's vocabulary: commute, subway, transfer."

# 使用配置(指定路径)
python3 scripts/feishu_voice.py "Hello!" --config /path/to/config.json

# 仅合成,不发送(调试用)
python3 scripts/feishu_voice.py "Hello!" --dry-run
```

---

## TTS_PROVIDER 配置

### minimax(默认,云端,音质最好)

```env
TTS_PROVIDER=minimax
MINIMAX_API_KEY=sk-your-key
MINIMAX_TTS_MODEL=speech-2.8-hd
MINIMAX_TTS_VOICE_ID=male-qn-qingse
MINIMAX_TTS_SPEED=1.05
```

### piper(本地,高质量,离线)

**下载主程序(Linux x86_64):**
```bash
curl -L https://github.com/rhasspy/piper/releases/download/v1.2.0/piper_amd64.tar.gz \
  -o /tmp/piper.tar.gz && tar xf /tmp/piper.tar.gz -C /tmp
```

**下载英语模型(Lessac Medium,音质好,速度快):**
```bash
curl -L "https://hf-mirror.com/rhassp

skill-card.md

## Description:

The English Tutor helps learners practice spoken English with optional word-list review, timed scenario dialogs, speech transcription, text-to-speech, Feishu voice delivery, and Bitable memory.

This skill is ready for commercial/non-commercial use.

## Publisher:

[pandaltsgo](https://clawhub.ai/user/pandaltsgo)

### License/Terms of Use:

MIT-0

## Use Case:

Learners use this agent to rehearse short American English conversations, upload vocabulary lists, receive optional scheduled practice prompts, and review words with spaced repetition. Developers or advanced users configure Feishu, MiniMax, Piper, SenseVoice, and Bitable integrations according to the deployment environment.

### Deployment Geography for Use:

Global

## Known Risks and Mitigations:

Risk: The skill handles private voice, chat, learning records, and service credentials.

Mitigation: Configure only trusted Feishu, MiniMax, and ASR providers; store secrets through environment variables or secured configuration; avoid passing secrets as command-line arguments.

Risk: Optional Bitable memory stores chat and vocabulary records outside the local agent environment.

Mitigation: Enable Bitable memory only when external storage of practice data is acceptable, and limit stored content to learning records needed for review.

Risk: Optional Piper and SenseVoice setup downloads external binaries or model artifacts.

Mitigation: Verify downloaded artifacts before use, prefer a virtual environment with pinned dependencies, and review downloaded files according to local security policy.

## Reference(s):

- [ClawHub skill page](https://clawhub.ai/pandaltsgo/skills/the-english-tutor)
- [Configuration schema](references/config-schema.md)
- [MiniMax TTS API reference](https://platform.minimaxi.com/docs/api-reference/speech-t2a-http)
- [Piper TTS release v1.2.0](https://github.com/rhasspy/piper/releases/download/v1.2.0/piper_amd64.tar.gz)
- [Piper English voice model](https://hf-mirror.com/rhasspy/piper-voices/resolve/main/en/en_US/lessac/medium/en_US-lessac-medium.onnx)
- [SenseVoice model files](https://modelscope.cn/api/v1/models/xiaowangge/sherpa-onnx-sense-voice-small/resolve/master/model.onnx)

## Skill Output:

**Output Type(s):** [text, markdown, shell commands, configuration, guidance]

**Output Format:** [Markdown and plain text with optional JSON status from helper scripts]

**Output Parameters:** [1D]

**Other Properties Related to Output:** [May include Feishu audio-message results or skipped status when voice delivery is configured.]

## Skill Version(s):

3.0.4 (source: server release and artifact metadata)

## Ethical Considerations:

Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.

metadata.json

{
  "name": "english-tutor",
  "version": "3.0.4",
  "description": "英语口语陪练基座。飞书语音推送 + MiniMax/本地 TTS + SenseVoice ASR + 艾宾浩斯复习。全部模块选填,按需启用。",
  "credential_using": true,
  "all_optional": true,
  "optional_credentials": [
    {
      "name": "FEISHU_APP_ID",
      "type": "feishu_app_id",
      "required": false,
      "description": "飞书应用 App ID(填了才能发飞书语音)"
    },
    {
      "name": "FEISHU_APP_SECRET",
      "type": "feishu_app_secret",
      "required": false,
      "description": "飞书应用 Secret(填了才能发飞书语音)"
    },
    {
      "name": "FEISHU_USER_OPEN_ID",
      "type": "feishu_open_id",
      "required": false,
      "description": "接收语音的飞书用户 Open ID(填了才能发飞书语音)"
    },
    {
      "name": "MINIMAX_API_KEY",
      "type": "api_key",
      "required": false,
      "description": "MiniMax API Key(填了启用云端 TTS,不填则跳过)"
    },
    {
      "name": "PIPER_BIN",
      "type": "file_path",
      "required": false,
      "description": "Piper 主程序路径(填了启用本地 TTS 兜底)"
    },
    {
      "name": "PIPER_MODEL",
      "type": "file_path",
      "required": false,
      "description": "Piper ONNX 模型路径(填了启用本地 TTS 兜底)"
    },
    {
      "name": "SENSE_VOICE_MODEL_DIR",
      "type": "directory_path",
      "required": false,
      "description": "SenseVoice 模型目录(填了启用本地 ASR,不填则跳过)"
    },
    {
      "name": "BITABLE_APP_TOKEN",
      "type": "feishu_bitable_token",
      "required": false,
      "description": "飞书多维表格 App Token(不填则无艾宾浩斯记忆)"
    },
    {
      "name": "BITABLE_WORDS_TABLE_ID",
      "type": "string",
      "required": false,
      "description": "words 表 ID(单词记录表)"
    },
    {
      "name": "BITABLE_CHAT_TABLE_ID",
      "type": "string",
      "required": false,
      "description": "chat_log 表 ID(对话历史表)"
    }
  ],
  "module_design": {
    "principle": "填了变量启用该模块,没填则静默跳过,不报错",
    "modules": [
      {
        "name": "飞书语音推送",
        "env": ["FEISHU_APP_ID", "FEISHU_APP_SECRET", "FEISHU_USER_OPEN_ID"],
        "behavior_when_empty": "静默跳过,不发飞书语音"
      },
      {
        "name": "MiniMax TTS",
        "env": ["MINIMAX_API_KEY"],
        "behavior_when_empty": "静默跳过,尝试 Piper 本地 TTS"
      },
      {
        "name": "Piper 本地 TTS",
        "env": ["PIPER_BIN", "PIPER_MODEL"],
        "behavior_when_empty": "静默跳过,无 TTS 功能"
      },
      {
        "name": "SenseVoice 本地 ASR",
        "env": ["SENSE_VOICE_MODEL_DIR"],
        "behavior_when_empty": "静默跳过,仅支持文字输入"
      },
      {
        "name": "多维表格记忆",
        "env": ["BITABLE_APP_TOKEN", "BITABLE_WORDS_TABLE_ID", "BITABLE_CHAT_TABLE_ID"],
        "behavior_when_empty": "静默跳过,不记录学习进度"
      }
    ]
  },
  "scheduled_actions": [
    {
      "name": "每日晨间练习 08:00",
      "cron": "0 8 * * *",
      "timezone": "Asia/Shanghai",
      "default_enabled": false,
      "behavior": "用户选择开启后,自动生成跟读对话,发飞书语音,等待用户回复"
    },
    {
      "name": "每日午间练习 12:00",
      "cron": "0 12 * * *",
      "timezone": "Asia/Shanghai",
      "default_enabled": false,
      "behavior": "同上"
    },
    {
      "name": "每日晚间练
Github ReposUpdated 3d agoRank 70

AionUi

Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!

MCPOPENCLAW
Github ReposUpdated 6mo agoRank 70

activepieces

AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents

OPENCLAW
Github ReposUpdated 6mo agoRank 70

cherry-studio

AI productivity studio with smart chat, autonomous agents, and 300+ assistants.

MCPOPENCLAW
Github ReposUpdated 7mo agoRank 70

CopilotKit

The Frontend for Agents & Generative UI. React + Angular

OPENCLAW

Machine-readable data

The same record, as JSON, for agents and crawlers.

{
  "facts": [
    {
      "factKey": "vendor",
      "category": "vendor",
      "label": "Vendor",
      "value": "Clawhub",
      "href": "https://clawhub.ai/pandaltsgo/skills/the-english-tutor",
      "sourceUrl": "https://clawhub.ai/pandaltsgo/skills/the-english-tutor",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-10-12T00:19:58.817Z",
      "isPublic": true
    },
    {
      "factKey": "protocols",
      "category": "compatibility",
      "label": "Protocol compatibility",
      "value": "OpenClaw",
      "href": "https://www.xpersona.co/api/v1/agents/clawhub-pandaltsgo-the-english-tutor/contract",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-pandaltsgo-the-english-tutor/contract",
      "sourceType": "contract",
      "confidence": "medium",
      "observedAt": "2026-10-12T00:19:58.817Z",
      "isPublic": true
    },
    {
      "factKey": "traction",
      "category": "adoption",
      "label": "Adoption signal",
      "value": "969 downloads",
      "href": "https://clawhub.ai/pandaltsgo/the-english-tutor",
      "sourceUrl": "https://clawhub.ai/pandaltsgo/the-english-tutor",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-10-12T00:19:58.817Z",
      "isPublic": true
    },
    {
      "factKey": "latest_release",
      "category": "release",
      "label": "Latest release",
      "value": "3.0.4",
      "href": "https://clawhub.ai/pandaltsgo/the-english-tutor",
      "sourceUrl": "https://clawhub.ai/pandaltsgo/the-english-tutor",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-05-10T15:13:53.498Z",
      "isPublic": true
    },
    {
      "factKey": "handshake_status",
      "category": "security",
      "label": "Handshake status",
      "value": "UNKNOWN",
      "href": "https://www.xpersona.co/api/v1/agents/clawhub-pandaltsgo-the-english-tutor/trust",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-pandaltsgo-the-english-tutor/trust",
      "sourceType": "trust",
      "confidence": "medium",
      "observedAt": null,
      "isPublic": true
    }
  ],
  "events": [
    {
      "eventType": "release",
      "title": "Release 3.0.4",
      "description": "Security hardening: remove hardcoded API keys, add null guards, cross-platform paths, stop-word filtering, logging module, all-optional config check",
      "href": "https://clawhub.ai/pandaltsgo/the-english-tutor",
      "sourceUrl": "https://clawhub.ai/pandaltsgo/the-english-tutor",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-05-10T15:13:53.498Z",
      "isPublic": true
    }
  ]
}

Record generated Oct 13, 2026.

For crawlers

This page is free to read. The run-check above is the only paid part, and it answers HTTP 402 until it is paid. Everything else here is public.

  • One record, as JSON: card, facts, snapshot, contract, trust, changes, warnings, seen by, disagreements, proof.
  • Every agent, one feed: /.well-known/ai-catalog.json
  • What this site sells, and the price: /.well-known/x402
  • Paid run-check: /api/v1/agents/clawhub-pandaltsgo-the-english-tutor/run-check

Sponsored

Ads related to The English Tutor and adjacent AI workflows.