Closes the loop from a /sap-diagnose root cause to a deployed, test-verified fix — conservatively and test-first. Takes a diagnose deliverable (or a dump key) whose top hypothesis is a CUSTOM-CODE DEFECT, acquires the failing source, reasons a minimal patch, reproduces the defect as a RED ABAP Unit test (via…
Makes the suite see SAP forms: SmartForms, SAPscript, and Adobe forms — inventory them with real usage evidence, read a 40-node form as a navigable tree/spec, and feed /sap-cc- scope decisions with counts instead of anecdotes. inventory enumerates all three form families (STXFADM SmartForms, TADIR SAPscript/Adobe)…
Full lifecycle for SAP function groups: check existence, create, re-activate, query PROGDIR state, and delete. Mode-aware — picks the RFC fast-path (RSFUNCTIONPOOLINSERT, RFCREADTABLE on TLIBG / TFDIR / TADIR / PROGDIR) when possible, falls through to GUI scripting (SE37 menus + SE38 delete) when no RFC equivalent…
Install-free, read-only git backend for custom ABAP: gives Z code the PR-style review, blame, readable TR diffs, and whole-package-on-disk that abapGit would — without installing abapGit (often politically impossible on customer systems) and without ever writing to SAP. snapshot serializes a PACKAGE / TR / object-list…
Inspects the currently active SAP GUI session — structurally and/or visually — so a stuck GUI script (unexpected popup, a control ID that moved between releases, a greyed-out field, a hung transition) can be understood. Two mode families: STRUCTURAL dumps component IDs + properties — tree (component tree of all/one…
Drive a SAP transaction step by step against a natural-language scenario, dumping each screen's full property tree via /sap-gui-inspect and emitting a synthesized recording-style VBS at the end. Designed as a skill-authoring aid: probe SE37 before writing a new /sap-se37 flow. Captures more than the SAP recorder -…
Author a new transaction-specific SAP skill from multiple natural-language scenarios. Runs /sap-gui-probe for each scenario, then merges the resulting probe folders into one coherent skill folder: SKILL.md with mode dispatch, one references/sap .vbs per probe, parameter tokens derived by cross-probe diff (values that…
Pre-change / pre-release impact analysis — answers "if I change this object, what else might break?" from SAP's system-maintained cross-reference index (not by parsing source, which is blocked, nor by driving the slow GUI where-used). Resolves the object, then gathers reverse dependencies (where-used), forward…
Manages ABAP background jobs on a live SAP system — schedule, list, status, log, spool, cancel, delete. Mode-aware: prefers the RFC fast-path (schedule via the RFC-enabled ZRUNREPORT; list/status via TBTCO; spool id via TBTCP; delete via BPJOBDELETE) and falls through to GUI (SM36 schedule / SM37 operations) when RFC…
Opens a SAP GUI connection and logs in using SAP GUI Scripting. Multi-profile connection store (Phase 4): save multiple SAP connections (different SID / Client / User / endpoint) at {workdir}\runtime\connections.json, with passwords DPAPI-encrypted at rest. Picks the right one for this AI session via a 4-step identity…
Reaches non-RFC-callable ABAP code from outside the system (e.g. SAP NCo 3.1), in two modes: fm CALLS a non-RFC-enabled function module via the generic wrapper ZGENERICRFCWRAPPERTBL (reads the FM interface, builds asXML, invokes it over RFC, returns the deserialized outputs); class GENERATES + deploys a dedicated RFC…
Executes ABAP Unit tests on a deployed object (program or global class) via SAP GUI Scripting and reports per-method pass / fail with a verdict gate. Opens the object in SE38 / SE24, triggers the ABAP Unit run (via the SE38/SE24 menu), and parses the result display. Closes the generate -> deploy -> activate -> TEST…
Executes an ABAP report/program on a live SAP system and captures the output — foreground (SA38 F8, interactive list) or background (scheduled job), with or without a variant, or ad-hoc selection values. Also maintains variants — create/overwrite (set) and delete via the SAPLSVAR GUI dialogs, list/show via RFC.…
A guarded write-run-inspect REPL for SAP so the AI can empirically OBSERVE what the system does instead of guessing (the ABAP debugger is unreachable via GUI Scripting). run turns a question into a tiny read-only $TMP probe report, statically guards it (a hard REFUSE on any write / COMMIT / CALL TRANSACTION / SUBMIT /…
Manages SAP transport requests via transaction SE01 (SAP GUI Scripting). Four modes: CREATE (default — a new Workbench TR, Customizing only when explicitly asked; description per userConfig.ruleoftrdescription; the new TRKORR is resolved locale-independently and echoed as RESULTTR, unresolvable = hard ERROR, never a…
Creates and updates ABAP Dictionary objects in SAP via SE11 using SAP GUI Scripting. Supports all 9 DDIC object types: Database table, View, Data element, Structure, Table type, Type group, Domain, Search help, and Lock object. Uses tab-delimited definition files for structured input. Existence check, create or…
SE14 (DB Utility) for stuck DDIC tables — closes the gap /sap-se11 names but never implemented. check is a read-only RFC snapshot of DDIC-vs-DB consistency (DD02L active row + pending version, DWINACTIV inactive worklist, TBATG open conversion/DB-utility request with its state, DBDIFF DDIC/DB diff, QCM /QCM8 shadow…
Queries any SAP table via SE16N using SAP GUI Scripting and downloads the result set as a tab-delimited text file. Supports filtering by any combination of table fields with single value, multi-value (IN list), or range (BT) selection, and any of the standard SE16N operators (EQ, NE, GT, LT, GE, LE, BT, NB, CP, NP…
Full lifecycle for SAP BAdI implementations via SE19 (BAdI Builder) using SAP GUI Scripting: Create, Update, Display, Delete, Activate, and Deactivate — for BOTH Classic BAdIs (SXSATTR / SXC) and New BAdIs (Enhancement Framework / BADIIMPL). Auto-detects the BAdI type via RFC (SXSATTR-EXITNAME for Classic…
Creates, checks, or deletes SAP development packages via transaction SE21 using SAP GUI Scripting (VBS). First verifies package existence using RFCREADTABLE 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…
Deploys ABAP class/interface source to a SAP system via SE24 (SAP GUI Scripting) — creates or updates classes: existence check, source upload (full CLASS DEFINITION … IMPLEMENTATION … ENDCLASS via the source-code view), save, activate. Also three secondary modes on an existing class: check-and-fix ("fix Class" /…
Deploys ABAP function module source to a SAP system via SE37 (SAP GUI Scripting) — creates or updates FMs: existence check, source upload (full FUNCTION … ENDFUNCTION include), save, activate. Also four secondary modes on an existing FM: check-and-fix ("fix FM" / "check and fix FM" with no source — syntax-check…
Deploys ABAP source to a SAP system via SE38 (SAP GUI Scripting) — creates or updates programs: existence check, source upload (file path or pasted code), syntax check, save, activate, and (for Report type 1) selection-text update. Also three secondary modes on an existing program: check-and-fix ("fix PGM" / "check…