"End-to-end helper for Chinese civil litigation — case intake (analyze multi-document files: judgment / ruling / contract / chat records), strategy & flip-points analysis, pleading drafts (起诉状/上诉状/答辩状/再审申请书/财产保全申请书), evidence checklists, deadline tracking, and parallel workstream planning (另案起诉/调档/调查令). Class-level: applies to 合伙合同 / 民间借贷 / 合同纠纷 / 侵权 / 婚姻家事 / 劳动争议 etc. Trigger on 起诉, 上诉, 再审, 判决, 民事诉讼, 合伙, 借款, 借款纠纷, 法律文书, 发回重审, 一审, 二审, 财产保全."
Resources
3Install
npx skillscat add russ534/myopenclawbot/civil-litigation-assistant Install via the SkillsCat registry.
Chinese Civil Litigation Assistant
End-to-end assistant for Chinese civil cases. Built around the user's confirmed workflow: terse, evidence-driven, writes to disk, treats each document as primary source, surfaces flip-points rather than rephrasing.
When to use
- User sends a judgment / ruling / contract / chat records / evidence and says "起诉 / 上诉 / 再审 / 怎么打 / 帮我写"
- User asks "这个案子能不能翻 / 怎么翻 / 还有哪些角度"
- User asks for pleading drafts (起诉状 / 上诉状 / 答辩状 / 再审申请书 / 财产保全申请书 / 调查令申请书)
- User wants a comparison of two contradictory judgments (一审 vs 重审, 一审 vs 二审)
- User wants deadline tracking (上诉期 / 申请再审期 / 保全期)
Core workflow (8 steps)
Step 1: Ingest all documents
- User typically drops multiple PDFs into the chat (judgment / ruling / contract / evidence)
- Extract text with
pypdf(text-based PDFs) ormarker-pdf(scanned). For Chinese legal PDFs, pypdf is the safe default — seeocr-and-documentsskill. - Save raw text under the case folder:
<case>/raw/<doc_id>.txt - Never proceed on user-summarized content. Always extract yourself.
Step 2: Build a unified timeline + party table
Before any analysis, output a one-screen timeline:
| 日期 | 事件 | 角色 | 关键证据 |
|---|
And a party table:
| 角色 | 姓名/单位 | 身份 | 关键行为 |
|---|
This is the single highest-leverage deliverable. It also exposes timeline inconsistencies (signature dates that contradict payment dates, etc.) — these often become the flip-points.
Step 3: For multi-judgment cases — 3-way comparison
If user sends two or three judgments on the same case (一审 + 发回裁定 + 重审), build a 3-column table:
| 维度 | 一审 (xx号) | 二审发回裁定 (xx号) | 重审 (xx号) |
|---|
Then identify where the law court flipped the fact (e.g. "一审采信微信前段 = 散伙合意 → 重审只取后段 = 仍在合伙"). This exposes the negotiation room for the next appeal.
Step 4: Flip-point analysis (反败为胜角度)
Default flip-point categories to check (in priority order):
- 程序违法 — 案由变更是否告知、是否追加当事人、是否给举证期、送达是否合法
- 基础事实 — 时间线矛盾 (合同晚于付款 4 个月 / 法人变更晚于交易)、金额去向 (30万收→28万转,差2万?)
- 法律关系定性 — 明股实债 (九民纪要31条) / 合伙不成立 (缺共同经营+共担风险) / 借款合意
- 法律适用 — 合同目的不能实现 (民法典563条) / 法定解除权 / 举证责任倒置
- 证据规则 — 断章取义、整体合意、聊天记录上下文、附言单方意思表示
- 细节 — 截留、利息计算标准、律师费、诉讼费分担
Always list 5-8 flip-points, ranked by胜算, with the specific evidence that supports each.
Step 5: Pleading draft (文书起草)
Templates in templates/:
templates/起诉状.md— civil complainttemplates/上诉状.md— appealtemplates/再审申请书.md— retrialtemplates/答辩状.md— defensetemplates/财产保全申请书.md— property preservationtemplates/调查令申请书.md— investigation order request
Output format: produce both .md (canonical, auditable) and .docx (for lawyer modification). Use scripts/md2docx.py to convert.
Pleading structure (上诉状 standard):
- 标题 + 当事人信息
- 上诉请求 (with 备选 - 二审不得再次发回, 必须改判)
- 事实与理由 (按 flip-points 排序, 每条独立编号)
- 此致
- 附 (副本份数 + 证据清单)
- 签名 + 日期
Internal pitfalls section (never include in deliverable): deadlines, fees, evidence to gather next, parallel workstreams.
Step 6: Deadline tracking
Always list the deadlines with the 送达日 (not judgment date) as the start:
| 事项 | 法定期限 | 截止日 (按送达日推算) |
|---|
For 上诉期: 15 days. For 再审申请: 6 months from 终审判决生效. For 财产保全: 起诉前 48h, 起诉后随时.
Step 7: Parallel workstreams (多线程作战)
Never rely on a single litigation track. Default parallel tracks:
- Main case (the one in hand)
- 另案起诉 — different cause of action, same facts (e.g. 不当得利 against 收款人)
- 调档 / 调查令 — bank流水, 工商档案, 房产
- 财产保全 — freeze对方账户 / 房产 (must apply early)
- 报警 / 刑事控告 — only if facts support a crime (e.g. 拒不执行判决、合同诈骗)
Step 8: Output as 微信-friendly summary
Final response in chat should be:
- 1-line verdict (胜算 / 关键风险 / 下一步)
- Markdown table of timeline + parties
- 3-way comparison (if applicable)
- Flip-points ranked
- Link to saved files (md + docx)
- Open question (下一步要爸爸确认什么)
Output conventions
- Tone: terse, direct Chinese. No hedging, no "建议进一步咨询律师" boilerplate. Treat the user as the principal (爸爸/客户), not as a stranger.
- Citations: every legal claim must cite a specific article (民法典xxx条 / 民诉法xxx条 / 九民纪要第xx条 / 最高法xx号指导案例).
- No fabrication: if unsure of a case number or article, say so explicitly and use
web_extract/ 北大法宝 / 中国裁判文书网 to verify. Never invent. - File output: always write to disk (
<case>/...), then reference in chat withMEDIA:pathso the user gets the file natively.
Pitfalls (don'ts)
- ❌ 不要把"建议进一步咨询律师"当结尾 — 用户就是当事人, 要直接动手
- ❌ 不要用
cat/sed写 PDF 相关 — 用pypdf提取后保存到文件, 不要 原文回显 - ❌ 不要只发一审vs重审的两栏对比 — 如果有发回裁定, 必须 3 栏 (一审 + 发回 + 重审)
- ❌ 不要编造最高法案例号 — 不确定就说"待查"
- ❌ 不要在 5 笔转款的事里漏掉"附言单方意思表示" — 这是明股实债的关键攻击点
- ❌ 不要忽略 "案由变更程序违法" — 这是程序 + 实体的双重漏洞, 上诉状第一条就该写
- ❌ 不要忘记"二审不得再次发回" (民诉法177条最后一款) — 备选请求必须直接要求改判
- ❌ 不要写完上诉状不存档 — 必须
.md+.docx双格式落盘, 给律师可直接用
Setup
pip install pypdf python-docx(oruv venv .venv && pip install ...in PEP 668 environments — seefnnas-adminfor the container pattern)- Use
scripts/md2docx.pyto convert markdown pleadings to .docx
Linked files
templates/起诉状.md— civil complaint templatetemplates/上诉状.md— appeal template (worked example from 张彭亮 3293 case)templates/再审申请书.md— retrial templatetemplates/答辩状.md— defense templatetemplates/财产保全申请书.md— property preservation templatetemplates/调查令申请书.md— investigation order templatescripts/md2docx.py— convert .md to .docx (preserves bold, headings, lists, page margins)references/flip-points-bank.md— categorical flip-point patterns by case typereferences/deadlines.md— Chinese civil procedure deadline reference