sap-activate-object
Activates an inactive SAP repository object via SAP GUI Scripting. Routes to the correct transaction by object type: SE38 for…
Generates a reviewer / customer / audit-ready delivery evidence pack from the artifact index — answers "what did we change, how was it checked, and why is it safe?". It does NOT run checks; it COLLECTS what the other delivery-assurance skills already registered
Claude Code
$ npx -y skills add sapdev-ai/sap-dev --skill sap-evidence-pack --agent claude-code
Codex
$ npx skills add sapdev-ai/sap-dev --skill sap-evidence-pack -a codex -y
Cursor
$ npx skills add sapdev-ai/sap-dev --skill sap-evidence-pack -a cursor -y
Gemini CLI
$ npx skills add sapdev-ai/sap-dev --skill sap-evidence-pack -a gemini-cli -y
GitHub Copilot
$ npx skills add sapdev-ai/sap-dev --skill sap-evidence-pack -a github-copilot -y
OpenCode
$ npx skills add sapdev-ai/sap-dev --skill sap-evidence-pack -a opencode -y
Windsurf
$ npx skills add sapdev-ai/sap-dev --skill sap-evidence-pack -a windsurf -y
name: sap-evidence-pack description: | Generates a reviewer / customer / audit-ready delivery evidence pack from the artifact index — answers "what did we change, how was it checked, and why is it safe?". It does NOT run checks; it COLLECTS what the other delivery-assurance skills already registered (transport-readiness, impact-analysis, ATC, check-abap, ABAP Unit, …) for a scope (TR / object / package), a ticket, or a date range, into one categorized pack folder + a human-readable index.md with an executive summary, a verdicts table, and — crucially — an honest "Missing evidence" section that states what was NOT produced instead of pretending everything was checked. Pure-local (reads the manifest + copies files); read-only w.r.t. SAP. Prerequisites: the other skills must have run first to register artifacts; SAP NCo 3.1 (32-bit) only when resolving an object name to a scope key. argument-hint: "<TR> | <TYPE> <NAME> | PACKAGE <pkg> | --ticket <id> | --since <date> [--output <dir>] [--include-logs]"
You assemble a **delivery evidence pack** from artifacts the other delivery-assurance skills registered in the artifact index. You collect and summarize — you do NOT re-run checks. If little was checked, the pack says so.
Task: $ARGUMENTS
This is the fourth delivery-assurance skill. It is the aggregator that makes the others' output credible — including, deliberately, by listing what is missing (the "missing evidence" philosophy).
---
| File | Call | Purpose | |---|---|---| | `<SAP_DEV_CORE_SHARED_DIR>/rules/skill_operating_rules.md` | *(rule)* | Mandatory operating rules | | `<SKILL_DIR>/references/sap_evidence_pack.ps1` | `-ScopeKey \| -Token \| -Ticket \| -Since [-OutputDir] [-IncludeLogs]` | The pure-local pack assembler | | `<SAP_DEV_CORE_SHARED_DIR>/scripts/sap_artifact_lib.ps1` | dot-sourced by the engine | `Find-SapArtifacts` — the manifest query | | `<SAP_DEV_CORE_SHARED_DIR>/scripts/sap_object_resolver.ps1` | *(only for object scopes)* | Resolve an object name → canonical scope key |
---
powershell -NoProfile -ExecutionPolicy Bypass -Command ". '<SAP_DEV_CORE_SHARED_DIR>\scripts\sap_settings_lib.ps1'; . '<SAP_DEV_CORE_SHARED_DIR>\scripts\sap_connection_lib.ps1'; Write-Output ('WORK_DIR=' + (Get-SapWorkDir))"cmd /c if not exist "{WORK_TEMP}" mkdir "{WORK_TEMP}"Set `{RUN_TEMP}` = the per-run scratch dir (`Get-SapRunTemp` mints + creates `{work_dir}\temp\run_<id>`):
powershell -NoProfile -ExecutionPolicy Bypass -Command ". '<SAP_DEV_CORE_SHARED_DIR>\scripts\sap_connection_lib.ps1'; Write-Output ('RUN_TEMP=' + (Get-SapRunTemp))"Per the CLAUDE.md "Two-bucket temp model" write this skill's `_run.json` log state under `{RUN_TEMP}`.
---
powershell -ExecutionPolicy Bypass -File "<SAP_DEV_CORE_SHARED_DIR>\scripts\sap_log_helper.ps1" -Action start -StateFile "{RUN_TEMP}\sap_evidence_pack_run.json" -Skill sap-evidence-pack -ParamsJson "{}"---
Pick the query mode from `$ARGUMENTS`:
TADIR object code (e.g. `PROG_ZMMR001`), so resolve it first with the object resolver, then pass `-ScopeKey`:
C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File "<SAP_DEV_CORE_SHARED_DIR>\scripts\sap_object_resolver.ps1" -Token "PROGRAM ZMMR001"
Read the `OBJECT: ... object=<O> name=<N>` line → scope key is `<O>_<N>`.
ticket; no scope needed, no SAP).
Flags: `--output <dir>` (pack location), `--include-logs` (include raw JSONL run logs in the pack).
---
powershell -ExecutionPolicy Bypass -File "<SKILL_DIR>\references\sap_evidence_pack.ps1" -Token "TR THE_TR"
…or `-ScopeKey "PROG_ZMMR001"`, or `-Ticket "SAP-4821"`, or `-Since 2026-06-01`. Append `-OutputDir`, `-IncludeLogs` as needed. This engine is pure-local — it does not connect to SAP — so plain `powershell` is fine (32-bit not required).
Engine output:
EVIDENCE: scope=<key> artifacts=<n> missing=<m> missing_files=<k> pack=<dir> INDEX_MD: <path>
Exit: `0` ok (even with 0 artifacts — it writes an honest "no evidence" pack) · `2` on error.
---
Open `INDEX_MD` and present:
1. **Scope** and **overall verdict** (rolled up from the collected artifacts — NO_GO wins over GO_WITH_WARNINGS wins over GO). 2. **What's in the pack** — the contents table (which skill produced what, with verdicts and coverage). 3. **Missing evidence** — read this section out explicitly. If `missing=<m>` is non-zero, name the gaps (e.g. "ATC was not run; no ABAP Unit results") and recommend the skill that would fill each:
4. If any artifact files were **missing on disk** (`missing_files`), flag that the index references outputs that have been moved/deleted.
Do NOT overstate coverage. The pack is credible precisely because it is honest about what was and was not checked.
---
powershell -ExecutionPolicy Bypass -File "<SAP_DEV_CORE_SHARED_DIR>\scripts\sap_log_helper.ps1" -Action end -StateFile "{RUN_TEMP}\sap_evidence_pack_run.json" -Status SUCCESS -ExitCode 0---
SAP development automation skills for AI coding assistants. Windows-only — the skills drive SAP GUI for Windows via GUI Scripting (plus optional RFC via SAP NCo); there is no macOS/Linux path.
Activates an inactive SAP repository object via SAP GUI Scripting. Routes to the correct transaction by object type: SE38 for…
Natural-language SAP API discovery over RFC (no GUI): turn a goal like "create a sales order" or "post a goods movement" into a…
Runs the SAP ABAP Test Cockpit (ATC) end-to-end as a quality gate: builds an SCI Object Set scoped to the target object(s),…
Executes BDC (Batch Data Communication) sessions in SAP via RFC. Reads SHDB recording files from the bdc/ folder, connects via…
Changes the package (TADIR-DEVCLASS) assignment of an SAP repository object via the "Object Directory Entry" dialog (Goto >…
Validates ABAP source (report / program / FM / class / include) before deployment — one skill, dimension-dispatched: naming…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.