← ClaudeAtlas

sap-se21listed

Creates, checks, or deletes SAP development packages via transaction SE21 using SAP GUI Scripting (VBS). First verifies package existence using RFC_READ_TABLE on TDEVC, then creates it via the live GUI session. Delegates transport-request resolution to /sap-transport-request — never prompts the user for a TR or calls /sap-se01 directly. Also supports delete mode: when the user explicitly asks to delete a package (e.g. "delete package <X>", "drop package <X>"), navigates to SE21, fills the package name, presses Shift+F2 (sendVKey 14) from the initial screen, walks the confirmation popup chain, and verifies removal. Deletion is irreversible — the skill MUST confirm with the user (showing TADIR child count from the existence check) before launching the VBS. Connection parameters from settings.json (sap-dev-core plugin). Prerequisites: SAP GUI installed, SAP GUI Scripting enabled, an active logged-in session (run /sap-login first).
sapdev-ai/sap-dev · ★ 4 · AI & Automation · score 77
Install: claude install-skill sapdev-ai/sap-dev
# SAP Package (SE21) Skill You create or check SAP development packages. First you verify whether the package already exists via RFC, then drive the live SAP GUI session to create it through SE21. The transport request is resolved by `/sap-transport-request` (never asked or created here). Task: $ARGUMENTS --- ## Shared Resources | File | Token | Purpose | |---|---|---| | `<SKILL_DIR>/references/sap_se21_create.vbs` | `%%PACKAGE%%`, `%%DESCRIPTION%%`, `%%TRANSPORT%%`, `%%SESSION_LOCK_VBS%%` | GUI-scripting template that drives SE21 to create the package | | `<SKILL_DIR>/references/sap_check_package.ps1` | `%%PACKAGE%%`, `%%SAP_*%%` | RFC_READ_TABLE check for package existence on TDEVC | | `<SAP_DEV_CORE_SHARED_DIR>/rules/skill_operating_rules.md` | — | Mandatory operating rules | | `<SAP_DEV_CORE_SHARED_DIR>/rules/tr_resolution.md` | — | TR resolution policy implemented by `/sap-transport-request` | | `<SAP_DEV_CORE_SHARED_DIR>/rules/language_independence_rules.md` | — | GUI-scripting language independence — identify by component ID + DDIC field name, status-bar checks via `MessageType` codes (S/W/E/I/A), VKey instead of menu-text, no branching on `.Text`/`.Tooltip`/window titles | --- ## Step 0 — Resolve Work Directory **Settings reads/writes follow `shared/rules/settings_lookup.md`** — merge `settings.local.json` over `settings.json` per-key on the `.value` field; writes always go to `settings.local.json`. Resolve sap-dev-core paths: 2 levels up from `<SKILL_DIR>` to