case-progress

Manages litigation case progress ledgers via a validated YAML write engine and CLI.

636|91|Updated Jan 7, 2026
One-click install
npx skills add https://github.com/cat-xierluo/legal-skills --skill case-progress
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: case-progress
Source: https://github.com/cat-xierluo/legal-skills/tree/main/skills/case-progress
Command: npx skills add https://github.com/cat-xierluo/legal-skills --skill case-progress

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires PyYAML, and includes scripts (resource) and references (resource) components.

What problem does it solve?

Law firms tracking cases across scattered notes and ad-hoc YAML files end up with format drift, lost deadlines, and no single source of truth for tasks, deadlines, and case stages. This Skill provides one authoritative write engine for case.yaml files so every status change is validated, auditable, and protected against accidental overwrites of lawyer-entered data.

Core Features & Use Cases

  • Single write engine CLI: show, list, add-task, set-status, add-deadline, set-stage, set-fields, validate, migrate, render, log-work, and backfill-work subcommands with schema validation, file locking, and atomic writes.
  • Human override protection: row-level source tracking (user vs ai), locked procedure stages, and a rule that closed cases are only marked manually, so AI agents never overwrite lawyer decisions.
  • Derived views and work logs: renders one-page Markdown/HTML case views that auto-refresh on every write, plus structured billable work records with auto-estimated durations.
  • Use Case: After drafting a defense statement, an agent runs the closing sync flow: it loads the case state, registers the new filing deadline with its legal basis, marks the drafting task done, logs 1 hour of work, and validates the file before reporting changes.

Quick Start

Ask the agent to show the current status of case 250609-A and then add a task to draft the appeal brief with a deadline of 2026-09-15.

Frequently Asked Questions about case-progress

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I update litigation case progress from an AI agent?

Load state with the show subcommand at session start, then write changes back through the CLI: add-task, set-status, add-deadline, set-stage, and log-work. Directly editing case.yaml is forbidden because the engine enforces schema validation and audit history on every write.

How do I track legal deadlines and court dates in YAML?

Register each deadline with add-deadline, providing a name, end date, type (response, evidence, appeal, enforcement, limitation period), and legal basis. The engine computes remaining days and flags red alerts within 7 days and orange within 30 days.

Can AI agents overwrite lawyer-entered case data?

No. Every list row carries a source field of user or ai, and the engine rejects AI writes to user-sourced rows. Locked procedure stages and closed-case status also require explicit user actor flags to modify.

How do I migrate legacy case files to a unified schema?

Use the migrate subcommand, which defaults to dry-run and only writes with --apply. It converts five legacy formats into schema v4.0, archives originals as .legacy files, and skips any case whose generated file fails validation.

Why does concurrent editing of case.yaml lose updates?

Unsynchronized read-modify-write cycles overwrite each other. The engine prevents this with a sidecar flock file locking the entire read-modify-write cycle, plus atomic replacement via temporary file and os.replace.