How aaicase stays safe.

Yes, AI agents have deleted production databases. They've nuked Git repos. They've shipped destructive commits without asking. We built aaicase specifically to not work that way — and we're honest about what we can and cannot promise.

Last updated: May 13, 2026

The horror stories are real

In 2025-2026, several incidents made headlines:

The common thread: broad permissions and no human in the loop. The AI was told "fix this" and given the authority to act on whatever interpretation it landed on. When it landed on the wrong interpretation, there was nothing to stop it.

aaicase is built on the opposite assumption.

What we actually do to prevent this

1. Every write requires your approval

aaicase never writes to MerusCase without showing you exactly what it's about to do — and waiting for you to type "yes" before it executes.

Here's what a real interaction looks like when filing an email:

Proposed actions — review and approve
1. ⭐ FILE on Garcia, Maria (#1023)
Activity: From: Jennifer Chen. Subject: Update QME doctor
Tags: [Email Received] [Email to Adjuster] [QME/AME Reports]
 
2. ⭐ CREATE TASK
Description: Respond to adjuster: confirm new QME doctor
Assigned: John Mitchell
Due: 2026-05-15
 
S. SKIP L. LINK to different case Q. QUIT

You can edit any field in plain English before approving: "change task to Jennifer", "drop the deadline", "tags: just Email Received", "link to Wilson instead". After every edit, aaicase re-displays the proposal so you see the final version before saying yes.

If you approve nothing, nothing happens. The MerusCase API is untouched.

2. Cases cannot be deleted

This isn't an aaicase rule — it's a MerusCase guarantee. There is no API endpoint that destroys a case file. Cases are only archived via a status change, which is fully reversible. The worst aaicase can do is misfile a document on an existing case, which is recoverable.

3. Deletes that ARE possible require explicit confirmation

For things that can be deleted (tasks, events, contacts, uploads):

4. Every write is audited

Every POST request to MerusCase appends a line to ~/.aaicase/audit.log with:

The log is append-only with mode 600 (owner-only file permissions). If something looks wrong, you can see exactly what happened, when, and what the API responded. This is the compliance trail your malpractice insurer asks about.

5. The AI's tool permissions are narrow

aaicase tells the AI it can use exactly these tools and no others:

There is no "delete this case" tool. No direct database access. No "execute arbitrary code on production." Every MerusCase modification has to go through the audited merus-fetch helper which validates requests, logs them, and uses documented MerusCase endpoints only.

6. The horror story workflow doesn't exist here

Action Rogue AI agents aaicase
Reading data Reads everything by default Reads what's needed for the task
Writing changes Executes autonomously Always asks first, waits for approval
Deleting data "It seemed inefficient" Soft-delete only, explicit confirm, audit logged
Bulk operations Loops without supervision One item at a time, approval per item
Wrong interpretation Acts on it immediately Shows proposal, you correct it before approving
Audit trail Logs, sometimes — varies by tool Every write logged to append-only file

Best effort — the honest part

The Wild West Disclaimer

We're in 2026, two years into the foundation-model era. AI is powerful but not predictable in every situation. aaicase is built with strong guardrails — but no software is perfect, and no AI is guaranteed. What follows is honest about that.

What we can't promise

The underlying AI model can have a bad day. aaicase uses Anthropic's Claude. Anthropic could ship a model update that behaves differently than expected — most updates are improvements, but model behavior isn't 100% predictable in every situation. We pin to specific model versions and monitor changes, but we can't promise the AI will never make a wrong inference.

The AI could match the wrong case. If you approve a proposal where the case match is wrong (and you don't catch it), the activity will get filed on the wrong case. The audit log will show what happened, and the activity is soft-deletable — but you'd have to manually move it. This is the same risk a paralegal has when filing mail. The mitigation is: aaicase shows you the case match and the reasoning before you approve.

MerusCase API bugs are outside our control. If MerusCase changes an endpoint, or has a bug in their REST API, aaicase will surface whatever response they give us. We verify writes by re-fetching when possible. We can't fix Merus's bugs.

Your token is on your computer. Your MerusCase API token lives in ~/.aaicase/config.json with owner-only permissions (mode 600). If someone with admin access to your computer reads that file, they have your token. That's a Windows/macOS security question, not an aaicase one. Keep your machine locked.

No prompt injection defenses against future attacks. Prompt injection — where a malicious document tries to manipulate the AI through its content — is an active area of research. As of May 2026, there are no known active attacks targeting workers' compensation document workflows. But the technology is young. If a malicious actor crafted a document specifically designed to manipulate aaicase, we don't have airtight defenses against that yet. The approval-required workflow is the main protection: even if the AI is tricked into proposing something bad, you still have to approve it before it executes.

Where We Are in AI History

It's 2026. Foundation models are powerful but not flawless. We've designed aaicase assuming the AI will occasionally make mistakes, miss things, or have unusual responses — and we've put the safeguards in to make those mistakes visible and correctable instead of silent and permanent. That's the best anyone can honestly promise right now.

What you should still do

  1. Read every proposal before approving. aaicase shows you what it's about to do for a reason. Don't reflexively type "all" without scanning.
  2. Spot-check the audit log occasionally. ~/.aaicase/audit.log shows every write. Skim it weekly.
  3. Verify deadlines independently. aaicase calculates deadlines from document content and statute citations. The math is usually right but a misread date is possible. For deadlines that matter, double-check from the source document.
  4. Don't share your API token. The token authenticates as you — every action logs to your user in Merus's audit trail.
  5. Update aaicase regularly. Type /update inside the REPL. Security and reliability fixes ship weekly.

What it comes down to

The horror stories happen when AI is given autonomous authority over consequential systems. That's not our architecture. aaicase is a supervised assistant with narrow permissions and an append-only audit log. The attorney decides every action. The AI proposes, you decide. Period.

It's not perfect. No software is. But it's a different shape than the systems that have caused those incidents — and the shape matters.

Questions about safety? Email sean@aai.dev