用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/htlin222/mcq-bank --skill bank-ingest命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
血液腫瘤考古題(單題測驗/看答案/關鍵字搜尋/個人筆記,一題可有多則筆記、可讀可寫,可從 HTML 或 OpenEvidence 公開對話匯入圖文)。前綴決定動作,由 mcq_cmd.py 確定性 dispatch。當使用者輸入 /mcq 開頭的指令時使用,例如 /mcq 114-001、/mcq 114-001 answer、/mcq search: CML、/mcq note 114-001: 內容、/mcq note 114-001 #2: 內容。
Fix typos / garbled text in a hema-2026 exam question reported through the in-app feedback button (a GitHub issue). Use when the user says "fix issue N", "fix the feedback", or points at a mcq-bank issue about a question having 錯字 / wrong text. This corrects wording only — for wrong ANSWERS use the verdict-by-oe skill instead.
Use when auditing or fixing hema-2026 question answers with OpenEvidence MCP: read the question from D1, ask OpenEvidence for a verdict, report pending answer/explanation changes for user approval, then update D1 with history.
基于 SOC 职业分类
正在显示 SKILL.md
| name | bank-ingest |
| version | 1.0.0 |
| description | 把官方專科醫師考題 PDF 解析成題庫,推進 hema-2026 的匯入暫存區,供管理員在網站上審閱後發布新年份。當使用者說「加入新年份」「匯入 115 年」「/bank-ingest」或帶著考題 PDF 要建題庫時使用。 |
把官方考題 PDF 變成題庫。你(Claude)負責跑指令、問使用者一個關鍵問題、必要時 補寫詳解;真正的發布由使用者在網站上按下去。
先把本技能目錄設進變數:
SKILL="<貼上這段指令開頭的 Base directory for this skill>"
它帶的金鑰只能寫匯入暫存區。它不能發布、不能改既有題目、不能刪東西。 推上去的題目在使用者於網站按下「發布」之前,學員完全看不到。
所以流程一定是:解析 → 推送 → 回瀏覽器發布。你不要試圖用指令完成最後一步, 那是刻意設計成做不到的。
cd "$SKILL" && uv sync && uv run python scripts/doctor.py
跑通會印 ✓ ready,網頁精靈的 Step 2 會跟著變綠。
若印出「金鑰無效或已被撤銷」,請使用者回精靈重新下載 bank-ingest.skill
覆蓋整個資料夾 —— 不要嘗試自己修 .env。
使用者要準備一個資料夾,每個科別一個 PDF,檔名須包含科別名稱:
~/bank-115/
內科.pdf
共同.pdf
檔名對不上科別的檔案會被略過並印出警告。
cd "$SKILL" && uv run python scripts/parse.py 115 ~/bank-115
產物是 ~/bank-115/parsed.json。把輸出裡的這幾項唸給使用者聽:
這一步一定要問,不要自己決定。三個選項:
| 選項 | 意思 |
|---|---|
| 只抽取來源詳解(預設) | 只送 PDF 裡本來就有的詳解。最可信,因為那是人寫的。 |
| 抽取 + AI 補缺 | 由你替沒有詳解的題目補寫,資料庫會標記來源為 AI 以便日後辨識。 |
| 不匯入詳解 | 只進題目與答案,詳解留給站上共筆慢慢長。 |
直接編輯 ~/bank-115/parsed.json,把 explanation_md 是空字串的項目填上
markdown。規則:
answer、number、options 任何一個欄位依使用者第 3 步的選擇加上 --explain:
cd "$SKILL" && uv run python scripts/push.py 115 ~/bank-115 --explain source
cd "$SKILL" && uv run python scripts/push.py 115 ~/bank-115 --explain ai
cd "$SKILL" && uv run python scripts/push.py 115 ~/bank-115 --explain none
被伺服器退回的題目會列出來。如實轉述,不要當成雜訊 —— 退回的題會讓年份 不完整,發布時會被擋下來。
告訴使用者:回網站的「加入新年份」精靈,Step 5 逐題審閱,把缺答案的題補上, 然後按發布。你到這裡就結束了。
官方 PDF 的答案是白色的字,不是被白色方塊蓋住 —— 答案欄每題都有一個
color=#ffffff 的字母,印出來看不見,但文字層有。所以:
pdftotext 會把隱藏層和可見層都吐出來,答案在純文字裡出現兩次卻分不清
誰是誰,所以解析器用 PyMuPDF 讀 span 顏色,不用純文字工具偵測鏈逐級降信心:答案欄白字(1.0)→ 答案欄可見字(1.0)→ 內文「答案:X」 (0.9)→ 放棄(0.0,交給人)。答案欄的座標是從版面推導的,不是寫死的。
實測:114 年官方兩份 PDF 共 100 題,全數以信心 1.0 抓到答案。
years/AGENT_SPEC.md,走那條路。