feat(contrib): add PR review and module scaffold skills#131
Open
jeanscherf wants to merge 4 commits into
Open
Conversation
Adds two Claude Code skills to .claude/skills/ for SDK contributors: - review-pr: reviews a PR against 23 criteria across 6 sections (process, security, code quality, API design, tests, documentation). Runs from the repo root via gh CLI. Outputs a structured table report with verdict and optional gh pr review posting. - scaffold-module: generates the full standard module layout (10 files + telemetry wiring) for a new BTP service integration. Includes a self-review phase that runs ruff and fixes issues before reporting. Both skills are compatible with Claude Code, Cline, Copilot, and other agentic tools via the tools/compatibility frontmatter fields.
Replace diff-offset line counting with explicit file fetches. Phase 2 now downloads each changed file to /tmp/pr<number>/<path> at the PR head ref; Phase 3 reads those files with the Read tool for exact line numbers instead of deriving positions from unified diff hunk arithmetic.
tiagoek
reviewed
May 21, 2026
tiagoek
reviewed
May 21, 2026
tiagoek
reviewed
May 21, 2026
Phase 1 now parses REPO and NUMBER from three input forms: full GitHub URL, owner/repo#number, or plain number (defaults to SAP/cloud-sdk-python). All gh commands and the file-fetch API call use the resolved REPO so the skill works for PRs in forks, not just PRs in the upstream repo. Also switch file-fetch ref from branch name to head commit SHA to avoid ambiguity when fork and upstream share the same branch name.
- Remove SAP-internal Artifactory URL from user-guide.md template; replace with plain `uv add sap-cloud-sdk` - Remove incorrect token_url derivation from service URL; BTP binding schemas vary and the UAA URL must be read from the binding, not guessed from the service URL - Expand Phase 5 self-review to run the full local gate: ruff check, ruff format --check, ty check, and pytest (not just ruff check)
betinacosta
approved these changes
May 21, 2026
tiagoek
approved these changes
May 22, 2026
ArthurTonial
approved these changes
May 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds two Claude Code skills to `.claude/skills/` for SDK contributors. Skills are invocable via Claude Code CLI (or any compatible agentic tool: Cline, Copilot, etc.) from the repo root.
`/review-pr [PR#]`
Reviews a PR against 23 criteria across 6 sections:
Outputs a structured table report with ✅/⚠️ /❌/➖ per criterion, a blocking issues summary, and an optional post via `gh pr review`.
Line citations are accurate because Phase 2 fetches each changed file at the PR head commit SHA via `gh api`, so all `file:line` references in the report come from `Read` output on the actual files rather than from diff hunk arithmetic.
Accepts a plain PR number (defaults to SAP/cloud-sdk-python), a full GitHub URL, or an `owner/repo#number` reference, so it works for PRs in forks as well as in the upstream repo.
`/scaffold-module`
Generates the full standard module layout for a new BTP service integration:
Related Issue
Closes AFSDK-3286
Type of Change
How to Test
Checklist