/install git-hub-projects-v2
GitHub Projects v2 Skill
Auth prerequisite
gh auth status # verify scopes
gh auth refresh -s project # add project scope if missing
ID note: Most
gh projectcommands take a project number (e.g.1) +--owner.item-editis the exception — it requires--project-idwith the GraphQL node ID (e.g.PVT_xxx). Get it with:gh project list --owner \x3Cowner> --format json | jq '.projects[] | select(.number==1) | .id'
1. List backlog items
# List all items (default 30, use --limit to raise)
gh project item-list \x3Cnumber> --owner \x3Cowner> --limit 100
# Filter by status — show only backlog
gh project item-list \x3Cnumber> --owner \x3Cowner> --query "status:Backlog"
# Filter open issues assigned to you
gh project item-list \x3Cnumber> --owner \x3Cowner> --query "assignee:@me is:issue is:open"
# JSON output for scripting
gh project item-list \x3Cnumber> --owner \x3Cowner> --format json \
| jq '.items[] | {id, title, status}'
2. Set fields on an item (status, iteration, priority, etc.)
item-edit requires the project node ID and item node ID — both available from item-list --format json.
# Get project node ID
PROJECT_ID=$(gh project list --owner \x3Cowner> --format json \
| jq -r '.projects[] | select(.number==\x3Cnumber>) | .id')
# Get item IDs and current field values
gh project item-list \x3Cnumber> --owner \x3Cowner> --format json | jq '.items[]'
# Get field IDs and option IDs (needed for single-select and iteration fields)
gh project field-list \x3Cnumber> --owner \x3Cowner> --format json | jq '.fields[]'
# Set a single-select field (e.g. Status, Priority)
gh project item-edit --project-id $PROJECT_ID --id \x3Citem-node-id> \
--field-id \x3Cfield-node-id> --single-select-option-id \x3Coption-id>
# Set an iteration field (e.g. Sprint)
gh project item-edit --project-id $PROJECT_ID --id \x3Citem-node-id> \
--field-id \x3Cfield-node-id> --iteration-id \x3Citeration-id>
# Set a date field
gh project item-edit --project-id $PROJECT_ID --id \x3Citem-node-id> \
--field-id \x3Cfield-node-id> --date "2025-12-31"
# Set a number field (e.g. Story Points)
gh project item-edit --project-id $PROJECT_ID --id \x3Citem-node-id> \
--field-id \x3Cfield-node-id> --number 5
# Clear any field value
gh project item-edit --project-id $PROJECT_ID --id \x3Citem-node-id> \
--field-id \x3Cfield-node-id> --clear
3. Add a comment to an issue
# Add a comment (issue number, not project item ID)
gh issue comment \x3Cissue-number> --repo \x3Cowner>/\x3Crepo> --body "Your comment here"
# From a file
gh issue comment \x3Cissue-number> --repo \x3Cowner>/\x3Crepo> --body-file comment.md
4. Create an issue and add it to the project
# Create issue in a repo
ISSUE_URL=$(gh issue create \
--repo \x3Cowner>/\x3Crepo> \
--title "Fix login timeout" \
--body "Users are being logged out after 5 minutes." \
--assignee "@me" \
--label "bug")
# Add the new issue to the project
gh project item-add \x3Cnumber> --owner \x3Cowner> --url "$ISSUE_URL"
5. Create a sub-issue
Native gh issue doesn't support sub-issues yet. Use the gh-sub-issue extension:
# Install once
gh extension install yahsan2/gh-sub-issue
# Create a new issue as a sub-issue of an existing parent
gh sub-issue create --parent \x3Cparent-issue-number> \
--repo \x3Cowner>/\x3Crepo> \
--title "Implement login endpoint" \
--body "POST /api/login"
# Link an existing issue as a sub-issue of a parent
gh sub-issue add \x3Cparent-issue-number> \x3Cchild-issue-number> --repo \x3Cowner>/\x3Crepo>
# List sub-issues of a parent
gh sub-issue list \x3Cparent-issue-number> --repo \x3Cowner>/\x3Crepo>
If the extension is not available, fall back to GraphQL:
gh api graphql -f query='
mutation($parentId: ID!, $childId: ID!) {
addSubIssue(input: { issueId: $parentId, subIssueId: $childId }) {
issue { number title }
subIssue { number title }
}
}
' -F parentId=\x3Cparent-node-id> -F childId=\x3Cchild-node-id>
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install git-hub-projects-v2 - After installation, invoke the skill by name or use
/git-hub-projects-v2 - Provide required inputs per the skill's parameter spec and get structured output
What is Git Hub Projects V2?
Manage GitHub Projects v2 using the `gh project` CLI. Use this skill when the agent needs to list backlog items, set project fields (status, iteration, prior... It is an AI Agent Skill for Claude Code / OpenClaw, with 64 downloads so far.
How do I install Git Hub Projects V2?
Run "/install git-hub-projects-v2" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Git Hub Projects V2 free?
Yes, Git Hub Projects V2 is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Git Hub Projects V2 support?
Git Hub Projects V2 is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Git Hub Projects V2?
It is built and maintained by freddydk (@freddydk); the current version is v1.0.0.