| name | speak-sdk-patterns |
| description | Production patterns for Speak language learning API: conversation sessions, pronunciation assessment, audio preprocessing, and batch operations.
Use when implementing sdk patterns features,
or troubleshooting Speak language learning integration issues.
Trigger with phrases like "speak sdk patterns", "speak sdk patterns".
|
| allowed-tools | Read, Write, Edit, Bash(npm:*), Bash(curl:*), Grep |
| version | 1.14.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","speak","api"] |
| compatibility | Designed for Claude Code, also compatible with Codex and OpenClaw |
Speak SDK Patterns
Overview
Production patterns for Speak language learning API: conversation sessions, pronunciation assessment, audio preprocessing, and batch operations.
Prerequisites
- Completed
speak-install-auth setup
- Valid API credentials configured
- ffmpeg installed for audio processing
Instructions
Pattern 1: Conversation Session Manager
class ConversationManager {
private client: SpeakClient;
private sessions: Map<string, SessionState> = new Map();
async startLesson(language: string, scenario: string, level: string) {
const session = await this.client.startConversation({
scenario, language, level, nativeLanguage: 'en',
});
this.sessions.set(session.id, {
turns: [], startTime: Date.now(), language,
});
return session;
}
async submitResponse(sessionId: string, audioPath: ) {
turn = ..(sessionId, { audioPath });
..(sessionId)?..(turn);
turn;
}
() {
summary = ..(sessionId);
state = ..(sessionId)!;
{
...summary,
: (.() - state.) / ,
: state..,
: state..(
s + (t. || ), ) / state..,
};
}
}