# gitea-pr-review > 中文文档(默认) | English: [README.en.md](./README.en.md) `gitea-pr-review` 用于读取 Gitea Pull Request,并整理为适合 LLM 消费的文档。 ## 功能 - 拉取单个 PR 的核心信息:标题、状态、分支、commit 列表、基础 diff stat - 完整保留 review/comment/reply 原文 - 支持两种输出格式: - `markdown`:适合直接喂给 LLM - `json`:结构化输出,便于脚本二次处理 - 支持从已保存的 JSON 重新渲染 Markdown(无需再次请求 Gitea) ## 安装 ```bash 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 拉取 PR(fetch) ```bash # 默认输出 markdown 到 stdout gitea-pr-review fetch # 输出 json 到 stdout gitea-pr-review fetch --format json # 输出到文件 gitea-pr-review fetch --out pr.md gitea-pr-review fetch --format json --out pr.json ``` ### 2) 从 JSON 渲染 Markdown(render-md) ```bash # 输出到 stdout gitea-pr-review render-md --in pr.json # 输出到文件 gitea-pr-review render-md --in pr.json --out pr.md ``` ## Markdown 输出结构(示例) ````md # `#` ## Metadata ### Commits - (<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> <file>:<line> <user>: ```md <原始回复正文> ``` ```` ## 说明 - 默认输出到 `stdout`;仅在指定 `--out` 时写入文件。 - 当评论正文本身包含 Markdown / 代码块时,渲染器会自动处理 fence,避免破坏整体结构。 - `Comment` 和 `Reply` 都会显示各自直接关联的文件路径与行号(若 API 提供)。