Trust & governance

It writes to SAP.
You hold the gate.

CSPeach is an AI coding agent that can change your SAP system — that's the point. It stays read-only until you ask. Every overwrite is snapshotted first, every change is isolated to its own transport, syntax-checked, activated, and verified. And you can pin any system to advisory-only, so on that system the agent proposes and never writes.

The write gate

You set how much the agent may do.

One setting decides the agent's reach on each system. It ships at approval-gated — the agent asks before every write, or once for a plan's exact object list. Set approvals = per-write and plans ask before every write too. Move it up for speed, down for caution.

Most cautious

advisory-only

Proposes, never writes

The agent reads, reviews and drafts. It shows you the change but cannot apply it. The mode a production system is pinned to.

Default
Balanced

approval-gated

Asks before each write, or once per plan object list

Outside a plan run, the agent does the work but pauses at every write, showing you exactly what it will change. In a plan run you approve the plan's object list once; anything not on it pauses again. Nothing lands without your yes.

Fastest

auto

Writes within the session

For trusted, non-production work. The agent writes without a prompt per change — every overwrite still snapshotted, and every change syntax-checked and verified.

A ceiling you set once holds across the session. Tag a system as production and its write mode is clamped to advisory-only — the agent cannot be talked, prompted or configured past that ceiling mid-session, and even a snapshot restore is blocked on a pinned system. The safe setting is the one that can't be nudged.

The path of a write

Every change takes the same road.

When the agent does change something, it passes through the same gates in the same order — the rules are built into every skill, not bolted on. Here is that road, gate by gate.

Every change takes the same road A write starts because you asked. For multi-object work the agent lays out a plan you approve, then it snapshots, writes, runs a syntax check, activates, and confirms the object really went active. If either check fails, CSPeach fixes the object and checks again, up to three tries, and takes the write again. When it still cannot pass, or the next step is one only a person can do, it stops and says what it needs; you do that step and it carries on from there. The whole road sits in its own transport and stays on the record. THE PATH OF A WRITE Every change takes the same road. ITS OWN TRANSPORT · R9 ON THE RECORD · /export audit PASSES FAILS FAILS TRIES AGAIN STILL FAILING, OR IT NEEDS YOU YOU DO THE STEP · IT CARRIES ON You ask R8 A plan you approve MULTI-OBJECT WORK R7 Snapshot Write Syntax check R10 · EVERY WRITE Activate Activation check REPORTS IF IT DIDN'T It stops and asks you SAYS WHAT IT NEEDS CSPeach fixes it and checks again UP TO THREE TRIES Broken code is never activated. The snapshot from before the write is there if you want to go back.
Read-only until you ask — then the same gates, in the same order.
R6

Read-only, until you ask default state

Nothing changes on its own. The agent reads your code, runs checks and answers questions. A write happens only because you asked for one.

R7

Snapshot first before every write

Before it overwrites or deletes a source, the agent captures the prior state. There is always a version to go back to — no exceptions, even for a one-line fix.

R8

A plan you approve for multi-object work

When a job touches more than one object, the agent lays out the full plan — object by object — and waits for your go before it starts. No surprise mass changes.

R9

Its own transport isolation

Each session's changes land in a dedicated transport, never mixed with hand-written work. Clean to review, clean to release, clean to roll back.

Checked, then verified R10

After a write, a syntax check runs. If it fails, CSPeach fixes the code and checks again — broken code is never activated. If it still cannot pass, it stops and asks you. After activation, the agent confirms the object really went active, and reports if it didn't.

On the record audit

Every write is part of the session record. Run /export audit and the agent writes out a reviewable file of what it did — the trail you hand to a lead or an auditor.

And a way back. Because every overwrite is snapshotted, a change to existing code can be restored. Press Esc twice to rewind through the write gates — the same ceilings apply, so a restore is blocked on a system pinned to advisory-only.

Whose hands

The agent acts as the developer. No shortcuts.

It works through the developer's own SAP logon — so your system's own controls decide what it can touch, and your audit log names a real person.

Your authorizations, unchanged

The agent connects as the developer's own SAP user and inherits exactly that user's privileges. It cannot reach an object the developer couldn't reach, and it holds no elevated or shared service account of its own.

SAP authorization checks are never bypassed. Whatever your roles allow is the limit; whatever they deny stays denied.

A trail you can hand over

Because the agent acts as the real developer, your change documents and change logs name that person — not a bridge user. The session's own record is exportable on demand with /export audit.

The result is a reviewable account of what changed, in which transport, by whom — the kind of trail a release or audit process expects.

Where the AI runs

Managed today. SAP stays laptop-direct.

The path to SAP is laptop-direct in every mode. Today the AI call goes through our proxy, in managed mode. Other modes are options for the future.

Where your data goes Your ABAP goes from your laptop straight to your SAP system over ADT, in every mode, with nothing in between. In every mode the CSPeach server handles sign-in and licence and serves the signed skills and routing instructions, which the laptop checks. In managed mode, the default, prompts also go through the CSPeach server at api.cspeach.dev to the AI model, so usage can be metered. Your own model key, with prompts going straight to the model, is a future option and not offered today. The CSPeach server never reaches your SAP system. Our side Your side In every mode Sign-in, signed skills and routing. Managed prompts use this path too. Managed, the default Prompts pass through us, so we can meter usage. Your own model key: a future option, not offered today. Your ABAP goes straight to SAP Over ADT, in every mode. Nothing in between. CSPeach server api.cspeach.dev Sign-in and licence Signed skills and routing instructions Usage metering for managed prompts Never reaches your SAP system AI model The model provider Your laptop Runs the cspeach CLI Your SAP system Runs the checks and activation
The path to SAP is laptop-direct in every mode.

Managed

Start with our proxy and our own model key. Prompts transit api.cspeach.dev on the way to the model provider, which today is Anthropic, so we can meter usage. The lowest-friction way to begin.

Your own model key: a future option

Not offered today. Running CSPeach on your own model key, with prompts going laptop → model provider directly, is an option for the future. Today every CSPeach call runs managed.

The full list of modes — including your own key, SAP AI Hub and local options for the future — plus the full data-flow and a plain telemetry statement, is on the security page.

One more thing, plainly

No badges. Just mechanisms you can check.

This page carries no compliance logos and claims no certifications, because we won't put a badge here we haven't earned. What it describes instead are mechanisms that are live in the product today: the write gate, the snapshot, the transport, the checks, the audit file.

We describe them; your team verifies them. If you want to see the road a write takes for real, book a demo — we run a real session on a real system.