sebbi.pro
Plan Lock

Injected text can't change what your agent does

OpenAI says prompt injection may never be fully solved inside a model, because a model can't tell instructions from data. Plan Lock doesn't ask it to. The agent's plan is locked from the user's own request before it reads anything untrusted, and every tool call is checked against that plan. Whatever an email or web page says, it can't add an action, change who something is sent to or how much is paid, or go over a limit.

Watch an attack fail

The user asks: “Summarise my inbox and email the summary to me.” One email in the inbox has hidden instructions in it.

What it guarantees

What no system can guarantee: injected text can still change the wording of content the plan already allows - what a summary says. Plan Lock stops it from turning into actions; a person reading the output is the check for wording.

Add it to any agent

import requests
H = {"Authorization": "Bearer YOUR_KEY"}
# 1. before reading anything untrusted
lock = requests.post("https://sebbi.pro/x/planlock/commit", headers=H, json={
 "task": user_request, "user_values": ["alice@northshore.co.uk"],
 "steps": [{"tool": "read_inbox"},
           {"tool": "send_email", "args": {"to": {"from_user": True}, "body": {"any": True, "untrusted_ok": True}}}]}).json()

# 2. before every tool call the model asks for
ok = requests.post("https://sebbi.pro/x/planlock/check", headers=H, json={
 "plan_id": lock["plan_id"], "token": lock["token"], "tool": name, "args": args,
 "sources": {"to": "user", "body": "untrusted"}}).json()
if ok["decision"] != "ALLOW":
    raise PermissionError(ok["reasons"])
Works with any model and any framework. Runs on the sebbi engine, 50p a month.

Where the idea comes from

The principle - fix the control flow from the trusted request so untrusted data can never change it - was published by researchers at Google, Google DeepMind and ETH Zurich as CaMeL (Defeating Prompt Injections by Design, 2025), as a research interpreter you run inside your own agent. Plan Lock is that principle as a live service any agent can call, with every decision sealed and checkable by anyone.
AI news
TechCrunchGrok releases the first seven minutes of its AI-generated ‘Odyssey’9hTechCrunchAI delivers ‘zero financial payoff’ to most companies, Apollo economist says14hTechCrunchThe hottest AI wearables and gadgets you should know about17hThe Verger/opensource just banned AI, non-English speakers, and more17hThe VergeGoogle’s AI search changes upended online publishing19hThe VergeBlue Planet III is keeping the rough edges in the age of AI1dTechCrunchThe AI graveyard: a running list of projects and startups that didn’t make it1dThe VergePennsylvania will require labels on AI-generated ads1dTechCrunchForced to pick, Grok’s AI model chooses Republicans. OpenAI’s picks Democrats.1dWiredThe PHP Meltdown Shows How AI Makes Bugs More Exploitable1dBBC NewsUK to invest £100m in 'world first' AI Biosecurity Lab2dThe VergeOpenAI now trains its frontier AI models with no internet access2dBBC NewsThe Indian workers filming their work to train AI2dTechCrunchGrok releases the first seven minutes of its AI-generated ‘Odyssey’9hTechCrunchAI delivers ‘zero financial payoff’ to most companies, Apollo economist says14hTechCrunchThe hottest AI wearables and gadgets you should know about17hThe Verger/opensource just banned AI, non-English speakers, and more17hThe VergeGoogle’s AI search changes upended online publishing19hThe VergeBlue Planet III is keeping the rough edges in the age of AI1dTechCrunchThe AI graveyard: a running list of projects and startups that didn’t make it1dThe VergePennsylvania will require labels on AI-generated ads1dTechCrunchForced to pick, Grok’s AI model chooses Republicans. OpenAI’s picks Democrats.1dWiredThe PHP Meltdown Shows How AI Makes Bugs More Exploitable1dBBC NewsUK to invest £100m in 'world first' AI Biosecurity Lab2dThe VergeOpenAI now trains its frontier AI models with no internet access2dBBC NewsThe Indian workers filming their work to train AI2d