Policy Centralbeta
github.com/Policing-Lab/policy-centralRequest a link

Policy Central

An open-source agent for writing and reviewing policy documents. Ask it to check a manual, adapt or revise a policy, or draft a new one. It finds clauses that conflict with or repeat your other policies, and the clauses a change affects. Each finding quotes both clauses, and each change waits for your approval.

the changed clauseEnter the information regarding any missing individual into LEADS/NCIC within six hours of the report.

the other clauseRecords Unit personnel shall enter and update the missing individual’s information in LEADS/NCIC within two hours.

Contradiction. The change gives the Records Unit six hours to enter a missing individual into LEADS/NCIC, but the other clause requires Records Unit personnel to enter it within two hours. Both cannot be followed. high

A real finding, from a public police directives manual with a tracked edit. Four more below.

It is for anyone who keeps a body of rules consistent: police policy and accreditation managers first, and the policy offices of cities, counties, agencies and universities. What it finds are suggestions for a person to check, not conclusions.

The beta is by invitationEach person gets their own link; nothing to install and no account. Write to support@policinglab.org for one.

Try it now

What it finds

The same check, in full. A police directives manual of about 10,000 clauses, with five edits made as tracked changes, checked with “Check my changes.” Four of the five edits had a problem; the fifth, a wording change, was left alone.

Findings to review5 findings, 1 min 42 s, $0.14
1

Contradiction: The change gives the Records Unit six hours to enter a missing individual into LEADS/NCIC, but the other clause requires Records Unit personnel to enter it within two hours. Both cannot be followed.high

the changed clauseEnter the information regarding any missing individual into LEADS/NCIC within six hours of the report.

the other clauseRecords Unit personnel shall enter and update the missing individual’s information in LEADS/NCIC within two hours.

2

Matching change: The change extends the chemical-test window from three to five hours, but the other clause still treats failing to submit within three hours as a refusal. It relies on the old three-hour window.high

the changed clauseAdminister the chemical test(s) within five hours of the violation or traffic crash.

the other clauseDoes not submit to the test within three hours.

3

Matching change: The other clause requires reading the BMV 2255 consequences within two hours, a step set relative to the old three-hour test window. It may need review now that the change allows testing up to five hours.medium

the changed clauseAdminister the chemical test(s) within five hours of the violation or traffic crash.

the other clauseWithin two hours of the violation or traffic crash, read and show the test and refusal consequences on form BMV 2255 to the violator.

4

Weakened wording: “Shall” became “should”: the duty to obey the law is now a recommendation.medium

the changed clauseDivision personnel should obey the Constitutions of the United States and the State of Ohio and all federal, state, and local laws.

5

New term not defined: “Authorized Duty Commander” is not in the definitions.medium

the changed clauseThe information contained herein reflects the Division’s ability to effectively respond to changing needs. Questions go to the Authorized Duty Commander.

Columbus Division of Police directives, a public manual; the five edits were made for the test. Each finding quotes the clauses it rests on, and every quote is checked against the document before it is shown.

How it works

How Policy Central works, on one request The request “Bring our juvenile interview policy in line with the new state law.” The agent A language model in a loop. Plans the steps, chooses a tool, sends it what it needs, reads what comes back. asks The reviewer Answers its questions. Accepts or rejects each finding and each change. picks a tool, as often as needed Tools, with what each does for this request THE AGENT SENDS TOOL THE AGENT GETS BACK Searching the documents “Is this section about juveniles?” asked of all 10,000 sections Scan a decision model the 38 sections that are, out of 10,000, each with a probability “Does this section contradict the new law?”, for those 38 Check decision model, then large 6 findings, each quoting the section and the line of the law “Show me those 6 sections.” Read the document itself their full text, with the sections before and after for context “Page 212: what is in this table?” View a page a vision model the table read out: the age limits by offence, which the text omits Changing the documents those 6 sections and “bring each in line with the new law” Draft worker models, one a section 6 proposed edits, shown as tracked changes for review the 6 proposed edits Verify code, no model every quote matches the document; one cross-reference now points nowhere the edited document and “match our directive template” Format code, no model the document in the template’s headings, fonts and numbering Also: New document (a title and a template in, an empty document to fill, section by section, out). Findings and tracked changes The 6 findings and the 6 edits, each quoting its section. Review, then Word out Accept or reject each. Download. Kept with every run: what was searched, each probability, what was read, what each step cost. or round again with another tool
Figure 1. One request, start to finish. The agent turns it into steps and picks tools, as many times as the job needs, sending each what it needs and reading what comes back. Nothing changes the document until you accept it. The numbers are illustrative.

Add your manual as a PDF, a Word file or text (sample manuals are loaded so you can try it without one), ask in plain words, and review what comes back. The Word file you download has the findings as comments or the changes tracked.

What it can do

Check a manualEvery clause against the clauses it should agree with: contradictions, repeated rules, or both. Up to 300 pages.
Compare policiesOne policy against the rest of a library, or against a model policy or state law you add.
Adapt or revise a policyAsk for the change in plain words. It comes back as tracked changes in Word, with the clauses elsewhere that the change affects.
Check a draftA draft’s tracked changes, each against the clauses it affects: contradictions, repeats, clauses that now need a matching change, undefined terms, weakened duties.
Draft a new policyA new document built in your Word template, each section added as a change for you to review.
Word in, Word outUpload PDF, Word or text. Download the manual with the findings as comments, or the changes tracked.
A record of every runWhat was compared, ranked and read, and what each step cost, kept with the run.

Free during the beta

Each visit has a free allowance of about $2 of model time, enough for a manual or two. Your workspace is temporary and is deleted after an hour without use.

Privacy

Kept
What you type, your accept and reject choices, your feedback, the organisation and role you give if you choose to, and for uploads the title, the page count and the findings’ one-line summaries.
Not kept
Document text, full quotes, your address. There are no accounts. Uploads are deleted with the workspace, after an hour without use.

The app runs in The Policing Lab’s own AWS account; pairs of clauses go to the ranking model through OpenRouter. Don’t upload confidential drafts.

Open source

The code is open source under the AGPL-3.0 licence: github.com/Policing-Lab/policy-central. Run it on your own machine with your own model keys, or read how it works.

Research

Who made it

Policy Central is made by The Policing Lab, a nonprofit in Miami that works with police departments on data and policy.

Feedback and contact

There is a feedback button inside the app. For anything else, write to support@policinglab.org.