From liminal-agents
Run the Forensic agent against an inbound artifact (.eml or .pdf) — extracts provenance, authentication state, CRM internal IDs, recipient routing, UUIDs in body text — and returns structured receipts. The Forensic agent refuses interpretation, verdict, synthesis, and action-proposal — those route to Auditor / Skeptic / Strategist / Operator if the user invokes them separately.
How this skill is triggered — by the user, by Claude, or both
Slash command
/liminal-agents:forensic <path-to-eml-or-pdf><path-to-eml-or-pdf>This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Forensic is a bounded provenance-and-authentication agent. Give it a `.eml` or `.pdf` and it returns:
Forensic is a bounded provenance-and-authentication agent. Give it a .eml or .pdf and it returns:
kind='self' addresses appear across the artifactsForensic does NOT interpret. It does NOT verdict. It does NOT propose action. It returns receipts.
node ${CLAUDE_PLUGIN_ROOT}/skills/forensic/forensic.js --file=<path>
Returns JSON with vault_id (deliberation id), artifact_id, forensic_read (the structured receipts), and forensic_prose (the agent's short declarative summary).
Show the user:
application_id, record_id, etc)Then surface the agent's prose verbatim.
If the user wants synthesis, verdict, or action-proposal, run those agents separately via /check (introspective) or /agency (agency-set). Forensic refuses these out-of-lane — that's the feature, not a bug.
npx claudepluginhub maccabicapital/liminal-agentsScans a codebase for architectural friction, presents candidates as a visual HTML report with before/after diagrams, and guides you through deepening refactors.