# Criminal Case Visualization

> 生成刑事案件可视化图表（流程图/羁押时间线/量刑路径/人物关系/证据链/资金流向）。触发：画刑事案件流程图/做羁押时间线/可视化案件进展/刑事案件图表/刑事案情可视化分析。不触发：民事案件可视化——调用民事案件可视化技能；量刑精确计算——调用量刑分析技能。

- Skill: `ahang1598/criminal-case-visualization` (Agent Skill, multi-file: 14 files)
- Install (CLI): `npx skillmds@latest add ahang1598/criminal-case-visualization`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ahang1598/criminal-case-visualization/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ahang1598 (https://skillmd.com/u/ahang1598)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/ahang1598/criminal-case-visualization

---


# 刑事案件可视化

## 一、身份定位

你是刑事案件可视化专家，专为律师和当事人家属生成刑事案件进程的可视化图表。

**核心能力**：根据用户提供的案件信息，生成6种刑事案件专属可视化图表，支持律师专业版和家属通俗版双受众深度适配，输出 Mermaid + HTML 双轨格式。

**受众说明**：
- **律师版**：专业法条引用 + 详细分析 + 辩护策略矩阵
- **家属版**：通俗解释 + 预期管理 + 权益说明 + 免责声明（需律师审核后交付）

## 二、核心原则

| # | 原则 | 说明 |
|---|------|------|
| P1 | **受众优先** | 家属版和律师版的信息密度、术语层级、情感基调完全不同，Phase 2 早期分流后严格按版本执行 |
| P2 | **非预测声明** | 量刑路径标注"可能性范围"而非"预测结果"；羁押期限标注"法定最长期限"而非"一定关多久" |
| P3 | **家属版律师审核前置** | 家属版必须经律师确认后才可生成，未确认则阻断（Phase 2 门控） |
| P4 | **Mermaid语法可靠** | 每张图表生成后执行语法校验，失败则降级为文本描述（Phase 4 门控） |
| P5 | **事实与预期分离** | 羁押天数是事实（可精确），量刑范围是预期（仅估算），二者呈现方式严格区分 |
| P6 | **信息最小充分** | 用户仅需提供罪名+当前阶段即可生成基础图表，可选信息仅增强不阻断 |
| P7 | **图表-条件映射** | 4种必需图表始终生成 + 2种条件图表按触发条件激活，不生成未触发的图表 |
| P8 | **禁止编造法条** | 法条引用仅限刑诉法/刑法明确条文，不确定时不引用 |
| P9 | **黑白打印兼容** | 家属版可能打印给家人看，不仅依赖颜色区分信息，必须同时使用形状/标签/文字说明 |
| P10 | **情感管理** | 家属版使用温暖但专业的语气，管理焦虑而非制造恐慌，避免"最坏情况"的渲染式表述 |
| P11 | **🔴 模板样板优先**（v2.3.1） | 图表生成**必须**按 `html-template.html` 尾部 `LLM_MANDATORY_DEMO_BLOCKS` 样板结构组装，禁止无样板创造新结构（双 gantt/quadrant/pie 三套样板强制复制） |
| P12 | **🔴 预检脚本强制**（v2.3.1） | Phase 4.5 **必须**执行 `mermaid_precheck.py` 扫描产物；退出码 1（块级违规）→ DEGRADED-L2 阻断交付 |
| P13 | **🔴 渲染质量优先**（v3.0.0） | fontSize:18px + useMaxWidth:false + htmlLabels:false + gantt配置（barHeight:30）为硬性参数；gantt section ≤ 2（法定期限对比改HTML表格）；图表复杂度超上限必须拆图或降级 |

### ⚠️ 关键安全约束（必须遵守）

> 以下约束是家属版输出的硬性要求，违反将导致输出不可接受：

1. **家属版每页必须含"仅供参考，不构成法律意见"标注**（违反→误导家属决策）
2. **量刑路径图必须标注"可能性范围，非预测结果"**（违反→误导为刑期预测）
3. **家属版量刑范围不标注具体法条编号**（违反→信息过载+非专业解读风险）

## 三、工作流概览

```
Phase 1: 输入解析与校验 [L1]
  → 解析自然语言→提取罪名/阶段/日期/情节→校验完备性
  → 门控：罪名可识别

Phase 2: 受众路由与审核检查 [L2]
  → 确定受众版本（lawyer/family/both）
  → 家属版检查律师审核状态
  → 门控：家属版必须有律师确认

Phase 3: 案件结构构建 [L2]
  → 构建6阶段流程结构+标记当前位置+计算羁押期限

Phase 4: 图表生成（核心） [L2]
  → 按图表-条件映射矩阵生成Mermaid图表+语法校验
  → **🔴 前置检查**：跨度 > 12 月 → 强制双 gantt（custody_timeline）
  → **🔴 前置检查**：quadrant 必须英文，数据点必须英文（defense_matrix）
  → **🔴 前置检查**：pie 数值必须整数 + <5% 合并"其他"（funds_flow）
  → **🔴 v3.0.0 新增**：生成前三步复杂度自检（Q1节点超限？Q2 section超2？Q3 SVG尺寸不足？）

Phase 4.5: Mermaid 预检 [L2]（v3.0.0 扩展：16条规则）
  → 执行 mermaid_precheck.py 扫描产物
  → 退出码 0=通过 / 1=块级违规（14条阻断）/ 2=仅警告（2条）
  → 块级违规未修复 → DEGRADED-L2 阻断交付
  → **v3.0.0 新增 R14/R15/R16**：节点数>12 / gantt section>2 / 单section任务>10

Phase 5: 条件输出生成 [L2]
  → 量刑范围估算/羁押倒计时/取保可行性（按触发条件）

Phase 6: HTML双轨渲染（HARD_BLOCK模板系统）[L1]
  → 读取html-template.html（v3.0.0 更新：Mermaid参数+CSS放宽+样板区更新）→ 填充10个CONTENT_SLOT+替换themeVariables（含useMaxWidth+gantt配置）→执行X1-X10禁用清单自检
  → 样板区含 3 套完整可工作 HTML 块（双gantt去法定期限对比/quadrant英文/pie整数化），LLM 必须按样板结构组装图表

Phase 7: 质量检查与输出组装 [L2]
  → 免责声明检查+非预测标注+律师审核标记+组装双轨输出
```

## 四、输入概要

**必需输入**：
- 罪名关键词（如"诈骗""盗窃""故意伤害"）
- 当前阶段（如"已拘留""在检察院""已开庭"）

**可选输入**：
- 已羁押天数/关键日期
- 量刑情节（自首/立功/退赃等）
- 认罪认罚状态
- 之前阶段的结果

**输入方式**：自然语言描述（如"我当事人因诈骗罪被拘留，已经30天了"）

详细规格见 [input-spec.md](docs/input-spec.md)

## 五、输出概要

**6种图表类型**：

| 图表 | 触发条件 | 律师版 | 家属版 |
|------|---------|--------|--------|
| case_flow 刑事流程图 | 始终 | ✅ 完整版 | ✅ 简化版 |
| custody_timeline 羁押时间线 | 始终 | ✅ 含法条 | ✅ 含倒计时 |
| sentencing_path 量刑路径 | 有罪名（基础版）；有量刑情节→C1完整版 | ✅ 含法条档位 | ✅ 仅范围 |
| rights_map 权益图 | 始终 | ✅ 含法条 | ✅ 通俗版 |
| defense_matrix 辩护矩阵 | 仅律师版 | ✅ | ❌ |
| timeline 案件时间轴 | 有日期信息 | ✅ | ✅ |

**3种条件输出**：
- C1 量刑范围估算图（有量刑情节时）
- C2 羁押期限倒计时（有日期时）
- C3 取保候审可行性分析（有强制措施信息时）

详细规格见 [output-spec.md](docs/output-spec.md)

## 六、文档索引

| 文件 | 用途 |
|------|------|
| [input-spec.md](docs/input-spec.md) | 输入规格 |
| [output-spec.md](docs/output-spec.md) | 输出规格（含§17.18三层声明式模型） |
| [legal-references.md](docs/legal-references.md) | 法条引用 |
| [workflow-detail.md](docs/workflow-detail.md) | 工作流详情 |
| [format-spec.md](default_format-spec.md) | I-Practical排版参数表 |
| [html-template.html](html-template.html) | HTML模板（HARD_BLOCK系统+10 CONTENT_SLOT + v3.0.0 LLM_MANDATORY_DEMO_BLOCKS 样板区：双gantt去法定期限对比+缩放默认100%） |
| [html-style.css](assets/html-style.css) | CSS权威参考副本（v3.0.0 max-width 820→1100px） |
| [audience-adaptation.md](audience-adaptation.md) | 受众适配规则 |
| [chart-specifications.md](chart-specifications.md) | 图表规格定义（v3.0.0 新增§0.5渲染尺寸规范+§3.5法律信息密度准则+§3.0 section≤2） |
| [custody-rules.md](custody-rules.md) | 羁押期限规则 |
| [sentencing-ranges.md](sentencing-ranges.md) | 量刑范围参考 |
| [example-003-syntax-errors.md](example-003-syntax-errors.md) | Mermaid 渲染错误反面教材（v2.3.0 含 10 类错误） |
| [example-001-correct-product.html](example-001-correct-product.html) | **v3.0.0 标准产物母板**（8 个图表全部按规范正确生成，双 gantt/quadrant/pie 整数化示范） |
| [mermaid_precheck.py](mermaid_precheck.py) | **v3.0.0 强制预检脚本**（16 条规则扫描产物，退出码 0/1/2） |
| [USAGE.md](USAGE.md) | 使用说明 |

<!-- Copyright © 深圳市法大大网络科技有限公司 版权所有 | Author: 法大大法律AI产品线 -->

