{
  "schemaVersion": "1.0",
  "item": {
    "slug": "pronunciation-coach",
    "name": "Pronunciation Coach",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/Crazybuffon/pronunciation-coach",
    "canonicalUrl": "https://clawhub.ai/Crazybuffon/pronunciation-coach",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/pronunciation-coach",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=pronunciation-coach",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/phoneme-guide.md",
      "scripts/pronunciation-assess.sh",
      "scripts/pronunciation-report.js",
      "skill.json"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/pronunciation-coach"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/pronunciation-coach",
    "agentPageUrl": "https://openagent3.xyz/skills/pronunciation-coach/agent",
    "manifestUrl": "https://openagent3.xyz/skills/pronunciation-coach/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/pronunciation-coach/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Pronunciation Coach",
        "body": "Analyze spoken English pronunciation using Azure Speech Services and provide actionable coaching feedback.\n\nPrivacy Note: This skill reads local voice messages from ~/.openclaw/media/inbound/ and transmits them to Microsoft Azure Speech Services for processing."
      },
      {
        "title": "Prerequisites",
        "body": "Azure Speech API Key: Set AZURE_SPEECH_KEY env var\nAzure Speech Region: Set AZURE_SPEECH_REGION env var (e.g., southeastasia)\nffmpeg: Required for audio format conversion (must be on PATH)\nNode.js: Required for report generation"
      },
      {
        "title": "1. Receive Audio",
        "body": "Voice messages from Telegram are stored in ~/.openclaw/media/inbound/. Find the latest .ogg file matching the message timestamp.\n\nls -lt ~/.openclaw/media/inbound/*.ogg | head -5"
      },
      {
        "title": "2. Run Assessment",
        "body": "scripts/pronunciation-assess.sh <audio_file> \"<reference_text>\"\n\naudio_file: Path to the voice message (ogg/wav/mp3/m4a)\nreference_text: What the speaker intended to say (from transcript)\nThe script auto-converts any format to WAV 16kHz mono"
      },
      {
        "title": "3. Generate Report",
        "body": "Pipe the JSON output into the report generator:\n\nscripts/pronunciation-assess.sh audio.ogg \"reference text\" | node scripts/pronunciation-report.js\n\nThe report includes:\n\nOverall scores (Pronunciation, Accuracy, Fluency, Prosody, Completeness)\nWord-by-word breakdown with per-phoneme scores\nProblem sounds highlighted\nVerdict with actionable next steps"
      },
      {
        "title": "4. Provide Coaching",
        "body": "After generating the report:\n\nSend the text report to the user (scores + word breakdown)\nIdentify top 3 problem sounds from the phoneme scores\nExplain each problem — what the correct sound is and how to produce it\n\nSee references/phoneme-guide.md for phoneme descriptions and fixes\n\n\nSend a voice message (via TTS) demonstrating the correct pronunciation of problem words\nAssign practice — give the user specific sentences to re-record focusing on weak sounds"
      },
      {
        "title": "Coaching Tips",
        "body": "Scores ≥ 90: Excellent, minor polish\nScores 70-89: Good, targeted practice needed\nScores < 70: Needs focused drill on that specific sound\n\"Omission\" errors mean the word wasn't detected — speaker may have been too quiet or mumbled\nProsody score < 85 suggests monotone delivery — coach on intonation rises/falls\nCompare scores across multiple recordings to track improvement"
      }
    ],
    "body": "Pronunciation Coach\n\nAnalyze spoken English pronunciation using Azure Speech Services and provide actionable coaching feedback.\n\nPrivacy Note: This skill reads local voice messages from ~/.openclaw/media/inbound/ and transmits them to Microsoft Azure Speech Services for processing.\n\nPrerequisites\nAzure Speech API Key: Set AZURE_SPEECH_KEY env var\nAzure Speech Region: Set AZURE_SPEECH_REGION env var (e.g., southeastasia)\nffmpeg: Required for audio format conversion (must be on PATH)\nNode.js: Required for report generation\nWorkflow\n1. Receive Audio\n\nVoice messages from Telegram are stored in ~/.openclaw/media/inbound/. Find the latest .ogg file matching the message timestamp.\n\nls -lt ~/.openclaw/media/inbound/*.ogg | head -5\n\n2. Run Assessment\nscripts/pronunciation-assess.sh <audio_file> \"<reference_text>\"\n\naudio_file: Path to the voice message (ogg/wav/mp3/m4a)\nreference_text: What the speaker intended to say (from transcript)\nThe script auto-converts any format to WAV 16kHz mono\n3. Generate Report\n\nPipe the JSON output into the report generator:\n\nscripts/pronunciation-assess.sh audio.ogg \"reference text\" | node scripts/pronunciation-report.js\n\n\nThe report includes:\n\nOverall scores (Pronunciation, Accuracy, Fluency, Prosody, Completeness)\nWord-by-word breakdown with per-phoneme scores\nProblem sounds highlighted\nVerdict with actionable next steps\n4. Provide Coaching\n\nAfter generating the report:\n\nSend the text report to the user (scores + word breakdown)\nIdentify top 3 problem sounds from the phoneme scores\nExplain each problem — what the correct sound is and how to produce it\nSee references/phoneme-guide.md for phoneme descriptions and fixes\nSend a voice message (via TTS) demonstrating the correct pronunciation of problem words\nAssign practice — give the user specific sentences to re-record focusing on weak sounds\nCoaching Tips\nScores ≥ 90: Excellent, minor polish\nScores 70-89: Good, targeted practice needed\nScores < 70: Needs focused drill on that specific sound\n\"Omission\" errors mean the word wasn't detected — speaker may have been too quiet or mumbled\nProsody score < 85 suggests monotone delivery — coach on intonation rises/falls\nCompare scores across multiple recordings to track improvement"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Crazybuffon/pronunciation-coach",
    "publisherUrl": "https://clawhub.ai/Crazybuffon/pronunciation-coach",
    "owner": "Crazybuffon",
    "version": "1.0.4",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/pronunciation-coach",
    "downloadUrl": "https://openagent3.xyz/downloads/pronunciation-coach",
    "agentUrl": "https://openagent3.xyz/skills/pronunciation-coach/agent",
    "manifestUrl": "https://openagent3.xyz/skills/pronunciation-coach/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/pronunciation-coach/agent.md"
  }
}