anthropics/matter-intake
Intake a new matter — uniform questions covering identification, conflicts, source, risk triage, materiality, outside counsel, owners, legal hold, and key dates; writes matter.md and history.md and appends a structured row to _log.yaml. Use when the user says "new matter", "intake this matter", or wants to bring a new matter into the portfolio.
npx skills add https://github.com/anthropics/claude-for-legal --skill matter-intake
~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md → risk calibration (for triage), landscape (for context, conflicts method), stakeholders (for who to loop in).~/.claude/plugins/config/claude-for-legal/litigation-legal/matters/[slug]/matter.md — full narrative intake.~/.claude/plugins/config/claude-for-legal/litigation-legal/matters/[slug]/history.md — seeded with the intake as the first entry.~/.claude/plugins/config/claude-for-legal/litigation-legal/matters/_log.yaml.Every new matter goes through the same intake so the portfolio stays comparable. Uniform rows in _log.yaml let the status skill roll up. Narrative in matter.md captures what the row can't. History file seeded here becomes the event record.
~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md — risk calibration (triage thresholds, materiality, settlement ladder), landscape (stakeholders, outside counsel bench).~/.claude/plugins/config/claude-for-legal/litigation-legal/matters/_log.yaml — to confirm slug uniqueness.contract | employment | ip | regulatory | investigation | product | otherplaintiff | defendant | claimant | respondent | investigated## Side is plaintiff, defense, or a "both — default X" variant, pre-fill the role from that default and confirm. If ## Side is varies by matter, ask cold. Never silently assume a posture the practice profile hasn't set.Before going further, run the conflicts step per ~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md → Conflicts clearance.
cleared | pending | not-run | waived~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md declares (corporate-legal | outside-counsel | system-check | informal | other). If the declared method is informal, say so — the record still captures that a counsel's-judgment check was the basis.Behavior by status:
cleared → proceed.pending → proceed with intake; flag prominently in matter.md and in the log row that conflicts are outstanding; surface again on every /matter-update and in /portfolio-status until resolved.waived → rare; requires a conflict-waiver rationale (writing the waiver is outside this skill — capture that one exists, who signed it, and where it lives).not-run → STOP. This is a gate. The skill will not create matter.md, history.md, or a _log.yaml entry until the conflicts posture is resolved. Three acceptable paths:Path 1 — Run conflicts now. Pause this intake. Clear per ~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md Conflicts clearance. Return with status: cleared or status: waived with rationale.
Path 2 — Mark pending with owner + due date. Allowed only when ~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md Conflicts clearance declares parallel-intake acceptable. Capture: who is running conflicts, when they're expected to return, what entities they're checking. Intake proceeds; matter row carries conflicts.status: pending; /portfolio-status flags it every run; /matter-update re-prompts until resolved.
Path 3 — Bypass with documented rationale. Only if the user explicitly acknowledges the bypass. Record in conflicts.override:
conflicts:
status: not-run # preserved as-is
override:
by: [user name]
date: [YYYY-MM-DD]
rationale: [why conflicts were bypassed — permanent record; does not auto-expire]
This field is visible in every /portfolio-status, every /matter briefing, and every /matter-update until removed. It is never removed by the skill — only by explicit user edit to _log.yaml after conflicts are actually cleared.
Do not proceed silently. "I'll do it later" is not an acceptable response. One of Path 1/2/3 must be chosen, and the choice is captured in the record.
This step is not about the skill deciding whether a conflict exists — that's the user's/firm's judgment. It's about making sure the check happened and the record reflects it.
How did this arrive?
demand-letter | complaint-served | subpoena | regulator-inquiry | internal-report | pre-suit-threat~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md severity bands)~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md likelihood bands)If the risk calibration in ~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md is thin, don't fake precision. Use the user's gut and note the thinness.
Against the house thresholds in ~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md:
reserved | disclosed | monitored | nonereserved: reserve amount and whether finance has been notifieddisclosed: filing and footnote location/oc-status to draft status requests)signed | pending | noneIf risk is medium or higher and no outside counsel is assigned — flag it.
From ~/.claude/plugins/config/claude-for-legal/litigation-legal/CLAUDE.md landscape — which internal stakeholders are involved?
/litigation-legal:legal-hold [slug] --issue after intake completes.One-paragraph theory:
fight | settle | investigate | waitLowercase, hyphens, year at the end. Examples: acme-v-us-2026, employment-smith-2026, ftc-inquiry-2026.
Confirm slug is unique in _log.yaml before writing.
~/.claude/plugins/config/claude-for-legal/litigation-legal/matters/[slug]/matter.md[WORK-PRODUCT HEADER — per plugin config ## Outputs — differs by role; see `## Who's using this`]
# [Matter Name]
**Slug:** [slug]
**Opened:** [YYYY-MM-DD]
**Our role:** [plaintiff/defendant/etc.]
**Status:** [status]
---
## Identification
[counterparty, jurisdiction, matter type, source]
## Conflicts
**Status:** [cleared / pending / not-run / waived]
**Method:** [corporate-legal / outside-counsel / system-check / informal / other]
**Cleared by:** [name]
**Cleared date:** [YYYY-MM-DD]
**Checked against:** [entities run]
**Notes:** [any flags cleared, waiver reference if applicable]
## Risk triage
**Severity:** [band] — [why, with reference to house severity definitions]
**Likelihood:** [band] — [why]
**Risk rating:** [high/medium/low/critical]
**Exposure:** [dollar range + non-monetary]
## Materiality
[reserved/disclosed/monitored/none — with reserve amount, disclosure location, or reasoning if "none"]
## Outside counsel
[firm, lead, engagement status, budget]
## Internal owners
[stakeholders and why each is involved]
## Legal hold
[status, date, scope]
## Key dates
[list]
## Initial theory
[one paragraph: our story, their story, pivot fact, initial posture] `[SME VERIFY — theory at intake is a working hypothesis; confirm with outside counsel before any filing or material communication that assumes this framing]`
## Open questions
[anything not yet known that matters — e.g., "insurance tender pending", "unclear whether we have coverage for X"]
---
## Seed documents
| Doc | Path / pointer |
|---|---|
| [e.g., complaint] | [path or "not yet shared"] |
~/.claude/plugins/config/claude-for-legal/litigation-legal/matters/[slug]/history.mdSeed the history file with the intake as entry zero:
# History: [Matter Name]
Append-only event log. Most recent at top.
---
## [YYYY-MM-DD] — Matter opened
[Source, who brought it in, initial triage summary, outside counsel assigned, legal hold issued yes/no.]
~/.claude/plugins/config/claude-for-legal/litigation-legal/matters/_log.yamlAdd a row per the schema. Example:
- id: acme-v-us-2026
name: "Acme Corp v. Company"
type: contract
role: defendant
counterparty: "Acme Corp"
jurisdiction: "N.D. Cal."
# status is derived from source:
# source: pre-suit-threat | demand-letter → status: threatened
# source: complaint-served | subpoena | regulator-inquiry → status: active
# source: internal-report → status: threatened (default) or active if formal process has started
status: active
stage: pleadings
source: complaint-served
outside_counsel:
firm: "Wilson Sonsini"
lead: "J. Reyes"
email: "[email protected]"
engagement: signed
conflicts:
status: cleared
method: corporate-legal
cleared_by: "K. Patel"
cleared_date: 2026-04-20
override: # populated only on Path 3 bypass
by: null
date: null
rationale: null
risk: high
materiality: reserved
exposure_range: "$2M–$5M"
internal_owners:
business_lead: "Jane Smith"
hr_partner: null
comms_contact: null
legal_hold:
issued: true
issued_date: 2026-02-15
scope: "Sales org 2023–2026"
custodians: ["Jane Smith", "R. Chen", "T. Patel"]
last_refresh: 2026-02-15
next_refresh: 2026-08-15
released: null
related_matters: []
opened: 2026-04-20
next_deadline: 2026-05-15
last_updated: 2026-04-20
path: matters/acme-v-us-2026/
Show the user the row and the matter.md content:
> Here's what I'll write. Flag anything wrong or thin before I commit.
End with the next-steps decision tree per CLAUDE.md ## Outputs. Customize the options to what this skill just produced — the five default branches (draft the X, escalate, get more facts, watch and wait, something else) are a starting point, not a lock-in. The tree is the output; the lawyer picks.
Take anthropics/matter-intake from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.