From chittyos-legal
Pull, view, and update Cook County Circuit Court docket for a specified case. Triggers on "docket", "court date", "next hearing", "case status", "pull docket", "court activity". REQUIRES an explicit case parameter (case number or registry slug) — refuses to run without one. Scrapes live docket via browser automation, updates the master timeline CSV, and syncs to ChittyLedger.
How this skill is triggered — by the user, by Claude, or both
Slash command
/chittyos-legal:docketThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill **requires** an explicit case identifier on every invocation. It MUST NOT default to any particular case. Accept either:
case parameterThis skill requires an explicit case identifier on every invocation. It MUST NOT default to any particular case. Accept either:
case_number — the Cook County case number (e.g. 2024D007847)case_slug — a registered case slug (e.g. arias-v-bianchi); resolve through the chittyrouter case registry or chittyevidence-db evidence_cases tableIf the invocation does not specify a case, stop and ask the caller for one. Do not guess.
For each case, expect the following configuration shape (populate from the case registry, not from skill defaults):
| Field | Required | Source |
|---|---|---|
caseNumber | yes | invocation parameter |
division | yes | case registry (e.g. "Domestic Relations" = value 4) |
calendar | yes | case registry |
court | yes | "Circuit Court of Cook County, Illinois" |
room | no | case registry |
judge | no | case registry |
plaintiff / defendant | no | case registry |
url | constant | https://casesearch.cookcountyclerkofcourt.org/CivilCaseSearchAPI.aspx |
Only as an illustration of the shape — do NOT use this as a default:
| Field | Value |
|---|---|
caseNumber | 2024D007847 |
division | Domestic Relations (value=4) |
calendar | DRCAL23 |
court | Circuit Court of Cook County, Illinois |
room | 2108, Richard J Daley Center |
judge | Johnson, Robert W. |
All paths MUST be scoped by case slug. Never share a master timeline CSV across cases.
| Store | Location pattern | Format |
|---|---|---|
| Master Timeline | <cases_root>/<case_slug>/Master_Timeline.csv | CSV |
| Notion Evidence | <notion_root>/ChittyLedger/CL - Evidence/<case_slug>/ | Markdown files per entry |
| Case Checkpoints | ~/.claude/chittycontext/checkpoints/<case_slug>/ | JSON |
| Notion Projects DB | 999c414c-06c5-4064-a51b-921193830968 | Notion API (case filtered by case_slug) |
| Notion Actions DB | 6b52d580-f810-4009-964d-478039c144e1 | Notion API (case filtered by case_slug) |
All commands below require case=<slug or number>. Examples use case=<case_slug> as a placeholder.
/docket pull case=<case_slug>Pull the full live docket from Cook County Clerk website for the specified case.
/docket new case=<case_slug>Pull only entries newer than the last entry in that case's master timeline CSV.
/docket next case=<case_slug>Show the next scheduled court date for the specified case.
/docket summary case=<case_slug>Show a summary of recent activity (last 30 days) and next court date for the specified case.
/docket update case=<case_slug>Pull live docket and update that case's master timeline CSV with new entries.
case parameter from invocation.CASE_BY_NUMBER / CASE_BY_SLUG or chittyevidence-db evidence_cases).ToolSearch: select:mcp__claude-in-chrome__tabs_context_mcp
ToolSearch: select:mcp__claude-in-chrome__tabs_create_mcp
ToolSearch: select:mcp__claude-in-chrome__navigate
ToolSearch: select:mcp__claude-in-chrome__read_page
ToolSearch: select:mcp__claude-in-chrome__computer
ToolSearch: select:mcp__claude-in-chrome__javascript_tool
mcp__claude-in-chrome__tabs_context_mcp (createIfEmpty: true)mcp__claude-in-chrome__tabs_create_mcphttps://casesearch.cookcountyclerkofcourt.org/CivilCaseSearchAPI.aspxThe site is ASP.NET WebForms. Do NOT use JavaScript to set form values — they get cleared on postback. Use direct interaction:
computer type action with <caseNumber> from the resolved case (e.g. 2024D007847 for arias-v-bianchi)Use read_page with:
filter: "all"depth: 10max_chars: 80000The page structure returns:
Each activity entry is structured as:
Activity Date: MM/DD/YYYY
Event Desc: [description]
Comments: [optional comments]
Extract from the accessibility tree:
/docket update)CSV Format (7 columns):
Date,Event,Entity,Document Title,Description,Evidence Source (file),Link
Mapping from docket to CSV:
| Docket Field | CSV Column |
|---|---|
| Activity Date (reformatted YYYY-MM-DD) | Date |
| Event Desc | Event |
| "Cook County Circuit Court" | Entity |
| "Cook County online docket" | Document Title |
| Comments (or Event Desc if no comments) | Description |
"Docket: <caseNumber>" (from resolved case) | Evidence Source |
| (empty) | Link |
Append new entries to the CSV in chronological order. Do NOT duplicate existing entries.
Output a formatted summary:
## Docket Pull — <case_slug> — [Date]
**Next Court Date:** [date] at [time] — [type] — Room [room]
### New Entries Since Last Pull
| Date | Event | Comments |
|------|-------|----------|
| ... | ... | ... |
### Docket Totals
- Total entries: [N]
- New since last pull: [N]
- Master timeline updated: [yes/no]
Evidence Source contains the expected caseNumber.If invoked without a case parameter, the skill MUST:
case specified — refusing to run. Provide case=<slug> or case_number=<number>."Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub chittyos/chittymarket --plugin chittyos-legal