Manage Pull Requests in Forgejo

Skill for managing pull requests in Forgejo repositories using the forgejo-cli. Supports create, list, view, merge, close, and comment actions.

Sby Skills Guide Bot
DevelopmentIntermediate
107/23/2026
Claude CodeCopilotCursorWindsurfCodex
#git#forgejo#pull-requests#automation

Recommended for


name: manage-pull-requests description:
A skill for managing pull requests in Forgejo repositories using the forgejo-cli. Supports creating, listing, viewing, merging, closing, and commenting on PRs. license: Apache-2.0 compatibility: | Requires forgejo-cli (https://codeberg.org/forgejo-contrib/forgejo-cli/wiki/PRs). Agent must have network access to the Forgejo API. metadata: category: development-tools tags: [git, forgejo, pull-requests, automation]

Manage Pull Requests

Overview

This skill enables agents to automate pull request (PR) management in Forgejo repositories using the forgejo-cli tool. It supports common PR operations, making it ideal for CI/CD pipelines, code reviews, and team collaboration workflows.


Instructions

Prerequisites

  • forgejo-cli must be installed and configured with Forgejo API credentials.
  • The agent must have access to the target repository.

Supported Actions

  • List PRs: Fetch all open PRs for a repository.
  • View PR: Retrieve details of a specific PR.
  • Create PR: Open a new PR from a branch or fork.
  • Merge PR: Merge an approved PR into the target branch.
  • Close PR: Close a PR without merging.
  • Comment on PR: Add or update comments on a PR.

Parameters

Input Format

All actions require a JSON object with the following structure:

{
  "action": "<action>",
  "repo": "<owner/repo>",
  [ "pr_id": "<pr-id>", ]
  [ "branch": "<source-branch>", ]
  [ "target_branch": "<target-branch>", ]
  [ "title": "<pr-title>", ]
  [ "description": "<pr-description>", ]
  [ "comment": "<comment-text>", ]
  [ "force": <boolean> ]
}

Action-Specific Parameters

| Action | Required Parameters | Optional Parameters | |-----------|----------------------------------------------|-----------------------------------------| | list | repo | — | | view | repo, pr_id | — | | create | repo, branch, title | target_branch, description | | merge | repo, pr_id | force | | close | repo, pr_id | — | | comment | repo, pr_id, comment | — |


Examples

1. List all open PRs

Input:

{
  "action": "list",
  "repo": "owner/repo"
}

Output: List of open PRs with their IDs, titles, and authors.


2. Create a new PR

Input:

{
  "action": "create",
  "repo": "owner/repo",
  "branch": "feature/new-feature",
  "target_branch": "main",
  "title": "Add new feature",
  "description": "This PR introduces a new feature."
}

Output: Confirmation of PR creation with PR ID.


3. Merge a PR

Input:

{
  "action": "merge",
  "repo": "owner/repo",
  "pr_id": "123",
  "force": false
}

Output: Confirmation of merge or error if PR cannot be merged.


4. Add a comment to a PR

Input:

{
  "action": "comment",
  "repo": "owner/repo",
  "pr_id": "123",
  "comment": "Please review the changes."
}

Output: Confirmation of comment added.


Error Handling

  • If forgejo-cli is not found:

    "Error: forgejo-cli is required but not installed. Install it from [forgejo-cli wiki](https://codeberg.org/forgejo-contrib/forgejo-cli/wiki/PRs)."

  • If the repository or PR ID is invalid:

    "Error: Invalid repository or PR ID."

  • For CLI errors:

    Return the raw error message from forgejo-cli.


References

Related skills