Agent guidance

ABAP has the most varied set of any door, because the same language spans very different targets and the entries divide by how much reach each brings with it. claude-abap-skills carries Clean ABAP into the session and ships no connector at all, routing each operation to the MCP server that should answer it; claude-abap-dev and ARC-1 Skills are procedures for one task at a time that run on servers you connect yourself; rap-skills splits RAP guidance by deployment target across branches; SuperClaude for SAP installs its own server and labels every system it may write to; sapcli-claude-plugin layers agents over an established command line; sap-basis-ops covers the OS and database plane everyone else skips; and abap-offstack-aunit runs the tests with no system at all.

Overview

SAP SHIPS

SAP's part here is two things that are not skill files. SAP Developers MCP, the hosted server of developers.sap.com, hands an agent SAP's tutorials, missions and concept graph over MCP, for ABAP and the other stacks alike, and Clean ABAP is SAP's published ABAP convention, a document with nothing to install.

Not covered: At knowledge. What an agent can then read or change in a system comes from an MCP server or a command line, and a skill says what to write and what to avoid, never what exists. SAP's ABAP conventions are published as Clean ABAP, a document with nothing to install, and SAP's own skills registry keeps each listed skill in its publisher's repository, so a repository listed there is published by whoever owns it.

SAP Developers MCP serves this door from the umbrella and gives an agent SAP's learning content to cite, not rules to follow. SAP's own skills registry indexes other people's repositories and does not host their code, so an ABAP skill listed at SAP's address is not SAP publishing it.

THE COMMUNITY ADDS

The skills and rules an agent follows, and the set is the most varied of any door because the same language spans very different targets. Rules read into the session beside procedures for one task at a time, RAP guidance forked by deployment target, clean core audits against SAP's released-objects information, the operating system and database plane beneath the stack, and a test harness that runs ABAP Unit with no system at all. Several package SAP's own Clean ABAP for an agent, and several state which MCP server each kind of operation should be routed to instead of shipping a connector. Three newer shapes sit beside them: abap2UI5 for VS Code writes the agent files of an abap2UI5 project into an existing one, Klystron is a plugin of process and domain skills over an MCP server that runs inside the application server, and Werkbank is a desktop workspace with a catalogue of ABAP, CAP and UI5 skills.

Artifacts21

21 of 21 artifacts
ArtifactSignals
Desktop apps2
sap-odata-explorerRust CLI and desktop app for exploring SAP OData services
Signals
Functional boundary
WerkbankLocal desktop workspace for AI conversations with SAP connectors
Signals
none
IDE extensions2
ABAP remote filesystemVS Code extension editing ABAP systems over ADT as a filesystem
Signals
none
abap2UI5 for VS CodeVS Code extension to preview, activate and lint abap2UI5 apps
Signals
Functional boundary
MCP servers3
KlystronMCP server in ABAP inside the application server, with agent skills
Signals
Commercial
SAP Developers MCPHosted MCP server of developers.sap.com tutorials and missions
Signals
none
sap-ai-dev-toolkitMCP proxy pinning an agent's ABAP tools to one SAP system
Signals
none
Skills14
abap-offstack-aunitAgent skill for off-stack ABAP Unit tests and an abaplint gate
Signals
Functional boundary
abap-skillsSeventeen agent skills for ABAP development
Signals
none
ARC-1 SkillsTwenty-two agent skills shipped with arc-1
Signals
Functional boundary
claude-abap-devFive ABAP workflows for Claude Code on existing MCP servers
Signals
none
claude-abap-skillsClaude Code plugins with Clean ABAP rules and templates
Signals
Functional boundary
claude-sap-kitClaude Code plugin adding Custom_* tools to arc-1
Signals
Functional boundary
DanKromp/skillOverflowCollection of 41 agent skills, 37 for SAP development tasks
Signals
none
rap-skillsRAP skills delivered branch-per-target for each deployment
Signals
No license
SAP Power for KiroSAP skills for the Kiro IDE
Signals
Functional boundary
sap-basis-opsRunbook skills for Basis operations at the OS and database layer
Signals
Functional boundary
sapcli Claude Code PluginAgents and skills that drive sapcli instead of ADT
Signals
No license
sapskillsAgent skills for Clean ABAP, ADT in VS Code and guardrails
Signals
none
secondsky/sap-skillsForty SAP development plugins for coding agents
Signals
Functional boundary+1
SuperClaude for SAPClaude Code plugin with an ABAP MCP server and write guards
Signals
Functional boundary

Tasks4Beta

CoversCovers, under conditionsStated not supportedAssessed, not knownNot assessed
Get an agent to write ABAP that follows Clean ABAP3 covers, 1 under conditions

A developer wants the ABAP an agent writes to follow SAP's Clean ABAP conventions without the rules being pasted into the prompt each time, and wants what it wrote read back against them.

About how the conventions reach the agent and in what shape. The conventions themselves are Clean ABAP and belong to clean code; running a linter or ATC over the result mechanically is static analysis. Whether the code a reader gets is actually clean is not something any of these records establishes.

CoversABAP remote filesystemSAP's coding standards distilled for an agent, shipped as one of seven knowledge packs inside a Visual Studio Code extension and loaded by GitHub Copilot on its own when it applies. The guidance travels with the thing that already reaches the system, so it is not a separate install and nothing has to be wired up for it.

Remaining work: Install the extension and hold a Copilot subscription. The packs are documented as loading in Copilot; the README does not state that another client reads them, and the extension has to stay open as the connection bridge.

Open artifact →

Coversclaude-abap-skillsThe clean-abap plugin carries rules its README calls universal, written into a CLAUDE.md each skill reads when it is invoked, with commands for a review and a refactor beside them. The repository states it is not an MCP server and ships no connector, so what it contributes to this outcome is the rules and the read, never the check against a system.

Remaining work: Install the plugin in Claude Code. A review it produces is a reasoned read of the code; what ATC or a linter says about the same code comes from somewhere else, and the repository's other plugin scopes itself to the ABAP Cloud development model rather than to classic code.

Open artifact →

CoverssapskillsOne of the three skills in the repository, applied when an agent creates, refactors, reviews or explains an ABAP artifact, and the README names SAP's own style guide repository as where it comes from. It installs on its own through the skills command line, so the Clean ABAP rules arrive without the other two skills.

Remaining work: Run the install. The skill states the situations it applies in and the agent decides to read it; the README names no client the skills install into, so which assistant picks them up is the reader's to establish.

Open artifact →

Covers, under conditionsclaude-abap-devA sequence of tool calls rather than a rule file: abaplint for the mechanical rules beside a reasoned read for what a linter misses, with each rule cited to the Clean ABAP style guide. The skills find their servers by tool name, so the review runs against whichever ABAP MCP server a person already has configured rather than one this ships.

Conditions: At least one of mcp-abap-adt or vibing-steampunk is connected, which is where the source comes from An abaplint MCP server exposing LintAbap and FixAbap, or the public abaplint command line, for the lint step

Remaining work: Connect the servers. Without system access the workflow has no source to read, and without abaplint the mechanical half of the review does not run.

Open artifact →

Get RAP patterns that match the target system1 covers, 2 under conditions, 1 not known

A developer building a RAP business object wants the patterns the agent follows to be the ones valid for the system it will be deployed to, rather than advice averaged across BTP ABAP Environment, S/4HANA Cloud and on-premise.

About what the agent is told before it writes, and how the guidance is scoped to one target. Activating the objects, running the ATC check and carrying the change in a transport are reached through an MCP server and belong to agent access to your code. Whether a generated business object works is not something any of these records establishes.

Coversclaude-abap-skillsRather than forking by target, the repository scopes a whole plugin: the abap-cloud-rap plugin carries ABAP Cloud and RAP rules read when a skill is invoked, and the targets it states are the BTP ABAP Environment and S/4HANA under the ABAP Cloud development model. The scoping happens once, when the plugin is chosen, rather than per session.

Remaining work: Install the plugin, and know that it is the ABAP Cloud model being followed: a classic codebase is not what these rules are written against. The repository ships no connector, so activation and ATC come from a server you connect.

Open artifact →

Covers, under conditionsARC-1 SkillsTwo of the twenty-two skills answer this outcome from the generation side: one scaffolds a complete RAP OData service stack from a description, with generation aware of the provider contract, and the other implements determinations and validations in a behaviour pool that already exists, reading the class in a structured way and editing it with the version in mind. Neither states a deployment target of its own.

Conditions: [arc-1](artifact:arc-mcp-arc-1) is connected and configured, which its skills README states is required for every skill that touches ABAP

Remaining work: Connect the server, since every skill that touches ABAP needs it, and check the generated stack against the target: the provider contract is accounted for in the generation, and which contract applies is a fact about the system.

Open artifact →

Covers, under conditionsrap-skillsThe distribution is the contribution. Its README states that the syntax, the available APIs, the BDEF patterns and the tooling constraints differ between BTP Steampunk, S/4HANA Cloud and on-premise, and the repository answers that by putting each target on its own branch, so the checked-out playbook only references patterns valid for that target. Five skills sit on each branch, from scaffolding a managed business object to diagnosing activation errors and runtime dumps.

Conditions: The branch matching the deployment target is the one checked out, since the guidance is correct for that target and not for the others Only the two BTP ABAP Environment branches are available; the S/4HANA Cloud public, private and on-premise branches are marked planned A VSP MCP server is configured, which the README names as the bridge between the agent and the SAP system

Remaining work: Check out the branch that matches the target, which is the step the whole idea rests on, and connect a server for anything that touches the system. Two of the five branches are available today: BTP managed and BTP unmanaged with BAPI wrappers.

Open artifact →

Assessed, not knownabap-skillsThe repository ships a rap skill beside its sixteen others, and its abap-cloud skill is where the repository states which development model it answers against. What the rap skill itself says about deployment targets was not read in this pass, so whether it scopes its patterns is not established.

Remaining work: Read skills/rap/SKILL.md and record whether it states a target. Until then the entry is listed here as unassessed for this outcome rather than as an option that does or does not scope.

Open artifact →

Keep an agent's ABAP inside clean core3 covers, 2 under conditions

A developer wants the agent to stay inside what the system allows — released APIs, and knowing which clean core level an object sits at — whether it is writing new code for a cloud system or auditing custom code that already exists in a classic one.

About the rules and the audit procedure an agent is handed. Which objects SAP has actually released is SAP's information and is read at the time of the audit, usually from a documentation server; running the ATC check itself is static analysis. Whether an extension would pass an SAP review is not something any of these records establishes.

Coversabap-skillsThe one place in the corpus that writes SAP's clean core level concept down in full: levels A to D, and which authorisation object decides whether a developer may create Standard ABAP objects at all rather than only ABAP for Cloud Development. It is also the one place the repository states which development model its seventeen skills answer against.

Remaining work: Install the skill. It states what the levels mean; which level a given object sits at is read from SAP's released-objects information, which this does not carry.

Open artifact →

Coversclaude-abap-skillsThe abap-cloud-rap plugin carries ABAP Cloud and RAP rules read when a skill is invoked, among them the released-API surface and the allowed @AbapCatalog annotations, and ships a command that audits objects for clean core compliance.

Remaining work: Install the plugin. The rules apply with nothing connected, on source a person pastes in; the audit command needs a server to read the objects it is auditing, and the repository ships no connector of its own.

Open artifact →

Coverssap-ai-dev-toolkitA skill installed beside the server the package generates, covering clean core, released extensibility and side-by-side extension design with a risk classification. It answers the design question — whether the extension belongs in the system at all — rather than auditing objects one at a time.

Remaining work: Run the installer and pick the assistants the skills install into. The skill states the design rules; the server installed beside it is what reads the system, and transport release is deliberately left outside the proxied surface.

Open artifact →

Covers, under conditionsARC-1 SkillsOne of the twenty-two skills shipped in arc-1's own skills directory: it takes a package of custom code and sorts every Z or Y object into the clean core levels, using a documentation server for the classification and ATC for the findings. The unit of work is a package rather than an object, which is the shape a cloudification survey takes.

Conditions: [arc-1](artifact:arc-mcp-arc-1) is connected and configured, which its skills README states is required for every skill that touches ABAP [mcp-sap-docs](artifact:marianfoo-mcp-sap-docs) is connected, which the audit uses for the level classification

Remaining work: Connect the servers and work through the buckets. The skill produces the classification; deciding what to do with each object, and the transport that carries the change, stays with the developer.

Open artifact →

Covers, under conditionsclaude-abap-devThe clean-core-check workflow reads existing code and reports which SAP objects it uses, the clean core level of each for the system type, and SAP's named successors. The released-objects list it compares against comes from a documentation server rather than from the skill, and the repository's guardrail is that a finding it cannot read is reported as unknown rather than as fine.

Conditions: [mcp-sap-docs](artifact:marianfoo-mcp-sap-docs) is connected, since SAP's released-objects list comes from it At least one of mcp-abap-adt or vibing-steampunk is connected for access to the code being audited

Remaining work: Connect the two servers, and read the report: the audit names the objects and their levels, and replacing a classic call with its released successor is the developer's work.

Open artifact →

Work on ABAP with an agent and no system connection2 covers, 1 under conditions, 1 no, 1 not known

A developer wants to review, write or test ABAP with an agent on a machine that has no connection to an SAP system — a serialised repository checked out, or source pasted into the session, and nothing else.

About what an agent has to work with when nothing is connected: the packaged knowledge it is handed, and the tooling that does on the local machine what a system would otherwise do. What a connected agent can read, change, activate or run in a live system is agent access to your code, and an entry that offers both is assessed here for its off-system half only. This record does not say that working without a system is equivalent to working with one, and the contributions state where the difference falls.

Coversabap-offstack-aunitThe skill sets up a harness and then gets out of the way: the abaplint transpiler and open-abap-core turn serialised ABAP into JavaScript and the repository's own ABAP Unit tests run on Node, locally and in a CI job the scaffold installs. Its README states that nothing requires a provisioned SAP system, which is the plainest answer to this outcome in the corpus.

Remaining work: The ABAP has to be abapGit-serialised into a Git repository, Node 22 or later available locally and in CI, and the CI has to be GitHub Actions. The agent also makes three judgement calls the README names, and puts them to the developer where it cannot infer them.

Open artifact →

Coverssap-basis-opsThe guidance is complete without any reach of its own: each skill produces the command sequence for a given system, database and operating system, cited to its source and with the checks to run before and after, and running it is a separate decision that goes through an SSH or shell server the person supplies. The skills bundle no credentials and the repository states they never auto-run a destructive command.

Remaining work: Read the sequence and run it yourself, or connect the shell server and approve each step. The commands it writes stop systems and delete data, which is why execution is deliberately somebody else's decision.

Open artifact →

Covers, under conditionsclaude-abap-skillsThe repository ships no connector at all and states so plainly, and it names what happens when no server is connected: all five skills still work on source a person pastes in. So the rules and the review survive the loss of reach, and what does not survive is anything that has to read or change the system.

Conditions: The source is pasted into the session, since there is no connector and no server is connected

Remaining work: Paste the source. Nothing here can read what exists, run ATC or activate anything, and the repository's own routing table assumes a server for exactly those operations.

Open artifact →

Stated not supportedARC-1 SkillsIts own prerequisites rule this outcome out: the server, connected and configured with SAP system access, is listed as required for every skill that touches ABAP. The skill files alone have nothing to act on, and the entry's own warning says the same.

Remaining work: Nothing short of connecting the server. This is recorded as a stated no rather than a gap: the README answers the question directly.

Open artifact →

Assessed, not knownsapskillsThree skills that read as instruction files rather than procedures over tools, so nothing in them obviously needs a system. The README states no system prerequisite either way, and one of the three is about working with ADT in Visual Studio Code against a Private Cloud Edition, which does assume a reachable system. Whether the set as a whole is useful with nothing connected is therefore not established.

Remaining work: Read the three SKILL.md files and record which of them assume a reachable system. Absence of a stated prerequisite is not a statement that none is needed.

Open artifact →

Content4

Group by
Piece, what it offers
Intelligent App Development at Scale: SAP Fiori Elements + ABAP Development Tools for VS Code
YouTube — SAP Developers playlists, SAP Developers, Talk
ABAP development tools for Visual Studio Code: Patch 1.0.1 released
SAP Community, thomasalexander_ritter, Blog
ABAP development tools for Visual Studio Code is now available on the VS Code marketplace!
SAP Community, thomasalexander_ritter, Blog
Claude Code via MCP: Poor man's Joule, or a practical tool?
SAP Community, k1000, Blog

Seen working1

ArtifactSignals
Samples1
app-templateStarter repository for an abap2UI5 app with CI and agent setup
none

Details

Coverage
statecore and community, ABAP
assessed
relationshipunassessed
Designs that place it1
Agentic Engineering for SAP BTP ExtensionsAgentic Engineering for SAP BTP Extensionsreference architectureSkill Registry
Comparison properties2

These are the questions used to compare what the artifacts do. Values come from their documentation and may apply to a particular ecosystem or runtime. Each recorded value in the comparison opens its statement and sources.

Installs intoSystem reach
For your agent
Ref
capability:agent-guidance
JSON
/capabilities/agent-guidance.json
MCP
Connecting an agent