plugins/midpage/skills/draft-brief/SKILL.md
Drafts court filings — motions, memoranda of law, appellate briefs — as court-ready .docx, with Midpage research behind every citation. Use to "draft a motion to dismiss," "write the brief."
npx skillsauth add openai/plugins draft-briefInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Draft and format a court-ready filing and hand back the .docx. Briefs, motions, memoranda of
law, oppositions, replies, appellate briefs. Complaints and other pleadings are out of
scope — if asked to draft one, say so and stop. Read the shared guides first — they carry
the method this skill assumes: references/litigation-writing.md (how to write it),
references/court-rules.md (how to find the governing rules), references/citations.md (how
every cite links), and references/legal-docx.md (rendering). The research method is below —
it is the heart of this skill.
analyzeDocketReport for posture and the operative filings, analyzeDocketFiling to read
what they actually say). Every record fact you later assert carries a linked filing cite.references/litigation-writing.md. Before doing even more research, settle on structure
and arguments based on your preliminary research.references/court-rules.md: case orders → judge's
individual practices → local/ECF rules → federal baseline. Capture length limits,
font/margins/spacing, required sections, caption form, certificates, TOC/TOA triggers —
each linked to its source. Surface conflicts (the more specific layer controls; show both).references/litigation-writing.md: theme stated up front, point headings
that argue, rule synthesis not book reports, quotes woven into prose, adverse authority
confronted head-on.brief profile (references/legal-docx.md). Thread any rule-set
spacing/font/margin through D.builders("brief", { lineSpacing }); defaults stand when
rules are silent. Validate the rendered file against the verifiable requirements (length,
font, margins, spacing, required sections, certificates).All law comes from the Midpage tools this session. search finds candidates; findInOpinion
previews; analyzeOpinion is what permits a citation — no case is cited without it.
jurisdictionType, circuits/courts/states, dates when recency matters); binding
authority first, persuasive labeled as such. If you filter publishStatus, run a parallel
unknown query too (for California, default to published plus unknown). Need exact
wording? Stop guessing in search — run findInOpinion on a promising case.highlights show why a case matched — previews only,
never quote them. treatment gauges whether it's good law and how heavily relied on.
findInOpinion is the free double-click before an analyzeOpinion call.analyzeOpinion it and
pull the authorities the opinion itself leans on (the rule it states usually quotes the case
you actually want); then search its key holding language as its own query to find later
cases applying it. A case the court's own opinions repeatedly cite is worth more than three
you found cold.analyzeOpinion gate, on every case you cite. Pass a question naming the exact
element. Check doesNotAddress first — if your point is listed, the case does not stand
for it, however close the language looks. Build sentences from supportedPropositions
(each carries a cite-ready proposition, a verified quote, and a deeplinkURL). Lead with
core_holding over supporting_analysis; never sell background as the holding. Carry
scope qualifiers into your sentence. A concurrence or dissent (opinionSection) is never
presented as the court's holding. Surface negative treatment honestly — if you must use a
caution/negative case, say so.analyzeOpinion it too —
that's what step 4's confrontation is built from.analyzeOpinion; record facts from
analyzeDocketFiling. No invented case, quote, pin cite, statute, or rule, ever.doesNotAddress, distinguish holdings from dicta and majority from
concurrence/dissent, surface negative treatment.development
Use when the user wants to spin up / create / launch / provision a DigitalOcean droplet (or "a remote dev box on DO") and connect to it from Codex as a remote SSH workspace.
data-ai
Search through Microsoft Teams chats or channels, triage unread or recent activity, draft follow-ups, and manage Planner tasks through connected Teams data.
tools
Motion / animation context for the `use_figma` MCP tool — animating Figma nodes via manual keyframes, animation styles, easing, and timeline duration. Load alongside figma-use whenever a task involves adding, editing, or inspecting animation on a node.
development
SwiftUI ↔ Figma translation. Use whenever the user mentions Swift, SwiftUI, iOS, iPhone, or iPad — in EITHER direction — translating a Figma design into SwiftUI (design → code), or pushing SwiftUI views / screens / tokens back into a Figma file (code → design). Triggers on phrases like 'implement this Figma design in SwiftUI', 'build this screen in Swift', 'push this SwiftUI view to Figma', 'mirror my Swift code in a Figma file', or whenever a Figma URL appears alongside `.swift` files / an `.xcodeproj`. Routes to a direction-specific reference doc; loads alongside `figma-use` for the code → design path.