Files
2026-08-19 20:01:59 +08:00

3.6 KiB
Raw Permalink Blame History

常設工作規範

本專案的常設工作規範。原專案 CLAUDE.md;移置於此, 使 Claude Code subagent 不將其繼承入 context(盲判型 agent 不得見之)。凡於本專案工作的主會話,動手管線、 資料或文件之前,先讀本檔。

分析管線

管線已跑畢;本規範適用於任何重跑或擴充。

  • LLM 分析以 Python 腳本呼叫 Anthropic Messages API 執行,能用 Batch API 處即用之。步驟 1 與步驟 3 以 claude-sonnet-4-6 執行,temperature=0、thinking 停用;步驟 4 與步驟 5 以 claude-fable-5 執行,該 模型兩個參數皆不受理——步驟 4 的取樣變異由多數決 吸收,步驟 5 由整合三份閱讀吸收。
  • 定義檔置於 prompts/<步><次步>-<task>.md(如 1-tag.md、5a-read.md;次步以字母標示,與論文正文的 步驟編號一致;不帶版本號——版本即 git 歷史),逐字 作為 system prompt。
  • 逐項的 LLM 判斷(步驟 3 的逐首編碼、步驟 4 的逐碼 入群判斷)以同一份定義檔、同一份輸入獨立執行三次; 再由確定性計票將三次執行中至少兩次指派的項目(一個 (歌,關鍵字)或(群,關鍵字)配對)收入定案 (「三次執行+多數決」)。自由生成步驟執行兩次, 兩份輸出進池。步驟 5 的質性閱讀兩者皆非:逐首三次 獨立閱讀,由各自的定義檔逐首整合、跨首統整——質性 協定,不是投票(見 docs/methodology.md)。詞彙表由 確定性子命令建構(嵌入+分群),不經 LLM。驗證結果 不符預期時,修訂定義檔並重複該循環;絕不手改結果。
  • 一步的每次執行皆自我完備歸檔於 run-llm 命令列上 明示指定的目的目錄下(慣例為 data/runs/<步驟>/run<N>/):定義檔快照、原始輸出與 meta.jsonmodel ID、參數、時間戳、batch ID)。 一步的 N 次執行即 N 次各自的 run-llm 呼叫。覆蓋 既有執行歸檔須明示旗標;被取代的執行留在 git 歷史。 確定性步驟歸檔於 data/runs/<步驟>/,不分 run<N> 層。
  • 每次 run-llm 執行的 token 用量與費用記入 docs/run-costs.md,與執行歸檔同一 commit。
  • 腳本自環境變數 ANTHROPIC_API_KEY 讀取 API key .envgitignored)。

資料規則

  • data/source/ 存手放後不動的原始檔; data/captures/ 只由 fetch 命令與私人匯入腳本 寫入;data/manual/ 只由研究者親手寫入; data/derived/ 只由 build-db 子命令寫入; data/runs/ 存 LLM 執行的原始歸檔,只由執行程序 寫入;data/results/ 存論文引用的定案表,只由 計票程序寫入。
  • 歌詞全文有版權:一律置於 data/captures/lyrics/ gitignored),絕不 commit,亦絕不於 repo 任何處 全文重現。

文件

  • data/results/ 存計票後的定案表(論文所引); data/runs/ 存原始稽核紀錄。論文只引 data/results/
  • Commit 判準:凡能由「committed 的輸入+committed 的程式」決定性再生者不 commit;凡不能者一律以文字 格式 commit,格式跟著上文「資料規則」一節所定的 層次走。例外:data/results/ 定案表與 data/derived/ 人讀報表雖可再生仍 commit——理由是 引用穩定性、審稿人零門檻、撰稿期數字變動可 diff; 兩者皆與工作儲存同一動作產出,稽核鏈無中間空缺。
  • 凡定義檔或研究規劃之更動,皆記入 docs/decision-log.md,註明日期與原因。