literature-searchlisted
Install: claude install-skill LoWeiLee/academic-ai-workflow
# 文獻搜尋自動化技能 v1.1.2
> **結構**:SKILL.md 保留工作流決策層(「何時做什麼決策」),技術細節下放至腳本與參考檔。
> - 技術實作 → `scripts/`:`doi_verify.py`(DOI 驗證)、`citation_expand.py`(雙向引用擴展、abstract 還原、rate limit、降級)、`keyword_search.py`(boolean 構造、URL encoding、試搜/正式搜、timeout 降級鏈)
> - 細節規格 → `references/`:`rubric-prompt.md`(rubric 四維度 + anchor + prompt,階段三載入)、`widget-spec.md`(pending widget,階段四載入)、`output-formats.md`(五個輸出物格式,階段六載入)
> - 寫入策略 → 一律 Write tool 完整寫檔(禁 bash heredoc/echo);JSON 大檔分段;中間結果寫 /tmp
> **不變項**:六階段工作流邏輯、分桶閾值、Human-in-the-loop 決策點、search_log 的 Part A–E 結構、與 literature-analysis 的介面合約。
## 核心原則
1. **API-grounded**:所有候選文獻來自真實 API 回傳,不得用訓練記憶生成
2. **Human-in-the-loop**:種子確認、關鍵字驗證、Pending 裁決由使用者決策
3. **Auditable**:所有 API 呼叫、rubric 打分、分桶依據完整記錄於 search_log
4. **Claude 限於資訊呈現與執行**:決策權盡量歸屬使用者
---
## 環境偵測(所有讀取動作之前,最先執行)
本 skill 以 `00_專案控制/` 作為控制檔的預設路徑,此路徑假設一個**持久的工作區資料夾**(Claude 桌面應用的 Cowork 模式,或 Claude Code)。**若該路徑不存在,代表使用者在無工作區環境(例如 claude.ai 網頁版)執行本 skill。此時一律進入「無工作區模式」,不得以「檔案缺失」為由拒絕啟動。**
無工作區模式的三條規則:
1. **控制檔改在別處尋找**。依序查找同名檔案:對話附件 → 專案知識庫(claude.ai 的 Project files)→ 使用者於本次對話明確指定的位置。找到即視同滿足必讀要求,正常推進;三處皆無才回報缺失,並明確告知使用者可透過對話附件或 Project files 提供。**此規則覆蓋本 skill 所有「缺漏即拒絕啟動」的硬閘門條文**——閘門的實質要求是「讀得到該檔的內容」,不是「該檔位於特定路徑」。
2. **產出改以可下載檔案交付**,不嘗試寫入 `05_輸出/` 或任何工作區路徑。晉升流��(審定後移入正式位置)改由使用者手動完成,於交付時一併說明。
3. **跨 session 狀態改由使用者提供**。本 skill 若依賴 `05_輸出/progress-log.md`、既有產出檔或凍結狀態回讀斷點,在無工作區模式下改為請使用者於開場提供前輪產出(附件或貼上內容);無法取得時,明示「本次為無工作區模式,跨對話狀態不自動續作」後,以本次提供的材料為準推進。
**啟動宣告中必須載明當前模式**:「工作區模式」或「無��作區模式」。
## 階段零|執行前準備
### 必讀脈絡檔案