long-audio-to-obsidian
npx skills add https://github.com/cafe3310/public-agent-skills --skill long-audio-to-obsidian
Agent 安装分布
Skill 文档
Long Audio to Obsidian Archiver
æ¤æè½å°æ£ä¹±çè¯é³è½¬åé¡¹ç®æä»¶æ´çæç»ææ¸ æ°ç Markdown ææ¡£ï¼ä¾¿äºå¨ Obsidian çç¥è¯åºä¸å½æ¡£ã
å®éç¨ “Agent è§å + èæ¬æ§è¡” çæ¨¡å¼ï¼
- Agent (ä½ )ï¼è´è´£çè§£ç®å½ç»æãè¯å«æä»¶ç±»åã坹忮µæä»¶è¿è¡é»è¾æåºï¼ä¾å¦æè¡å· 1-200, 201-400ï¼ï¼å¹¶çæå并计åã
- Scriptï¼è´è´£æ ¹æ®ä½ ç计åï¼æºæ¢°å°è¯»åæä»¶å¹¶çæ Markdownã
使ç¨åºæ¯
å½ç¨æ·è¦æ±å°ä¸ä¸ªå å«å¤ä¸ªåå§é³é¢ãæ°å个转ååæ®µã以ååç§è¯´æææ¡£çç®å½âæ´ç彿¡£âæ¶ä½¿ç¨ã
工使µ (Workflow)
1. è°æ¥ä¸åæ (Survey & Analyze)
é¦å
ï¼ä½¿ç¨ list_directory (å¿
è¦æ¶é
å glob) æ«æç®æ 项ç®ç®å½ã
ä½ éè¦åç以ä¸é®é¢ï¼
- åªäºæ¯åå§å½é³ææ¬ï¼ï¼é常å¨
1-åå§æä»¶æç±»ä¼¼ç®å½ï¼ - åªäºæ¯æç»è¾åºçåæ®µèæ¬ï¼ï¼é常å¨
5-æç»è¾åºï¼æä»¶åå å«è¡å·å¦_1-200ï¼- å ³é®ä»»å¡ï¼ä½ éè¦æ ¹æ®æä»¶åä¸çæ°å对å®ä»¬è¿è¡æ£ç¡®æåºã
- åªäºæ¯é¡¹ç®å æ°æ®ï¼ï¼æ¥å¿ãæ¯è¯è¡¨ãèæ¯è¦æ±çï¼
- åªäºæ¯è¡çç¥è¯/é®çï¼ï¼
5-æç»è¾åºä¸éåæ®µç Markdown æä»¶ï¼
2. çæåå¹¶é ç½® (Generate Configuration)
åºäºä½ çåæï¼æå»ºä¸ä¸ª JSON é ç½®æä»¶ãä¸è¦ç´æ¥è¾åºç»ç¨æ·ï¼èæ¯åå¤åå ¥ä¸´æ¶æä»¶ã
JSON ç»æå®ä¹ï¼
{
"output_dir": "ç®æ 项ç®è·¯å¾/obsidian_archive",
"tasks": [
{
"filename": "1-åå§å½é³æ±æ».md",
"title": "åå§å½é³æ±æ»",
"sections": [
{
"title": "æä»¶1.txt",
"path": "ç»å¯¹è·¯å¾æç¸å¯¹è·¯å¾/æä»¶1.txt",
"syntax": "text"
}
]
},
{
"filename": "2-æç»è¾åºèæ¬æ±æ».md",
"title": "æç»è¾åºèæ¬æ±æ»",
"sections": [
{
"title": "Part 1 (1-200)",
"path": "è·¯å¾/output_1-200.txt",
"syntax": "text"
},
{
"title": "Part 2 (201-400)",
"path": "è·¯å¾/output_201-400.txt",
"syntax": "text"
}
// Agent å¿
须确ä¿è¿éçé¡ºåºæ¯æ£ç¡®çï¼
]
}
// ... ç»§ç»ä¸ºâæ´çè¦æ±æ±æ»âåâç¥è¯æ´çæ±æ»âå建任å¡
]
}
3. æ§è¡åå¹¶ (Execute)
-
使ç¨
write_fileå° JSON é ç½®ä¿åä¸ºä¸´æ¶æä»¶ï¼ä¾å¦merge_plan.jsonã -
è°ç¨èæ¬æ§è¡åå¹¶ï¼
python3 .gemini/skills/long-audio-to-obsidian/scripts/doc_merger.py merge_plan.json(注æï¼è¯·æ ¹æ®å®é å®è£ ä½ç½®è°æ´èæ¬è·¯å¾)
-
æ£æ¥èæ¬è¾åºï¼ç¡®è®¤çææåã
-
å é¤ä¸´æ¶æä»¶
merge_plan.jsonã
4. ä¼åå½åä¸çæç´¢å¼ (Rename & Index)
èæ¬çæçåªæ¯æ åæä»¶åçä¸é´äº§ç©ãä¸ºäºæ¹ä¾¿ Obsidian 使ç¨ï¼ä½ éè¦è¿è¡æå䏿¥ç人工æºè½ä¼åï¼
- ç¡®å®é¡¹ç®æ é¢ï¼æ ¹æ®åå§ç®å½åææ ¸å¿æä»¶åï¼æåä¸ä¸ªæ¸
æ°çé¡¹ç®æ é¢ï¼ä¾å¦
2024-01-01 ä¼è®®è½¬å - é¡¹ç® Aï¼ã - éå½åæä»¶ï¼ä½¿ç¨
run_shell_commandçmvå½ä»¤ï¼å°obsidian_archiveä¸çæ åæä»¶éå½å为带åç¼çæ ¼å¼ã1-åå§å½é³æ±æ».md->{æ é¢} 1 åå§å½é³æ±æ».md2-æç»è¾åºèæ¬æ±æ».md->{æ é¢} 2 æç»è¾åºèæ¬æ±æ».md- …以æ¤ç±»æ¨ã
- çæç´¢å¼é¡µï¼
- å建ä¸ä¸ªå为
{æ é¢}.mdçæ°æä»¶ã - å
容åºå
嫿åä¸è¿°æææä»¶ç Obsidian WikiLinks (
[[æä»¶å]])ã - 妿æå ³èçå¤é¨äº§åææ¡£ï¼æªåå¹¶è¿æ¥çï¼ï¼ä¹å¯ä»¥å¨æ¤å¤æ·»å 龿¥ã
- å建ä¸ä¸ªå为
ç´¢å¼é¡µå 容示ä¾ï¼
ç¸å
³ææ¡£:
[[2024-01-01 ä¼è®®è½¬å - é¡¹ç® A 1 åå§å½é³æ±æ»]]
[[2024-01-01 ä¼è®®è½¬å - é¡¹ç® A 2 æç»è¾åºèæ¬æ±æ»]]
...
彿¡£æ å (Archiving Standards)
请æç §ä»¥ä¸å个维度ç»ç»è¾åºæä»¶ï¼å¯¹åº JSON ä¸ç 4 个 taskï¼ï¼
- åå§å½é³æ±æ»ï¼å 嫿æåå§å½é³ææ¬ã
- æç»è¾åºèæ¬æ±æ»ï¼å 嫿æç»è¿æ ¡å¯¹ãåå¹¶åçåæ®µææ¬ã顺åºè³å ³éè¦ã
- æ´çè¦æ±ä¸æ¥å¿æ±æ»ï¼
- 工使¥å¿ (
0-工使¥å¿.md) - æ ¡å¯¹æ¯è¯è¡¨ (
3-æ ¡å¯¹åæ¯è¯è¡¨.md) - åæ®µä¸»é¢ (
4-åæ®µä¸»é¢.md) - ææèæ¯è¦æ±æä»¶ (
2-è¦æ±åä¿¡æ¯/*)
- 工使¥å¿ (
- ç¥è¯æ´çæ±æ»ï¼
- å
嫿æè¡ççæçç¥è¯æä»¶ï¼å¦
é®é¢ååç-xxx.mdï¼ã
- å
嫿æè¡ççæçç¥è¯æä»¶ï¼å¦
注æäºé¡¹
- è·¯å¾å¤çï¼JSON ä¸ç
pathæ¨è使ç¨ç»å¯¹è·¯å¾ï¼æè ç¸å¯¹äºæ§è¡doc_merger.pyæ¶çç¸å¯¹è·¯å¾ã - 容éï¼å¦ææä¸ªé¢æçç®å½ä¸åå¨ï¼ä¾å¦æ²¡æâç¥è¯æ´çâæä»¶ï¼ï¼åä¸è¦å¨ JSON ä¸å å«å¯¹åºç taskï¼æè å建ä¸ä¸ªç©ºç taskã
- æåºï¼èæ¬ä¸ä¼èªå¨æåºãå¿ é¡»ç± Agent å¨çæ JSON æ¶å®ææææä»¶çé»è¾æåºã