Install any skill in seconds. Free to start, no credit card required.
Get Started Free →This skill should be used when the user asks to "add reference cards to srt", "annotate srt with cards", "insert cards into subtitles", "generate srt with card annotations", "add 字卡 to srt", or needs to add contextual reference cards below subtitle text blocks in SRT files.
.claude/skills/dean9703111-srt-card-annotator/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-05 | ✗→✓ | ▲ Improved | 87% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 79% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 50% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 48% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 19% | 0% |
This skill provides an AI-driven workflow for analyzing SRT subtitle files and adding contextual reference cards below subtitle text blocks. Cards are intelligently selected based on content context and must not modify original timestamps or subtitle text.
Enhance SRT subtitle files with reference cards that:
[字卡](word:xxx / type:yyy)Use this skill when:
Each card follows this format:
[字卡](word:xxx / type:yyy)Where:
Reference references/card-types.yaml for complete definitions. Summary:
| Type | Usage | Context | |------|-------|---------| | 金色重點 | Core conclusions, critical insights | Most important takeaway | | 白色提醒 | Suggestions, reminders, notes | Helpful tips and advice | | 紅色警告 | Risks, errors, pitfalls | Dangers and common mistakes | | 藍色列點 | Lists, steps, structured info | Sequential or parallel items |
Read the input SRT file and parse into segments:
For each subtitle segment, analyze:
Determine where to insert cards:
For selected segments:
For each extracted phrase, determine type:
Add card lines below subtitle text:
1
00:00:00,000 --> 00:00:05,000
這個操作有風險,請小心處理
[字卡](word:操作有風險請小心 / type:紅色警告)
2
00:00:05,000 --> 00:00:10,000
建議先備份資料再進行
[字卡](word:建議先備份資料 / type:白色提醒)Save the annotated SRT as reference-cards.srt:
Before processing, read references/card-types.yaml to understand:
Before generating output:
card-types.yamlreference-cards.srtInput SRT:
1
00:00:00,000 --> 00:00:03,500
今天要教大家如何避免常見的錯誤
2
00:00:03,500 --> 00:00:07,000
第一步是檢查系統設定Output SRT (reference-cards.srt):
1
00:00:00,000 --> 00:00:03,500
今天要教大家如何避免常見的錯誤
[字卡](word:避免常見的錯誤 / type:紅色警告)
2
00:00:03,500 --> 00:00:07,000
第一步是檢查系統設定
[字卡](word:第一步檢查系統設定 / type:藍色列點)card-types.yamlreference-cards.srtreferences/card-types.yaml - Complete card type definitions, usage contexts, and selection principlesTo annotate an SRT file with reference cards:
references/card-types.yaml to understand card typesreference-cards.srtFocus on semantic understanding and contextual appropriateness when selecting card types. The goal is to enhance subtitles with meaningful, concise annotations that help viewers grasp key concepts, avoid pitfalls, and follow structured information.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-22 | pass→fail | 18,547 | 15,942 | -14% | 1 | 1 | 0% | 3,928 | 1,924 | -51% | 0 | 0 | — |
case-01 | fail→fail | 21,389 | 11,147 | -48% | 1 | 1 | 0% | 2,967 | 2,102 | -29% | 0 | 0 | — |
case-02 | fail→fail | 11,685 | 8,965 | -23% | 1 | 1 | 0% | 1,205 | 1,974 | +64% | 0 | 0 | — |
case-03 | fail→fail | 6,202 | 15,340 | +147% | 1 | 1 | 0% | 1,010 | 3,619 | +258% | 0 | 0 | — |
case-04 | fail→fail | 6,309 | 18,206 | +189% | 1 | 1 | 0% | 1,120 | 2,075 | +85% | 0 | 0 | — |
case-05 | fail→pass | 13,153 | 5,289 | -60% | 1 | 1 | 0% | 1,331 | 2,489 | +87% | 0 | 0 | — |
case-06 | fail→pass | 15,002 | 4,992 | -67% | 1 | 1 | 0% | 1,277 | 2,291 | +79% | 0 | 0 | — |
case-07 | fail→pass | 16,262 | 10,960 | -33% | 1 | 1 | 0% | 1,808 | 2,706 | +50% | 0 | 0 | — |
case-08 | fail→pass | 10,125 | 4,371 | -57% | 1 | 1 | 0% | 1,633 | 2,425 | +48% | 0 | 0 | — |
case-09 | fail→pass | 13,246 | 4,688 | -65% | 1 | 1 | 0% | 2,117 | 2,514 | +19% | 0 | 0 | — |
case-10 | fail→pass | 8,992 | 5,368 | -40% | 1 | 1 | 0% | 1,290 | 2,672 | +107% | 0 | 0 | — |
case-11 | fail→pass | 8,169 | 5,580 | -32% | 1 | 1 | 0% | 1,300 | 2,416 | +86% | 0 | 0 | — |
case-12 | fail→pass | 12,822 | 6,479 | -49% | 1 | 1 | 0% | 2,150 | 2,520 | +17% | 0 | 0 | — |
case-13 | pass→pass | 8,349 | 4,330 | -48% | 1 | 1 | 0% | 1,203 | 2,348 | +95% | 0 | 0 | — |
case-14 | fail→pass | 8,892 | 6,389 | -28% | 1 | 1 | 0% | 1,607 | 2,765 | +72% | 0 | 0 | — |
case-15 | pass→pass | 9,783 | 5,614 | -43% | 1 | 1 | 0% | 1,770 | 2,493 | +41% | 0 | 0 | — |
case-16 | fail→pass | 9,808 | 8,516 | -13% | 1 | 1 | 0% | 1,662 | 2,797 | +68% | 0 | 0 | — |
case-17 | fail→pass | 10,149 | 5,230 | -48% | 1 | 1 | 0% | 1,330 | 2,684 | +102% | 0 | 0 | — |
case-18 | fail→pass | 7,999 | 4,560 | -43% | 1 | 1 | 0% | 1,385 | 2,515 | +82% | 0 | 0 | — |
case-19 | fail→pass | 10,749 | 4,770 | -56% | 1 | 1 | 0% | 1,852 | 2,513 | +36% | 0 | 0 | — |
case-20 | pass→fail | 15,929 | 10,778 | -32% | 1 | 1 | 0% | 2,597 | 3,748 | +44% | 0 | 0 | — |
case-21 | fail→fail | 3,252 | 25,030 | +670% | 1 | 1 | 0% | 480 | 5,596 | +1066% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 18 counted toward the lift figure. The other 4 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +50 percentage points is the difference between those two pass rates over the 18 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.