前言¶
寫方案、紀要或歸檔材料時,Markdown 便於版本管理,但對外交付往往還要 PDF。手工複製到 Word 再導出,或臨時拼一條 Pandoc/LaTeX 流水線,都容易在樣式和中文路徑上踩坑。下面介紹 SkillHub 上的社區 Skill「Markdown轉換PDF」(座標 @user_09b3713d/md2pdf):裝到 Agent 的 skills 目錄後,可按固定流程把 .md 轉成帶版式的本地 PDF。
這是什麼¶
「Markdown轉換PDF」是 SkillHub community 源、分類 office-efficiency 的技能,發佈者爲 user_09b3713d。平臺簡介只有一句:將 Markdown 格式轉換爲 PDF 格式。實際安裝包內的 SKILL.md 將其定位爲 MD2PDF——通用文檔轉換:任意 Markdown → A4 打印就緒 PDF,經 python-markdown 排版 HTML,再用 Chrome/Edge/Chromium 無頭打印,並用 pypdf 做頁數校驗。標籤標明 requires_api_key=false,調用不依賴額外 API Key。
平臺頁面(截至抓取)顯示版本 v1.0.0,評分 100000,下載 2739,安裝 31。
核心功能¶
以下能力來自已安裝包內的 SKILL.md 與 scripts/md2pdf.py,可與本地文件覈對:
- 三種風格模板:
formal(正式黑白)、business(商務藍)、academic(學術襯線),對應styles/formal.css、styles/business.css、styles/academic.css。 - Markdown 結構:支持表格、圍欄代碼塊、引用塊(
markdown擴展tables、fenced_code)。 - 轉換鏈路:md → 排版 HTML → 瀏覽器無頭
--print-to-pdf→ PDF;默認去掉 PDF 頁眉頁腳;異常時腳本對舊版 Chrome 有重試邏輯。 - 環境自愈:Python 3.8+;缺
markdown、pypdf時腳本嘗試自動pip install(首次需聯網);瀏覽器自動探測,也可用--browser指定路徑。 - Agent 側約定:調用技能時先讓用戶選風格模板(用戶已明確指定時可跳過);生成後把 PDF 呈現給用戶。
安裝與啓用¶
先做環境檢查,再把技能裝進當前 Agent 識別的 skills 目錄(SkillHub 文檔強調必須用 --dir,否則默認 ./skills/ 可能不被加載)。
1、檢查 SkillHub CLI
command -v skillhub && skillhub --version
未安裝時可按官方安裝說明執行完整安裝(示例爲推薦方式):
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash
2、安裝本 Skill
搜索可見座標與安裝方式;安裝命令爲:
skillhub install md2pdf --namespace user_09b3713d --dir <你的 Agent skills 目錄>
常用目錄(來自 SkillHub 安裝文檔):
- Cursor:
~/.cursor/skills/ - Claude Code:
~/.claude/skills/ - Codex:
~/.codex/skills/或項目下的.agents/skills/
安裝成功後,包會落在類似 @user_09b3713d/md2pdf/ 的子目錄中,內含 SKILL.md 與 scripts/md2pdf.py。修改 skills 後按你所用客戶端的要求重啓或刷新 Agent,使技能生效。
典型用法¶
在對話裏:用戶提出「把這份 md 導出 PDF」時,Agent 按 SKILL.md 先用問答讓用戶選 formal / business / academic,再執行腳本。
命令行一鍵轉換(路徑替換爲本機安裝目錄):
python <skill目錄>/scripts/md2pdf.py "<輸入.md>" "<輸出.pdf>" --style <formal|business|academic>
說明:
- 省略
--style時默認爲formal。 - 省略輸出 PDF 路徑時,PDF 寫在源
.md同目錄,文件名爲原名_風格.pdf。 - 腳本會打印中間
.print.html路徑,便於預覽或排障。
排障或只要 HTML 時,可按 SKILL.md 分步:先 md→HTML(拼接模板必須用 __BODY__/__CSS__ 佔位符 replace,不要用 % 格式化或 f-string,避免 CSS 中的 %、{} 衝突),再手動調用瀏覽器無頭打印。
適用場景與注意¶
適合:需要把報告、紀要、方案、論文類 Markdown 保存爲本地 PDF、且希望有固定 A4 版式與三種預設風格的場景;本機可安裝 Chrome/Edge/Chromium 或願意用 --browser 指定。
注意:
- 依賴無頭瀏覽器;探測不到瀏覽器時會報錯,需本機安裝或顯式指定。
- 首次運行可能觸發
pip裝依賴,需網絡與可寫的 Python 環境。 SKILL.md提到 WorkBuddy、PowerShell 輸出等特殊環境時的處理方式;其他 Agent 若 stdout 不回傳,可把輸出重定向到文件再讀取。- SkillHub 上另有同名或相近的
md2pdf技能(不同namespace),安裝時務必使用@user_09b3713d/md2pdf對應的install md2pdf --namespace user_09b3713d。
結尾¶
「Markdown轉換PDF」把「選模板 → md 轉 HTML → 無頭打印 PDF → 校驗」收成一條可復現鏈路,適合在 Agent 裏處理日常的 Markdown 交付。安裝與優先源說明見 SkillHub 安裝文檔;技能頁見 SkillHub - Markdown轉換PDF,線索地址 https://api.skillhub.cn/user_09b3713d/md2pdf。