From claude-transcription
Mine a transcript for durable personal context — facts about the speaker (location, role, projects, preferences, relationships, ongoing work) — and write them to a context file for later reuse. De-duplicates against existing context so the same facts aren't re-extracted on every memo. Use when the user wants to build a knowledge base from voice memos, or asks to "pull out context from this".
npx claudepluginhub danielrosehill/claude-code-plugins --plugin claude-transcriptionThis skill uses the workspace's default tool permissions.
Read a transcript and pull out *durable* facts about the speaker — things that would be useful to know in future conversations or for downstream agents. Volatile content (today's plan, this week's tasks, transient frustrations) is **not** context — skip it.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
Read a transcript and pull out durable facts about the speaker — things that would be useful to know in future conversations or for downstream agents. Volatile content (today's plan, this week's tasks, transient frustrations) is not context — skip it.
| Yes | No |
|---|---|
| "I live in Jerusalem" | "I'm running late today" |
| "I work for DSR Holdings" | "This morning I had coffee" |
| "My business email is daniel@dsrholdings.cloud" | "I just sent that email" |
| "I prefer tabs over spaces" | "I'm annoyed at this bug" |
| "I'm working on the Claude-Transcription-Plugin repo" | "I committed to that branch" |
| "My partner's name is …" | "She called me earlier" |
Rule of thumb: if the fact would still be true in a month, it's context. If it'll be stale by tomorrow, it's not.
Default: context/extracted-YYYY-MM-DD.md alongside the transcript.
If a project-level context folder already exists upstream (e.g. the user is working inside a repo with context/ already), write there instead.
# Context extracted from <source-transcript>
_Extracted 2026-04-28 from recording.structured.md_
## Identity
- Name: Daniel Rosehill
- Location: Jerusalem, Israel
## Work
- Runs DSR Holdings (dsrholdings.cloud)
- Currently building: Claude-Transcription-Plugin
## Preferences
- Prefers Train-Case for repo names
- Voice-types most input
## Open initiatives
- Sprint 2026-04 in Claude-Transcription-Plugin
Group by category (Identity / Work / Preferences / Relationships / Open initiatives / Other). Skip categories with no entries.
Before writing, scan existing context/extracted-*.md files (and optionally ~/.claude/projects/-home-daniel/memory/ if asked). For each candidate fact:
## Updates / contradictions so the user can adjudicate (don't auto-overwrite)The output file should only contain new or contradicting facts, not a full restatement of every known fact. This keeps each extraction lightweight and reviewable.
If nothing new was found, write a one-line stub:
_No new context extracted from <source>. All facts already on file._
If the user has ~/.claude/projects/-home-daniel/memory/ (Daniel does), offer to also append durable facts there:
Found 3 new facts. Save to:
[x] context/extracted-2026-04-28.md
[ ] ~/.claude/projects/-home-daniel/memory/ (auto-memory, persists across sessions)
Default off — only write to memory when the user explicitly opts in. Auto-memory has its own structure (one fact per file, frontmatter, MEMORY.md index) and shouldn't be polluted casually.