# Lxs Legal Workflow

> 法律案件类案检索与民事起诉状自动生成技能。当用户提供案情简介并要求检索类案、整理案例表格、生成起诉状初稿时触发。涵盖五步自动化流程：(0) 通过 WebSearch 和微信搜索进行大范围搜索，从案情简介出发确定关键字、确认法律关系路径、生成检索关键词组（在打开裁判文书网之前完成）；(1) 通过浏览器自动化技能（qqbrowser-skill 或 agent-browser）以有头模式打开中国裁判文书网和人民法院案例库，用户手动登录后使用第零步确定的关键词组检索类案判决（两网站有反爬系统，须有头模式运行、用户手动登录），重点关注法院对案由的认定及获支持诉讼请求的典型表述；(2) 将类案关键信息整理为结构化表格(案号、审理法院、案由、诉请、争议焦点、法院说理、判决结果)，保持原文数据完整性，不得创造任何内容；(3) 基于类案材料（而非独立法律分析）生成民事起诉状初稿，每项诉讼请求须标注类案支撑，撰写前须通过法律逻辑校验；(4) 在起诉状末尾标注本案核心风险点及法官可能重点关注的问题。触发词：案情简介、类案检索、裁判文书网、人民法院案例库、起诉状、民事起诉状、案例分析、诉讼请求、案由、法律关系。

- Skill: `cslawyer1985/lxs-legal-workflow` (Agent Skill, multi-file: 7 files)
- Install (CLI): `npx skillmds@latest add cslawyer1985/lxs-legal-workflow`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cslawyer1985/lxs-legal-workflow/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: cslawyer1985 (https://skillmd.com/u/cslawyer1985)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/cslawyer1985/lxs-legal-workflow

---


# Legal Case Search & Complaint Drafting

## Overview

自动化法律案件分析流程：案情分析 → 前置搜索确定关键字与法律关系 → 类案检索 → 案例信息表格化 → 民事起诉状初稿生成（类案驱动） → 风险点标注。
全程通过浏览器自动化技能驱动浏览器操作，支持 `qqbrowser-skill`（QQ浏览器自动化）和 `agent-browser`（Agent Browser）两种浏览器工具。

**五步流程**：
- **第零步：案情分析与法律关系确认** — 通过 WebSearch 和微信搜索进行大范围搜索，确定关键字、法律关系路径、检索关键词组
- **第一步：类案检索** — 使用第零步确定的关键词组在裁判文书网/人民法院案例库检索类案
- **第二步：类案信息表格化** — 将检索到的类案关键信息整理为结构化表格
- **第三步：民事起诉状初稿生成（类案驱动）** — 基于类案材料撰写起诉状，每项诉讼请求须标注类案支撑
- **第四步：风险点标注** — 基于类案争议焦点和驳回理由标注风险点

**关键约束**：中国裁判文书网和人民法院案例库均部署了反爬系统，**必须以有头模式（headed mode，即可见浏览器窗口）运行浏览器**，不得使用无头模式（headless）。登录环节须由用户在可见浏览器窗口中手动完成，AI 不得自动填充登录信息或自动提交表单。登录完成后方可执行检索操作。

## Trigger Conditions

当用户出现以下任一情形时触发本技能：

- 提供案情简介并要求检索类案判决
- 要求在裁判文书网或人民法院案例库搜索相似案例
- 要求生成民事起诉状初稿
- 要求整理类案检索结果为表格
- 提及"类案检索""起诉状""裁判文书网""人民法院案例库"等关键词并伴有案情描述

## Prerequisites

执行本技能前，确认以下事项：

1. **案情完整性检查**：确认用户提供的案情简介包含以下要素（缺失则向用户追问）：
   - 当事人信息（原告/被告身份或名称）
   - 纠纷事实经过（时间、地点、事件）
   - 诉求方向（主张什么权利、要求什么救济）
   - 已知证据情况（如有）

2. **浏览器技能加载（关键依赖）**：本技能的第一步类案检索全程依赖浏览器自动化技能进行裁判文书网与人民法院案例库操作。支持以下两种浏览器工具，**任选其一**即可（**注意：第零步案情分析不需要浏览器，仅需 WebSearch 工具**）：
   - **`qqbrowser-skill`（QQ浏览器自动化）**：通过 QQ 浏览器驱动，默认以可见窗口模式运行。执行前须通过 `Skill` 工具加载 `qqbrowser-skill`。
     - 核心命令模式：`qqbrowser-skill browser_go_to_url --url <url>` → `qqbrowser-skill browser_snapshot`（获取元素索引）→ `qqbrowser-skill browser_click_element --index N` / `qqbrowser-skill browser_input_text --index N --text "..."` → 操作后重新 `browser_snapshot` 获取新索引。
   - **`agent-browser`（Agent Browser）**：通过 Chrome/Chromium CDP 驱动。执行前须通过 `Skill` 工具加载 `agent-browser`，并运行 `agent-browser skills get core` 获取完整命令参考。
     - 核心命令模式：`agent-browser open <url> --headed` → `agent-browser snapshot`（获取元素引用 `@eN`）→ `agent-browser click @eN` / `agent-browser fill @eN "text"` → 操作后重新 `snapshot` 获取新引用。
   - **反爬约束（硬性规则）**：两个目标网站均有反爬系统，浏览器**必须以有头模式（headed mode，可见窗口）运行**，不得使用无头模式（headless）。
     - `qqbrowser-skill` 默认即为有头模式，无需额外参数。
     - `agent-browser` **默认是无头模式**，必须显式添加 `--headed` 参数，如 `agent-browser open <url> --headed`。
     - **daemon 复用陷阱**：`agent-browser` 的浏览器 daemon 一旦以无头模式启动，后续 `open --headed` 的 `--headed` 参数会被忽略（复用已有 daemon）。因此首次打开前，若不确定 daemon 状态，须先执行 `agent-browser close --all` 关闭已有会话，再执行 `agent-browser open <url> --headed`。

3. **数据源可访问性（硬性前置条件）**：本技能支持两个类案检索数据源，**至少一个可访问**即可继续流程：
   - **中国裁判文书网**（`https://wenshu.court.gov.cn`）：收录全国各级法院生效裁判文书，需实名登录查看全文。
   - **人民法院案例库**（`https://rmfyalk.court.gov.cn`）：最高人民法院建设的权威案例库，收录经审核的参考案例和指导性案例，需注册登录查看详情。
   - 若两个网站均无法访问，**立即停止全部后续流程**（第二步表格化、第三步起诉状生成、第四步风险标注均不执行），不得以网页搜索或其他数据源替代。

4. **文档输出准备**：准备输出目录用于存放生成的 HTML 文件。

## Workflow

### 第零步：案情分析与法律关系确认

**目标**：通过大范围网络搜索（WebSearch + 微信搜索），从案情简介出发，确定关键字、识别全部法律关系路径、生成用于类案检索的关键词组。**此步骤在打开裁判文书网/案例库之前完成。**

**操作流程**：

1. **提取案情要素**：
   - 从用户提供的案情简介中，按以下维度提取关键事实：
     - 主体关系（各方当事人之间的身份/法律关系）
     - 核心行为（引发纠纷的关键行为）
     - 时间线（关键事件的时间顺序）
     - 损害结果（债权人/权利人受到的损害）
     - 特殊情节（可能影响法律评价的特殊事实）
   - 如案情不完整，向用户追问缺失要素

2. **大范围搜索（5个维度）**：
   使用 `WebSearch` 工具进行5个维度的搜索，每个维度1-2次搜索。搜索策略详见 `references/legal-relationship-analysis.md`。

   **维度一：案由与法律关系定性**
   - 搜索目的：确认本案涉及的案由名称、法律关系性质
   - 搜索关键词模板：`"[案情核心事实描述] 法律关系 案由 类型"`
   - `WebSearch({query: "...", topic: "legal"})`

   **维度二：核心请求权基础**
   - 搜索目的：确认可能适用的法条和司法解释
   - 搜索关键词模板：`"[法律关系/案由] [核心法律概念] 法条 司法解释"`
   - `WebSearch({query: "...", topic: "legal"})`

   **维度三：特殊事实情节的法律意义**
   - 搜索目的：确认案情中特殊事实的法律评价
   - 搜索关键词模板：`"[特殊事实] [法律后果] [相关法条]"`

   **维度四：关联行为的法律路径**
   - 搜索目的：发现可能被忽略的请求权路径
   - 搜索关键词模板：`"[关联行为] 逃避债务 债权人 [救济方式]"`

   **维度五：实务争议与裁判趋势**
   - 搜索目的：了解法院裁判倾向、实务争议焦点
   - 搜索关键词模板：`"[案由/法律问题] 认定标准 裁判趋势 实务"`
   - **微信搜索技巧**：在查询词中加入"公众号""实务""案例""裁判规则"等词，可有效检索到微信公众号法律实务文章

   如搜索结果不够深入，可使用 `WebFetch` 抓取具体法律文章全文进行深入阅读。

3. **确认法律关系路径**：
   - 基于搜索结果，梳理出全部可能的 legal relationship paths（法律关系路径）
   - 每条路径包含：责任对象、请求权基础、责任类型、责任范围、关键举证要点
   - 建议使用 `show_widget` 工具生成法律关系图谱，直观展示各路径
   - **法律逻辑校验**：对照 `references/legal-relationship-analysis.md` 中的法律逻辑校验清单，逐项检查责任类型与被告匹配、诉讼请求冲突等问题

4. **生成检索关键词组**：
   - 每条法律关系路径对应1-2组检索关键词
   - 关键词从法条核心概念出发，组合2-3个概念
   - 同时准备简化版关键词（降级备用）
   - 关键词组将用于第一步的裁判文书网/案例库检索

5. **向用户展示分析结果**：
   - 将法律关系路径表和检索关键词组展示给用户
   - 说明各路径的法律依据和预期责任类型
   - 如有需要用户核实的关键事实（如"公司此前是否曾是一人公司"），在此阶段提出

**输出**：法律关系路径表 + 检索关键词组列表，供第一步类案检索使用。

### 第一步：类案检索

**目标**：使用第零步确定的检索关键词组，在中国裁判文书网和人民法院案例库检索与本案相似的生效判决/参考案例，提取法院对案由的认定方式及获支持的诉讼请求典型表述。**检索关键词来自第零步的法律关系路径分析，不再独立构建。**

**操作流程**：

1. **加载浏览器技能**：通过 `Skill` 工具加载浏览器自动化技能。支持 `qqbrowser-skill`（QQ浏览器自动化）或 `agent-browser`（Agent Browser），任选其一。确保浏览器以**有头模式（headed mode，可见窗口）**运行，因目标网站有反爬系统，不得使用无头模式。
   - **使用 `agent-browser` 时**：首次打开前须先执行 `agent-browser close --all` 关闭可能已存在的无头 daemon，再使用 `agent-browser open <url> --headed` 确保有头模式生效。
   - **使用 `qqbrowser-skill` 时**：默认即为有头模式，无需额外参数。

2. **数据源选择与访问**：

   本技能支持两个数据源，优先同时检索两个平台以获取更全面的类案。各平台访问方式如下：

   **数据源 A — 中国裁判文书网**（`https://wenshu.court.gov.cn`）：

   - 使用浏览器工具以**有头模式**导航至网站
     - qqbrowser-skill：`qqbrowser-skill browser_go_to_url --url https://wenshu.court.gov.cn`
     - agent-browser：`agent-browser close --all`（确保关闭已有 daemon）→ `agent-browser open https://wenshu.court.gov.cn --headed`
   - 通过 `browser_snapshot`（或 `agent-browser snapshot`）确认页面正常加载（页面元素存在、搜索框可见）
   - 如页面无法加载、超时或出现错误 → 标记该数据源不可用，转至数据源 B

   **数据源 B — 人民法院案例库**（`https://rmfyalk.court.gov.cn`）：

   - 使用浏览器工具以**有头模式**导航至网站
     - qqbrowser-skill：`qqbrowser-skill browser_go_to_url --url https://rmfyalk.court.gov.cn`
     - agent-browser：`agent-browser open https://rmfyalk.court.gov.cn --headed`（若同一 daemon 已以 `--headed` 运行则直接 `open` 即可）
   - 通过 `browser_snapshot`（或 `agent-browser snapshot`）确认页面正常加载
   - 如页面无法加载、超时或出现错误 → 标记该数据源不可用

   **停止流程条件（硬性规则）**：
   - 若裁判文书网和人民法院案例库**均**无法打开（网络超时、服务器错误、页面空白、反爬拦截等）
   - **立即停止全部后续流程**（第二步表格化、第三步起诉状生成、第四步风险标注均不执行）
   - 向用户说明："裁判文书网和人民法院案例库当前均无法访问，类案检索流程已终止。请稍后重试。"
   - **不得**以网页搜索、其他法律数据库等替代数据源继续执行
   - 若仅一个数据源不可用，使用另一个可用的数据源继续流程，并向用户说明

3. **登录确认（关键步骤 — 用户手动登录）**：

   两个平台均需登录才能查看判决书/案例全文。因两个网站均部署了反爬系统，**登录操作必须由用户在可见浏览器窗口中手动完成**，AI 不得自动填充手机号、自动点击发送验证码、自动提交登录表单。AI 的职责是：打开网站 → 检测登录状态 → 如未登录则暂停等待用户手动登录 → 确认登录成功后继续。

   **通用登录流程（两个网站相同）**：

   1. **检测登录状态**：通过 `browser_snapshot`（qqbrowser-skill）或 `snapshot`（agent-browser）获取当前页面，检查是否已登录。
      - **重要**：须使用**完整快照**（`agent-browser snapshot`，不加 `-i`），而非仅交互元素快照（`snapshot -i`）。因为 `snapshot -i` 可能捕获到页面中 iframe/弹窗内的登录表单，导致已登录状态被误判为未登录。
      - **已登录标志**：页面顶部/右上角显示"欢迎您""用户名""退出"等字样，或搜索框可直接使用。
      - **未登录标志**：页面显示"登录"按钮、跳转至登录页、搜索时提示需登录。
      - 如不确定，可截图辅助判断（qqbrowser-skill 的截图命令，或 `agent-browser screenshot <path>`）。
   2. **如已登录**：直接进入第 4 步（构建检索关键词）
   3. **如未登录**：执行以下操作：
      - **向用户发送明确提示**，例如："检测到您尚未登录[中国裁判文书网/人民法院案例库]。浏览器窗口已打开该网站，请在浏览器窗口中手动完成登录（输入手机号、获取并输入验证码、完成可能的滑块/图形验证）。登录完成后请告知我，我将继续检索。"
      - **暂停流程，等待用户确认登录完成**。此期间 AI 不执行任何浏览器操作，不得尝试自动填充登录表单或自动获取验证码
      - 用户确认登录后，通过 `browser_snapshot`（或 `snapshot`）验证登录状态
      - 若仍检测到未登录，再次提示用户并等待
   4. **登录成功**：进入检索流程

   **注意事项**：
   - 登录过程中可能触发图形验证码、滑块验证等反爬措施，这些只能由用户在浏览器窗口中手动完成
   - 首次使用人民法院案例库需注册账号，提示用户按网站引导完成注册
   - AI 不得自动获取、猜测或代填验证码
   - 不得以无头模式（headless）运行浏览器，否则反爬系统会拦截

4. **使用第零步确定的关键词组检索**：
   - **不再独立构建关键词**——使用第零步（案情分析与法律关系确认）产出的检索关键词组
   - 每条法律关系路径对应1-2组关键词，按路径逐组检索
   - 检索策略详见 `references/search-strategy.md`

5. **执行检索并筛选**：

   以下命令以 `qqbrowser-skill` 为例，若使用 `agent-browser` 则对应替换为：`snapshot`（获取元素引用 `@eN`）、`fill @eN "text"`（输入文本，注意是 `fill` 不是 `type`）、`click @eN`（点击）、`wait --load networkidle`（等待页面加载完成）。

   **裁判文书网检索**：

   - **（重要）每次新搜索前先清空已有搜索条件**：裁判文书网的搜索条件会累积（多次输入会做 AND 叠加），不清空会导致结果为 0。
     - qqbrowser-skill：`browser_snapshot` 找到"清空搜索条件"链接的索引 → `browser_click_element --index <N>`
     - agent-browser：`snapshot` 找到"清空搜索条件"链接的 `@eN` → `click @eN`
     - 若页面无累积条件（首次搜索），可跳过此步
   - 通过 `browser_snapshot` / `snapshot` 获取搜索框元素索引
   - `browser_input_text --index <N> --text "检索关键词"`（agent-browser: `fill @eN "检索关键词"`）— 输入关键词
   - `browser_click_element --index <N>`（agent-browser: `click @eN`）— 点击搜索按钮
   - `browser_wait --seconds 3`（agent-browser: `wait --load networkidle`）— 等待搜索结果加载
   - `browser_snapshot` / `snapshot` — 获取搜索结果页面
   - **检查搜索结果数量**：
     - 若结果为 0 篇（页面显示"共检索到 0 篇文书"），执行**关键词降级策略**（见下方"零结果处理"）
     - 若有结果，按以下**案例类型优先级**筛选（从高到低）：
       1. **指导案例**：最高人民法院发布的指导性案例（最高效力，应当参照适用）
       2. **参考案例**：人民法院案例库中经审核入库的参考案例（说理规范，示范性强）
       3. **苏州案例**：苏州市辖区内法院审理的案件（与本地管辖法院裁判尺度一致）
       4. **江苏案例**：江苏省辖区内法院审理的案件（省内裁判尺度参考）
       5. **其他地区案例**：以上均不足时，补充其他地区案例
     - **辅助筛选条件**（在上述同级案例内部进一步排序）：
       - 裁判日期：近 3 年内优先（优先《民法典》施行后即 2021.1.1 后的案例）
       - 文书类型：判决书优先（排除裁定书、调解书）
       - 审理程序：二审优先（说理更充分），其次一审、再审
   - 如需使用高级筛选功能，通过 `browser_click_element` / `click @eN` 操作筛选条件

   **人民法院案例库检索**：
   - 通过 `browser_snapshot` / `snapshot` 获取搜索框元素索引
   - `browser_input_text --index <N> --text "检索关键词"`（agent-browser: `fill @eN "检索关键词"`）— 输入关键词
   - `browser_click_element --index <N>` 或 `browser_keypress --key Enter`（agent-browser: `click @eN`）— 执行搜索
   - `browser_wait --seconds 3`（agent-browser: `wait --load networkidle`）— 等待搜索结果加载
   - `browser_snapshot` / `snapshot` — 获取搜索结果页面
   - **检查搜索结果数量**：同样适用"零结果处理"策略
   - 人民法院案例库可按"案由""关键词""法院层级"等维度筛选
   - **案例类型优先级**：指导案例（指导性案例栏目）> 参考案例（参考案例栏目）
   - 在人民法院案例库中检索时，优先选取"指导性案例"，其次选取"参考案例"
   - 若案例库中无苏州/江苏地区案例，回到裁判文书网补充检索苏州及江苏案例

   **零结果处理（关键词降级策略）**：
   若搜索返回 0 篇结果，按以下顺序逐步简化关键词后重新搜索（每次重新搜索前须**清空已有搜索条件**）：
   1. **第一轮**：使用完整关键词短语（如"离婚纠纷经济补偿规则"）
   2. **第二轮**：拆分为核心词组合（如"离婚 经济补偿"）
   3. **第三轮**：仅使用案由关键词（如"离婚纠纷"）
   4. **第四轮**：使用案由 + 事实关键词（如"离婚 补偿 家务"）
   5. 若四轮均返回 0 结果，标记该数据源无相关类案，转用另一数据源
   6. 若两个数据源均无结果，向用户说明并停止检索流程

   - 目标合计收集 5-10 件高度相关类案，按以下优先级构成：
     - 优先收录指导案例和参考案例（人民法院案例库）
     - 其次收录苏州地区案例（裁判文书网，筛选法院地域为苏州）
     - 再次收录江苏地区案例（裁判文书网，筛选法院地域为江苏）
     - 若以上仍不足 5 件，补充其他地区高质量案例
   - 每件案例须标注其类型（指导案例/参考案例/苏州案例/江苏案例/其他）

6. **逐案提取关键信息**：
   对每件类案，进入判决书/案例详情页面并获取内容（**保持原文完整性，不得创造或改写任何内容**）。
   
   **推荐方式（更稳定）**：
   - 在搜索结果页使用 `agent-browser eval` 直接提取案件详情页链接，再用 `agent-browser open <url>` 打开，避免点击元素失败或打开新标签页未切换的问题。
     - 示例：`agent-browser eval "Array.from(document.querySelectorAll('a')).filter(a => a.href && a.href.includes('docId')).map(a => ({text: a.innerText.trim(), href: a.href})).slice(0, 10)"`
   - 打开详情页后，使用 `agent-browser eval "document.body.innerText"` 直接获取完整文书正文，提取关键信息。
   
   **备用方式**：
   - 通过 `browser_click_element --index <N>`（或 `agent-browser click @eN`）点击案件标题进入详情页。
   - 然后 `browser_snapshot`（qqbrowser-skill）或 `agent-browser snapshot` 获取页面内容。
   - 若详情页内容过长，可滚动后再 `snapshot`，或使用 `eval "document.body.innerText"` 一次性获取全文。
   - **案号**：如"(2023)京01民终123号"
   - **审理法院**：如"北京市第一中级人民法院"
   - **案由**：如"民间借贷纠纷"
   - **诉请**：原告提出的具体请求项（原话摘录，不得概括或改写）
   - **争议焦点**：法院归纳的争议焦点（原文摘录，不得概括或改写）
   - **法院说理**：法院对争议焦点的分析和裁判理由（原文摘录关键段落，不得概括或缩写）
   - **判决结果**：主文内容（支持/驳回/部分支持，具体判项，原文摘录）
   - **诉讼请求表述方式**：记录获支持的诉讼请求在判决书中的规范表述（用于起诉状撰写参考）
   - **数据来源及案例类型**：标注该案例来自裁判文书网还是人民法院案例库，并标注案例类型（指导案例/参考案例/苏州案例/江苏案例/其他）

7. **特别关注事项**：
   - 法院如何认定案由（相同事实可能对应不同案由）
   - 获支持的诉讼请求的典型表述方式（措辞、逻辑结构）——**将直接用于起诉状撰写**
   - 法院支持/驳回某项请求的裁判理由——**将直接用于风险评估**
   - 举证责任分配规则
   - 指导案例的参照适用意义（最高效力，各级法院应当参照）
   - 参考案例的示范指导意义（经审核入库，说理规范）
   - 苏州及江苏地区案例的地域裁判尺度参考价值
   - **每条法律关系路径是否有对应类案支撑**——无类案支撑的路径在起诉状中须标注风险

**输出**：将提取的原始信息暂存，供第二步整理。

### 第二步：类案信息表格化

**目标**：将检索到的类案关键信息整理为结构化表格，便于对比分析。

**操作流程**：

1. **加载表格模板**：读取 `assets/case-table-template.html` 作为表格基础模板。

2. **填充案例数据**：
   - 将第一步提取的每件类案信息填入表格行
   - 表格列：序号 | 案例类型 | 数据来源 | 案号 | 审理法院 | 案由 | 诉请 | 争议焦点 | 法院说理 | 判决结果
   - 案例类型标注为"指导案例""参考案例""苏州案例""江苏案例"或"其他"
   - 数据来源标注为"裁判文书网"或"人民法院案例库"
   - 案例按优先级排序：指导案例 → 参考案例 → 苏州案例 → 江苏案例 → 其他
   - **不得创造任何内容**：所有单元格内容必须来自判决书原文，不得臆造、概括、改写或缩写
   - **保持文字数据完整性**：诉请、争议焦点、法院说理、判决结果等字段须原话摘录，保留完整文字内容

3. **添加分析摘要**：
   - 在表格下方添加"类案分析摘要"区块，总结：
     - 案由认定趋势（多数法院如何定性）
     - 获支持诉讼请求的共性特征
     - 常见驳回理由
     - 举证要点提示

4. **生成 HTML 文件**：
   - 将填充后的表格保存为 `类案检索表格.html`
   - 保存至当前工作区输出目录
   - 文件须可在浏览器中直接打开查看

**输出**：`类案检索表格.html` 文件，包含完整案例对比表格和分析摘要。

### 第三步：民事起诉状初稿生成（类案驱动）

**目标**：基于类案检索结果与本案案情，生成一份格式规范、内容完整的民事起诉状初稿，可直接下载使用。**每项诉讼请求、事实理由、法律适用都必须有类案材料支撑，不得仅凭独立法律分析撰写。**

**操作流程**：

1. **加载起诉状模板**：读取 `assets/complaint-template.html` 作为文档基础模板。

2. **加载格式规范**：读取 `references/complaint-format-guide.md` 获取民事起诉状的标准格式要求，特别注意其中的**类案驱动撰写指南**和**法律逻辑校验规则**。

3. **梳理类案裁判要旨**：
   - 将检索到的类案按法律关系路径分组
   - 提取每组的核心裁判规则
   - 确认每条路径的类案支撑情况

4. **法律逻辑校验（撰写前必做）**：
   对照 `references/complaint-format-guide.md` 中的法律逻辑校验规则，逐项检查：
   - **责任类型与被告匹配**：连带清偿（全额）是否对应正确的请求权基础和被告？补充赔偿（限额）是否未错误升格为连带清偿？
   - **诉讼请求冲突**：同时主张的请求之间是否存在吸收关系？竞合请求是否采用主位/备位结构？不同被告的请求是否相互独立？
   - **请求权基础与事实匹配**：每项请求是否有法条依据？事实能否涵摄到法条构成要件？是否有类案支撑？
   - **常见错误排查**：是否混淆了连带清偿与补充赔偿？受让人连带责任方向是否正确？一人公司财产混同责任对象是否正确？离婚财产转移是否错误地作为独立诉讼请求？

5. **构建起诉状内容**：

   **(1) 标题部分**：
   - 标题格式："民事起诉状"
   - 居中，二号宋体加粗

   **(2) 当事人信息**：
   - 原告信息：姓名/名称、性别、出生日期、民族、住址、联系方式
   - 被告信息：姓名/名称、性别、出生日期、民族、住址、联系方式
   - 如为企业：名称、住所地、统一社会信用代码、法定代表人
   - 缺失信息用"______"占位，提示用户补充

   **(3) 诉讼请求**：
   - **类案驱动（核心规则）**：每项诉讼请求**必须标注对应的类案编号**和裁判要旨，表述方式参考类案中获支持请求的规范表述
   - **按被告区分**：不同被告对应不同请求权基础的，分别列项，不混合
   - **主位/备位结构**：同一被告的竞合请求权，采用主位+备位结构（备位请求以"如法院认定……"开头）
   - **责任类型不得混淆**：连带清偿（全额）对应人格否认/一人公司混同；补充赔偿（限额）对应出资瑕疵；两者不可对同一被告并列主张（除非主位/备位）
   - 每项请求单独编号，表述清晰、具体、可执行
   - 典型请求项包括：
     - 确权请求（确认某项权利/合同效力）
     - 给付请求（支付款项、交付标的物、履行行为）
     - 形成请求（解除合同、撤销某行为）
   - 末项通常为"判令被告承担本案全部诉讼费用"
   - 详见 `references/complaint-format-guide.md` 中的"类案驱动撰写指南"和"法律逻辑校验规则"

   **(4) 事实与理由**：
   - **事实部分**：按时间顺序陈述纠纷经过，客观、准确、完整
   - **理由部分**：
     - **引用类案裁判要旨**：法律论证须引用类案中法院的裁判规则，不得仅凭独立法律分析
     - 引用具体法律条文（援引类案中法院引用的法律依据）
     - 结合类案裁判规则论证己方主张的合法性
     - 逻辑结构：法律规范 → 事实涵摄 → 结论
   - 参考类案中法院说理的逻辑框架和论证方式

   **(5) 证据清单**：
   - 列明拟提交的证据名称、证据形式、证明目的
   - 缺失证据标注"待补充"

   **(6) 尾部**：
   - "此致" + 有管辖权的法院名称
   - "起诉人：" + 原告签名占位
   - "____年____月____日" 日期占位
   - 附项：起诉状副本份数、证据材料清单

4. **生成 HTML 文件**：
   - 将起诉状内容填入模板
   - 设置打印友好的 CSS 样式（A4 纸张、适当页边距、宋体）
   - 保存为 `民事起诉状初稿.html`
   - 文件须可直接在浏览器中打开并通过"打印 → 另存为 PDF"下载

**输出**：`民事起诉状初稿.html` 文件，包含完整的民事起诉状初稿。

### 第四步：风险点标注

**目标**：在起诉状末尾附加风险分析区块，标注本案核心风险点及法官可能重点关注的问题。

**操作流程**：

1. **加载风险评估指南**：读取 `references/risk-assessment-guide.md` 获取风险评估框架。

2. **分析核心风险点**：
   基于案情和类案检索结果，从以下维度分析：

   - **诉讼主体风险**：
     - 原告是否适格（是否为权利主体）
     - 被告是否正确（是否为义务主体）
     - 是否遗漏必要共同诉讼当事人

   - **诉讼请求风险**：
     - 请求是否明确、具体、可执行
     - 请求金额是否有充分依据
     - 是否存在请求竞合需选择的情况
     - 诉讼时效是否届满

   - **事实认定风险**：
     - 关键事实是否有充分证据支撑
     - 是否存在举证不能的风险
     - 证据的合法性、关联性、真实性是否存在瑕疵

   - **法律适用风险**：
     - 案由选择是否准确（影响法律适用）
     - 管辖法院是否正确
     - 是否存在法律规范冲突

   - **执行风险**：
     - 被告是否有履行能力
     - 是否需要申请财产保全

3. **标注法官关注点**：
   基于类案中法院归纳的争议焦点，预测本案法官可能重点关注的问题：
   - 列出 3-5 个法官可能追问的核心问题
   - 针对每个问题给出简要应对建议
   - 参考类案中法院的说理重点

4. **写入起诉状末尾**：
   - 在起诉状 HTML 文件末尾追加风险分析区块
   - 风险分析区块使用醒目的样式（边框、背景色）与正文区分
   - 结构：
     ```
     ═══════════════════════════════════════
     【本案核心风险点】（仅供承办律师参考）
     ═══════════════════════════════════════
     
     一、诉讼主体风险
     [具体风险描述]
     
     二、诉讼请求风险
     [具体风险描述]
     
     ...
     
     【法官可能重点关注的问题】
     1. [问题1] —— 应对建议：[...]
     2. [问题2] —— 应对建议：[...]
     ...
     ═══════════════════════════════════════
     ```

**输出**：更新 `民事起诉状初稿.html`，在末尾附加完整的风险分析区块。

## Final Output

执行完毕后，向用户交付以下文件：

1. **法律关系路径表** — 第零步产出，展示全部法律关系路径、请求权基础、检索关键词组（以 `show_widget` 内联展示或写入报告）
2. **`类案检索表格.html`** — 类案对比分析表格（第二步输出）
3. **`民事起诉状初稿.html`** — 包含风险标注的完整起诉状初稿（第三步 + 第四步输出）

使用 `present_files` 工具将文件呈现给用户，并简要说明：
- 识别出几条法律关系路径及其法律依据
- 检索到多少件类案
- 起诉状的核心诉讼请求及其类案支撑
- 最关键的风险点提示
- 需要用户核实的关键事实（如有）

## Resources

### references/
- `references/complaint-format-guide.md` — 民事起诉状格式规范与写作要点，包含标准结构、各部分写作要求、法律条文引用规范、**类案驱动撰写指南**、**法律逻辑校验规则**
- `references/search-strategy.md` — 类案检索策略，包含前置搜索策略（WebSearch + 微信搜索）、中国裁判文书网和人民法院案例库的网站概述、关键词构建方法、筛选条件优先级、信息提取要点、登录操作指南
- `references/risk-assessment-guide.md` — 案件风险评估框架，包含五大风险维度评估清单和法官关注点预测方法
- `references/legal-relationship-analysis.md` — 法律关系分析指南，包含前置搜索策略、法律关系路径分析方法、常见案件类型的法律关系模板、法律逻辑校验清单

### assets/
- `assets/complaint-template.html` — 民事起诉状 HTML 模板，含打印友好样式（A4、宋体、页边距），可直接填充内容
- `assets/case-table-template.html` — 类案检索表格 HTML 模板，含表头定义和样式，可直接填充案例数据

## Important Notes

1. **第零步前置搜索（强制要求）**：在打开裁判文书网/案例库之前，**必须先完成第零步（案情分析与法律关系确认）**，通过 WebSearch 和微信搜索确定关键字和法律关系路径。不得跳过第零步直接检索类案。第零步的产出（法律关系路径表 + 检索关键词组）是第一步类案检索的输入。详见 `references/legal-relationship-analysis.md`。

2. **类案驱动原则（核心规则）**：起诉状的每一项诉讼请求、事实理由、法律适用，都**必须有类案材料支撑**，不得仅凭独立法律分析撰写。每项诉讼请求须标注对应类案编号和裁判要旨。如某项请求在检索到的类案中无先例支撑，应在起诉状中以注释形式标注风险。详见 `references/complaint-format-guide.md` 中的"类案驱动撰写指南"。

3. **法律逻辑校验（撰写前必做）**：撰写起诉状前，必须对照 `references/complaint-format-guide.md` 中的"法律逻辑校验规则"逐项检查：
   - 责任类型与被告是否匹配（连带清偿 vs 补充赔偿不能混用）
   - 诉讼请求之间是否存在冲突（竞合请求须用主位/备位结构）
   - 请求权基础与事实是否匹配
   - 常见法律逻辑错误排查（受让人连带方向、一人公司责任对象、离婚财产转移路径等）

4. **数据源访问限制（硬性停止条件）**：本技能支持中国裁判文书网和人民法院案例库两个类案数据源。若两个网站均无法访问（网络超时、服务器错误、反爬拦截、页面空白等），**立即停止全部后续流程**（第二步至第四步均不执行），不得以网页搜索或其他数据源替代。若仅一个数据源不可用，使用另一个继续流程并说明。

5. **登录依赖与反爬约束**：裁判文书网和人民法院案例库查看判决书/案例全文均需登录，且两个网站均部署了反爬系统。浏览器**必须以有头模式（headed mode，可见窗口）运行**，不得使用无头模式（headless）。如用户尚未登录，须**暂停流程**，提示用户在可见浏览器窗口中手动完成登录（包括手机号输入、验证码获取与输入、滑块/图形验证等），AI 不得自动填充登录信息或自动提交表单。用户确认登录完成后，AI 验证登录状态并继续流程。

6. **浏览器工具依赖**：本技能支持 `qqbrowser-skill`（QQ浏览器自动化）和 `agent-browser`（Agent Browser）两种浏览器工具，执行前通过 `Skill` 工具加载其中任一即可。注意元素索引/引用在页面变化后会失效，每次页面导航或 DOM 变动后须重新执行 `browser_snapshot`（qqbrowser-skill）或 `snapshot`（agent-browser）获取新索引。
   - **agent-browser 命令要点**（实测验证）：
     - 打开网页：`agent-browser open <url> --headed`（不是 `navigate`）
     - 输入文本：`agent-browser fill @eN "text"`（不是 `type`）
     - 等待加载：`agent-browser wait --load networkidle`（不是 `wait --seconds`）
     - 点击元素：`agent-browser click @eN`
     - 截图：`agent-browser screenshot <path>`
     - 关闭会话：`agent-browser close --all`
   - **agent-browser 有头模式陷阱**：`agent-browser` 默认是无头模式。若 daemon 已以无头模式启动，后续 `open --headed` 会复用已有 daemon 而**忽略 `--headed`**。解决方法：首次打开前先 `agent-browser close --all`，再 `agent-browser open <url> --headed`。
   - **登录状态检测注意**：使用 `agent-browser snapshot`（完整快照）检测登录状态，不要使用 `snapshot -i`（仅交互元素），后者可能捕获 iframe 内的登录表单导致误判。
   - **高效提取技巧**：裁判文书网搜索结果中的案件标题链接通常带有 `docId` 参数。使用 `agent-browser eval "Array.from(document.querySelectorAll('a')).filter(a => a.href && a.href.includes('docId')).map(a => ({text: a.innerText.trim(), href: a.href}))"` 可直接提取所有详情页 URL，然后逐个 `open` 访问。详情页正文使用 `eval "document.body.innerText"` 一次性获取，比反复 `snapshot` 更高效。

7. **法律免责声明**：生成的起诉状初稿仅供参考，不构成法律意见。须在输出中提示用户由执业律师审核后使用。

8. **信息准确性**：从裁判文书网和人民法院案例库提取的信息须如实记录案号、法院名称等关键信息，不得臆造或修改。

9. **隐私保护**：如案情涉及个人隐私信息，在生成的文档中对敏感信息进行脱敏处理（身份证号、银行账号等）。

