Summary
引導 Agent 彙整案情事實、法條、判決、爭點、當事人、證據、契約義務關係(契約→條款→義務三層模型,含風險評級上色)與構成要件涵攝結果(法條→要件→事實該當性上色),產出與 law-powers 之 index.html/data.js 相容的 superset 法律關係圖譜資料,並寫入…
kevintsai1202/law-powers
引導 Agent 彙整案?
npx skills add kevintsai1202/law-powers --skill legal-graph
引導 Agent 彙整案情事實、法條、判決、爭點、當事人、證據、契約義務關係(契約→條款→義務三層模型,含風險評級上色)與構成要件涵攝結果(法條→要件→事實該當性上色),產出與 law-powers 之 index.html/data.js 相容的 superset 法律關係圖譜資料,並寫入…
Related neighbors and high-traction skills in the same topics — useful to compare before installing.
Helps users discover and install agent skills when they ask questions like "how do I do X", "fi…
3.3M installsBrowser automation CLI for AI agents. Use when the user needs to interact with websites, includ…
810.4K installsReview UI code for Web Interface Guidelines compliance. Use when asked to "review my UI", "chec…
617.3K installsBuild, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and …
576.5K installsPrepare azd-based Azure projects for deployment: generates azure.yaml, infrastructure (Bicep/Te…
568.3K installsOther skills from kevintsai1202/law-powers.
npx skills add kevintsai1202/law-powers
Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.
main
Files included with this skill beyond the listing page.
SKILL.md
25,093 B
SUMMARY.md
567 B
在執行本技能的任何步驟之前,必須先確認己方身分:
本技能隨附之 [references/agents-rules.md](references/agents-rules.md) 為全技能包共用之運作規則(§1 檢索優先與防幻覺、§2 引用格式、§3 台灣術語、§4 免責聲明、§5 MCP 引導安裝)。執行本技能任何步驟前必須先讀取該檔案;下文所引「agents-rules §N」均指該檔章節。
本技能用於規範與引導 AI 助理如何將梳理出的案件事實、法律關係、援引判決、爭點、當事人與關鍵證據,以及契約義務關係(契約、條款、義務之三層結構與風險評級),自動轉化為與本專案 (law-powers) 之 index.html/data.js 完全相容的 superset 標準資料格式,並寫入 data.js(window.GRAPH_DATA)供頁面自動載入渲染。
Agent 在被要求生成關聯圖或進行法律關係可視化分析時,必須遵循以下步驟:
graph TD
Step1["步驟一:識別圖譜節點 (Nodes)"]
Step2["步驟二:建立法律關係連線 (Edges)"]
Step3["步驟三:組裝並寫入 data.js"]
Step4["步驟四(選用):程序時序資料 (timeline)"]
Step5["步驟五(選用):SVG 訴訟決策樹+因果徑路圖"]
Step1 --> Step2
Step2 --> Step3
Step3 --> Step4
Step4 --> Step5
僅需 SVG 圖時可獨立執行步驟五:使用者只要求決策樹或因果徑路圖、且無建置關係圖譜需求時,得跳過步驟一至四直接執行步驟五(資料紀律不變)。
完整抽取方法論:各維度應如何從既有技能產出中抽取資料(含 5 種法條關聯
rel的判斷準則),請參閱 [references/superset-extraction.md](references/superset-extraction.md)。Agent 產圖時應本著「聯集精神」盡量抓齊下列所有維度,資料不足時才退回基本 4 類(見本節末尾之向後相容聲明)。
優先消費結構化資料:若判例來自
legal-research的dr-lawbot:search_bundle回傳,優先讀取 bundle 的結構化欄位建圖,而非僅從散文推斷:
*cited_articles→ 逐條建立law節點,並以「引用」邊連該判決 → 法條。
*case_history.upper/lower→ 以「上訴」邊連前後審判決;若審級紀錄顯示該判決「主文含廢棄」,於該 judgment 節點標記"overturned": true(見本節第 3 點與步驟三範例)。
*citation_text→ 作為 judgment 節點 label。
* 僅引用allowed_citations內之判決建立 judgment 節點,避免幻覺引用。
契約義務關係之資料來源:建構契約圖譜(
contract/clause/obligation)時,以使用者提供之契約原文抽取當事人、條款與義務結構;若已執行compliance-verification合約審查,必須將其風險評估報告對映進圖譜——每個受審條款建立clause節點,風險評級 🔴→"risk": "high"、🟡→"risk": "medium"、🟢→"risk": "low",並將報告中的「受審條款原文/風險點/修改建議」寫入該節點description。未經審查的條款不標risk(渲染為中性色),不得自行臆測評級。
從前述的 legal-brainstorming(事實分析)與 legal-research(法規判例檢索)結果中,識別出以下節點類型,並為每個節點分配一個唯一的 id,撰寫簡短的 title 與詳細的 description:
fact (案件事實): 定義:案件的核心事實背景、時間、主體遭遇。 例如:"id": "fact_1", "label": "大安區車禍", "group": "fact"。
law (法律條文): 定義:所適用的具體法律條文。 例如:"id": "lawciv184", "label": "民法第 184 條第 1 項", "group": "law"。
judgment (法院判決): 定義:作為論據支持或裁判參考的最高法院或各級法院判決、大法官解釋。 例如:"id": "judsupreme108_2345", "label": "最高法院 108 台上 2345 號", "group": "judgment"。 可選欄位*:status(good/bad/mixed,決定節點配色與徽章底色——本案判決代表本方勝敗;比對判例則代表該判例對本案立場之有利性:有利/不利警示/互見)、statusText(自訂詳情面板徽章文字,如「對本案有利:車行連帶求償策略」;未提供時顯示通用語意「對本方有利/勝訴」等)、url(判決全文連結)、overturned(布林值,true 表示該判決業經上級審廢棄、僅供審級關係參考;index.html 會將該節點改為灰底、紅色網線框,並在標籤末尾加註「⚠️已廢棄」,無此欄位者照常渲染)。
issue (爭點/訴訟主張): 定義:雙方的爭執焦點(如時效消滅、請求酌減違約金),或具體的民事求償請求。 例如:"id": "claim_compensation", "label": "請求賠償 50 萬", "group": "issue"。
party (被告方/契約當事人): 定義:涉訟案件中的被告方主體,或契約情境中的契約當事人(自然人或法人)。 例如:"id": "party_1", "label": "被告某某科技公司", "group": "party"。 可選欄位:role(契約情境使用,標示契約地位,如「甲方(委託人)」「乙方(受託人)」「連帶保證人」;詳情面板會顯示為「契約地位」)。 關聯方式:以 「當事人」 連線連到其涉訟之 judgment(或 fact)節點;契約情境則連到其締約之 contract 節點。
plaintiff (原告方): 定義:涉訟案件中的原告方主體。 例如:"id": "plaintiff_1", "label": "原告某甲", "group": "plaintiff"。 關聯方式*:同 party,以 「當事人」 連線連到其涉訟之 judgment(或 fact)節點。
evidence (關鍵證據): 定義:足以影響爭點認定或判決結果之關鍵證據。 例如:"id": "evi_1", "label": "監視器錄影畫面", "group": "evidence", "favorable": "strong", "description": "拍攝到被告闖紅燈之瞬間,證明力極強"。 favorable 欄位:strong(有利/證明力強)或 weak(不利/證明力弱)。 關聯方式:以 「證據」 連線連到其所屬的 judgment(或 fact)節點。
contract (契約本體): 定義:合約審查或契約糾紛案件中的契約文件本身(如買賣契約、承攬契約、委託開發契約)。 例如:"id": "c1", "label": "軟體開發委託契約", "group": "contract"。 關聯方式*:契約當事人(party+role)以 「當事人」 連線連入;以 「包含」 連線連出至各 clause;以 「適用」 連線連到定性該契約之法條(如《中華民國民法》第 490 條承攬)。
clause (契約條款): 定義:契約中具法律意義的個別條款(給付、期限、違約金、保密、管轄等)。 例如:"id": "cl4", "label": "§9 違約金", "group": "clause", "risk": "high"。 risk 欄位*(可選):high/medium/low,直接對映 compliance-verification 技能之風險評級(🔴 高風險→high、🟡 中風險→medium、🟢 低風險→low);index.html 會將條款節點與其小字標籤依風險上色(紅/黃/綠,未標註為中性藍灰),詳情面板並顯示風險徽章。description 建議依「條款原文/風險分析/修改建議」結構撰寫,與審查報告對齊。
obligation (契約義務): 定義:由條款課予特定當事人之給付義務或行為義務。 例如:"id": "o1", "label": "交付軟體成果", "group": "obligation", "duty": "main"。 duty 欄位*(可選):依民法給付義務分類——main(主給付義務)、collateral(從給付義務)、incidental(附隨義務);index.html 依此縮放節點大小(主給付最大),未標註時以中間尺寸(與從給付相同)呈現且詳情面板不顯示義務類型。注意:鍵名以本表中文分類為準,非依英文法學譯名慣例(比較法上 collateral duty 慣指附隨義務),對接外部資料時勿依英譯直覺對映。
element (構成要件): 定義:由 legal-element-analysis 涵攝分析拆解出之法條個別構成要件。 例如:"id": "e_1", "label": "相當因果關係", "group": "element", "met": "unknown"。 met 欄位*(可選):涵攝結果——yes(○ 該當)、no(✗ 不該當)、unknown(△ 事實不明);index.html 依此將要件節點與其小字標籤上色(綠/紅/黃,未涵攝為中性藍灰),標籤前綴 ○/✗/△ 符號,詳情面板顯示該當性徽章。description 應寫入要件內涵與依據(條文文義/判決字號/通說)及對映之本案事實。不得自行臆測 met——涵攝結果必須來自 legal-element-analysis 之涵攝表。
其他可選欄位(任一節點皆可加註):
family:案件分群標籤(如同一被告集團、同一系列產品訴訟、同一契約叢集),用於在 index.html 啟用「家族聚焦」視圖。向後相容聲明:若手邊僅有基本資料,僅產出 fact/law/judgment/issue 四類節點與下列前 7 種連線(不含 party/plaintiff/evidence、「法條關聯」/「當事人」/「證據」連線及 family 欄位)亦可,index.html 仍可正常渲染舊格式圖譜;judgment 節點之 status/url/overturned 欄位在基本格式下亦可照常使用。契約類節點(contract/clause/obligation)與契約類連線、構成要件節點(element)與「要件」/「該當」連線同屬可選擴充——純訴訟圖譜無須產出,純合約審查圖譜亦可不含 judgment/issue 節點,多種叢集並存於同一張圖(如契約糾紛案件+要件涵攝)時以 family 區分。
定義節點間的連線,連線的 label 必須精準符合以下類型,以便在 index.html 中正確觸發連線樣式分流:
"適用":事實 ➔ 法條(例如:大安區車禍 適用 民法第 184 條)。"引用":判決 ➔ 法條,或判例之間的引用。"刑事附帶民事 (民附)":刑事判決 ➔ 民事求償主張(免裁判費之程序連結)。"上訴":前審判決 ➔ 後審判決(展示審級關係)。"連帶責任/保證":主體之間的連帶賠償關係。"抗辯/阻斷":消滅時效或過失相抵(爭點) ➔ 訴訟主張。"保全/假扣押":保全程序 ➔ 本案訴訟。"法條關聯":法條 ➔ 法條(law ↔ law),表示法條間的體系關係,須額外加註 rel 欄位(判斷準則詳見 [references/superset-extraction.md](references/superset-extraction.md)): trigger:構成要件成立 → 引發特定法律效果。 alt:備位主張或得擇一適用。 absorb:法條競合,重法或特別規定吸收輕法或普通規定。 lex:特別法優於普通法。 bridge:請求權罹於時效後,銜接至另一請求權基礎(如轉主張不當得利)。 title 欄位應簡述兩法條間的具體關係。
"當事人":party 或 plaintiff ➔ judgment(或 fact/contract),表示該當事人涉訟於此案件/事實,或為該契約之締約當事人。"證據":judgment 或 fact ➔ evidence,表示該證據為該案的關鍵證據。契約義務關係連線(契約→條款→義務三層模型專用):
"包含":contract ➔ clause,契約包含該條款。"課予":clause ➔ obligation,條款課予該義務。"負擔":party ➔ obligation,該當事人為此義務之債務人。"得請求":obligation ➔ party,該當事人為此義務之債權人(得請求履行)。"對價":obligation ↔ obligation,雙務契約中互為對價之給付義務(牽連關係,為同時履行抗辯之基礎);屬雙向對等關係,渲染時無箭頭。"違約效果":clause(違約金/解除權等效果條款)➔ obligation,表示違反該義務時觸發此條款之效果。"適用" 連線(contract/clause ➔ law);保證人擔保特定義務履行,沿用 "連帶責任/保證" 連線(party ➔ obligation)。構成要件涵攝連線(legal-element-analysis 產出專用):
"要件":law ➔ element,法條拆解出該構成要件。"該當":fact ➔ element,本案事實對映至該要件;連線顏色依目標要件之 met 自動分流(該當=綠、不該當=紅、事實不明=黃)。"要件認定":judgment ➔ element,判例對該要件之認定或闡釋(如認定標準、舉證方式、計算方法);title 必填認定要旨。另有可選欄位 stance 標示該認定對本案立場之有利性——pro(有利,連線綠色)/con(不利警示,連線紅色),未標註為中性天藍。此為他案事實之認定,僅供比對參考——不得因判例認定而改動本案要件之 met(met 只能來自本案涵攝表)。判例節點仍須為檢索白名單(allowed_citations)內之判決。"證據" 連線(element ➔ evidence);證據缺口之 evidence 節點不標 favorable(渲染為中性灰)。Agent 必須先以下方的 `json 格式在內部組裝 {nodes, edges} 資料,且**禁止在 JSON 中加入任何註解(如 // 或 / /)**,確保其符合標準 JSON 規格:
{
"nodes": [
{ "id": "fact_id", "label": "節點標題", "group": "fact", "title": "滑鼠懸停簡述", "description": "詳細描述原文(支持 Markdown)" },
{ "id": "law_id", "label": "法條名稱", "group": "law", "title": "滑鼠懸停簡述", "description": "法條原文或摘要" },
{ "id": "jud_id", "label": "判決字號", "group": "judgment", "title": "滑鼠懸停簡述", "description": "判決要旨", "status": "good", "url": "https://判決全文連結", "family": "案件家族名稱" },
{ "id": "issue_id", "label": "爭點標題", "group": "issue", "title": "滑鼠懸停簡述", "description": "爭點說明" },
{ "id": "party_id", "label": "被告名稱", "group": "party", "family": "案件家族名稱" },
{ "id": "plaintiff_id", "label": "原告名稱", "group": "plaintiff" },
{ "id": "evi_id", "label": "證據名稱", "group": "evidence", "title": "滑鼠懸停簡述", "description": "證明力說明", "favorable": "strong" },
{ "id": "contract_id", "label": "契約名稱", "group": "contract", "title": "滑鼠懸停簡述", "description": "契約概要", "family": "契約叢集名稱" },
{ "id": "clause_id", "label": "§3 交付期限", "group": "clause", "title": "滑鼠懸停簡述", "description": "【條款原文】…\n\n【風險分析】…\n\n【修改建議】…", "risk": "medium" },
{ "id": "clause_penalty_id", "label": "§9 違約金", "group": "clause", "title": "滑鼠懸停簡述", "description": "【條款原文】…\n\n【風險分析】…\n\n【修改建議】…", "risk": "high" },
{ "id": "obligation_id", "label": "交付工作成果", "group": "obligation", "title": "滑鼠懸停簡述", "description": "義務內容說明", "duty": "main" },
{ "id": "obligation_id_2", "label": "給付報酬", "group": "obligation", "title": "滑鼠懸停簡述", "description": "義務內容說明", "duty": "main" },
{ "id": "party_a_id", "label": "契約甲方名稱", "group": "party", "role": "甲方(委託人)" },
{ "id": "element_id", "label": "相當因果關係", "group": "element", "title": "△ 事實不明", "description": "要件內涵與依據+對映之本案事實", "met": "unknown" }
],
"edges": [
{ "from": "from_id", "to": "to_id", "label": "關係類別", "title": "關係的具體法律說明" },
{ "from": "law_id", "to": "law_id_2", "label": "法條關聯", "title": "兩法條間的體系關係說明", "rel": "trigger" },
{ "from": "party_id", "to": "jud_id", "label": "當事人" },
{ "from": "jud_id", "to": "evi_id", "label": "證據" },
{ "from": "party_a_id", "to": "contract_id", "label": "當事人", "title": "甲方(委託人)" },
{ "from": "contract_id", "to": "clause_id", "label": "包含" },
{ "from": "contract_id", "to": "clause_penalty_id", "label": "包含" },
{ "from": "clause_id", "to": "obligation_id", "label": "課予" },
{ "from": "party_id", "to": "obligation_id", "label": "負擔", "title": "乙方為此義務之債務人" },
{ "from": "obligation_id", "to": "party_a_id", "label": "得請求", "title": "甲方為此義務之債權人" },
{ "from": "obligation_id", "to": "obligation_id_2", "label": "對價", "title": "雙務契約互為對價之給付" },
{ "from": "clause_penalty_id", "to": "obligation_id", "label": "違約效果", "title": "違反交付義務觸發違約金條款" },
{ "from": "law_id", "to": "element_id", "label": "要件", "title": "自條文文義拆解" },
{ "from": "fact_id", "to": "element_id", "label": "該當", "title": "本案事實對映此要件之說明" },
{ "from": "element_id", "to": "evi_id", "label": "證據", "title": "待補:可佐證此要件之證據" },
{ "from": "jud_id", "to": "element_id", "label": "要件認定", "title": "判例對此要件之認定要旨(他案認定,不影響本案 met)" }
]
}
judgment 節點對應的判決 case_history 顯示已被上級審廢棄(「主文含廢棄」)時,於該節點加布林欄位 "overturned": true。index.html 會將其標示為灰底、紅色網線框,並於標籤末尾加註「⚠️已廢棄」;無此欄位者照常渲染。範例:{ "id": "jud_x", "label": "臺灣XX地方法院 108 年度上字第 1 號(已廢棄)", "group": "judgment", "overturned": true, "title": "本判決業經上級審廢棄,僅供審級關係參考" }
組裝完成後,Agent 直接將 {nodes, edges} 寫入 data.js(新建或更新,格式 window.GRAPHDATA = { "nodes": [...], "edges": [...] };),寫入位置依下列判定(兩種配置擇一,不得混用): 1. 完整 law-powers 開發專案(判定:目前工作區根目錄同時存在 index-3d-src.html 與 scripts/inlinelibs.py)→ 寫入專案根目錄 data.js,對應渲染頁為專案根目錄 index.html。 2. skills-only 發布包/全域安裝(不符合上述判定)→ 寫入本技能目錄之 renderer/data.js(覆寫隨附之虛構示範資料),對應渲染頁為同目錄 renderer/index.html。 寫入完成後必須告知使用者(勿再要求使用者自行貼上 JSON): > 「圖譜資料已寫入 <實際寫入之完整路徑>。請以支援 WebGL 的瀏覽器直接開啟 <對應 index.html 完整路徑>(自包含單檔、離線可用),頁面會自動讀取渲染。更新圖譜只需以新的 {nodes, edges} 覆寫該 data.js 後重新整理頁面;index.html 為打包產物,請勿手動編輯。」
完整 schema 與欄位定義:請參閱 [references/timeline-schema.md](references/timeline-schema.md)。本節僅規範何時建構與資料紀律。
當案件有程序期限管理需求(上訴、告訴、時效、提存等倒數),或使用者要求「時序圖/期限儀表板」時,於 window.GRAPH_DATA 加入選用之 timeline 欄位。渲染頁會自動出現「關係圖|程序時序」分頁;未加入此欄位時分頁隱藏,不影響既有圖譜(向後相容)。
建構紀律(違反任一項即不得產出):
deadlines[].basis 之條號、期間長度、起算規定,一律先以 legal-research 雙軌檢索查證,不得憑記憶撰寫(agents-rules §1)。events[].cls 之 ""(判決認定)/"alleged"(當事人陳述,法院未認定)/"judgment"(宣判)為法律語意標記,判決理由「縱使有之」等未認定事實一律標 alleged。params 輸入欄,hint 註明預設值性質;在途期間、假日順延等未計入之限制寫入 warn/note。offAxis: true(不入等比例軸、右側箭頭註記),避免壓縮其他節點。fact/judgment 節點取自同一份事實整理,日期、名稱不得兩處矛盾。完成提示語(附加於步驟三提示語之後): > 「本案已一併產出程序時序資料:開啟頁面後點右上『程序時序』分頁即可檢視期限倒數、等比例時間軸與程序路線對照表;日期參數可直接調整並自動重算。列印該分頁會自動轉為淺色版面供附卷使用。」
完整繪製規範:節點形狀語彙、配色、佈局、範本骨架與資料紀律,請參閱 [references/svg-diagrams.md](references/svg-diagrams.md)。本節僅規範觸發時機與資料來源。
當使用者要求「決策樹/訴訟流程圖/因果關係圖/歸責路徑圖」,或經 legal-brainstorming(策略報告完成後)/legal-element-analysis(涵攝表含因果類要件)轉介時,以單一自包含 SVG 檔(上下雙面板)產出:
legal-brainstorming 步驟三、四之爭點攻防與策略報告;每個判斷分支之法效錨定已查證條文或 allowed_citations 內判決,未查證者虛線框標「(待查證)」。legal-element-analysis 涵攝表,不得臆測——與 element 節點 met 之紀律相同;尚未涵攝時全部標 △ 並註明。outputs/decision-causal-<案件代稱>.svg,不寫入 data.js。本圖與 3D 圖譜互補——關係圖呈全貌網絡,本圖呈線性敘事,適合書狀附圖與列印。