Persistent domain experts built from bounded, auditable research.
Deepr turns research into durable beliefs, gaps, contradictions, confidence, citations, provenance, and outcomes. It prefers owned local models, then proven subscription quota, with no automatic fallback to a paid API.
| Class | Current posture |
|---|---|
| Local Ollama | Preferred for expert setup, maintenance, evaluation, and consultation after endpoint ownership is proven. |
| Prepaid plan quota | Runs only when authentication, tool confinement, remaining quota, and disabled paid overage are proven. Claude Code is the current executable adapter. |
| Metered API | No automatic fallback. Production dispatch is currently blocked pending a provider-authenticated account-control adapter. |
A budget is a ceiling, never permission to spend. Metered work requires a finite request envelope, durable reservation, immediate pre-dispatch recheck, append-only settlement, and fresh account-control evidence bound to the exact provider account, scope, and credential. A local assertion cannot create that authority. Unknown or unreadable money state fails closed.
deepr budget set 10
deepr budget status
deepr budget freeze --reason "operator stop"
deepr costs show
deepr costs doctor
deepr costs reconcile-billing provider-statement.jsonBilling reconciliation is offline and write-free by default. Paid fan-out stays disabled until one durable parent reservation covers every child, retry, verifier, tool, and synthesis call.
Windows PowerShell:
powershell -ExecutionPolicy ByPass -c "irm https://raw.githubusercontent.com/blisspixel/deepr/main/scripts/install.ps1 | iex"Linux and macOS:
curl -fsSL https://raw.githubusercontent.com/blisspixel/deepr/main/scripts/install.sh | bashInstallers use the latest verified GitHub Release wheel in an isolated pipx environment. PyPI publication is not enabled.
deepr init
deepr doctor --skip-connectivity
deepr capacity
deepr expert blueprint "My Domain Expert" --template --output expert-blueprint.json
deepr expert blueprint "My Domain Expert" --from-file expert-blueprint.json --apply --attested-by operator
deepr expert make "My Domain Expert" --local -d "The decisions this expert supports"
deepr expert consult "What should we decide next?" --expert "My Domain Expert" --localPreviewing a bounded API request makes no provider call:
deepr research "What changed in this field this month?" \
--provider openai --model o4-mini-deep-research --previewSee Quick Start, Supported Surface, and Capacity and Cost for the exact shipped boundaries and current 36 MCP tools.
uv pip install -e ".[dev,full]"
pytest tests/unit/ --ignore=tests/data -q
ruff check src/deepr/
ruff format --check src/deepr/
python scripts/check_file_sizes.py
python scripts/check_ratchets.py
python scripts/check_paid_api_boundaries.pyDo not run bare pytest: integration tests can contact real providers. The
blocking unit suite requires at least 80 percent branch coverage.