Autonomous SAP Engineering
AI that understands your SAP.And does the work.
AgentOS learns your existing custom code, dependencies and business rules — then implements, verifies and documents the change.
Works in your development system. Every change waits for your approval.
Prevent overlapping provider contracts while preserving the existing LEGACY exception.
Change Lead · execution
- In progress: Requirement analyzed
- Pending: Custom code searched
- Pending: Dependencies traced
- Pending: Existing business rule identified
- Pending: Changing 3 objects
- Pending: ATC passed
- Pending: 12 / 12 tests passed
- Pending: Ready for review
The film
One SAP change, recorded end to end.
A requirement goes in. AgentOS finds the rule nobody documented, makes the change, verifies it and asks a person to approve. A real run on an SAP ECC sandbox, sped up where the agents wait.
The demo
From change request to verified SAP change.
Give AgentOS the requirement. It discovers how your existing implementation works before it changes anything.
CTR-412Request · from Jira
Prevent overlapping provider contracts for the same customer while preserving the existing LEGACY exception.
- — Overlap rejected across all providers of a customer
- — Cancelled contracts do not count
- — LEGACY contracts keep working
Understand · read from SAP, Jira and ServiceNow
- custom objects analyzed
- –
- relevant objects identified
- –
- previous incidents
- –
- existing tests
- –
- existing validation flow
- –
Dependency map · ZCL_CONTRACT_VALIDATION
Waiting for analysisZCL_CONTRACT_VALIDATION
Class · validate( ) · 312 lines
Jira
CTR-412
requests the change
Interface
ZIF_CONTRACT_VALIDATION
implemented by
CDS view
ZI_ProviderContract
same validity fields
DB table
ZPROV_CONTRACT
selected from
BAdI
ZBADI_CONTRACT_CHECK
calls it on save
ABAP Unit
ZCL_CONTRACT_TEST
8 tests · none for LEGACY
Incident
INC0048213
fixed here in 2023
AIF interface
ZCTR / CONTRACT_IN
posts source LEGACY nightly
Class
ZCL_CONTRACT_FACTORY
injects the validator
Class
ZCL_PROVIDER_CONTRACT
calls validate( )
AIF interface
ZCTR / CONTRACT_IN
posts contracts with source LEGACY
Class
ZCL_CONTRACT_FACTORY
create( )
Class
ZCL_PROVIDER_CONTRACT
save( ) → validate( )
Class
ZCL_CONTRACT_VALIDATION
returns early for LEGACY
DB table
ZPROV_CONTRACT
overlap SELECT never runs for LEGACY
Existing LEGACY exception discovered
ZCL_CONTRACT_VALIDATION returns early for contracts with source LEGACY. It was added for INC0048213, and the AIF interface ZCTR / CONTRACT_IN still posts LEGACY contracts every night. No document mentions it. No test covers it.
See the code it foundA staged scenario on a development system; object names are illustrative. The same journey in the real console is further down.
Context
Before AgentOS changes your SAP, it understands it.
Enterprise SAP systems contain years of business logic hidden inside custom code, integrations, tickets and project history. AgentOS builds the context required to understand how the implementation actually works.
What the context explains
The LEGACY early return is intentional (INC0048213), still in use (AIF nightly load) and untested. Keep it, and add a test for it.
Legacy code is business knowledge. AgentOS makes it usable.
ZCL_CONTRACT_VALIDATION
validate( ) · source = LEGACY
Requirement
CTR-412
overlap check per customer
Incident
INC0048213 · 2023
migration batch failed on overlap
Previous change
DEVK901734
added the LEGACY early return
Interface
AIF ZCTR / CONTRACT_IN
still posts LEGACY nightly
CDS
ZI_ProviderContract
exposes SourceSystem
BAdI
ZBADI_CONTRACT_CHECK
second entry point on save
Test
ZCL_CONTRACT_TEST
no test covers LEGACY
Documentation
Contract design v2
does not mention the exception
Incident
INC0048213 · 2023
migration batch failed on overlap
Previous change
DEVK901734
added the LEGACY early return
Code
ZCL_CONTRACT_VALIDATION
returns early for LEGACY
Interface
AIF ZCTR / CONTRACT_IN
still posts LEGACY nightly
Test
ZCL_CONTRACT_TEST
no test covers it
Discovery
It finds the logic that documentation missed.
The rule was in the code all along. AgentOS reads it, explains it and works out what a change would break.
41METHOD zif_contract_validation~validate.4243 " Migrated contracts keep their historical validity (INC0048213)44 IF is_contract-source = zif_contract_validation=>c_source-legacy.45 RETURN.46 ENDIF.4748 SELECT contract_id, valid_from, valid_to49 FROM zprov_contract50 WHERE provider_id = @is_contract-provider_id51 AND customer_id = @is_contract-customer_id52 AND contract_id <> @is_contract-contract_id53 INTO TABLE @DATA(lt_existing).5455 LOOP AT lt_existing INTO DATA(ls_existing).56 IF zcl_validity_period=>overlaps(57 is_a = CORRESPONDING #( is_contract )58 is_b = CORRESPONDING #( ls_existing ) ).59 RAISE EXCEPTION NEW zcx_contract_validation(60 textid = zcx_contract_validation=>overlap61 contract_id = ls_existing-contract_id ).62 ENDIF.63 ENDLOOP.6465ENDMETHOD.
AgentOS analysis
Current behavior
Standard provider contracts reject overlapping validity periods — but only against contracts of the same provider.
Exception discovered
Contracts with source LEGACY bypass this validation (lines 43–46).
Impact
Changing generic overlap validation without preserving this exception would break the migration flow through AIF ZCTR / CONTRACT_IN.
- Objects affected
- 3
- Dependencies
- 7
- Regression risk
- Medium
Plan
Understand first. Change second.
AgentOS reasons about the implementation before it writes code. The plan names the rule it must keep and the objects it will touch.
Implementation plan
CTR-412- 1
Extend overlap validation
Check every provider of the customer, not only the same provider.
- 2
Preserve existing LEGACY exception
Keep the early return; AIF ZCTR / CONTRACT_IN depends on it.
- 3
Reuse current validity helper
zcl_validity_period=>overlaps( ), no second date comparison.
- 4
Add regression tests
Four ABAP Unit tests, including LEGACY overlap still allowed.
- 5
Run ATC
Default check variant, priority 1 and 2 must be clean.
- 6
Verify dependent flows
Factory create, validity change, BAdI on save, AIF inbound.
Affected objects
- CLASZCL_CONTRACT_VALIDATION
- CLASZCL_PROVIDER_CONTRACT
- CLASZCL_CONTRACT_TEST
Execution
Then it does the work.
Not a suggestion in a chat window. AgentOS writes the change into your development system, activates it, reads it back from SAP and proves it with ATC and ABAP Unit.
Change Lead · DEV · client 100
- In progress: Editing ZCL_CONTRACT_VALIDATION
- Pending: Updating ZCL_PROVIDER_CONTRACT
- Pending: Updating ZCL_CONTRACT_TEST
- Pending: Activating 3 objects
- Pending: Reading changed objects back from SAP
- Pending: Running ATC
- Pending: Running ABAP Unit
- Pending: Implementation verified
| 43 | 43 | " Migrated contracts keep their historical validity (INC0048213) | |
| 44 | 44 | IF is_contract-source = zif_contract_validation=>c_source-legacy. | |
| 45 | 45 | RETURN. | |
| 46 | 46 | ENDIF. | |
| 47 | 47 | ||
| 48 | 48 | SELECT contract_id, valid_from, valid_to | |
| 49 | 49 | FROM zprov_contract | |
| 50 | WHERE provider_id = @is_contract-provider_id | ||
| 51 | AND customer_id = @is_contract-customer_id | ||
| 50 | " CTR-412: one valid provider contract per customer and period | ||
| 51 | WHERE customer_id = @is_contract-customer_id | ||
| 52 | AND status <> @zif_contract_validation=>c_status-cancelled | ||
| 52 | 53 | AND contract_id <> @is_contract-contract_id | |
| 53 | 54 | INTO TABLE @DATA(lt_existing). |
Pending: ATC PASSED
0 priority 1 · 0 priority 2 findings
Pending: 12 / 12 TESTS PASSED
8 existing · 4 new
Pending: NO REGRESSION DETECTED
Factory, validity change, BAdI, AIF inbound
From requirement to tested SAP change.
Evidence
Every change comes with evidence.
AgentOS does not finish with “here is some code”. It hands your team a reviewable engineering package: what was asked, what changed, how it was verified — and the record to prove it.
Requirement
Prevent overlapping provider contracts while preserving LEGACY behavior.
Changed
3 SAP objects
- CLASZCL_CONTRACT_VALIDATION+3 −2
- CLASZCL_PROVIDER_CONTRACT+2
- CLASZCL_CONTRACT_TEST+4
Verification
- Activation passed
- ATC passed
- 12 / 12 tests passed
- Dependent flows verified
Evidence
- Code diff3 objects · +9 −2
- Dependency analysis12 objects · 7 dependencies
- ATC reportvariant DEFAULT · 0 findings
- Test resultsABAP Unit · 12 / 12
- Execution history41 steps · every tool call
Transport request is created only after approval. Nothing leaves DEV before a person decides.
Recorded runs
Seven unscripted runs on real SAP systems.
Each video is one recording of AgentOS at work: six on SANDBOX_DEV100, an SAP ECC 6.0 EhP8 system, and one on the SAP BTP ABAP environment. Nothing is staged in the agents’ answers; long waits are sped up and the speed is shown on screen.
A report dumps, and the agents fix it
A revenue report from 2006 stops with a short dump when a user runs it. AgentOS monitoring picks up the dump, and one click on Analyse in chat starts a conversation with the dump details. The agent finds why: a 2012 change reads only the first 10 airlines, and the code never checks whether the airline was found. After you agree, the fix goes on a transport, is reviewed, and is tested in SAP.
- Change
- CHG-0337
- Transport
- DEVK900079
- Agents
- Change Lead, ABAP Developer, Reviewer, SAP Tester
- Request to tested fix
- 34 minutes; 15 of them the transport form waited for a person
- Test
- PASS; no new dump in ST22
The legacy programs (prefix ZKX_LGC_) are demo objects we wrote in the style of 2000s custom code for these recordings, and say so in their header. We do not show customer code. Transports, test verdicts and times are taken from the AgentOS session logs.
In the real console
The same work, in the product.
Live screens from our demonstration SAP landscape — a change request, the incident that caused it, the session that built it and the knowledge it left behind.
Change request
The requirement in the owner’s words, the process beside it.
CHG-2841 started as an e-mail from the head of order management. Specialist agents took it through analysis, plan, implementation and review; the business and technical approvers signed off by name.
- Six steps, each owned by a specialist agent
- Analysis and plan approved by named people
- Tests waiting for a person to decide
Change request
The requirement in the owner’s words, the process beside it.
CHG-2841 started as an e-mail from the head of order management. Specialist agents took it through analysis, plan, implementation and review; the business and technical approvers signed off by name.
- Six steps, each owned by a specialist agent
- Analysis and plan approved by named people
- Tests waiting for a person to decide
Incident
An AIF incident, traced to its root cause.
INC-3921: a sales order from an IDoc was created for a credit-blocked customer. The SAP AIF Specialist read the interface, the customizing and the code, read-only, and found the missing business rule.
- Root cause across AIF, BAdI and custom code
- Recommendation approved by two people
- Permanent fix raised as CHG-2841
Execution
A session that reports what it did — and what it did not.
The ABAP Developer built the change on a branch, ran the static checks and said plainly what was left for a person: pull it into the development system, activate, run ABAP Unit and ATC.
- Every tool call recorded
- Cost, duration and tokens per session
- No step claimed that did not happen
Knowledge
The custom code, mapped and linked to the work.
The class the change created sits in the middle; around it, the classes that read it and every request and document that named it.
- Built from your ABAP repository
- Linked to requests, decisions and incidents
- Searched by the agents themselves
Governance
Autonomous where it can be.Governed where it matters.
Agents work on their own inside the grants you give them. Your process names the gates where a person decides, and what an agent is not granted, it cannot do.
- Granted
- Read code and dictionary
- Analyze dependencies
- Write on a branch in development
- Needs a person
- Approve the analysis
- Approve the design
- Release the change
- Not granted
- Production systems
- Tools outside the agent’s grants
AI speed. Enterprise control.
Organizational knowledge
People change. Projects change.The work stays with the company.
Requirements, analysis, decisions, implementation history and evidence become reusable organizational knowledge. The next task does not start from zero.
Every completed task makes the system more useful for the next one.
CTR-412 · March
DeliveredPrevent overlapping provider contracts
- Requirement
- Analysis
- Objects
- Decision
- Implementation
- Tests
- Evidence
CTR-431 · June
In progressNotify the provider when an overlap is rejected
Starts with context from CTR-412
- Dependency map of ZCL_CONTRACT_VALIDATION↺ Analysis
- Decision: keep the LEGACY exception↺ Decision
- Regression tests in ZCL_CONTRACT_TEST↺ Tests
- AIF ZCTR / CONTRACT_IN as a dependent flow↺ Objects
Use cases
Three jobs. One way of working.
Autonomous SAP Modernization
From legacy custom code to Clean Core, object by object.
- Legacy custom code
- Dependency analysis
- S/4 and Clean Core assessment
- Remediation
- ATC
- Tests
- Evidence
Change Delivery
From Jira ticket to tested SAP change.
- Jira requirement
- Understand existing implementation
- Change ABAP
- Verify
- Approve
Incident Resolution
From incident to root cause to fix.
- Incident
- Analyze logs and integrations
- Identify root cause
- Propose or execute fix
- Verify
ECC → S/4HANA
Custom code ready for S/4HANA before the conversion starts.
Remediation of thousands of custom objects is where agents pay off first. AgentOS imports ATC readiness results and usage data, groups findings by simplification item and works through them in waves, each wave an ordinary change with a transport and a test.
- 01Inventory of custom objects, packages and interfaces
- 02Usage data from SUSG or SCMON to retire dead code
- 03ATC readiness checks run remotely against ECC
- 04Findings by simplification item with the SAP Note
- 05Waves of fixes built by the developer agent on transports
- 06Before/after runs to prove unchanged results
- 07Approval by your team before anything moves on

Not another copilot
From AI assistance to AI execution.
| Aspect | Traditional AI coding assistant | AgentOS |
|---|---|---|
| Sees | The prompt | The existing SAP landscape |
| Outputs | Code | A verified change with evidence |
| Context | Developer finds it | Finds existing business logic |
| Changes | Developer applies them | Changes the right objects in SAP |
| Verification | Developer runs tests | Activation, ATC, ABAP Unit, dependent flows |
| Afterwards | Context disappears | Knowledge is preserved |
Platform
The execution platform for autonomous SAP engineering.
A governed execution layer between AI and the enterprise.
AI models
AgentOS
Knowledge
code, tickets, decisions
Execution
ADT, ATC, ABAP Unit, Git
Policies
what may run, where
Approvals
named people decide
Evidence
every step recorded
Your systems
Works with the systems your SAP teams already use.
- SAP ECC
- SAP S/4HANA
- SAP BTP
- ADT
- ATC
- GitHub
- abapGit
- Any MCP server
- Jira · in progress
- Microsoft 365 · in progress
Enterprise runtime
A controlled runtime for AI engineering.
Each AgentOS session runs in its own throw-away container with a defined context, tools, permissions, connections and network. Secrets stay on the platform — it makes the call on the agent’s behalf. The agent receives only what it needs for the task.
Isolated agent runtime
Context
only the objects and history this task needs
Tools
Git, SAP via ADT, any MCP server — per task
Permissions
read, write DEV, never production
Connections
named systems, scoped credentials
Gates
where a named person decides
Network
allow-list per environment
Pilot
Four weeks on your development system.
We install AgentOS in your environment, connect it to a DEV system and let the agents work on real items from your queue: incidents, change requests, a first wave of S/4HANA remediation or a Fiori app on BTP. You judge the result on transports.
- Week 1Installation, SAP connections, users and authorizations, your conventions as project knowledge.
- Weeks 2–3Agents work on 10–20 agreed items from your backlog.
- Week 4Review with your team: lead time, cost per item, quality, audit trail.
Your SAP already contains the knowledge.AgentOS turns it into action.
See how AgentOS understands your existing implementation and takes a real SAP change from requirement to verified result.
Autonomous SAP Engineering



