Home / Examples / Chat in the browser, nothing connected

Chat in the browser, nothing connected

The deployment shape: ChatGPT (in the browser, no connectors), variant default.

The smallest grant in the set. A reader who does not believe an agent can do much starts here, and finds that the delta is still not empty. It establishes the four objects with the fewest moving parts.

Before you scroll

Write down a number. Of the 23 capability primitives, how many do you think this deployment has? And of those, how many do you think the person who deployed it asked for? The page answers both below. Writing the guess down first is the one thing that makes a static page do any of the work the game does.

The label

One line, on the outside, for anybody. Two numbers matter: excess answers the question this document exists for, and unbounded excess is the only number on it that buying a control moves.

FieldValueMeaning
ShapeChatGPT (in the browser, no connectors), defaultThe named deployment, in the product's published words
Grant1 of 23 primitivesEverything the agent can do
Mandate1 primitivesWhat the deployer authorised and expected
Excess0In the grant, not in the mandate. The finding
Unbounded excess0Excess whose barrier is not a control. The only number a control purchase moves
Irreversible0Granted capabilities with undo: no, as published
Widest reachprojectThe furthest reach class in the grant
Measured0 of 1 rowsRows seen directly against rows derived
As at11 September 2026, pack v0.8.0The date and the source version
There is no score on this label, and there will not be one. The same ABP is dangerous in one deployment and harmless in the next and nothing about the document changed. A policy cannot be dangerous; a deployment can. Risk is a function of the ABP, the assets, the consequences and the date, and only the first of those is here. The score belongs to the risk work above it, where the assets are known and a named person signs.

1. The shape

An assistant in the vendor's environment. It reaches what you paste or upload and nothing on your machine: the vendor's environment is a boundary you did not build. DERIVED from the assess library's web tree. Browsing, if on, is the vendor's egress, not yours.

Tools in this shape: conversation and uploads. Profile version 2026-09-05, surface web.

What the reach classes mean here, which is the profile's to say rather than the grammar's: host means the vendor's environment; not your machine, tenant means nothing of yours, world means the vendor's egress, if browsing is on.

What it cannot reach, and why. A grant is as much about the boundaries that hold as the ones that do not.

WhatWhySource
your machine's filesthe vendor's environment is a boundary you did not buildassess/library.json (web: home)
your accountsno connectors are onassess/library.json (web: connect)

2. The grant, measured

Everything the agent can do: 1 of 23 primitives. Ordered irreversible first, then weakest barrier first. Reversibility is a property of the action, not a severity, and stating it as the reason is what keeps the ordering descriptive.

CapabilityUndoBarrierKnown byThe mandate
read.file.project Read the project it is working onyesnone (not a control)derivedauthorised
BarrierWhat stands in the wayIs it a control
nonenothing in the wayno
expectationa rule in prose, enforced by nobodyno
settinga switch the agent's own account can flipno
boundaryenforced above the grant, out of the agent's reachyes

3. The mandate, elicited

Chat in the browser, nothing connected. I paste things in and read what comes back. That is the whole mandate, and the honest baseline: a chat window with nothing connected should be able to do nothing else.

A mandate is elicited rather than measured, in minutes, because the deployer already knows it. This one was not: it is a first draft written to be argued with, authored 2026-09-09 by the site, as a starting point - not measured, not surveyed; the first thing to argue with. It authorises 1 primitives, refuses 14 and says nothing either way about 8. Propose a change to it.

4. The delta, derived

This delta is derived and never authored. Nobody wrote it. It is the output of a computation over the grant and the mandate, stored at /data/deltas/openai__chatgpt-web__default__chat-no-connectors.json with the version of both inputs pinned, the time it was computed and the version of the computation that produced it. The release gate recomputes it on every build and fails on a single row of disagreement, which is how a machine holds a rule that forbids the act rather than the artefact. Why this changed this morning.

Excess: 0. In the grant and not in the mandate. That is the published definition and it is wider than the set the mandate refused outright: 0 were refused and 0 were never mentioned. A capability the mandate never mentioned was not authorised, and hiding the split would be the other kind of dishonesty.

Unbounded excess: 0. The excess whose barrier is one of the first three rows: nothing, a rule somebody wrote down, or a setting the agent's own account could change. None of those bounds anything.

The delta on this shape is empty, and that is a result rather than a failure. Everything this deployment can do, the mandate asked for. An ABP that could never come back with nothing to report would not be a description, it would be a sales document, and the other four examples would be worth less for it. Note what the grant still is, though: one capability, and a record once read is exposure that cannot be unread, on the vendor's side.

Shortfall: 0. There is nothing the mandate asked for that this deployment cannot do.

The same facts, as a figure

The table above is complete and it is the wrong shape for the one question this document exists to answer, which is how much of the right hand side has nothing on the left. A mark with no line reaching it is excess.

The mandate1 authorisedThe grant1 of 23 primitivesread.file.project● read.file.projectA line means the mandate asked for it. A mark with no line is excess: 0 here, of which 0 sit at a barrier that is not a control.The glyph is the barrier. An asterisk means the effect cannot be undone.There is no score in this figure, and no axis of consequence.
Chat in the browser, nothing connected: the mandate against the grant. Every fact in this figure is in the table above it.

5. The prohibitions

The enforceable projection of the delta: one sentence per excess capability, each carrying the layer it would be enforced at and whether it is enforced today.

There are no prohibitions on this ABP, because the delta is empty. Nothing this deployment can do sits outside what the mandate asked for. That does not mean nothing is worth deciding: it means the decision was already taken when the mandate was written.
Why the barrier is on every row. A prohibition shown without its barrier manufactures assurance. All four major model providers stated in their own 2026 words that an instruction at the prompt layer can be bypassed, and the rule underneath is older than any of them: a control bounds a grant only if it is enforced by something the grant does not include. The right hand column is where a control would have to sit, not a recommendation that you buy one.

6. The provenance

Provenance. 0 of 1 capability rows on this page were measured, meaning seen directly on the thing itself. The other 1 were derived from what the deployment architecturally is, or from the vendor's published documentation. Every row traces to the published capability map, retrieved 2026-09-11T13:00:37Z, content hash sha256:d6d4ba40f1fb1f93f66. The source bytes.

No row here was obtained by probing anybody's system. A row is measured only from a system we are entitled to run, or from the vendor's own published documentation. Causing a computer to output data intending unauthorised access is an offence with no damage requirement and no research defence.

7. What this is not

This is not an assessment. Nothing here is an audit, a certification, a compliance assessment or a security review of any named product. It is an illustration of a method, using a published configuration, and every row carries its source, its date and whether it was measured or derived. No adjective is attached to any of it, and there is no score.
Validity. This describes the deployment shape as at 11 September 2026, from a twin last synchronised at no twin: these shapes are published profiles, not a synchronised environment. It is not an expiry and it does not mean stale: if the risk changed, the deployment changed, not this document.

Three clocks, and only the first is ours. An ABP is exactly as fresh as the twin, and the twin is exactly as fresh as its connection to somebody else's systems. That is a parameter rather than a defect to hide, and the gap between the second clock and the third belongs to the risk layer, because how much it matters depends on the assets.

ClockWhat it measuresWho controls it
The ABP's clockWhen the grant was last measured or calibratedUs, and it can run on events
The twin's clockWhen the twin last synchronised with the real environmentThe customer's integration
Reality's clockNever stopsNobody

Follow one capability through the model

The fifth graph rule says a path should read as a sentence in the reader's own language, and it is the acceptance test for this model:

agent chatgpt-web-no-connectors is-granted capability read.file.project bounded-by barrier none which-exceeds mandate chat-no-connectors and-is undo yes.

The four objects · The capability grammar · The barriers · This shape as JSON · This mandate as JSON