[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-79973":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":14,"stars30d":17,"stars90d":15,"forks30d":15,"starsTrendScore":18,"compositeScore":19,"rankGlobal":9,"rankLanguage":9,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":9,"pushedAt":9,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":15,"starSnapshotCount":15,"syncStatus":28,"lastSyncTime":29,"discoverSource":30},79973,"tw-legal-rag","aa0101181514\u002Ftw-legal-rag","aa0101181514","Open-source CLI for semantic Taiwan legal judgment retrieval. Search judgments, package them for your own AI (Claude\u002FChatGPT), and run a bundle-level citation check. Bring your own LLM; retrieval-only.",null,"Python",172,35,75,10,0,1,55,6,57.17,"MIT License",false,"main",true,[],"2026-06-12 04:01:26","# Taiwan Legal RAG (`twlegalrag`)\n\n> Open-source CLI for **semantic** Taiwan legal judgment retrieval, powered by\n> Legal Detective's 22M-judgment retrieval infrastructure.\n\nTaiwan Legal RAG CLI retrieves Taiwan court judgments from Legal Detective's\npublic TLR endpoint and packages them for use with **your own AI tools**. It\ndoes **not** generate legal advice, does **not** call any LLM, and does **not**\nguarantee semantic faithfulness of third-party model outputs. Its built-in\ncitation check only verifies whether cited judgments belong to the retrieved\nbundle.\n\n繁中：Taiwan Legal RAG CLI 是一個開源命令列工具,連接法律偵探建置的 2,200 萬筆\n台灣裁判語義檢索服務,讓你能用自然語言搜尋判決,並將檢索結果帶入自己的 AI 工具使用。\n\n## 為什麼不一樣\n\n這不是一般關鍵字判決搜尋工具。背後連到的是法律偵探長期建置的 TLR 檢索服務：\n\n- 約 **2,200 萬筆**台灣裁判資料,經過結構化處理與向量化。\n- 經過上千小時的 retrieval pipeline optimization。\n- 支援**語義模糊搜尋**——不是只靠案號、法院、關鍵字,能用自然語言查找\n  「概念相近但用詞不同」的判決。\n- 開源 CLI 本身**不內建判決庫**,也不暴露後端模型權重或向量索引;它是連接公開\n  TLR retrieval endpoint 的工具。\n\n> Unlike keyword-only legal search tools, Taiwan Legal RAG CLI connects to a\n> production semantic retrieval backend built on 22M+ Taiwan court judgments,\n> enabling fuzzy concept-level search while keeping model weights, infrastructure,\n> and private indexes server-side.\n\n（措辭說明：開源的是 **CLI**,不是模型或向量庫;後端的檢索服務、模型權重、私有\n索引都留在伺服器端,不隨本工具公開。）\n\n## 它做什麼 \u002F 不做什麼\n\n**做**：用自然語言檢索判決 → 取得結構化清單、判決全文片段(excerpt)、引用連結 →\n打包成 bundle 交給你自己的 AI;並可對 AI 產生的答案做 bundle 層級的引用檢查。\n\n**不做**：本工具**不呼叫任何 LLM、不生成法律意見、不背書**任何模型輸出。答案要由\n你自己選的 AI(ChatGPT \u002F Claude \u002F Gemini \u002F 本地模型)生成。\n\n### 內建的 citation check 能檢查什麼\n\n`check` 是 **bundle 層級、盡力而為**的字串檢查,只驗：\n\n- 答案引用的判決字號**是否在 bundle 內**(抓「引用了不在 bundle 的字號」= 疑似捏造);\n- 是否引用 bundle 外、或不存在的判決;\n- **引文存在性(bundle 層級)**:答案宣稱「法院說……」的逐字句,是否出現在 bundle\n  文字的**某處**。\n\n### 它**不能**檢查什麼（重要）\n\n- 引文是否出自**答案所指的那一篇**判決(存在性檢查只看「整個 bundle 裡有沒有這句」,\n  不綁定到特定判決);\n- 法院見解是否**讀對**;\n- 是否把**當事人主張**(原告\u002F被告\u002F上訴人)當成**法院見解**;\n- 是否把**附帶論述**當成判決**核心權威**;\n- paraphrase(改寫)型的見解幻覺。\n\n這些都需要閱讀判決全文才能判斷——這也是為什麼 bundle 內附上判決全文片段與\nverification instructions,要求下游模型自行核對。**`pass` 只代表「引用的字號身份對得上\nbundle」,不代表「法律推論正確」或「引文確實出自那篇」。** 另外,`check` 只比對\n**bundle 內的內容**,不是整個法律偵探資料庫——若你事後自己開判決全文再改寫答案,\n`check` 仍只看 bundle 當初打包的片段。\n\n## 安裝\n\n```bash\npip install twlegalrag\n```\n\n只依賴 `httpx` \u002F `typer` \u002F `rich`。不需要任何 LLM 套件或金鑰——本工具不呼叫 LLM。\n\n## 使用\n\n```bash\n# 1) 純檢索 — 列出符合的判決\ntwlegalrag search \"勞資 加班費\" -n 5 --read\n\n# 2) 打包 — 產生可交給任何 AI 的 bundle ★主流程\ntwlegalrag pack \"車禍對方全責,我可以求償什麼?\" -o bundle.json\n#   → 把 bundle.json 貼給 ChatGPT \u002F Claude \u002F Gemini,要求它只引用 bundle 內的判決\n\n# 3) 引用檢查 — 對任何 AI 產生的答案做 bundle 層級檢查\ntwlegalrag check bundle.json answer.txt\n\n# 服務是否正常\ntwlegalrag health\n```\n\n`pack` 產生的 bundle 包含 `query`、每筆判決的 `citation_id`(J1, J2, ...)、\n`citation_text`、`citation_url`、`doc_id`、Layer-1 listing、`fulltext_excerpt`\n(判決理由的擷取片段,有長度上限)、`allowed_citations`,以及一段\n`verification_instructions`,明確要求下游模型只引用 bundle 內判決、把不支持的命題標為\nunverified。stderr 也會印一段 AI USE NOTICE。\n\n## 設定(選用)\n\n預設打公開端點 `https:\u002F\u002Ftlr.dr-lawbot.com`,免金鑰即可使用。若服務方發給你 API key,\n可放環境變數或 `~\u002F.twlegalrag\u002Fconfig.toml`(已 git-ignore,**切勿** commit)：\n\n```bash\nexport TWLEGALRAG_TLR_BASE_URL=https:\u002F\u002Ftlr.dr-lawbot.com   # 預設\nexport TWLEGALRAG_TLR_API_KEY=...                          # 選用\n```\n\n```toml\n[tlr]\n# base_url = \"https:\u002F\u002Ftlr.dr-lawbot.com\"\n# api_key  = \"...\"\n```\n\n## 隱私與資料流向\n\n請務必理解這些網路傳輸：\n\n- 你的**搜尋字詞 \u002F 問題**會送到 TLR 檢索端點(`https:\u002F\u002Ftlr.dr-lawbot.com`)以取得判決。\n- **TLR may log your query text, timestamp, IP-derived metadata, and result\n  counts for retrieval-quality analysis. Do not submit personal secrets or\n  confidential facts. Queries are not used to train generative models.**\n  (TLR 後端可能以**明文**記錄你的查詢字串、時間、由 IP 推得的中介資料與結果筆數,\n  供檢索品質分析之用。請勿送出個人機密或保密事實。查詢不會用於訓練生成模型。)\n- 本工具**不呼叫 LLM、不使用 server-side token**;若你自行把 bundle 餵給某個 AI,\n  那段傳輸與費用發生在**你與你選的 AI provider 之間**,與本工具無關。\n- 端點 API 金鑰(若有)請放環境變數,不要 commit 設定檔。\n\n## citation check 如何運作\n\n`twlegalrag\u002Ffaithful\u002F` 是一組**零依賴純函式**(只用標準庫 `re` + `unicodedata`)。\n給定答案文字與 bundle 內判決片段,回 `pass` \u002F `needs_review` \u002F `fail`。設計上保守:\n不確定時回 `needs_review` 而非 `fail`,以壓低誤報。它**不呼叫 LLM、不碰資料庫**,是\n確定性的字串分析。\n\n⚠️ 這個目錄是內部程式的**快照**,裡面有些函式(如 `check_party_as_court` \u002F\n`run_all_checks`)CLI **並沒有用到**。它們存在**不代表** CLI 能做見解層 \u002F 語義驗證——\nCLI 只用其中兩個 bundle 層級檢查。請勿把檔案清單當功能清單。詳見\n`twlegalrag\u002Ffaithful\u002FVENDORED.md`。\n\n## 其他接法（同一個 TLR 後端）\n\n這個 CLI 是接 TLR 檢索服務的方式之一。同一個後端 `tlr.dr-lawbot.com` 也支援把判決\n搜尋直接接進你的 AI 工具：\n\n- **Claude Desktop（Remote MCP）**：Connectors → Add custom connector → URL 填\n  `https:\u002F\u002Ftlr.dr-lawbot.com\u002Fmcp`(免 OAuth、免 API key)。\n- **ChatGPT（Custom GPT Action）**：在 Actions 匯入 `https:\u002F\u002Ftlr.dr-lawbot.com\u002Fopenapi.yaml`,\n  認證選 None。\n\n不論走 CLI、MCP 還是 ChatGPT Action,答案都由**你自己的 AI** 生成,本服務只提供判決\n內容與可驗證的引用連結。\n\n## 架構\n\n```\n你的問題\n   │\n[檢索]  TLR \u002Fv1\u002Fsearch   ──►  Layer-1 listings + result_token\n   │    TLR \u002Fv1\u002Ffulltext ──►  每篇判決理由全文片段 (excerpt, 有上限)\n   │\n[打包]  pack ──► bundle.json (citation_id \u002F allowed_citations \u002F verification rules)\n   │            └─► 交給你自己的 AI 工具\n   │\n[檢查]  check ──► bundle 層級引用檢查 (在\u002F不在 bundle + bundle 內引文存在性)\n```\n\n判決庫、embedding、檢索邏輯都在伺服器端,**不在本 repo**。本 CLI 是開源客戶端\n與引用檢查工具。\n\n## 免責\n\n本工具是分析輔助,不是法律意見,也不是律師。務必自行閱讀引用的判決全文。\n透過 API 取得的判決為台灣公開裁判資料,你需為自己的使用負責。\n\n## License\n\nMIT.\n","Taiwan Legal RAG CLI 是一个开源命令行工具，用于从法律侦探的2200万笔台湾裁判数据库中进行语义检索，并将结果打包供用户自己的AI工具使用。其核心功能包括支持自然语言的模糊搜索、结构化输出判决列表及全文片段、以及对AI生成答案中的引用进行检查。该工具不直接调用任何大语言模型或生成法律建议，仅负责信息检索与初步验证。适用于需要利用高质量法律数据训练或增强AI应用的场景，如法律研究、教育和辅助决策等。",2,"2026-06-11 03:58:46","CREATED_QUERY"]