DSAIL Quickstarts Guides Compare REST MCP tools Errors Legal Support

"Quickstart: Claude Code"

Install the dsail package, run dsail init once, and let Claude Code compile and check a policy from the repository.

For a coding agent working in a repository. Turn a written policy into rules a program can check, keep the rules in the repo, and call the hosted service for every check.

1. Install

pip install dsail
dsail init

dsail init writes three things into the repository, all idempotent: a Claude Code skill at .claude/skills/dsail/SKILL.md carrying the authoring sequence and grammar, a dsail entry in .mcp.json that launches the stdio proxy dsail mcp, and a marked stanza in CLAUDE.md. Commit them; every later session, by anyone, finds DSAIL without being told.

Or install the plugin instead of scaffolding the repository — the same skill and the same server entry, for every repository you open. The public package repository is a Claude Code marketplace:

/plugin marketplace add JaxonAI/dsail
/plugin install dsail@jaxon

(pip install dsail first either way; the plugin's server entry launches dsail mcp.) A connector enabled in claude.ai also registers itself into Claude Code, so a team that has already added DSAIL there needs neither step.

2. One command

Ask Claude Code, in the repository:

Enforce our expense policy: receipts over 75 USD, nothing over 5,000 USD.

It restates the policy, asks you to confirm, writes policies/expenses.dsail, compiles it through the dsail_compile tool (the proxy forwards to the hosted REST door over HTTPS), and replays a few adversarial claim dictionaries against its own draft before showing you anything. An evaluation credential is obtained automatically on the first call; nothing to sign up for.

3. A result

dsail check policies/expenses.dsail --claims claims.json --summary
receipt_over_75   FALSE
within_cap        TRUE

For review by a person, the agent calls dsail_open_review: the proxy starts the same review widget the chat clients render at a localhost link, opens your browser, and the agent repeats the link. Approval there is recorded on the service against the exact hash. dsail serve policies/expenses.dsail is the same page as a command.

What the agent gets

If the first call fails saying outbound network access is blocked, the message names the one-time organisation-level fix; relay it verbatim.

Sharing with colleagues

Saved rulesets belong to a workspace — yours, plus one per team you are in:

dsail login                                    # once; the agent will tell you if you need it
dsail team create compliance
dsail team invite team-abc123 bob@acme.example # a single-use link you pass on yourself
dsail copy expenses --to compliance --from personal
dsail workspaces                               # where you can work, and where you are

dsail login exists because membership is about people, and the API key your programs carry names a workspace rather than somebody who can be asked. Signing in leaves that key exactly where it is. Full walkthrough: share policy rulesets with colleagues.

Next: Quickstart: REST for the production integration, or the REST API reference.