Skip to main content

Docketry

Working name — a local, gate-enforced port that a law firm's email flows into.

Most firms work out of their email. Docketry meets them there — without going into their email. The firm creates a dedicated intake mailbox (for example intake@yourfirm.com), points forwarding rules at it, and Docketry drains that one mailbox with credentials the firm holds. Nothing enters the pipeline that the firm didn't send across the boundary.

Docketry is the base layer of a family of small, composable open-source legal workflow tools (document classification, e-service notice parsing, citation verification, draft linting). Each plugs into the port as a gate in a declared pipeline.

What makes it different

Best practices here are code, not suggestions:

  • A message cannot cross a stage boundary without passing its gates or carrying a recorded approval from the role the manifest names. advance() is the only forward path and it re-checks every time. There is no advisory mode and no bypass flag.
  • Gates declare which pipeline stages they are meant for; binding one elsewhere is a load-time error, not a footnote in documentation.
  • Every finding and every human approval lands in an audit table on the firm's own disk.

What it is not

  • Not hosted. Docketry runs on the firm's machine. We never hold, transit, or store anyone's email.
  • Not a security product. Docketry makes no malware, phishing, or other cybersecurity claims. Its attachment and sender gates are pipeline-hygiene policy — what the pipeline accepts — nothing more. Get real security from your mail provider and endpoint tooling.
  • Not legal advice, and not a currency service. Docketry never claims any rule, deadline, or authority is up to date. It checks the inputs you give it against the sources you point it at, and it fails loudly.

Data at rest

Docketry stores messages and attachments in plaintext SQLite and files in its home directory, protected by file permissions (config is written 0600). It does NOT do application-level encryption, deliberately: an encrypted database whose key sits on the same disk is comfort, not protection. Protect a Docketry home the way you protect the rest of the client file system — OS full-disk encryption (BitLocker / FileVault / LUKS) and OS accounts. Nothing is ever copied off the machine.

Try it in sixty seconds

$ pip install docketry
$ docketry demo

demo seeds a disposable home with sample traffic — a clean service notice, a federal NEF, a hearing notice, a drifted portal template, and an unknown sender — and opens the local dashboard so you can watch the gates hold the right three and release them yourself. No mailbox, no configuration, nothing saved. (Downloadable one-file executables for Windows/macOS/Linux attach to tagged releases — double-clicking one opens this same demo.)

Quickstart

$ pip install docketry
$ docketry init --host imap.gmail.com --user intake@yourfirm.com
$ export DOCKETRY_IMAP_PASSWORD='app-password-here'
$ docketry poll        # sweep the intake mailbox once
$ docketry queue       # see anything a gate held for review
$ docketry approve 3 --gate sender-scope --by "Dana" --role paralegal
$ docketry status

The pipeline is declared in guardrails.toml in your Docketry home directory (see examples/guardrails.toml). Reading the intake mailbox is strictly read-only: messages are never marked, moved, or deleted.

Skills starter pack

skills/ ships three agent skills for Claude Code (or any Agent Skills-compatible harness): review-draft (runs verify-draft + lint on a draft), classify-document, and intake-triage. Install by copying into your project:

$ cp -r skills/* .claude/skills/

The skills are a front door, not a bypass: each one drives the same CLI commands and gates the pipeline uses, and each carries hard rules — a skill never verifies a citation from model knowledge, never applies a classification without a named human approver, and never releases a hold itself. examples/ includes three guardrail manifests to start from (default, solo-strict, litigation-team).

Evals

Each skill ships an eval suite (skills/<name>/evals/) in the claude plugin eval format. The graders encode the hard rules as tests: tool_used asserts the agent actually RAN docketry verify-draft (answering from model knowledge fails the eval even when the answer is right), min: 0, max: 0 graders assert approvals were never executed by the agent, and judge graders check the honesty of degraded-mode reporting. The eval runner is currently in early access; the suites are validated for shape in CI and runnable wherever claude plugin eval is enabled.

Requirements

Python 3.11+. The core is stdlib-only. Feature plugins declare extras (pip install "docketry[pdf,ocr]" etc.) — see FEATURES.md for the feature manifest and its dependency graph.

License

Apache-2.0.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

docketry-0.1.0.tar.gz (71.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

docketry-0.1.0-py3-none-any.whl (54.1 kB view details)

Uploaded Python 3

File details

Details for the file docketry-0.1.0.tar.gz.

File metadata

  • Download URL: docketry-0.1.0.tar.gz
  • Upload date:
  • Size: 71.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for docketry-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1766b25683c610f87eabcc09a7e8d4fbea2cbf295e9f5d85faa57b36cdb66717
MD5 16c39aec70b37f6c4cc0d43f75978e6f
BLAKE2b-256 e5d5af28a4ae3d3524345a9cd78450e9a7a4717df0211a13d939a89d85eefa3e

See more details on using hashes here.

File details

Details for the file docketry-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: docketry-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 54.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for docketry-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3683316b874cb7214c5925e72f24b1691f139f7c8926f2e1568291297b1ed05f
MD5 0c74cdf542514d835deacedeeac414f8
BLAKE2b-256 8aac1d42b50d5790314592fd22fea9a22a708783d85ea21ed302d2f9ee759852

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page