Agent guidance
Packaged knowledge you hand a coding agent so it gets a framework right unprompted — skills, rule files, instruction packs. Distinct from agent tooling, which is about building agentic features into your application, and from agent access to your codeAgent access to your codeLetting a coding agent read the project or the system you actually have, reach its model, its objects and its checks, and act on it. In file-based environments that works out of the box; complex systems need dedicated access capabilities. Whatever the environment, the agent also needs project- and framework-specific context, so it understands the thing in front of it rather than guessing from what it remembers of its training data. The transport is incidental: an MCP server, a language server or a CLI answer the same question, and what differs between them is how much of the real thing the agent can see. Distinct from MCP servers, which is a protocol adapter on your own running service, and from agent guidance, which is knowledge handed over as files rather than read from the thing itself.SAP and community, unassessed, where the agent reads the real project instead of being handed a file about it.
Overview
Packaged knowledge that makes an agent write correct CAP without being told each time — capire/skillscapire/skillsSAP's own skill set for coding agents working on CAP — cap-developer, cap-add-remote-service, cap-upgrade and cap-trivia, each a SKILL.md with references beside it.sap official, cap is SAP's own set, in the open skill standard and installable four ways.
capire/skills SAP's own skill set for coding agents working on CAP — cap-developer, cap-add-remote-service, cap-upgrade and cap-trivia, each a SKILL.md with references beside it.
capire/skills SAP's own skill set for coding agents working on CAP — cap-developer, cap-add-remote-service, cap-upgrade and cap-trivia, each a SKILL.md with references beside it.
Not covered: It stops at four skills — cap-developer, cap-add-remote-service, cap-upgrade and cap-trivia — against a corpus of dozens of capabilities. Getting started, consuming a remote service and upgrading are covered; for anything else an agent is still looking things up rather than following a rule it was handed.
One surface at a time, and most of what sits behind this door is SAP's. UI5/plugins-coding-agentsUI5/plugins-coding-agentsUI5's own plugins for coding agents, three of them: everyday development, modernising a legacy project, and converting one to TypeScript, each installed into Claude Code or GitHub Copilot.sap official, ui5 covers everyday development, modernising a legacy project and converting one to TypeScript, as three plugins rather than one bundle; the Web Components skillsUI5 Web Components agent skillsTwo skills shipped inside the UI5 Web Components repository itself, under skills/: one for accessibility, covering ARIA and keyboard behaviour, and one for styling through shadow parts and custom properties.sap official, ui5 ship inside the component library itself, so accessibility and styling guidance versions with the components it describes; the UI theme designer pluginSAP/ui-theme-designer-plugins-for-coding-agentsOne plugin that teaches a coding agent the SAP Design System, Fiori design tokens, and which theming parameters a given control actually reads, installed into Claude Code or GitHub Copilot.sap official, ui5 carries the design system, the Fiori design tokens and which parameters a given control actually reads; and sap-fiori-guidelinessap-fiori-guidelinesAn agent skill SAP publishes in its AI Skills Library, built from the Fiori Design Guidelines at v1.145: eighteen reference files an agent reads before it picks a control, a page type or an AI pattern.sap official, ui5, published in SAP's skills library rather than by the UI5 team, carries the Fiori design guidelines themselves as reference files dated to one revision. scaffold-fiori-ai-bridgescaffold-fiori-ai-bridgeAn agent skill that makes a UI5 or Fiori app AI-callable: it generates the JavaScript bridge and the SAP Joule Frontend Actions YAML the app needs before an agent can reach into it.independent, ui5 points the other way: it hands an agent the procedure for making a finished application callable by SAP JouleSAP JouleSAP's unified AI engagement layer across SAP applications: Joule Work is where a user expresses intent, Joule Assistants coordinate agents across business functions, and Joule Agents carry out the tasks, provisioned on BTP as a formation against SAP Cloud Identity Services.sap official, btp, not for writing one.
sap-fiori-guidelines An agent skill SAP publishes in its AI Skills Library, built from the Fiori Design Guidelines at v1.145: eighteen reference files an agent reads before it picks a control, a page type or an AI pattern.
UI5/plugins-coding-agents UI5's own plugins for coding agents, three of them: everyday development, modernising a legacy project, and converting one to TypeScript, each installed into Claude Code or GitHub Copilot.
sap-fiori-guidelines An agent skill SAP publishes in its AI Skills Library, built from the Fiori Design Guidelines at v1.145: eighteen reference files an agent reads before it picks a control, a page type or an AI pattern.
UI5/plugins-coding-agents UI5's own plugins for coding agents, three of them: everyday development, modernising a legacy project, and converting one to TypeScript, each installed into Claude Code or GitHub Copilot.
sap-fiori-guidelines An agent skill SAP publishes in its AI Skills Library, built from the Fiori Design Guidelines at v1.145: eighteen reference files an agent reads before it picks a control, a page type or an AI pattern.
UI5 Web Components agent skills Two skills shipped inside the UI5 Web Components repository itself, under skills/: one for accessibility, covering ARIA and keyboard behaviour, and one for styling through shadow parts and custom properties.
Not covered: At knowledge. What the agent can then read of your project comes from @ui5/mcp-server@ui5/mcp-serverSAP's MCP server for UI5 development: ten tools that scaffold an app or a card, read the project in front of the agent, and run the linter and the manifest validator against it.sap official, ui5 or the editor and not from a skill file, and the plugins say so themselves: installed as skills alone, that server has to be put there by hand. In one place it also stops at a dated reading, since the design-guidelines skill names the revision it was built from and the guidelines keep moving.
The door is lopsided. The sets behind it are mostly SAP's, each about a surface SAP owns, and the community weight sits in collections whose primary door is CAP or BTP and in the entry that answers an outcome of its own. Which half was first here is not established, so the pattern is left unassessed rather than read off the dates the entries happened to enter the atlas.
scaffold-fiori-ai-bridgescaffold-fiori-ai-bridgeAn agent skill that makes a UI5 or Fiori app AI-callable: it generates the JavaScript bridge and the SAP Joule Frontend Actions YAML the app needs before an agent can reach into it.independent, ui5 lives behind the door and answers a question SAP's sets are not about, turning what an application can already do into SAP JouleSAP JouleSAP's unified AI engagement layer across SAP applications: Joule Work is where a user expresses intent, Joule Assistants coordinate agents across business functions, and Joule Agents carry out the tasks, provisioned on BTP as a formation against SAP Cloud Identity Services.sap official, btp Frontend Actions or WebMCP tools. Collections serve the door from elsewhere and are broad SAP collections, not UI5 sets: secondsky/sap-skillssecondsky/sap-skillsForty SAP development plugins installed through the skills command line or the Claude Code and Codex marketplaces, with a record per plugin of what its claims were checked against.independent, btp, SAP Power for KiroSAP Power for KiroA set of thirty-five-plus SAP skills packaged as a power for Kiro IDE rather than Claude Code, spanning BTP, UI5, data and analytics, ABAP, CAP and CLI tooling, with automatic context activation in Kiro.independent, btp and sap-odata-explorersap-odata-explorerA Rust CLI and desktop app for exploring and testing SAP OData services against real systems — catalog discovery, metadata browsing, an F4 value-help picker and a Fiori-readiness linter — with an agent skill shipped beside it.independent, btp name Fiori elements work in their own words, Kiro's is packaged as a power instead of a skill standard, and skillOverflowDanKromp/skillOverflowA collection of 41 agent skills, 37 for CAP, Fiori, BTP, UI5, ABAP, Integration Suite and HANA work and four for creating, reviewing and retiring skills, each with its own eval.independent, cap states no flavor and carries UI5 data binding, controls, i18n and testing as separate skills.
Service by service. An entry here carries what an agent needs for one BTP service or one surface, from the AI Core skillsaicore-skillsFour agent skills for SAP AI Core, published as a plugin inside SAP's AI Skills Library: admin resources, the deployment lifecycle, the foundation models in the Generative AI Hub, and the Context Registry behind tabular prediction.sap official, btp and their deployment lifecycle to the Automation Pilot skillsSAP/automation-pilot-agent-skillsEight skills for writing, reviewing and operating SAP Automation Pilot content — command generation, catalogue exploration, code review, the content and executions APIs, debugging, schedules, and generating an MCP server from a command.sap official, btp and their Commands, the Application Frontend migrationSAP-samples/html5-applications-migration-skills-for-sap-btpA Claude Code plugin with migrate, validate and cleanup skills that move an HTML5 app from SAP Neo, html5-apps-repo or a standalone approuter to the SAP BTP Application Frontend (appFront) service.sap official, btp and the Mobile Development Kit's metadatasap-mdk-appsAn agent skill for Mobile Development Kit projects: the project layout, the metadata syntax, and the rules that prevent the failures those two produce on iOS, Android and the web.independent, btp, and much of it is operational: what to run, against which account, through which command line. The solution diagram is the exception, where several skill sets and an MCP serverARC-DRAWAn MCP server that draws BTP solution diagrams onto a live draw.io canvas, with 111 SAP BTP icons as native shapes and SAP's diagram guidelines handed to the client as drawing rules.independent, btp carry the same SAP visual languageSAP BTP Solution Diagram GuidelinesSAP's visual language for BTP solution diagrams, in line with the SAP Fiori Horizon principles and colour palette, with editable templates for draw.io and PowerPoint.sap official, btp and differ mainly in how its rules reach the agent.
SAP publishes a skill set per service rather than one for the platform: AI Coreaicore-skillsFour agent skills for SAP AI Core, published as a plugin inside SAP's AI Skills Library: admin resources, the deployment lifecycle, the foundation models in the Generative AI Hub, and the Context Registry behind tabular prediction.sap official, btp, Automation PilotSAP/automation-pilot-agent-skillsEight skills for writing, reviewing and operating SAP Automation Pilot content — command generation, catalogue exploration, code review, the content and executions APIs, debugging, schedules, and generating an MCP server from a command.sap official, btp, LeanIXSAP/leanix-ai-pluginsOne Claude Code plugin, sap-leanix, bundling two skills that build and debug LeanIX automation scripts and create and manage calculations, both working through the LeanIX MCP server.sap official, btp, Joule over A2ASAP-samples/joule-a2a-agent-toolkitFour skills for building an agent that talks to SAP Joule over A2A and getting it onto Cloud Foundry — the agent itself, and the three CLIs the deployment goes through.sap official, btp, the Application Frontend migrationSAP-samples/html5-applications-migration-skills-for-sap-btpA Claude Code plugin with migrate, validate and cleanup skills that move an HTML5 app from SAP Neo, html5-apps-repo or a standalone approuter to the SAP BTP Application Frontend (appFront) service.sap official, btp, Fiori for iOSsap-fiori-iosAn agent skill SAP publishes for SAP Fiori for iOS: it maps a node of the Fiori iOS UI Kit in Figma onto SwiftUI code, and answers which Fiori component a Figma variant becomes.sap official, btp and the developer tutorial APIsap-tutorials-contentAn agent skill that maps the public developers.sap.com content API: the catalogue, the navigation, a tutorial's HTML or JSON, and full-text search, all anonymous and read-only.sap official, btp each have their own, written in the open Agent Skills format and installed through the same third-party skills command line the rest of the ecosystem uses. Beside them sap-devsSAP-samples/sap-devs-cliA CLI that injects current SAP developer knowledge packs into an AI coding tool's context and wires up SAP's own MCP servers for it, shipped as a single binary through Homebrew, Scoop or GitHub Releases.sap official, btp is a command line that writes SAP context into whichever AI tool is configured, with a sync command for keeping that content current.
Not covered: At the service each set is about. None of them carries the platform as a whole, and SAP's own registry at skills.cloud.sap keeps the code in the publisher's repository, so a skill listed there is published by whoever owns that repository and not by SAP.
Both halves are present in the same shape. SAP's sets are written as Agent Skills and install through the same third-party skills command line the independent ones use, and SAP's registry indexes other people's repositories rather than hosting their code. Which half was first behind this door is not established, so the pattern is left unassessed rather than read off the dates the entries happened to enter the atlas.
The platform-wide and the cross-service questions. Independent skill sets carry SAP's own solution-diagram visual language and differ in how its rules reach the agent; broad collections cover BTP beside the other doors; and Datasphere, the Mobile Development Kit and the Integration Suite's Pipeline Concept have guidance behind this door.
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-skillsclaude-abap-skillsTwo Claude Code plugins of always-on Clean ABAP rules, templates and slash commands — deliberately not an MCP server, and explicit about routing each capability to the server that should answer it.independent, abap carries Clean ABAPClean ABAPSAP's open, versioned style guide for ABAP: the answer to how a piece of ABAP should be written, an agreement a team adopts rather than anything to install.sap official, abap into the session and ships no connector at all, routing each operation to the MCP server that should answer it; claude-abap-devclaude-abap-devFive ABAP workflows for Claude Code — ATC fixing, a clean-core audit, a Clean ABAP review, ABAP Unit and debugging — that ship no system access of their own and run on whichever community MCP servers are already configured.independent, abap and ARC-1 SkillsARC-1 SkillsTwenty-two SKILL.md files shipped in arc-1's own skills/ directory for RAP scaffolding, unit test generation, clean-core audits and migration paths, loaded on demand by description and namespaced /arc-1:<skill> when installed through the Claude Code plugin.independent, abap are procedures for one task at a time that run on servers you connect yourself; rap-skillsrap-skillsRAP skills delivered branch-per-target, so the playbook you check out only references patterns valid for your deployment — managed on BTP, unmanaged with BAPI wrappers, and S/4HANA Cloud editions planned.independent, abap splits RAP guidance by deployment target across branches; SuperClaude for SAPSuperClaude for SAPA Claude Code plugin that installs and wires its own ABAP MCP server, then puts a two-layer write guard between the agent and any system profile marked QA or production.independent, abap installs its own server and labels every system it may write to; sapcli-claude-pluginsapcli Claude Code PluginTwo agents and two skills for Claude Code that drive sapcli, the long-standing command line to SAP products, to explore and develop classic ABAP objects rather than speaking ADT directly.independent, abap layers agents over an established command line; sap-basis-opssap-basis-opsBasis and technical operations at the OS and database layer — the sysadmin plane every other SAP skill set skips — as runbook skills that emit a source-cited command sequence with its pre- and post-checks.independent, abap covers the OS and database plane everyone else skips; and abap-offstack-aunitabap-offstack-aunitAn agent skill that bootstraps off-stack ABAP Unit tests and an abaplint gate onto an abapGit-serialised repository, with no live SAP system.independent, abap runs the tests with no system at all.
SAP's part here is two things that are not skill files. SAP Developers MCPSAP Developers MCPThe hosted MCP server of developers.sap.com, over which an agent searches SAP's tutorials, reads missions and queries the site's knowledge graph of tutorials and concepts.sap official, umbrella, 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 ABAPClean ABAPSAP's open, versioned style guide for ABAP: the answer to how a piece of ABAP should be written, an agreement a team adopts rather than anything to install.sap official, 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 ABAPClean ABAPSAP's open, versioned style guide for ABAP: the answer to how a piece of ABAP should be written, an agreement a team adopts rather than anything to install.sap official, 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 MCPSAP Developers MCPThe hosted MCP server of developers.sap.com, over which an agent searches SAP's tutorials, reads missions and queries the site's knowledge graph of tutorials and concepts.sap official, umbrella 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 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 ABAPClean ABAPSAP's open, versioned style guide for ABAP: the answer to how a piece of ABAP should be written, an agreement a team adopts rather than anything to install.sap official, 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 Codeabap2UI5 for VS CodeA VS Code extension for abap2UI5 apps: F9 starts the app class in a preview beside the source, Ctrl+F3 activates the class and reloads it, and the abap2UI5 linter runs in the editor while you type.community org, abap writes the agent files of an abap2UI5 project into an existing one, KlystronKlystronAn MCP server written in ABAP that runs inside the application server behind an ICF service and exposes typed tools for ABAP development, quality, transports, customizing, roles, Basis operations and integration, with a client-side plugin of SAP skills.independent, abap is a plugin of process and domain skills over an MCP server that runs inside the application server, and WerkbankWerkbankA local desktop workspace for AI conversations, attached files and generated HTML Spaces, run by a goose agent and offering a catalog of SAP MCP connectors and ABAP, CAP and UI5 skills.independent, umbrella is a desktop workspace with a catalogue of ABAP, CAP and UI5 skills.
No core answer is documented.
Not covered: At one stated baseline, and at knowledge. sap-commerce-skillsap-commerce-skillAn agent skill for SAP Commerce Cloud 2211-jdk21.1 and later: 21 reference guides, 58 code templates and three shell scripts, installed through the skills CLI.independent, commerce is written against SAP Commerce Cloud 2211-jdk21.1 or later and marks older releases and the JSP Accelerator as legacy, so a project below that baseline is outside what it states; and what it hands an agent is reference material and templates, with one shipped script the only thing that reaches a running instance.
Community-only is a reading of the corpus and not a statement from SAP. sap-cx-developer-companionsap-cx-developer-companionAn agent skill for SAP Customer Experience work that routes a request to one of three jobs: finding a Commerce Cloud, Sales Cloud or Service Cloud API, writing CDS for a CX extension, or explaining an error.independent, commerce answers a different question beside the Commerce type system, ImpEx and OCC material: finding a Commerce Cloud, Sales Cloud or Service Cloud API, writing CDS for a CX extension and explaining an error.
Artifacts
Tasks
Change a BTP service from an agent session
A developer working with an agent wants the change made in their own BTP account or service, a Command deployed, an agent pushed, a deployment created, rather than a command to copy out and run themselves.
About whether a skill set carries the reach as well as the knowledge, and what it asks for before it does. What an agent can read and change in the project's own source is agent access to your code. Entitlements, logins and authorisations stay the developer's, and nothing here was run.
aicore-skillsIts lifecycle skill manages AI Core scenarios, executables, configurations and deployments by running the skill's own Python scripts, and states that a script which deletes or mutates state requires an explicit --confirm.
Conditions: An SAP AI Core instance with credentials configured, which the README states Python with uv and the sap-ai-sdk-core package, which the README lists; the tabular skill states Python 3.11 or later and the BTP command line for registering HDL access A mutating or deleting script is passed --confirm, which the skill states explicitly
Remaining work: Configure the instance credentials and the Python toolchain, and decide what may be mutated: the --confirm flag is the skill's own gate and the agent passes it.
SAP-samples/html5-applications-migration-skills-for-sap-btpThe migration is local: the README states that no MCP servers or network access are required and that the plugin operates entirely on local files. Its cleanup skill undeploys a deployed appFront app from Cloud Foundry, optionally deleting service instances and keys, and removes the local output folder.
Conditions: The CF command line logged in and targeted at an org and space before deploying, which the requirements state The MultiApps Build Tool for building the MTA and the CF multiapps plugin for cf deploy, both named in the requirements A subaccount with the Application Frontend service entitlement and the Cloud Foundry environment enabled
Remaining work: Build and deploy with the named tools; the appFront command line is listed as optional and is what fetches the runtime URL after a deployment.
SAP-samples/joule-a2a-agent-toolkitIts four skills generate the btp, cf and Joule commands rather than running them. Beside them the Quick Start uses a user-invoked command, deploy-agent, on the scaffolded agent, and the Getting Started step is to start Claude Code with the plugin and then log in to Cloud Foundry and Joule.
Conditions: cf login and joule login done before the toolkit is used, which the Getting Started step states A BTP Cloud Foundry account with the entitlements the generated commands act on
Remaining work: Run the two logins, then read what the generated commands would do against the account they are pointed at: what the skills hand over is text until something runs it.
SAP/automation-pilot-agent-skillsThe skill set covers deploying, updating, listing and deleting Commands, Inputs and MCP servers through the API, and triggering a Command, watching its status and reading its logs.
Conditions: An SAP Automation Pilot tenant with API credentials, which the prerequisites state The four AUTOPI_ variables written into a .env file and sourced before the API skills are used curl and jq on the machine, which the prerequisites list for the API calls and the JSON parsing Claude Code, which the prerequisites name as required to use the skills
Remaining work: Create the tenant's technical user, put the credentials in the environment and verify the connection with the listing call the README gives. The repository is opened in Claude Code rather than installed as a package.
sap-cloud-integration-pipeline-assistantIts scope section says what it answers on and what it leaves out: implementation assistance, Partner Directory guidance, XSLT and Groovy examples, architecture decisions and troubleshooting, and not generating or deploying complete iFlow artifacts.
Remaining work: Build and ship the integration flows in the tenant by hand, or with something else.
SAP/leanix-ai-pluginsIts setup section describes installing the plugin and the LeanIX MCP server connecting on first use with an OAuth sign-in, and no sentence read on 2026-10-15 states that the skills themselves deploy or run an automation in a LeanIX instance. Whether the reach belongs to the skills or only to the server is the open question.
Remaining work: Read the two skills' own SKILL.md files, which this pass did not read, and the MCP server's documented tool surface.
Get an agent to follow the SAP Fiori design guidelines
A developer wants the controls, colours and messages an agent writes into a Fiori application to follow SAP's design guidelines, without the guidelines being pasted into the prompt each time.
About how the design rules reach the agent and which slice of them it gets. The guidelines themselves are SAP's and stay at experience.sap.com; whether a built screen passes a design review is not something any of these records establishes, and checking what an agent produced against a stated expectation is agent evals.
sap-fiori-guidelinesThe one entry whose subject is the guidelines rather than a framework. Its frontmatter names the cases it applies to, from buttons and tables through object pages and list reports to colours, typography and Joule integration, and the skill answers the recurring questions before any reference file is opened: that the emphasized button is the primary action and there is one per page or dialog, what each semantic colour means, and that an error prevents a task while a warning lets the user proceed. It also states which of SAPUI5, UI5 Web Components and Fiori elements each kind of application calls for, so an agent choosing between them has the skill's own answer.
Remaining work: Install it with the skills command line. The README names the revision it was built from, v1.145 of May 2026, so a rule that has moved since is the reader's to check against SAP's own page; the skill carries one dated reading rather than a live feed.
SAP/ui-theme-designer-plugins-for-coding-agentsTwo skills in one plugin. One is about using UI theme designer on BTP; the other answers questions about the SAP Design System and the Fiori design tokens, including parameter inheritance and which theming parameters specific UI components use. That last fact is the one a colour change rests on and the one a control's public API does not state, which is why it sits here rather than in the guidelines skill.
Remaining work: Install it as a plugin in Claude Code or GitHub Copilot, each with its own command, or through the skills command line. Nothing in it compiles or deploys a theme, and it states no UI5 flavor, so whether its parameter mapping reaches the Web Components library as well as SAPUI5 controls was not established.
UI5 Web Components agent skillsTwo skills under skills/ in the components' own repository, so they move when the components do. The accessibility one states what the shadow DOM handles on its own, the ARIA roles, keyboard navigation, screen-reader support and high-contrast themes, and then names the properties and the InvisibleMessage API that cover what it does not. That is the part of the design system a guidelines document cannot answer, because it depends on what the component already does.
Remaining work: Get the two skills in front of an agent. Nothing read in the repository on 2026-10-15 names a client they install into, so how they are loaded is the reader's to work out.
secondsky/sap-skillsForty plugins for SAP development, among them one the README lists for SAPUI5 framework development and one for Fiori tools. Whether either carries design-guideline rules was not established: only the plugin list and the install section were read, not the plugin's own skill files. It is listed so a reader who already has it installed can see it was looked at rather than ruled out.
Remaining work: Read the SAPUI5 plugin's own skill files, and the per-plugin verification ledger entry beside it, which records what each claim was checked against.
Get an agent to write ABAP that follows Clean ABAP
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.
ABAP 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.
claude-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.
sapskillsOne 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.
claude-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.
Get RAP patterns that match the target system
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.
claude-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.
ARC-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.
rap-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.
abap-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.
Hand an agent SAP's BTP diagram rules
Someone asks an agent for a BTP solution diagram and wants it drawn in SAP's own visual language without the rules being typed into the prompt.
About how the rules reach the agent. What the resulting file is, and what checks it afterwards, is architecture diagrams and is assessed there. Whether the architecture the diagram shows is a sound one is a different question that nothing here answers.
ARC-DRAWThe guideline reaches the MCP client as a drawing constitution the moment it connects, rather than being loaded as a skill the agent decides to read. Two tools, get-sap-examples and get-sap-guideline, let the agent ask for a canonical pattern or a rule by topic afterwards.
Remaining work: Install from source and keep a draw.io canvas open and connected, since that is what the drawing tools work against. Nothing here checks the result: the maintainer keeps a diagram linter on the roadmap.
btp-solution-diagram-generatorA core SKILL.md carries the design system and the L0 to L3 level model, six reference files cover the Horizon colours and styles, the area and nesting rules, the connector semantics, the icon catalogue, the mxGraph XML schema and the levels, and the official SAP shape library is bundled with the statement that no network is needed.
Remaining work: Add the marketplace and install the plugin in Claude Code or Cowork. The rules then load with the skill, so what the agent follows is the copy in the installed version.
drawio-btp-diagram-skillsA table in SKILL.md says which document is read when: the Conventions section at the Mermaid stage, references/layout.md and references/elements.md for the draw.io XML, and references/guidelines.md when a style decision is in doubt. That file is the maintainer's English summary of SAP's guidelines and is named the source of truth above the implementation layer. The review skill has independent triggers, so it runs on a finished XML or a pasted screenshot without being asked for.
Remaining work: Fork the repository, clone it, symlink the two skill folders into ~/.claude/skills and restart Claude Code. The workflow is written for a person and Claude together, so the steps it assigns to the person stay theirs: pasting the XML into draw.io, and placing the Generic Icons.
drawio-skill-sapWritten for an Agent Skills location a Copilot environment recognises, and it states the icon rule as a prohibition: every persona and every SAP system, service or product has to render as a real SAP icon or product logo.
Remaining work: Place the skill folder where the Copilot environment reads it, or install it through the skills command line. The vision self-check in its routine is skipped where no vision-capable model is available.
sap-architectureBundles the icons, the reference templates and the Python scripts locally and states that there are no cloud calls. The skill is plain Markdown plus dependency-free scripts, and the README names the instruction file to point at it for Codex, GitHub Copilot, Cursor and the tools that read AGENTS.md.
Remaining work: On Claude the skill auto-loads; on the other tools the README says the instruction file wires it in per project, and the scripts need shell access and Python 3.8 or later.
Keep an agent's ABAP inside clean core
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.
abap-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.
claude-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.
sap-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.
ARC-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.
claude-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.
Keep the SAP knowledge an agent follows current
A developer wants what their agent is told about SAP to come from what SAP documents now, rather than from what the model learnt or what a skill file froze when it was written.
About where the knowledge comes from at the moment the agent reads it. Whether that knowledge is right, and whether the agent then produces correct work, are separate questions; checking what an agent produces is agent evals.
SAP-samples/sap-devs-cliA command line rather than a skill. One command injects SAP context into the AI tools that are configured, and a second is documented as the one that keeps the content current.
Remaining work: Run the sync. The README read on 2026-10-15 names no schedule and no list of supported assistants, so when the content is refreshed and which tool receives it are the developer's to establish.
sap-tutorials-contentThe skill carries the paths of the public developers.sap.com content API rather than the tutorials themselves, so what the agent gets is whatever the catalogue serves when it calls. It states that everything there is anonymous and read-only, dates its own check of the endpoints, and tells the agent to honour the ETag and Cache-Control headers on what it calls a shared public service.
Remaining work: The agent makes the calls, and what the tutorials say is SAP's. The skill dates its check of the endpoints rather than claiming they are watched, so a path that moves is noticed when a call fails.
sap-architectureStands here for the bundled sets behind this door. It states that every icon, template and script is bundled and runs locally with no cloud calls, which says what the agent reads is the copy in the installed version. Whether that copy tracks the current SAP guideline is not stated: the README read on 2026-10-15 names no guideline revision and no refresh mechanism beyond updating the plugin.
Remaining work: Update the installed plugin and compare its bundled templates against the current guideline by hand, since nothing in the package dates them.
Make a Fiori application's own actions callable by Joule
A developer wants the things their UI5 or Fiori application can already do, such as reading what is displayed, applying a filter, navigating or pressing a button, exposed as actions an assistant may call, without working out the bridge and the descriptor shapes from scratch.
About the packaged procedure and the files it writes. Deploying the capability descriptor to a SAP Joule tenant and confirming the actions are reachable are outside it and the skill says so; what the application does once an assistant calls in is the application's own behaviour.
scaffold-fiori-ai-bridgeIt asks three questions before it reads any code, whether the target is an application or a library control, which consumer is wanted, and whether tools should be semantic or one per control. Then it reads the manifest, Component.js, the controllers, the views and the models, puts the grouped candidates back for confirmation, and writes the files only after the developer signs off on the list. It carries the runtime limits as rules rather than as notes: a { status, content } return with the content always a string, fifteen seconds an action, ten kilobytes of response, a thousand characters of scenario description, and a com.sap.<namespace>.<ActionName>.v1 name matching in the JavaScript and the YAML.
Remaining work: Deploy the capability descriptor to the Joule tenant through the command line, which the skill states is not its step, and verify the actions are reachable from there. The repository read on 2026-10-15 names no client the skill installs into, so loading it is the reader's to work out.
Modernise a legacy UI5 application with an agent
A developer wants an agent to take an existing UI5 application off deprecated APIs and legacy patterns, following a written procedure rather than whatever the model remembers about the framework.
About the packaged procedure the agent follows. Reading the project, running the UI5 linter and validating the manifest are agent access to your code and come from a server beside the skills; whether the modernised application still works is the developer's to verify, and neither route here claims otherwise.
UI5/plugins-coding-agentsUI5 Modernization is one of three plugins in the repository, published beside the general development plugin and the TypeScript conversion one, so a project being modernised does not load the other two. The repository's own line for it is an autonomous multi-phase workflow that replaces deprecated APIs and removes legacy patterns, and its own README calls it a toolkit for modernising SAPUI5 and OpenUI5 applications. It installs as a plugin into Claude Code or GitHub Copilot, with a command for each.
Conditions: [@ui5/mcp-server](artifact:ui5-mcp-server) is present; the plugin's README states it has to be installed by hand when the skills are installed on their own
Remaining work: Point it at a branch rather than at main, since the workflow is described as autonomous and multi-phase. What it reads of the project, the linter it runs and the manifest check come from @ui5/mcp-server, and reviewing the result is a person's step.
ARC-1 SkillsOne of twenty-two skills shipped in arc-1's own skills directory. Where the UI5 plugin states the kind of change it makes, this states the end state: a legacy freestyle JavaScript application with a synchronous bootstrap and jQuery.sap.* calls becomes a UI5 TypeScript application on 1.147 using sap.f.FlexibleColumnLayout, typed event handlers, ES modules and the Horizon theme, with five traps written down in front. A second skill in the same set generates a Fiori elements V4 list report and object page instead.
Conditions: [@ui5/mcp-server](artifact:ui5-mcp-server) is connected, which the skills README states is required for this skill A browser MCP is connected for the final render check, which the README states an HTTP 200 does not cover
Remaining work: Connect the servers the set names. It sits behind the ABAP door and states no claim to serve this one, so a reader standing at the UI5 door does not meet it among the options at all.
Restyle a UI5 Web Component without breaking on the next release
A developer wants an agent to restyle a UI5 Web Component through the surfaces the library documents, rather than reaching into its shadow DOM in a way that stops working when the component changes.
About the styling rules the agent is handed. Building and publishing a theme is UI theme designer's own job, and whether a particular override survives a given release is between the developer and the component's changelog. Nothing here checks a stylesheet.
SAP/ui-theme-designer-plugins-for-coding-agentsIts design-tokens skill carries the SAP Design System and the Fiori design tokens, including parameter inheritance and which theming parameters specific UI components use. A CSS variable override is only as good as knowing which variable the component consumes, and that is the fact this plugin states and a component's public API does not.
Remaining work: Install it as a plugin in Claude Code or GitHub Copilot, each with its own command, or through the skills command line. It states no UI5 flavor of its own, so whether its parameter mapping covers the Web Components library as well as SAPUI5 controls was not established.
UI5 Web Components agent skillsThe styling skill, one of two shipped under skills/ in the components' own repository. It names four ways in, CSS shadow parts, CSS custom states, CSS variables and tag-level styling, says to use documented shadow parts only, and names the deprecated piercing selectors as not working rather than as discouraged. Living in the library's repository is what ties the guidance to the version of the components it describes.
Remaining work: Get the skill in front of the agent. Nothing read in the components' repository on 2026-10-15 names a client the two skills install into, so how they are loaded is the reader's to establish.
sap-fiori-guidelinesIt states the Web Components flavor in its own frontmatter and its reference files cover colours and typography, so a reader who has it installed has design rules in the session. What was not established is whether it says anything about applying them from outside a shadow root, which is the part of this outcome that goes wrong. Listed so the entry reads as looked at and not established, rather than as ruled out.
Remaining work: Read the colours-and-typography reference file and the Web Components passages beside it.
Work on ABAP with an agent and no system connection
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.
abap-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.
sap-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.
claude-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.
ARC-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.
sapskillsThree 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.
Content
Show 19 more
Seen working
Details
Coverage
Designs that place it
Comparison properties
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.
For your agent
- Ref
capability:agent-guidance- JSON
- /capabilities/agent-guidance.json
- MCP
- Connecting an agent