SKILL.md's headline Gotcha said `list_issues` "has no `type` filter", and references/issues.md stated in bold that neither `type` nor `milestones` exists, "despite both appearing in api-reference.md". Both parameters are present on the deployed gitea-mcp v1.7.0 and both work: `type: "issues"` returns only issues, `type: "pulls"` only PRs, and `milestones` filters by name. Unfiltered, the same window returns them interleaved, so the mixing the Gotcha describes is real — only the stated remedy was wrong. This mattered most in gitea-workflow's no-args check-in, which lists open issues through this skill and so reported PRs under "Open Issues" while the skill forbade the one-parameter fix. The list flow now passes `type: "issues"`. references/sources.md recorded the absence as a live-verification win over stale research docs; it now records that the earlier check was superseded by v1.7.0, since drift runs in both directions. gitea-prs cited the same parameter as its canonical drift example and no longer does — no replacement example was substituted, because the obvious candidate was not verified in this pass. Also defaults label writes to `add_labels`: `replace_labels` clears every label not in the array, and per-label exclusivity makes blanket replacement destructive for a non-exclusive scope. Verified live against gitea-mcp v1.7.0, read-only calls. Refs #99
gitea-prs
List, read, create, update, merge, and review Gitea pull requests.
What it does
This skill handles the pull request lifecycle within the Gitea integration suite — listing and reading PRs (details, diff, changed files, CI status, reviews), creating them (title, body, labels), updating them (title, body, assignees, labels, milestone), adding and removing reviewers, closing/reopening, merging with a chosen strategy and post-merge branch cleanup, and the full code-review flow (create a review with inline comments, submit it, dismiss or delete it, reply to a review comment, and resolve or unresolve a comment thread). It composes gitea-labels-milestones for label/milestone ID resolution rather than duplicating that logic — milestone applies on an update only, never on create — and defers to gitea-issues for anything that turns out to be an issue rather than a PR (they share one number space) and to gitea-branches/gitea-files for the underlying branch/file operations behind a PR.
Usage
/gitea-prs
Describe the PR or review task: list PRs, get a PR's status/diff/reviews, create or update a PR, merge one, or create/submit/dismiss a code review. The skill will determine owner/repo from context and resolve any label or milestone names via gitea-labels-milestones before writing them.
Files
| File | Purpose |
|---|---|
SKILL.md |
Skill instructions for agents — Gotchas, the dispatch table, and label/milestone ID resolution via gitea-labels-milestones |
references/pull-requests.md |
Execution detail for list_pull_requests, pull_request_read (get/get_diff/get_files/get_status), and pull_request_write (create/update/close/reopen/update_branch/add_reviewers/remove_reviewers) |
references/reviews.md |
Execution detail for pull_request_review_write (create/submit/delete/dismiss, plus the comment-thread methods reply_comment/resolve_thread/unresolve_thread) and the review-related pull_request_read methods |
references/merging.md |
The merge workflow — CI vs. review/branch-protection gates, merge styles, branch cleanup, and the post-merge issue-close check |
references/sources.md |
Research sources backing the PR/review guidance |