Not in the top 1,000 by GitHub stars
LeoLin990405/oral-interview-transcription-skill
A methodology-grounded pipeline that de-oralizes verbatim oral-history and podcast interview transcripts into faithful, reviewable Pass 1 drafts. · 方法论驱动的口述史 / 播客访谈逐字稿去口语化流水线,产出忠实、可复核的 Pass 1 整理稿。
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
oral-history-master/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
92a9ac205f63 → 92a9ac205f63
oral-history-quality-guard/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
92a9ac205f63 → 92a9ac205f63
Heat
3.3- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- oral-history-master
oral-history-master - oral-history-quality-guard
oral-history-quality-guard
How it works
oral-history-master
When your agent uses it
口述史 / 播客 / 通用访谈「整理稿」生成系统(Pass 1 去口语化)。将录音转写稿通过 「方针师→整理者→质量门」多角色协作,按存真优先原则转换为忠实、可读的整理稿, 并配套逐段字级审阅包(对照稿 / HTML / Word 修订)。专为长文设计:分块 + 术语锚定 + 跨块一致性。搭配 companion skill `oral-history-quality-guard` 做交付前忠实度审计。 触发词:口述史整理、播客转文字、转写稿去口语化、整理访谈记录、口述文本处理、 oral history、podcast transcript、整理稿、"按口述史要求处理录音转文字"。 书面化(Pass 2)见 workflows/pass2-bookify.md。
What it loads into context
Frontmatter
223 tokensAlways available to the agent
SKILL.md
3,118 tokensWhen the skill is activated
Reference documents
21,055 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 主流水线脚本
- 参考与模板索引
- 独立工作流
- 流程
- 角色切换协议
- Notes
Scripts executed separately
scripts/chunker.pyscripts/config.pyscripts/consistency_checker.pyscripts/diff_reporter.pyscripts/fidelity_checker.pyscripts/filler_scan.pyscripts/glossary_extractor.pyscripts/package_review.pyscripts/project_manager.pyscripts/report.pyscripts/review_diff.pyscripts/run_pipeline.pyscripts/transcript_ingest.pytests/test_pipeline.py
Files
SKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesSKILL.mdcore10,064 bytesprojects/demo/edit_spec.mddoc1,764 bytesprojects/demo/output/整理稿.mddoc1,153 bytesprojects/demo/review/一致性报告.mddoc282 bytesprojects/demo/review/审阅稿.docxasset3,660 bytesprojects/demo/review/审阅稿.htmlasset12,267 bytesprojects/demo/review/对照稿.mddoc6,148 bytesprojects/demo/review/待核对清单.mddoc385 bytesprojects/demo/review/忠实度报告.mddoc550 bytesprojects/demo/review/语气词残留.mddoc406 bytesprojects/demo/review/质检总览.mddoc964 bytesprojects/demo/sources/ingested.mddoc1,528 bytesprojects/demo/sources/raw.txtdoc1,328 bytesprojects/demo/term_lock.mddoc1,623 bytesprojects/demo/work/chunks/chunk_001.mddoc470 bytesprojects/demo/work/chunks/chunk_002.mddoc852 bytesprojects/demo/work/chunks/chunk_003.mddoc729 bytesprojects/demo/work/edited/chunk_001.edited.mddoc319 bytesprojects/demo/work/edited/chunk_002.edited.mddoc618 bytesprojects/demo/work/edited/chunk_003.edited.mddoc396 bytesprojects/demo/work/glossary_candidates.jsonasset565 bytesprojects/demo/work/manifest.jsonasset471 bytesprojects/demo/work/term_table_draft.mddoc388 bytesreferences/editor.mddoc4,040 bytesreferences/examples.mddoc10,886 bytesreferences/methodology.mddoc8,621 bytesreferences/shared-standards.mddoc3,867 bytesreferences/surveyor.mddoc3,636 bytesrequirements.txtdoc435 bytesscripts/README.mddoc4,279 bytesscripts/chunker.pyruns4,666 bytesscripts/config.pyruns10,868 bytesscripts/consistency_checker.pyruns3,800 bytesscripts/diff_reporter.pyruns1,159 bytesscripts/fidelity_checker.pyruns5,927 bytesscripts/filler_scan.pyruns5,009 bytesscripts/glossary_extractor.pyruns5,277 bytesscripts/package_review.pyruns4,328 bytesscripts/project_manager.pyruns6,532 bytesscripts/report.pyruns4,396 bytesscripts/review_diff.pyruns24,285 bytesscripts/run_pipeline.pyruns2,557 bytesscripts/transcript_ingest.pyruns7,356 bytestemplates/edit_spec_reference.mddoc3,105 bytestemplates/term_lock_reference.mddoc2,345 bytestests/test_pipeline.pyruns11,792 bytesworkflows/pass2-bookify.mddoc6,219 bytesworkflows/resume-execute.mddoc2,064 bytes
Read SKILL.md
# Oral History Master
> 录音转写稿 → 忠实整理稿(Pass 1)。多角色串行流水线 + 确定性脚本 + 机读执行契约。
> **存真 > 可读。** 口述史里录音才是史料;播客同样禁止添写与抹平矛盾。整理稿是最小干预转写。
**核心流水线**:`转写稿 → 归一(Ingest) → 建项目+专名预扫 → ⛔方针师(Surveyor) → 分块 → 整理者(Editor) → 一致性/忠实度门 → 复核包 → 质量门(QA) → 交付(签字)`
> [!CAUTION]
> ## 🚨 全局执行纪律(强制 · 最高优先级)
>
> **本流程是严格串行流水线。违反以下任一条即视为执行失败:**
>
> 1. **串行执行** — 步骤必须按序进行,上一步产物是下一步输入。非 BLOCKING 的相邻步骤在前置满足后可连续推进,无需用户说"继续"。
> 2. **BLOCKING = 硬停** — 标 ⛔ 的步骤必须完全停下,等用户明确回应才继续,**不得替用户做决定**。唯一 BLOCKING 点是 Step 2 方针师的"整理方针确认"。View the complete source on GitHuboral-history-quality-guard
When your agent uses it
oral-history-master 的配套质量门:交付前对整理稿做**对抗式忠实度审计**。 对照原始转写逐句核查:是否捏造、是否伪造确定性、是否圆场矛盾、是否抹掉方言/个性、 ⚠ 是否该标尽标、专名是否全篇统一。产出 QA 报告与逐块 PASS / NEEDS FIX 判定。 在交付任何口述史 / 播客整理稿前必须运行。触发词:口述史质检、播客稿质检、忠实度审计、 整理稿质量门、oral history QA、检查整理稿、quality guard。
What it loads into context
Frontmatter
172 tokensAlways available to the agent
SKILL.md
1,282 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 何时运行
- 必读
- 审计材料
- 七维对抗式审计(逐块过)
- 判定与产出
- 门规则
- 对抗心态(重要)
Files
SKILL.mdcore4,054 bytes
Read SKILL.md
# Oral History Quality Guard(忠实度质量门)
> 口述史的交付标准不是"读起来顺",
> 而是"对得起录音"。本技能是**交付前的最后一道硬门**:抱着"这稿一定有问题"的
> 对抗心态去找茬,找不到才放行。
## 何时运行
`oral-history-master` Step 7。`review/对照稿.md` 已生成,整理稿待交付。
## 必读
```
oral-history-master/references/shared-standards.md # 伦理红线 + 标记约定
oral-history-master/references/methodology.md # A 类保护 / Portelli 矛盾观
```View the complete source on GitHubSkills included
- oral-history-master
- oral-history-quality-guard
Repository facts
- License
- MIT
- Created
- Jun 13, 2026
- Last pushed
- Nov 4, 2026
- Forks
- 0
- Open issues
- 0
- Project activity
- Active
Before you install
Local scriptsAutomated signals, not a guarantee
Checked Nov 6, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 13 notes
oral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedoral-history-master/projects/demo/review/审阅稿.html:103Analysis incomplete: physical or joined line exceeds character limitoral-history-master/projects/demo/review/审阅稿.html:101Analysis incomplete: physical or joined line exceeds character limitoral-history-master/projects/demo/review/审阅稿.html:102Analysis incomplete: physical or joined line exceeds character limit
- No broad tool permissions
- No dangerous shell commands
- 21 network referencesin 1 file: oral-history-master/scripts/review_diff.py:494
- No hidden or obfuscated text
- No instruction overrides
- 14 executable scriptsin 14 files: oral-history-master/scripts/chunker.py:1 oral-history-master/scripts/config.py:1 oral-history-master/scripts/consistency_checker.py:1 and 11 more
- No access to secrets
- No requests to vote in Hot
Show all 35 signals by file
oral-history-master/scripts/chunker.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/config.py
- Executable scriptline 1
Executable file
oral-history-master/scripts/consistency_checker.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/diff_reporter.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/fidelity_checker.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/filler_scan.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/glossary_extractor.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/package_review.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/project_manager.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/report.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/review_diff.py
- Executable scriptline 1
Executable file - Network accessline 494
document = ( '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' - Network accessline 495
'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' f'<w:body>{"".join(paras)}<w:sectPr/></w:body></w:document>' - Network accessline 496
'<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' - Network accessline 499
styles = ( '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<w:styles xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' - Network accessline 500
'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<w:styles xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' '<w:style w:type="paragraph" w:default="1" w:styleId="Normal">' - Network accessline 501
'<w:styles xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' - Network accessline 515
settings = ( '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<w:settings xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' - Network accessline 516
'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<w:settings xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' '<w:trackRevisions w:val="true"/>' - Network accessline 517
'<w:settings xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' - Network accessline 521
content_types = ( '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">' - Network accessline 522
'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">' '<Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relation - Network accessline 523
'<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">' - Network accessline 534
rels = ( '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">' - Network accessline 535
'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">' '<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument - Network accessline 536
'<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">' - Network accessline 537
'<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="word/document.xml"/>' - Network accessline 540
doc_rels = ( '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">' - Network accessline 541
'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' '<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">' '<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument - Network accessline 542
'<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">' - Network accessline 543
'<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/>' - Network accessline 544
'<Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml"/>'
oral-history-master/scripts/run_pipeline.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/scripts/transcript_ingest.py
- Executable scriptline 1
#!/usr/bin/env python3
oral-history-master/tests/test_pipeline.py
- Executable scriptline 1
#!/usr/bin/env python3
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Declared and executed: 1 fact
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionoral-history-master/scripts/review_diff.py:496High confidence
Signal confidence: 35 facts
- Executable script in code of a file that runsoral-history-master/scripts/chunker.py:1High confidence
- Executable script in prose of a file that runsoral-history-master/scripts/config.py:1Low confidence
- Executable script in code of a file that runsoral-history-master/scripts/consistency_checker.py:1High confidence
- Executable script in code of a file that runsoral-history-master/scripts/diff_reporter.py:1High confidence
- Executable script in code of a file that runsoral-history-master/scripts/fidelity_checker.py:1High confidence
- Executable script in code of a file that runsoral-history-master/scripts/filler_scan.py:1High confidence
- Executable script in code of a file that runsoral-history-master/scripts/glossary_extractor.py:1High confidence
- Executable script in code of a file that runsoral-history-master/scripts/package_review.py:1High confidence
- Executable script in code of a file that runsoral-history-master/scripts/project_manager.py:1High confidence
- Executable script in code of a file that runsoral-history-master/scripts/report.py:1High confidence
- Executable script in prose of a file that runsoral-history-master/scripts/review_diff.py:1Low confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:494High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:495High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:496High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:499High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:500High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:501High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:515High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:516High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:517High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:521High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:522High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:523High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:534High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:535High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:536High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:537High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:540High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:541High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:542High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:543High confidence
- Network access in code of a file that runsoral-history-master/scripts/review_diff.py:544High confidence
- Executable script in code of a file that runsoral-history-master/scripts/run_pipeline.py:1High confidence
- Executable script in code of a file that runsoral-history-master/scripts/transcript_ingest.py:1High confidence
- Executable script in code of a testoral-history-master/tests/test_pipeline.py:1Low confidence
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md oral-history-master/SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md oral-history-master/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md oral-history-master/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md oral-history-master/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md oral-history-master/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md oral-history-master/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.