Files
gitea-pr-review/README.md
T

2.0 KiB
Raw Blame History

gitea-pr-review

中文文档(默认) | English: README.en.md

gitea-pr-review 用于读取 Gitea Pull Request,并整理为适合 LLM 消费的文档。

功能

  • 拉取单个 PR 的核心信息:标题、状态、分支、commit 列表、基础 diff stat
  • 完整保留 review/comment/reply 原文
  • 支持两种输出格式:
    • markdown:适合直接喂给 LLM
    • json:结构化输出,便于脚本二次处理
  • 支持从已保存的 JSON 重新渲染 Markdown(无需再次请求 Gitea

安装

cargo build --release
# 可执行文件:target/release/gitea-pr-review

环境变量

fetch 子命令需要以下环境变量:

  • GITEA_PR_CLI_API_TOKEN
  • GITEA_PR_CLI_URL(例如 https://gitea.com
  • GITEA_PR_CLI_REPO(例如 Origami404/aaa

用法

1) 从 Gitea 拉取 PRfetch

# 默认输出 markdown 到 stdout
gitea-pr-review fetch <pr-index>

# 输出 json 到 stdout
gitea-pr-review fetch <pr-index> --format json

# 输出到文件
gitea-pr-review fetch <pr-index> --out pr.md
gitea-pr-review fetch <pr-index> --format json --out pr.json

2) 从 JSON 渲染 Markdownrender-md

# 输出到 stdout
gitea-pr-review render-md --in pr.json

# 输出到文件
gitea-pr-review render-md --in pr.json --out pr.md

Markdown 输出结构(示例)

# <repo> `#<pr-index>` <pr-title>

## Metadata

### Commits
- <sha-short> <title> (<author>, <date>)

### Diff Stat
total: <files_changed> files, +<additions>, -<deletions>
- <file-path>: +<additions>, -<deletions>

## Review 1 (<review-state>)
> <reviewer>

### Comment <pr-index>.<comment-seq>
<file>:<line>
<user>:
```md
<原始评论正文>
```

### Reply <pr-index>.<comment-seq>.<reply-seq>
<user>:
```md
<原始回复正文>
```

说明

  • 默认输出到 stdout;仅在指定 --out 时写入文件。
  • 当评论正文本身包含 Markdown / 代码块时,渲染器会自动处理 fence,避免破坏整体结构。