pr PR排查
- 作者仓库星标 534
- 作者仓库 couchers
Create a Pull Request
Create a branch, commit, push, and open a PR for the current changes.
Steps
1. Assess the current state
Run in parallel:
git status(never use-uall)git diffandgit diff --stagedto understand all changesgit log --oneline -5to see recent commit message style
Identify which files should be committed. Do NOT commit files that are:
- Scratch/debug/temporary files
- Files containing secrets (
.env, credentials, etc.)
If there are no meaningful changes to commit, tell the user and stop.
2. Determine the branch name
Branch names in this repo follow the pattern: <area>/<type>/<short-description>
Where:
<area>is one of:backend,web,frontend,mobile,devops,docs, or another area that matches the changed files. For cross-cutting changes spanning multiple areas, pick the one that best describes the change.<type>is one of:feature,bugfix,fix,refactor, or similar<short-description>is a short kebab-case description
Infer area and type from the changed files and the nature of the changes. Never use a username as the area.
3. Run linters and formatters
Before committing, run the appropriate linters and formatters for the changed areas:
- Backend:
make formatandmake mypyfrom/app/backend - Web/Frontend: lint/format as appropriate
Fix any issues before proceeding. If linters produce changes, include those in the commit.
4. Create the branch and commit
If there are already commits on the current branch and no uncommitted changes remain (e.g. changes were already committed earlier), skip the commit and proceed to pushing.
Otherwise:
git checkout -b <branch-name>
git add <specific files> # add only the relevant files by name
git commit -m "<message>"
Write a concise commit message (1-2 sentences) that describes what changed and why.
5. Push the branch
git push -u origin <branch-name>
6. Create the PR
Read the PR template from .github/pull_request_template.md in this repo. Fill it in based on the actual changes:
Fill in the description at the top (what and why)
Fill in the Testing section with what was done or what should be done
Include the appropriate checklist(s) — backend, web, or both — based on which areas were changed. Remove checklists that don't apply.
Keep the "For maintainers" section as-is
Append the following note as the very last line of the PR body, after the "For maintainers" section (separated by a blank line):
_This PR was created with the Couchers PR skill._
gh pr create --base develop --title "<short title>" --body "$(cat <<'EOF'
<filled-in PR template>
_This PR was created with the Couchers PR skill._
EOF
)"
7. Report back
Tell the user the PR URL when done.
- 流狐分类
- 工程开发
- 作者声明 Agent
- 未找到明确声明;不据此推断已兼容或已测试
- 静态检查
- 88 / 100 · 启发式扫描,不代表运行安全
- 作者 / 版本 / 许可
- @Couchers-org · 未声明 license
- 流狐 Token 估算
- 低消耗
- 流狐接入估算
- 即装即用
- 是否需要外部 API Key
- 未发现要求
- 检测到的系统要求
- 未声明
- 底层运行要求
- 未声明
- 检测到的文件与系统行为
-
- 只读
- 允许写入 / 修改
- 读取环境变量
- 检测到的网络行为
- 仅限本地
- 安装命令数
- 无(仅作为资料)
档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。
需要注意: 未限定 allowed-tools,默认拥有全部工具权限。
作者没有在当前 SKILL.md 中定义固定输出样例。 Steps
Run in parallel: git status (never use -uall) git diff and git diff --staged to understand all changes
Branch names in this repo follow the pattern: <area>/<type>/<short-description> Where: <area> is one of: backend, web, frontend, mobile, devops, docs, or another area that matches the changed files. For cross-cutting changes spanning multiple areas, pick the…
Before committing, run the appropriate linters and formatters for the changed areas: Backend: make format and make mypy from /app/backend Web/Frontend: lint/format as appropriate
If there are already commits on the current branch and no uncommitted changes remain (e.g. changes were already committed earlier), skip the commit and proceed to pushing. Otherwise: Write a concise commit message (1-2 sentences) that describes what changed…
5. Push the branch
# Create a Pull Request
Create a branch, commit, push, and open a PR for the current changes.
## Steps
### 1. Assess the current state
Run in parallel:
- `git status` (never use `-uall`)
- `git diff` and `git diff --staged` to understand all changes
- `git log --oneline -5` to see recent commit message style
Identify which files should be committed. Do NOT commit files that are:
- Scratch/debug/temporary files
- Files containing secrets (`.env`, credentials, etc.)
If there are no meaningful changes to commit, tell the user and stop.
### 2. Determine the branch name
Branch names in this repo follow the pattern: `<area>/<type>/<short-description>`
Where:
- `<area>` is one of: `backend`, `web`, `frontend`, `mobile`, `devops`, `docs`, or another area that matches the changed files. For cross-cutting changes spanning multiple areas, pick the one that best describes the change.
- `<type>` is one of: `feature`, `bugfix`, `fix`, `refactor`, or similar
- `<short-description>` is a short kebab-case description
Infer area and type from the changed files and the nature of the changes. Never use a username as the area.
### 3. Run linters and formatters
Before committing, run the appropriate linters and formatters for the changed areas:
- **Backend**: `make format` and `make mypy` from `/app/backend`
- **Web/Frontend**: lint/format as appropriate
Fix any issues before proceeding. If linters produce changes, include those in the commit.
### 4. Create the branch and commit
If there are already commits on the current branch and no uncommitted changes remain (e.g. changes were already committed earlier), skip the commit and proceed to pushing.
Otherwise:
```
git checkout -b <branch-name>
git add <specific files> # add only the relevant files by name
… 作者原文负责流程事实;流狐只索引当前章节、要点、文件与命令。
章节 -> Steps → 1. Assess the current state → 2. Determine the branch name → 3. Run linters and formatters → 4. Create the branch and commit → 5. Push the branch
要点 -> Backend · Web/Frontend · Create a branch, commit, push, and open a PR for the current changes. · Identify which files should be committed. · If there are no meaningful changes to commit, tell the user and stop. · Where: - <area> is one of: backend, web, frontend, mobile, devops, docs, or another area that matches the changed files. · Infer area and type from the changed files and the nature of the changes. · Fix any issues before proceeding.
文件/命令 -> git status · -uall · git diff · git diff --staged · git log --oneline -5 · .env · <area>/<type>/<short-description> · <area>
内容 SHA-256 -> 713e8ba0cfae
方法与流程
适用与边界
原文中的明确线索
git status、-uall、git diff、git diff --staged、git log --oneline -5、.env、<area>/<type>/<short-description>、<area>