LLM-Mailroom constellation monorepo β one checkout, ten packages, zero cross-repo import friction.
Multi-agent legal-document pipeline Β· Prompt-experiment loop Β· Deterministic scoring Β· Pixel-art visualizer Β· Walking-office-floor mailroom Β· Corpus EDA
Canonical architecture & taxonomy: See the canonical Mailroom pipeline and the v7 taxonomy specification. These are the root-level sources of truth for the pipeline visualization and v7 terminology.
βββ corpus feeds (colocated data) ββββββββββββββββββββββ
β Enron-Evaluation-Environment claims-data-eda β
β mailroom-corpus-eda (mailroom-corpus, P0βP6 EDA) β
ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββ
βΌ
βββ prompt-experiment loop βββββββββββββββββββββββββββββ
β llm-entity-extraction (GEPA prompt versions) β
ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββ
βΌ
ββββββββββββββββββββββββββ βββββββββββββββββββββββββββββββββββββββββ
β llm-dojo-scoring ββββββββββ llm-mailroom β
β shared scoring engine β import β LangGraph multi-agent pipeline β
ββββββββββββββββββββββββββ ββββββββββββββββββββ¬βββββββββββββββββββββ
βΌ
βββ surfaces βββββββββββββββββββββββββββββββββββββββββββ
β The-Mailroom (visualizer) agent-mailroom β
β local-mailroom-sandbox llm-mailroom-graph β
ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββ
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Digital-Mailroom β this standalone repo β
β (central truth; every box lives in it) β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
All ten packages live in packages/ as git subtrees and mirror independent Exios66/* repositories. GitHub Pages sites exist for six of them.
| Layer | Repository | GitHub/Vercel Pages |
|---|---|---|
| Hub (central truth) | LLM-Mailroom-Services/Digital-Mailroom |
Dispatch Board |
| Corpus feed | Exios66/Enron-Evaluation-Environment |
exios66.github.io/Enron-Evaluation-Environment |
| Corpus feed | Exios66/claims-data-eda |
exios66.github.io/claims-data-eda |
| Corpus EDA + HF | Exios66/Mailroom-Corpus-EDA |
exios66.github.io/Mailroom-Corpus-EDA |
| Prompt experiments | Exios66/llm-entity-extraction |
exios66.github.io/llm-entity-extraction |
| Scoring engine | Exios66/llm-dojo-scoring |
β |
| LangGraph pipeline | Exios66/llm-mailroom |
β |
| Pixel visualizer | Exios66/The-Mailroom |
exios66.github.io/The-Mailroom |
| Walking floor | Exios66/agent-mailroom |
β |
| Local sandbox | Exios66/local-mailroom-sandbox |
β |
| Knowledge graph | Exios66/llm-mailroom-graph |
exios66.github.io/llm-mailroom-graph |
| Package | Role | Source |
|---|---|---|
llm-dojo-scoring |
Deterministic scoring, error-analysis, visualization & interpretation suite | Exios66/llm-dojo-scoring |
llm-mailroom |
LangGraph multi-agent legal-document pipeline (FastAPI producer) | Exios66/llm-mailroom |
llm-entity-extraction |
Prompt-experiment loop: prompt versions Γ models over CUAD/LegalBench/MAUD | Exios66/llm-entity-extraction |
The-Mailroom |
Pixel-art visualizer console + hosted Observatory (Langfuse as source of truth) | Exios66/The-Mailroom |
agent-mailroom |
Self-contained mailroom: one state machine per document, specialist agents at desks | Exios66/agent-mailroom |
local-mailroom-sandbox |
Local-first experiment sandbox (Ollama, vLLM, llama.cpp) | Exios66/local-mailroom-sandbox |
Enron-Evaluation-Environment |
Enron corpus EDA β pipeline-ready correspondence dataset | Exios66/Enron-Evaluation-Environment |
claims-data-eda |
CMS DE-SynPUF EDA β pipeline-ready insurance_claim dataset | Exios66/claims-data-eda |
llm-mailroom-graph |
Derived knowledge-graph site of llm-mailroom | Exios66/llm-mailroom-graph |
mailroom-corpus-eda |
mailroom-corpus corpus EDA (P0βP6) + centralized HF upload helpers | Exios66/Mailroom-Corpus-EDA |
Virtual members (
package = false) have no build system and are not installed β they exist so their data/code stays colocated in the single checkout.
Digital-Mailroom/
βββ AGENTS.md # workspace rules & cross-package conventions
βββ README.md # this file β the canonical entry point
βββ pyproject.toml # uv workspace definition
βββ uv.lock # single lockfile for all packages
βββ .gitignore
βββ governance/ # task board (TASKS.md) & governance tooling
βββ docs/
β βββ v7-taxonomy.md # canonical v7 corpus/live-taxonomy terminology
β βββ assets/
β β βββ mailroom-pipeline.svg
β βββ wiki/
βββ scripts/
β βββ board_state.py # board machine-readable parser + CI gate
β βββ sync_packages.py # subtree β standalone repo sync
β βββ taxonomy_parity.py # taxonomy drift detector (CI gate)
β βββ release_chain.py # hub changelog β semver tag β version gate (HUB-024)
β βββ deploy_gh_pages.py # local GH Pages deploy (no Actions)
βββ packages/ # all ten packages (subtree + virtual)
One workspace, one lockfile, one virtualenv:
uv sync # install workspace + dev group into .venv (editable)
uv run pytest ... # run against the shared venvPer-package test suites:
uv run pytest packages/llm-dojo-scoring/tests
uv run pytest packages/llm-mailroom/src/tests
uv run pytest packages/llm-entity-extraction/tests
uv run pytest packages/The-Mailroom/tests
uv run pytest packages/agent-mailroom/tests
uv run pytest packages/local-mailroom-sandbox/tests
uv run pytest packages/mailroom-corpus-eda/testsCross-package dependencies resolve to workspace sources during development ([tool.uv.sources] in each member pyproject); published git pins remain in dependency lines for release builds.
Every package mirrors an independent Exios66/* repository. The monorepo is the development source of truth; scripts/sync_packages.py keeps the mirrors reconciled.
python scripts/sync_packages.py status # live status
python scripts/sync_packages.py pull --all # sync from upstream
python scripts/sync_packages.py push --package llm-mailroom
python scripts/sync_packages.py push --package llm-mailroom --patch # content-only fast path (DMR-070); never for deletion-bearing deltas
python scripts/sync_packages.py snapshot # cursor verificationThe board and GitHub surface are kept machine-readable and mutually consistent.
The live dispatch board is https://digital-mailroom-theta.vercel.app (issue-backed; see board-site/ and docs/wiki/Served-Board.md):
python scripts/board_state.py status # live board snapshot (--json for machines)
python scripts/board_state.py check # board invariants; exit 1 on structural errors
python scripts/github_labels.py audit # label taxonomy drift (CI gate)
python scripts/taxonomy_parity.py # doc-class taxonomy drift (CI gate, HUB-019 Β§65A)
python scripts/release_chain.py status # hub release chain: tags, changelog sections, hub version
python scripts/release_chain.py check # chain invariants; exit 1 on structural errors
python scripts/release_chain.py cut X.Y.Z # cut a hub release (dry run; --apply writes, --tag tags)
./docs/wiki/sync-wiki.sh # push docs/wiki/ source to the GitHub wiki (--check for drift)See .github/ISSUE_TEMPLATE/, .github/PULL_REQUEST_TEMPLATE/, .github/labels.json, scripts/board_state.py, and governance/TASKS.md for the full governance contract.
The GitHub wiki is mirrored from docs/wiki/.
The monorepo is the development source of truth. Upstream repositories remain the release vehicles for deployed surfaces; propagate package changes with scripts/sync_packages.py push when a release is cut, then bump published pins as required.
llm-mailroom Β· llm-entity-extraction Β· llm-dojo-scoring Β· The-Mailroom Β· agent-mailroom
Built by the governed evaluation family under LLM-Mailroom-Services (Exios66 Β· grantmooslin) Β· 2026