Skip to main content
The esheria CLI is a thin client over the public Regulatory Pack API. It does not read Postgres, S3, pipeline artifacts, or internal evidence folders directly. The CLI is catalog-first and multi-jurisdictional. It never selects Kenya or any other jurisdiction implicitly: discover packs, inspect readiness, and pass the chosen pack ID to pack-specific commands. Version 1.2.2 is production/stable. The distributed CLI, Python client, and MCP software are Apache-2.0 licensed. Hosted services, regulatory data, outputs, and Esheria trademarks remain subject to the Esheria Terms of Service, Privacy Policy, and customer agreements.
Preserve readiness labels, limitations, citations, and trace IDs in downstream workflows. Esheria output is regulatory intelligence, not legal advice or a substitute for qualified counsel.

Install

Configure

Create a self-serve data token in the dashboard first:
  1. Open https://dashboard.esheria.ai/.
  2. Sign up or sign in.
  3. Create a token from API Tokens.
  4. Store the one-time token secret as ESHERIA_API_KEY.

Smoke Test

Use esheria packs list --jurisdiction EU, --jurisdiction SG, or another catalog value to select a different jurisdiction. See the complete production catalog.

Core Commands

The dashboard remains the recommended UI for signup, one-time token reveal, usage review, billing checkout, subscription state, and workspace settings.
Dashboard-created data tokens and OAuth connector tokens are read-only. Workspace, token, billing, and subscription CLI commands require a management token. Do not put management tokens in browser code, shared shell profiles, CI logs, or agent-host configuration.
Commands that create/check source watches, rebuild graph projections, or update persisted customer lifecycle state change hosted data. They require monitoring:write, graph:write, or customer:write respectively; regulatory:read alone is rejected. Create a least-privilege operator token with a management token:

Additional Fact Surfaces

The CLI also wraps canonical fact surfaces for versions, diffs, change events, penalties, and legal review audit. The equivalent API calls are:

Output Formats

Output flags can appear before the command or on the leaf command:
Supported output controls are:
Use --envelope when you need the full API envelope. Use --raw when you want the returned payload without table formatting.

Examples

List Packs

Check Applicability

Verify A Claim

The last command may return unsupported_capability when the selected pack has no enabled claim evaluator. That does not affect obligations, applicability, calendar, evidence, penalties, relationships, or export for the pack.

Troubleshooting

Repository-local wrappers remain available as bin/esheria and bin/esheria-mcp for contributors working from a checkout.