关于 voice-extractor
voice-extractor 是从访谈、播客、会议等文字稿中提取作者表达特征的技能,可将分析结果用于完善作者档案。它同时提供说话人筛选、JSON 数据和 Markdown 报告,便于从多份文字稿归纳写作风格。
主要功能
- 01支持多种文字稿格式
- 02按说话人提取语音特征
- 03分析句式、表达风格和词汇
- 04生成 JSON 数据与 Markdown 报告
- 05将分析结果映射到作者档案字段
适用场景
- 01根据播客文字稿创建作者档案
- 02用新访谈内容完善既有档案
- 03为 AI 生成内容提炼写作风格参考
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mwguerra/ claude-code-plugins --skill voice-extractor安装后在 Claude Code 中输入/voice-extractor确认已加载。
附带文件references/TRANSCRIPT-FORMAT-EXAMPLES.mdreferences/VOICE-PROFILE-TEMPLATE.md
详细介绍
Voice Extractor
从转录文本中提取真实的声音特征,以完善作者档案。
用途
将转录数据(播客、采访、会议、视频)转化为可执行的写作指南,捕捉作者真实的声音,让 AI 生成的内容听起来自然且富有个人特色。
适用场景
- 作者有自己的录音或转录文本
- 想要捕捉真实的说话习惯
- 需要完善手动创建的作者档案
- 使用转录文本从头创建新的作者档案
- 使用更多数据完善现有档案
工作流
1. 准备转录文本
接受以下格式的转录文本:
- 纯文本:
Speaker: text - 带时间戳:
[00:01:23] Speaker: text或59:54 Speaker: text - 带方括号:
[Speaker]: text - WhatsApp:
[17:30, 12/6/2025] Speaker: text - SRT 字幕:标准字幕格式
如果用户提供的是音频/视频,而没有转录文本: 建议使用以下转录服务:
- YouTube 自动字幕(可下载)
- Otter.ai、Descript
- OpenAI Whisper(本地运行)
- Rev.com
2. 运行分析
# List speakers in transcript
bun run "${CLAUDE_PLUGIN_ROOT}"/scripts/voice-extractor.ts --list-speakers transcript.txt
# Extract for specific speaker
bun run "${CLAUDE_PLUGIN_ROOT}"/scripts/voice-extractor.ts --speaker "Name" transcript.txt
# Multiple transcripts (more data = better profile)
bun run "${CLAUDE_PLUGIN_ROOT}"/scripts/voice-extractor.ts --speaker "Name" t1.txt t2.txt t3.txt
# Output JSON for direct use with author profiles
bun run "${CLAUDE_PLUGIN_ROOT}"/scripts/voice-extractor.ts --speaker "Name" --json transcript.txt
3. 完善作者档案
提取的数据可用于完善以下作者字段:
| 提取的数据 | 对应字段 |
|---|---|
| 沟通风格 | tone.formality、tone.opinionated |
| 特征表达 | phrases.signature |
| 句子开头语 | phrases.signature |
| 标志性词汇 | vocabulary.use_freely |
| 说话风格 | notes |
4. 手动完善
自动提取后,阅读转录文本样本,以识别:
- 独特表达:频率分析可能遗漏的口头禅
- 幽默风格:讽刺、自嘲、机智表达模式
- 讲故事的结构:如何铺陈轶事
- 文化特征:地区表达、类比
- 话题侧重:哪些内容会让他们兴致高涨
提取内容
句子结构
- 平均句长
- 多样性(短/中等/长/复杂)
- 疑问句频率
沟通风格
- 热情(love、amazing、awesome)
- 保留语气(maybe、perhaps、I think)
- 确定语气(definitely、absolutely)
- 共情(understand、appreciate)
- 直接表达(need to、must、bottom line)
- 讲故事(so、and then、eventually)
- 分析表达(because、therefore、however)
特征表达
- 填充词:"you know"、"I mean"、"like"、"right"
- 保留语气表达:"kind of"、"sort of"、"I guess"
- 强调词:"honestly"、"literally"、"definitely"
词汇
- 频繁使用的标志性词汇
- 词汇丰富度百分比
与作者档案集成
根据转录文本创建新作者档案
# 1. Extract voice data
/article-writer:author analyze --speaker "John" transcripts/*.txt
# 2. Review and confirm extraction
# Claude will show extracted patterns
# 3. Add identity info
/article-writer:author add
# Answer: name, role, expertise, languages
# 4. Merge voice data
# Claude will combine extracted + manual data
完善现有作者档案
# 1. Extract from new transcripts
/article-writer:author analyze --speaker "John" --author-id mwguerra new_podcast.txt
# 2. Review changes
# Claude shows what will be updated
# 3. Confirm merge
# Voice analysis data added to existing profile
输出格式
JSON 输出(用于合并)
{
"voice_analysis": {
"extracted_from": ["podcast_ep1.txt", "interview.txt"],
"sample_count": 156,
"total_words": 12450,
"sentence_structure": {
"avg_length": 14.5,
"variety": "moderate length, conversational",
"question_ratio": 12.3
},
"communication_style": [
{ "trait": "enthusiasm", "percentage": 28.5 },
{ "trait": "analytical", "percentage": 24.1 },
{ "trait": "directness", "percentage": 18.7 }
],
"characteristic_expressions": [
"you know",
"I think",
"the thing is",
"at the end of the day"
],
"sentence_starters": [
"I think",
"So the",
"And then",
"But the"
],
"signature_vocabulary": [
"actually",
"basically",
"approach",
"strategy",
"implementation"
],
"analyzed_at": "2025-01-15T10:00:00Z"
},
"suggested_updates": {
"tone": {
"formality": 5,
"opinionated": 7
},
"phrases": {
"signature": ["you know", "the thing is", "at the end of the day"]
},
"vocabulary": {
"use_freely": ["approach", "strategy", "implementation"]
}
}
}
Markdown 报告
# Voice Analysis: John Smith
*Analyzed 156 speaking turns, 12,450 words*
## Speaking Style
- **Sentence length**: Moderate (~14 words avg)
- **Questions**: Uses questions occasionally (12%)
- **Vocabulary richness**: 45% unique words
## Communication Style
- **Primary**: Enthusiastic (28%)
- **Secondary**: Analytical (24%)
- **Tertiary**: Direct (19%)
## Characteristic Expressions
- "you know" (used 45x)
- "I think" (used 38x)
- "the thing is" (used 22x)
## Sentence Starters
- "I think..." (28x)
- "So the..." (19x)
- "And then..." (15x)
## Signature Vocabulary
**actually** (67x), **basically** (45x), **approach** (34x)
---
## Recommendations for Author Profile
Based on this analysis:
- Set formality to 5 (conversational but professional)
- Set opinionated to 7 (confident, uses "I think" but states opinions)
- Add signature phrases: "you know", "the thing is"
- Use vocabulary freely: approach, strategy, implementation
质量指标
高质量的声音分析需要:
- 100 次以上发言,以确保模式分析可靠
- 5,000 个以上词语,用于词汇分析
- 多种语境(不同的话题/对话)
数据不足警告:
⚠️ Limited data: Only 23 speaking turns found.
Results may not fully represent speaking patterns.
Consider adding more transcripts.
参考资料
评论
支持 Markdown