ABAP Skills plugin

17 skills for ABAP developers: Clean ABAP, RAP, CDS, OData, ABAP Cloud, unit tests, migration and BTP diagrams

  • 74 ★ on the repository
  • Last commit
  • MIT
Plugin

Minimal access

Why this level

  • The skills only read and write project code and do not connect to an SAP system themselves
All reasons and checks

likweitan/abap-skills

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add plugins/abap-skills

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Minimal accessThe tool runs nothing and makes no network calls.

  • The skills only read and write project code and do not connect to an SAP system themselves

This is third-party code. Review the repository files before installing.

What it does

ABAP Skills are small composable skills for SAP ABAP development that are not tied to a model. The `abap` skill reviews code against Clean ABAP rules through abaplint static analysis in 15 categories and returns findings by priority. Separate skills cover ABAP unit testing, ABAP Cloud and the clean core model, cloud migration, ATC checks for cloud readiness and the list of released classes. For modern development there are skills on CDS views, SQL and AMDP, the RAP framework, RAP business events, OData, IAM authorizations, BAdI enhancements and abapGit. For the BTP platform the set has a BTP ABAP environment skill, a BTP diagram generator and a Fiori URL generator. The repository also has an `.mcp.json` file. Skills install with `npx skills add likweitan/abap-skills` with a choice from a list, a single skill with `--skill abap` or globally with `--global`. For Claude Code you can copy folders from `skills/` into `~/.claude/skills/`, and OpenCode and GitHub Copilot in VS Code have separate instructions.

Who it is for. ABAP developers and SAP consultants who write RAP apps and CDS models and move code to ABAP Cloud.

Good fit when

  • ABAP code needs a Clean ABAP check with findings by priority
  • You are building a RAP application with CDS views, OData and business events
  • Legacy code is moving to ABAP Cloud and you need to see which calls get in the way and what to replace
  • You need BTP diagrams or Fiori links without assembling them by hand

Not a fit when

  • You need access to a live SAP system: the skills give knowledge and cannot connect to an ABAP system
  • You need SAP skills outside ABAP, such as Fiori or CAP: the set does not cover them
  • You need full SAP documentation: the skills are short and composable and the references live in `references/`

Example request

Check this ABAP class for Clean ABAP compliance and show findings by priority, then suggest how to move it to ABAP Cloud

Limitations

The skills hold knowledge and rules and do not connect to an SAP ABAP system themselves: working with a live system needs a separate MCP server. Static analysis results depend on the abaplint version and rule configuration. RAP, CDS, OData, ABAP Cloud, tests and migration are covered, while Fiori and CAP remain outside the set. The project has one author, and the ABAP version and SAP release are not pinned in the README, so check recommendations for your release against SAP documentation. For OpenCode, installation follows a separate instruction.

How to disable. Delete the folders you need from `~/.claude/skills/` or remove with the same installer you used. The `.mcp.json` file from the clone does not have to be copied into projects.

FAQ

How many skills are in the set?

Seventeen: abap, abap-unit-testing, abap-cloud, abap-cloud-migration, atc-cloudification, released-abap-classes, cds-view-entities, abap-sql-amdp, rap, rap-business-events, odata, authorization-iam, badi-enhancement, abapgit, btp-abap-environment, btp-diagram-generator and sap-fiori-url-generator.

How do I install one skill?

With `npx skills add likweitan/abap-skills --skill abap`. `--list` shows the available skills without installing and `--global` makes them shared across projects.

What does the abap skill check?

Code against Clean ABAP through abaplint static analysis in 15 categories. Findings come back by priority.

Does the set work in Claude Code?

Yes, it supports Claude Code, GitHub Copilot, Cursor, Codex and OpenCode. For Claude Code copy folders from `skills/` into `~/.claude/skills/` and restart.

Does it connect to an SAP system?

No, the skills only provide knowledge and rules. Access to a live system needs a separate MCP server, such as the neighboring mcp-abap-adt card.

Discussion

No questions or reviews yet.

Plugins

Over 1,100 ready-made skills for Claude Code, Codex, Gemini CLI and Cursor, plus an MCP server that picks a skill for the task

SkillExtended access200Repository stars

Catalog of 46 versioned skills for code review, releases, CI and landing pages, installed as the lstack plugin or through npx.

PluginExtended access145Repository stars

Plugin marketplace for Claude Code and AdaL CLI: skills for landing page cloning, code graphs, PostHog and 23 CLI guides.

PluginExtended access112Repository stars
Official

Official SAP skills library for agents: search, filter and install through the skills CLI, including the aicore-skills plugin

PluginExtended access148Repository stars
Russian stack

A GitHub Copilot skill, dev-1c, for 1C:Enterprise 8.2 development: research, design, phased planning and BSL code review against a checklist

SkillMinimal access

Nine personal engineering skills: an idea-to-PR chain, standards search, a sandboxed review loop and wizard pages for changes

SkillExtended access170Repository stars

README in short

The README briefly presents the set as skills for ABAP, then gives installation through the Skills CLI and by hand, then a table of skills with scope and an example prompt. OpenCode and GitHub Copilot in VS Code have separate instructions.

README badge

Original SKILL.md

---
name: abap
description: Comprehensive ABAP code quality checking using abaplint (automated static analysis) and Clean ABAP principles (manual code review). Use when users ask to check, lint, validate, review, or analyze ABAP code for syntax errors, clean code compliance, code quality, best practices, or adherence to Clean ABAP guidelines. Also use for abaplint setup, configuration, and execution. Triggers include "check this ABAP code", "lint my ABAP", "run abaplint", "configure abaplint", "is this clean ABAP", "review my ABAP", "analyze ABAP code quality", "code quality check", or "ABAP best practices".
---

# ABAP

Check and improve ABAP code quality using two complementary approaches:

- **abaplint**: Automated static analysis via CLI, checking syntax, types, and configurable rules
- **Clean ABAP**: Manual review against Clean ABAP style guide principles

Keep code quality and SAP clean core compliance separate. Clean ABAP and abaplint assess code quality; they do not establish which SAP APIs or extension points an application uses. For clean core levels, released API status, or ABAP Cloud compliance, use the `abap-cloud` skill and relevant ATC checks.

## Workflow

1. **Establish the code context** before assessing syntax or API compatibility:
   - Identify the target ABAP platform/release and language version (for example, Standard ABAP or ABAP for Cloud Development) when provided.
   - For abaplint, inspect the existing `abaplint.json` and its configured syntax version; do not silently change it.
   - If the context is missing and a finding depends on it, ask a focused question or label the finding as context-dependent. Do not call syntax or an API invalid based on an unstated target.
   - A style-only review can proceed without release details; note assumptions only where they affect the finding.

2. **Determine check type** based on user request:
   - If the user asks to lint, run abaplint, or check syntax: use **abaplint**
   - If the user asks for clean code review, best practices, or code quality: use **Clean ABAP review**
   - If unclear or the user asks for a full check: use **both**

3. **For abaplint checks**:
   - Look for a project-local `node_modules/.bin/abaplint` first, then an already available `abaplint` command.
   - If neither is installed, explain that and ask before installing or changing project files. Prefer a project-local dev dependency (`npm install --save-dev @abaplint/cli`) when the user approves; install globally only when specifically requested.
   - Check if `abaplint.json` exists in the project root
   - If no config exists, explain the tradeoffs and offer a starter config (see `references/abaplint.md`); do not create or alter config without user approval.
   - Run the project-local binary or already-installed command from the project root. Do not use a command that silently downloads or installs a tool.
   - Report the configured syntax version and preserve abaplint's own severity and rule identifiers in results.

4. **For Clean ABAP reviews**:
   - Read the ABAP code provided by the user
   - Use the Clean ABAP categories below as review lenses, not unconditional rules. Consider the target release, local conventions, readability, and tradeoffs; report a recommendation only when it materially improves this code.
   - Tie each finding to a line, statement, or method and explain the observable impact. If line numbers are unavailable, quote a short identifying snippet.
   - Give a minimal, actionable fix; do not rewrite unrelated code.
   - Separate confirmed defects from context-dependent risks and style preferences.

## Finding severity

Use severity to communicate impact, not how strongly a style rule is worded:

Report a problem