deepgram/deepgram-js-text-intelligence
Use when writing or reviewing JavaScript/TypeScript in this repo that calls Deepgram Text Intelligence / Read (`/v1/read`) for sentiment, summarization, topic detection, and intent recognition on text input. Covers `client.read.v1.text.analyze(...)` with `body: { text }` or `body: { url }`. Use `deepgram-js-audio-intelligence` when the source is audio instead of text. Triggers include "read API", "text intelligence", "analyze text", "sentiment", "summarize text", "topics", "intents", and "read.v1".
npx skills add https://github.com/deepgram/deepgram-js-sdk --skill deepgram-js-text-intelligence
Analyze text or a hosted text URL for sentiment, summarization, topics, and intents via /v1/read.
Use a different skill when:
deepgram-js-audio-intelligence.require("dotenv").config();
const { DeepgramClient } = require("@deepgram/sdk");
const deepgramClient = new DeepgramClient({
apiKey: process.env.DEEPGRAM_API_KEY,
});
From examples/12-text-intelligence.ts:
const data = await deepgramClient.read.v1.text.analyze({
body: {
text: "Hello, world! This is a sample text for analysis.",
},
language: "en",
summarize: "v2",
});
console.log("Analysis result:", JSON.stringify(data, null, 2));
For broader coverage, examples/28-text-intelligence-advanced.ts also demonstrates sentiment, topics, intents, custom topics/intents, callbacks, and URL input.
| Param | Notes |
|---|---|
| body | Required. Use { text: "..." } or { url: "https://..." } |
| language | Usually required for analytics features |
| sentiment | Per-segment + aggregate sentiment |
| summarize | SDK examples use both "v2" and true; see gotchas |
| topics, intents | Model-detected topics and intents |
| custom_topic, custom_intent | string or string[] |
| custom_topic_mode, custom_intent_mode | Usually "extended" or "strict" |
| callback, callback_method, tag | Async delivery and labeling |
reference.md → Read V1 Text; request typing also lives in src/api/resources/read/resources/v1/resources/text/client/{Client,requests/TextAnalyzeRequest.ts}./llmstxt/developers_deepgram_llms_txtbody: { text | url } in typed code. That matches TextAnalyzeRequest; some examples also use top-level text, which is less reliable for strict TS.summarize is inconsistent across examples and generated comments. The request type points at TextAnalyzeRequestSummarize ("v2" today), while generated comments mention boolean for Read and examples use both forms.read.v1 WebSocket exists in the repo.extended or strict.{ body: { text: ... } }, not a string payload.examples/12-text-intelligence.tsexamples/28-text-intelligence-advanced.tsFor cross-language Deepgram product knowledge — the consolidated API reference, documentation finder, focused runnable recipes, third-party integration examples, and MCP setup — install the central skills:
npx skills add deepgram/skills
This SDK ships language-idiomatic code skills; deepgram/skills ships cross-language product knowledge (see api, docs, recipes, examples, starters, setup-mcp).
Take deepgram/deepgram-js-text-intelligence from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference npx.
Without those the skill loads but fails at the first command.