Agent skill

Speak Core Workflow B

by jeremylongshore in jeremylongshore/tons-of-skills-marketplace

Execute Speak secondary workflow: Pronunciation Training with phoneme-level analysis.

MITAuto-check passedEducation

Install Speak Core Workflow B

skills CLI
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill speak-core-workflow-b -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jeremylongshore/tons-of-skills-marketplace speak-core-workflow-b --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.curated/speak-core-workflow-b .claude/skills/speak-core-workflow-b && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
speak-core-workflow-b
GitHub stars
2.8k
Token cost
~1.5k tokens
SKILL.md length
224 words
Files
2 (incl. references)
Skills in repo
3,342
Repo updated
First seen
Licence
MIT

At a glance

Execute Speak secondary workflow: Pronunciation Training with phoneme-level analysis.

  • Works in 4 steps: Pronunciation Assessment → Adaptive Drill Loop → Weakness Report → …
  • Implementing pronunciation drills
  • SKILL.md covers Overview, Prerequisites, Instructions and Output, plus 4 more sections
  • Needs SPEAK_API_KEY

What it does

Speak Core Workflow B is an agent skill from jeremylongshore/tons-of-skills-marketplace. Execute Speak secondary workflow: Pronunciation Training with phoneme-level analysis. Use when implementing pronunciation drills, speech scoring, or targeted pronunciation improvement features. Trigger with phrases like "speak pronunciation training", "speak speech scoring", "speak phoneme analysis".

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/implementation-guide.md`). Compatibility notes: Designed for Claude Code

It sits in Education, covering Language learning. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.

When your agent uses it

  • Implementing pronunciation drills
  • Targeted pronunciation improvement features
  • With phrases like speak pronunciation training
  • Speak speech scoring

Example prompts

  • “speak pronunciation training”
  • “speak speech scoring”
  • “speak phoneme analysis”
  • “/speak-core-workflow-b”

Requirements

  • A credential in SPEAK_API_KEY
  • Compatibility (from SKILL.md): Designed for Claude Code
  • Pre-approved tools (allowed-tools): Read, Write, Edit, Bash(npm:*), Grep

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Pronunciation Assessment
  2. Adaptive Drill Loop
  3. Weakness Report
  4. Targeted Practice Generator

What it can do on your machine

Read from SKILL.md and the folder at commit cfae287. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Edit
    • Bash(npm:*)
    • Grep

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • speak.com
    • platform.openai.com
    • internationalphoneticassociation.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • SPEAK_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code

    From compatibility in the SKILL.md frontmatter.

Context cost

Speak Core Workflow B loads about 1.5k tokens when it runs, and up to ~3.5k if it reads all its reference files. Until then it costs about 81 tokens; SKILL.md has 224 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~81
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jeremylongshore/tons-of-skills-marketplace at commit cfae287, republished under its MIT licence (© jeremylongshore). 224 words, ~1,529 tokens.

Download SKILL.mdSave it as .claude/skills/speak-core-workflow-b/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
speak-core-workflow-b
description
Execute Speak secondary workflow: Pronunciation Training with phoneme-level analysis. Use when implementing pronunciation drills, speech scoring, or targeted pronunciation improvement features. Trigger with phrases like "speak pronunciation training", "speak speech scoring", "speak phoneme analysis".
allowed-tools
Read, Write, Edit, Bash(npm:*), Grep
compatibility
Designed for Claude Code
version
1.14.0
license
MIT
author
Jeremy Longshore <jeremy@intentsolutions.io>
tags
saas, speak, voice-ai, workflow

Speak Core Workflow B: Pronunciation Training

Overview

Secondary workflow for Speak: detailed pronunciation training with phoneme-level analysis and adaptive practice. Uses OpenAI's speech recognition with Speak's proprietary proficiency graph to identify and drill weak phonemes.

Prerequisites

  • Completed speak-core-workflow-a
  • Audio recording capability (WAV 16kHz mono)
  • ffmpeg installed for audio preprocessing

Instructions

Step 1: Pronunciation Assessment
typescript
import { SpeakClient } from '@speak/language-sdk';

const client = new SpeakClient({
  apiKey: process.env.SPEAK_API_KEY!,
  appId: process.env.SPEAK_APP_ID!,
  language: 'es',
});

// Assess pronunciation of a specific phrase
const result = await client.assessPronunciation({
  audioPath: './recordings/hola-como-estas.wav',
  targetText: 'Hola, como estas?',
  language: 'es',
  detailLevel: 'phoneme',
});

console.log(`Overall score: ${result.score}/100`);
for (const word of result.words) {
  const flag = word.score < 70 ? 'WEAK' : 'OK';
  console.log(`  [${flag}] "${word.text}": ${word.score}/100`);
  if (word.phonemes) {
    for (const p of word.phonemes.filter(p => p.score < 70)) {
      console.log(`    Phoneme "${p.symbol}": ${p.score} — ${p.suggestion}`);
    }
  }
}
Step 2: Adaptive Drill Loop
typescript
async function pronunciationDrill(
  client: SpeakClient,
  phrases: string[],
  language: string,
  targetScore: number = 80,
  maxAttempts: number = 3,
) {
  const weakPoints: Map<string, number[]> = new Map();
  const results: DrillResult[] = [];

  for (const phrase of phrases) {
    let bestScore = 0;
    let attempts = 0;

    while (bestScore < targetScore && attempts < maxAttempts) {
      const audioPath = await recordStudentAudio(phrase);
      const result = await client.assessPronunciation({
        audioPath, targetText: phrase, language, detailLevel: 'phoneme',
      });

      bestScore = Math.max(bestScore, result.score);
      attempts++;

      // Track weak phonemes
      for (const word of result.words) {
        for (const p of (word.phonemes || []).filter(p => p.score < 70)) {
          const scores = weakPoints.get(p.symbol) || [];
          scores.push(p.score);
          weakPoints.set(p.symbol, scores);
        }
      }

      if (result.score >= targetScore) {
        console.log(`"${phrase}": PASSED (${result.score}/100, ${attempts} attempts)`);
      } else if (attempts < maxAttempts) {
        console.log(`"${phrase}": ${result.score}/100 — try again`);
      }
    }

    results.push({ phrase, bestScore, attempts });
  }

  return { results, weakPoints };
}
Step 3: Weakness Report
typescript
function generateWeaknessReport(weakPoints: Map<string, number[]>) {
  const report = [...weakPoints.entries()]
    .map(([phoneme, scores]) => ({
      phoneme,
      avgScore: Math.round(scores.reduce((a, b) => a + b, 0) / scores.length),
      occurrences: scores.length,
    }))
    .sort((a, b) => a.avgScore - b.avgScore);

  console.log('\\n=== Pronunciation Weakness Report ===');
  for (const entry of report.slice(0, 10)) {
    const bar = '█'.repeat(Math.round(entry.avgScore / 10));
    console.log(`  ${entry.phoneme.padEnd(5)} ${bar} ${entry.avgScore}/100 (${entry.occurrences}x)`);
  }
  return report;
}
Step 4: Targeted Practice Generator
typescript
async function generateTargetedPractice(
  client: SpeakClient,
  weakPhonemes: string[],
  language: string,
) {
  // Request phrases that emphasize specific phonemes
  const practice = await client.getPracticePhrasesForPhonemes({
    phonemes: weakPhonemes,
    language,
    difficulty: 'progressive', // Start easy, increase complexity
    count: 10,
  });

  console.log('Targeted practice phrases:');
  for (const phrase of practice.phrases) {
    console.log(`  "${phrase.text}" — targets: ${phrase.targetPhonemes.join(', ')}`);
  }
  return practice;
}
Workflow Comparison
AspectWorkflow A (Conversation)Workflow B (Pronunciation)
FocusNatural dialoguePhoneme accuracy
FeedbackGrammar + vocabularyPhoneme scores + mouth position
Sessions5-15 min conversations2-5 min drills
ScoringOverall fluencyPer-phoneme breakdown
Use caseCommunication practiceAccent reduction

Output

  • Phoneme-level pronunciation scores
  • Adaptive drill loop with retry on weak phrases
  • Weakness report showing problematic phonemes
  • Targeted practice phrase generation
  • Progress tracking over multiple sessions

Error Handling

ErrorCauseSolution
Audio too shortRecording < 0.5sMinimum 0.5s audio required
Background noisePoor recording environmentPrompt for quieter location
Phoneme not detectedUnclear speechSlow down and articulate
Score always lowMicrophone qualityTest with known-good audio first

Resources

Next Steps

For common errors, see speak-common-errors.

Examples

Basic drill: Assess pronunciation of 5 common Spanish phrases, identify weak phonemes, and generate a targeted practice set.

Progress tracking: Run daily pronunciation drills, track phoneme scores over time, and visualize improvement trends.

© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in skills/.curated/speak-core-workflow-b of jeremylongshore/tons-of-skills-marketplace.

  • SKILL.md
  • references/implementation-guide.md

Open the folder on GitHubat commit cfae287

Compare with similar skills

Speak Core Workflow B next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Speak Core Workflow B compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Speak Core Workflow B this skilljeremylongshore/tons-of-skills-marketplace2.8k—~1.5kAutomated safety check: PassMIT
Fluent Progressm98/fluent421—~1.5kAutomated safety check: NotesMIT
Fluent Sm2 Calculatorm98/fluent421—~1.2kAutomated safety check: PassMIT
Duolingo Playpockebot/openpocket847—~1.1kAutomated safety check: PassMIT
Study Companion Enmingchen666/Reviva244—~5.7kAutomated safety check: PassNone
Fluent Learnm98/fluent421—~1.8kAutomated safety check: NotesMIT

Similar skills

  • Fluent Progress

    m98/fluent

    Show the learner's language learning progress, statistics, mastery levels, streak, and achievements.

    421 GitHub stars~1.5k tokensUpdated 3 mo ago
    EducationAuto-check: notes
  • SM-2 spaced-repetition algorithm reference for the Fluent language learning system.

    421 GitHub stars~1.2k tokensUpdated 3 mo ago
    EducationAuto-check passed
  • Duolingo Play

    pockebot/openpocket

    Help users complete Duolingo language lessons. An agent skill from pockebot/openpocket.

    847 GitHub stars~1.1k tokensUpdated 3 mo ago
    EducationAuto-check passed
  • Study Companion En

    mingchen666/Reviva

    General study companion for learning, review, exam prep, exam-point analysis, syllabus/exam-outline interpretation, finals speedrun teaching, concept explanation, problem solving, homework coaching…

    244 GitHub stars~5.7k tokensUpdated yesterday
    EducationAuto-check passed
  • Fluent Learn

    m98/fluent

    Main adaptive language-learning session that mixes skills (writing, speaking, vocabulary, reading) and exercise types based on the learner's current level, weak patterns, and due reviews.

    421 GitHub stars~1.8k tokensUpdated 3 mo ago
    EducationAuto-check: notes
  • Fluent Reading

    m98/fluent

    Run an interactive reading comprehension session with a short target-language text followed by main-idea, detail, vocabulary-in-context, inference, and true/false questions.

    421 GitHub stars~1.8k tokensUpdated 3 mo ago
    EducationAuto-check: notes

More from jeremylongshore/tons-of-skills-marketplace

All 3,342 skills in this repo
  • Performing Security Code Review

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.

    2.8k GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check: notes
  • Adapting Transfer Learning Models

    jeremylongshore/tons-of-skills-marketplace

    Build this skill automates the adaptation of pre-trained machine learning models using transfer learning techniques.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Agent Context Loader

    jeremylongshore/tons-of-skills-marketplace

    Execute proactive auto-loading: automatically detects and loads agents.md files.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Aggregating Performance Metrics

    jeremylongshore/tons-of-skills-marketplace

    Aggregate and centralize performance metrics from applications, systems, databases, caches, and services.

    2.8k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Analyzing Capacity Planning

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to analyze capacity requirements and plan for future growth.

    2.8k GitHub stars~947 tokensUpdated today
    Auto-check passed
  • Analyzing Database Indexes

    jeremylongshore/tons-of-skills-marketplace

    Process use when you need to work with database indexing. An agent skill from jeremylongshore/tons-of-skills-marketplace.

    2.8k GitHub stars~2k tokensUpdated today
    Auto-check passed

Categories

Questions about Speak Core Workflow B

What does Speak Core Workflow B do?

Execute Speak secondary workflow: Pronunciation Training with phoneme-level analysis. Speak Core Workflow B is an agent skill from jeremylongshore/tons-of-skills-marketplace. Execute Speak secondary workflow: Pronunciation Training with phoneme-level analysis.

When should I use Speak Core Workflow B?

Speak Core Workflow B fits situations like: implementing pronunciation drills; targeted pronunciation improvement features; with phrases like speak pronunciation training; speak speech scoring.

How do I install Speak Core Workflow B in Claude Code?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill speak-core-workflow-b -a claude-code`. Or copy the skill folder (skills/.curated/speak-core-workflow-b in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/speak-core-workflow-b in your project. Claude Code loads it when a task matches its description.

How do I install Speak Core Workflow B in Codex?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill speak-core-workflow-b -a codex`. Or copy the skill folder (skills/.curated/speak-core-workflow-b in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/speak-core-workflow-b in your project. Codex loads it when a task matches its description.

Can I use Speak Core Workflow B in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill speak-core-workflow-b -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/speak-core-workflow-b, .gemini/skills/speak-core-workflow-b, .github/skills/speak-core-workflow-b and .opencode/skills/speak-core-workflow-b in your project.

What does Speak Core Workflow B need to run?

Going by SKILL.md and its folder, Speak Core Workflow B needs credentials named SPEAK_API_KEY. Our summary lists: A credential in SPEAK_API_KEY. Its frontmatter pre-approves these tools: Read, Write, Edit, Bash(npm:*), Grep. Compatibility (from SKILL.md): Designed for Claude Code.

Does Speak Core Workflow B access the network?

SKILL.md names 3 domains. As links in the text: speak.com, platform.openai.com and internationalphoneticassociation.org. This is read from the text; nothing was executed.

Is Speak Core Workflow B safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Speak Core Workflow B use?

Speak Core Workflow B is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Speak Core Workflow B use?

About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2k tokens, read only when the agent opens those files.

What are the alternatives to Speak Core Workflow B?

Skills that share tags, products or a category with Speak Core Workflow B: Fluent Progress (m98/fluent, 421 stars), Fluent Sm2 Calculator (m98/fluent, 421 stars), Duolingo Play (pockebot/openpocket, 847 stars) and Study Companion En (mingchen666/Reviva, 244 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Speak Core Workflow B?

jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,827 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 10, 2026.

Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.