sap-bw-query — Claude Code skill: inspect SAP BW queries
An agent skill for SAP BW work through Eclipse and BW Modeling Tools: reads InfoProvider metadata, checks a specification and prepares an unsaved query draft.
npx skills add secondsky/sap-skills --skill sap-bw-query -a claude-codeWhat sap-bw-query does
The skill walks an agent from a business specification to a draft of a new SAP BW query. First it pulls provider metadata, meaning characteristics with their dimension groups plus key figures, through bw_describe_provider. Then it checks every name in QuerySpec v1 against that metadata. Gaps that block the build stop the draft; optimization hints come back separate from anything that would shift business meaning.
Queries that already exist are opened read-only. Nothing gets deleted or rewritten, and the only artifact produced is a local unsaved draft. Writing a brand-new query to the backend needs a human confirmation inside Eclipse tied to system, client, provider, technical name and a hash of the spec. A person also clicks Finish in SAP's own wizard. After that, bw_populate_query_editor fills the open editor with the drafted model and you decide whether to save.
Credentials never reach the skill. Paste a password and processing halts; you log in through SAP's native dialog instead. Windows is required. The studio installs per user in %LOCALAPPDATA%\BWAutomationStudio with no admin rights, and BwStudio.ps1 -Action Launch -Json starts it, adding -noPwdStore. Connections work over SNC/SSO or a plain login. Much of the checking is local; validation against a live BW system has not been done yet.
What it helps with
- verify spec names for characteristics and key figures against provider metadata
- build an unsaved draft query from a written business spec
- lay out axes, filters and variables in the query editor
- run BW query design rules against an open query
- document an existing query in business terms without touching it
Example prompts for the agent
- Run
BwStudio.ps1 -Action Status -Jsonand tell me if the studio is ready - Read the provider metadata with
bw_describe_providerand check my spec against it - Prepare an unsaved query draft with these axes and filters, no saving
How to install sap-bw-query
1Skills CLI (Vercel)
npx skills add secondsky/sap-skills --skill sap-bw-query -a claude-code2Manually: put the files in place
~/.claude/skills/sap-bw-query/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/sap-bw-query/
1Skills CLI (Vercel)
npx skills add secondsky/sap-skills --skill sap-bw-query -a codex2Manually: put the files in place
.agents/skills/sap-bw-query/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add secondsky/sap-skills --skill sap-bw-query -a cursor2Manually: put the files in place
.cursor/skills/sap-bw-query/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install secondsky/sap-skills sap-bw-query2Manually: put the files in place
.github/skills/sap-bw-query/SKILL.md1Skills CLI (Vercel)
npx skills add secondsky/sap-skills --skill sap-bw-query -a gemini-cli2Platform CLI
gemini skills install https://github.com/secondsky/sap-skills --path plugins/sap-bw-query/skills/sap-bw-queryManually: put the files in place
.devin/skills/sap-bw-query/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add secondsky/sap-skills --skill sap-bw-query -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about sap-bw-query
How do I install sap-bw-query in Claude Code?
Run npx skills add secondsky/sap-skills --skill sap-bw-query -a claude-code. The skill lands at ~/.claude/skills/sap-bw-query/SKILL.md.
What does sap-bw-query do?
It reads InfoProvider metadata in SAP BW, checks a QuerySpec v1 against it and prepares an unsaved query draft for you to review in Eclipse.
Can it modify or delete an existing BW query?
No. Open queries stay read-only, and any new query exists as a draft until a human confirms it in Eclipse.