Draft and produce formatted Word document (.docx) general documents - proposals, reports, briefing docs, white papers, and other formal written materials - in Penn Carey Law style. Use this skill whenever the user asks to write, draft, or create a document that is not a memo or email: proposals, policy documents, reports, briefing materials, white papers, or any substantive standalone written work. Trigger phrases include write a proposal, draft a document, create a report, briefing doc, policy document, white paper, or any request to produce a formal standalone document. Use the law-memo skill instead for memos specifically.
Produces professional Penn Carey Law documents as .docx files — proposals, reports, briefing docs, and similar materials. Shares formatting conventions with the memo skill (Cambria, 1" margins) but uses document-appropriate structure rather than the memo header block.
This skill dispatches sub-agents for pre-delivery quality checks. Each call is guarded — the document still produces without them, but factual and style verification are weaker.
factual-reviewer — extracts discrete factual claims for verification.fact-verifier — live web/source verification of specific claims.voice-style-checker — voice, style, and AI-tell scan.Install from the agents/ directory of this skill's repo into ~/.claude/agents/.
This skill works in both Claude Code CLI and Claude.ai / Cowork. Use whichever paths exist:
~/.claude/skills//mnt/skills/user/~/Downloads/ or user-specified path (CLI) or /mnt/user-data/outputs/ (web)Every document begins with the Penn Carey Law logo centered in the title block. This is the first step of file production, not a checklist item.
Path: ~/.claude/skills/law-document/assets/PennCareyLaw_UPenn_Blue-WhiteBkrnd.png (CLI)
or /mnt/skills/user/law-document/assets/PennCareyLaw_UPenn_Blue-WhiteBkrnd.png (web).
Try CLI path first; if not found, try web path.
If neither path works, stop and tell the user — do not produce a document without it.
Sizing: The logo must be resized proportionally. The source image is 2000×358 pixels (aspect ratio 5.587:1). Target width is 2.875 inches.
cx="2628900" cy="470573"from docx.shared import Emu
# Try CLI path first, then web path
for p in [
os.path.expanduser("~/.claude/skills/law-document/assets/PennCareyLaw_UPenn_Blue-WhiteBkrnd.png"),
"/mnt/skills/user/law-document/assets/PennCareyLaw_UPenn_Blue-WhiteBkrnd.png",
]:
if os.path.exists(p):
LOGO_PATH = p
break