starters について
Deepgram のスターターアプリを機能や技術スタックから選ぶ開発者向けスキルです。クローンと起動手順に加え、テンプレートの有無やサブモジュールの注意点も案内します。
主な機能
- 01音声機能からテンプレートを選択
- 02言語とフレームワークで絞り込み
- 03スターター一覧の確認
- 04クローンと初期化の手順
- 05アプリとフロントエンドのサブモジュールを区別
活用シーン
- 01ファイル文字起こしデモの開始
- 02リアルタイム音声合成アプリの構築
- 03技術スタックに合わせた音声エージェントの作成
- 04Flux TTS テンプレートの有無を確認
MCP 対応
README は Deepgram MCP サーバーの導入に `setup-mcp` スキルを案内していますが、このスキル自体の MCP 連携は説明していません。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ deepgram/ skills --skill startersインストール後、Claude Code で/startersを入力して読み込まれたか確認します。
詳細
Deepgram スターターアプリ
動作するデモをクローンして、開発を始めましょう。各スターターは、拡張可能な最小限の実行可能アプリです。
1. 機能を選ぶ
何を作りたいですか?
- ファイルを文字起こしする →
transcription— 音声/動画を送信して、テキストを受け取ります(REST、Nova) - ライブストリームを文字起こしする →
live-transcription— リアルタイムの音声テキスト変換(WebSocket、Nova) - 音声を生成する →
text-to-speech— テキストを送信して、音声を受け取ります(REST、Aura) - 音声をストリーミングする →
live-text-to-speech— リアルタイムのテキスト音声変換(WebSocket、Aura) - テキストを分析する →
text-intelligence— 手元にあるテキストの感情、トピック、意図、要約(REST、/v1/read) - 音声エージェントを構築する →
voice-agent— 対話型 AI エージェント(WebSocket、agent.deepgram.com) - ターン検出機能付きの対話型 STT →
flux— 音声エージェントと対話型アシスタント向けの Deepgram Flux STT(WebSocket、/v2/listen) - 音声エージェント向けのターンベース TTS →
flux-tts— Deepgram Flux TTS。割り込みに対応したストリーミング音声合成(WebSocket、/v2/speak)
音声インテリジェンスのスターターはありません。 text-intelligence はテキスト専用で、手元にあるテキストを /v1/read に送信します。deepgram-starters には、どのフレームワーク向けにも {framework}-audio-intelligence リポジトリは存在しないため、その URL を組み立てないでください。音声に対してインテリジェンス機能(要約、感情、トピック、意図)を実行するには、これらの機能は独立したスターターではなく、/v1/listen のクエリパラメーターです。お使いのフレームワーク向けの transcription スターターをクローンし、既存のリクエストにパラメーターを追加してください。/v1/listen がサポートする機能については、api スキルを参照してください。
音声テキスト変換向けの Nova と Flux STT: 汎用の文字起こし、字幕、バッチ処理には、transcription または live-transcription(Nova、/v1/listen)を使用してください。会話音声で組み込みのターン検出が必要な場合は、flux(Flux STT、/v2/listen)を使用してください。詳しい比較については、api スキルを参照してください。
テキスト音声変換向けの Aura と Flux TTS: 1 回限りの音声合成、英語以外の音声、圧縮音声には、text-to-speech または live-text-to-speech(Aura、/v1/speak)を使用してください。LLM の出力をスピーカーにストリーミングし、ターンのライフサイクル管理と割り込みへの対応が必要な場合は、flux-tts(Flux TTS、/v2/speak)を使用してください。詳しい比較については、api スキルを参照してください。
Flux TTS スターターが用意されているのは、node、flask、fastapi、django、java のみです — これらは Deepgram が Flux TTS テンプレートアプリ で公式に公開している 5 つのアプリです。それ以外のフレームワーク向けに flux-tts スターターは存在しないため、その URL を組み立てないでください。サポートされていないフレームワークの場合は、api スキルの Flux TTS セクションと SDK スキルを参考にしてください。
2. 技術スタックを選ぶ
| 言語 | フレームワーク |
|---|---|
| JavaScript | node |
| TypeScript | bun、deno |
| Python | fastapi、flask、django |
| Go | go |
| Java | java |
| C# | csharp |
| Rust | rust |
| Ruby | ruby |
| PHP | php |
| C++ | cpp |
3. クローンして実行する
すべてのスターターは https://github.com/deepgram-starters/{framework}-{feature} にあります。先にフレームワーク、次に機能の順です。サブモジュールを含めてクローンしてください。各スターターには、ブラウザーフロントエンドの frontend/ と、共有スターターコントラクトの contracts/ という2つの Git サブモジュールが含まれています。通常の git clone ではどちらのディレクトリも空のままになり、アプリを実行できません。
git clone --recurse-submodules https://github.com/deepgram-starters/{framework}-{feature}.git
cd {framework}-{feature}
96 個のスターターのうち 80 個では、どちらのリポジトリも公開されているにもかかわらず、.gitmodules 内の2つのサブモジュール URL は SSH([email protected]:...)です。そのため、ユーザーが GitHub の SSH キーを持っていないと、--recurse-submodules は Host key verification failed で失敗します。残りの 16 個は HTTPS URL を使用しているため、キーなしでクローンできます。これには {framework}-live-transcription の13個のスターターのうち12個(rust-live-transcription を除くすべて)に加え、csharp-voice-agent、django-voice-agent、flask-voice-agent、node-voice-agent が含まれます。SSH キーがない場合は、クローン時に SSH を HTTPS に書き換えてください。この書き換えは、HTTPS を使用する16個のスターターには影響しないため、どのスターターにも安全に使用できます。
git -c url."https://github.com/".insteadOf="[email protected]:" \
clone --recurse-submodules https://github.com/deepgram-starters/{framework}-{feature}.git
スターター独自の make init は git submodule update --init --recursive を実行して依存関係をインストールしますが、.gitmodules に記載された URL をそのまま使用します。SSH を使用する80個のスターターでは、キーがないと同じように失敗します。そのため、これは SSH を設定済みのユーザー(または HTTPS を使用する16個のスターター向け)の手順であり、キーを持たないユーザー向けの回避策ではありません。
API キーを設定し、README に従ってください。
export DEEPGRAM_API_KEY=your_key_here
API キーは https://console.deepgram.com で取得できます。
または CLI でひな形を作成する
Deepgram CLI には、スターターを探してクローンするスキャフォルダーがあります。
dg init --list # browse templates
dg init --list --search python # filter
dg init node-transcription # clone into ./node-transcription
dg init node-transcription --dir ./my-app
dg init ではサブモジュールの問題は解決しません。 通常のクローンを実行するため、frontend/ と contracts/ は空のままになります。それでも Done! … is ready と "status": "success" が表示されます。--install を追加すると、スターターの make check-prereqs && make init が実行され、同じ .gitmodules URL が使われます。SSH を使用する80個のスターターでは Host key verification failed で失敗しますが、dg init はその場合も成功を報告します。GitHub の SSH キーがない場合は、dg init の後に手動でチェックアウトを完了してください。
cd my-app
git -c url."https://github.com/".insteadOf="[email protected]:" \
submodule update --init --recursive
dg init はアルファ版としてもマークされています。また、テンプレートギャラリーは以下の一覧とは別のリストであり、その一部ではありません。ギャラリーには44個のテンプレートがありますが、flux と flux-tts はありません。また、リポジトリがアーカイブ済みで非公開の sinatra-transcription も掲載されているため、Deepgram 以外のユーザーがクローンすると 404 になります。さらに、現在 deepgram-starters から deepgram-devs にリダイレクトされる nextjs-* テンプレートも掲載されているため、以下の一覧に nextjs の行はありません。一覧を正式な情報として扱い、git clone に切り替えてください。deepctl のインストール方法や dg init のその他の使い方については、cli スキルを参照してください。
{feature}-html リポジトリはスターターではありません
deepgram-starters 組織には、transcription-html、live-transcription-html、
text-to-speech-html、live-text-to-speech-html、text-intelligence-html、voice-agent-html、
flux-html、flux-tts-html も含まれています。これらをクローンしたり、スターターとして案内したりしないでください。 それぞれは、バックエンドスターターが frontend/ サブモジュールとして取り込む、共有ブラウザーフロントエンドです。たとえば、node-transcription は transcription-html を、flask-voice-agent は voice-agent-html を、node-flux-tts と java-flux-tts はどちらも flux-tts-html を取り込んでいます。8つのうち7つは、各自の README にその旨が記載されています(「This is a frontend submodule - do not use directly」)。flux-tts-html にはこの警告がありませんが、同じように取り込まれています。どれも API を提供していないため、単独では動作しません。代わりにバックエンドスターターをクローンすれば、対応するフロントエンドも一緒に取得できます。
また、これらの名前は命名規則が逆になっています。スターターの命名パターンは {framework}-{feature} ですが、これらは {feature}-html です。対になる逆順の名前は存在しないため、作らないでください。deepgram-starters/html-transcription は 404 になります。単独で使えるブラウザースターターは存在しないため、一覧表にバニラ HTML の行はありません。ブラウザーだけで使いたい場合は、希望する機能の node スターターをクローンし、その frontend/ ディレクトリを確認してください。
例
「Python で音声エージェントを作りたい」
→ git clone --recurse-submodules https://github.com/deepgram-starters/fastapi-voice-agent.git
「Node アプリでライブ文字起こしが必要」
→ git clone --recurse-submodules https://github.com/deepgram-starters/node-live-transcription.git
「Go サービスに音声合成を追加したい」
→ git clone --recurse-submodules https://github.com/deepgram-starters/go-text-to-speech.git
「C# で音声の感情を分析したい」
→ git clone --recurse-submodules https://github.com/deepgram-starters/csharp-text-intelligence.git
「Node の音声エージェントで、割り込みに対応したストリーミング TTS を使いたい」
→ git clone --recurse-submodules https://github.com/deepgram-starters/node-flux-tts.git
「シンプルなブラウザー/HTML のデモが欲しい」
→ 単独で使える HTML スターターはありません。node-{feature} をクローンして、その frontend/ ディレクトリで作業してください。そこには {feature}-html サブモジュールと同じブラウザーコードがあります。
すべてのスターター
以下の URL はすべて、公開済みでアーカイブされていない実在のリポジトリです。また、この表が全件です。13 個のフレームワーク × 7 個の機能に、対応する 5 つのフレームワークの flux-tts を加えたものです。— と表示されているセルのスターターは存在しません。URL を作らないでください。
java-flux-tts の README に記載されたクローン方法は通常の git clone で、--recurse-submodules が付いていません。一方、.gitmodules では両方のサブモジュールに SSH URL が指定されているため、記載された Maven の手順に従うと frontend/ と contracts/ が空のままになります。代わりに、セクション 3 のクローンコマンドを使ってください。
| transcription | live-transcription | text-to-speech | live-text-to-speech | text-intelligence | voice-agent | flux | flux-tts | |
|---|---|---|---|---|---|---|---|---|
| node | repo | repo | repo | repo | repo | repo | repo | repo |
| bun | repo | repo | repo | repo | repo | repo | repo | — |
| deno | repo | repo | repo | repo | repo | repo | repo | — |
| fastapi | repo | repo | repo | repo | repo | repo | repo | repo |
| flask | repo | repo | repo | repo | repo | repo | repo | repo |
| django | repo | repo | repo | repo | repo | repo | repo | repo |
| go | repo | repo | repo | repo | repo | repo | repo | — |
| java | repo | repo | repo | repo | repo | repo | repo | repo |
| csharp | repo | repo | repo | repo | repo | repo | repo | — |
| rust | repo | repo | repo | repo | repo | repo | repo | — |
| ruby | repo | repo | repo | repo | repo | repo | repo | — |
| php | repo | repo | repo | repo | repo | repo | repo | — |
| cpp | repo | repo | repo | repo | repo | repo | repo | — |
より具体的な情報が必要ですか?
- 特定機能に特化したスニペット(1 つの機能、1 つの言語、50 行未満)→
recipesスキル → https://github.com/deepgram/recipes - サードパーティとの連携(Twilio、LiveKit、LangChain、Vercel AI SDK、Discord など)→
examplesスキル → https://github.com/deepgram/examples - SDK 固有のコードスキル(慣用的なインポート、非同期パターン、注意点)→
npx skills add deepgram/deepgram-{lang}-sdk— スキルを公開インストールできる 6 つの SDK については、apiスキルをご覧ください。
関連する Deepgram スキル
api:REST API と WebSocket API をまとめたリファレンスrecipes:言語ごとの最小限の実行可能な機能スニペットexamples:サードパーティプラットフォームとの完全な連携例docs:ドキュメント検索cli:deepctl。ターミナルからテンプレートをひな形化するdg initを含みますsetup-mcp:Deepgram MCP サーバーのインストール