원클릭으로
gh-project
Manage GitHub Project v2 issue states, workpad comments, and related follow-up actions.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Manage GitHub Project v2 issue states, workpad comments, and related follow-up actions.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | gh-project |
| description | Manage GitHub Project v2 issue states, workpad comments, and related follow-up actions. |
| license | MIT |
| metadata | {"author":"gh-symphony","version":"1.0","generatedBy":"gh-symphony"} |
Interact with the GitHub Project v2 board to manage issue status, create and update the single workpad comment, leave transition comments, and handle review follow-up loops without duplicating orchestration artifacts.
gh CLI is authenticated (gh auth status).gh-symphony/context.yaml exists with field IDs and option IDsStatus Field ID: PVTSSF_lAHOAPiKdM4BTbVgzhAq-yU
| Column Name | Role | Option ID |
|---|---|---|
| Backlog | wait | f75ad846 |
| Ready | active | 61e4505c |
| In progress | active | 47fc9ee4 |
| In review | wait | df73e18b |
| Done | terminal | 98236657 |
Use gh project item-edit with the field ID and option ID from the table above:
# Get the project item ID for an issue
gh project item-list <project-number> --owner <owner> --format json \
| jq '.items[] | select(.content.number == <issue-number>) | .id'
# Update the status field
gh project item-edit \
--project-id PVT_kwHOAPiKdM4BTbVg \
--id <item-id> \
--field-id PVTSSF_lAHOAPiKdM4BTbVgzhAq-yU \
--single-select-option-id <option-id-from-table-above>
After every actual state transition, leave an issue comment in this exact form:
gh issue comment <issue-number> --repo <owner>/<repo> \
--body "## Ready -> In progress"
Do not emit the transition comment if the state change did not happen or if the same transition comment already exists for the current transition event.
Create the Workpad once per issue:
gh issue comment <issue-number> --repo <owner>/<repo> --body "## Workpad\n\n### Plan\n- [ ] Task 1"
Reuse the existing Workpad comment instead of creating a new one:
gh api -X PATCH /repos/<owner>/<repo>/issues/comments/<comment-id> \
-f body="## Workpad\n\n### Plan\n- [x] Task 1 (done)"
Search issue comments first and update the existing Workpad if present:
gh api /repos/<owner>/<repo>/issues/<issue-number>/comments \
--paginate \
| jq '.[] | select(.body | startswith("## Workpad")) | {id, created_at, updated_at}'
If the issue returns from In review to Ready, append follow-up todo items and
notes to that same Workpad comment.
After one logical Workpad task is completed and committed, leave an issue comment describing the completed task, commit SHA, and next target:
gh issue comment <issue-number> --repo <owner>/<repo> --body "$(cat <<'EOF'
Completed: <workpad task>
Commit: <sha>
Next: <next target>
EOF
)"
When the issue goes back to In review after review fixes, summarize the work on
the PR conversation:
gh pr comment <pr-number> --repo <owner>/<repo> --body "$(cat <<'EOF'
Addressed review feedback:
- <change 1>
- <change 2>
Validation:
- <command/result>
EOF
)"
gh issue create --repo <owner>/<repo> \
--title "Follow-up: <title>" \
--body "<description>" \
--label "backlog"
gh issue edit <issue-number> --repo <owner>/<repo> --add-label "<label>"
Ready as the first active state. Backlog is human-managed; do not start work there.## From -> To.In review returns to Ready, update the existing Workpad with new todo items and notes instead of creating a new Workpad.In review, verify as much as possible that the issue requirements and acceptance criteria are satisfied. Use all practical validation methods available.In review to Ready, inspect actionable PR feedback, including review summaries, unresolved review threads, and inline comments. Reply on the relevant review threads after addressing the feedback.In review, leave a PR comment summarizing the review follow-up changes and validation performed.In review is a wait state. Pause until a human changes the tracker state again.Done is human-managed only. A human moves the issue from In review to Done when the PR is merged.Done from automation.