Agent skill
github-project-operator
Manages GitHub Projects v2 write operations using gh CLI. Use when adding issues or PRs to a project, creating tasks (issues) in a project, updating field values (Status, Priority, Size, Sprint, etc.), creating draft issues, creating fields, or archiving items. Also use at the start of a session when selecting a project to work with.
Install this agent skill to your Project
npx add-skill https://github.com/scizorman/dotfiles/tree/main/modules/home/coding-agent/config/skills/github-project-operator
SKILL.md
GitHub Project Operator
This skill defines rules and procedures for write operations on GitHub Projects v2.
Session Initialization: Project Selection
At the start of each session, select the target project and collect all required IDs.
Step 1: List Projects
gh project list --owner "@me" --format json
Present the list to the user and ask which project to use.
Step 2: Collect Project Metadata
Once the user selects a project, retrieve the Project ID and field definitions in one batch.
# Get the project number from the list output
gh project view <NUMBER> --owner "@me" --format json
# List all fields with their IDs and option IDs
gh project field-list <NUMBER> --owner "@me" --format json
Retain the following values for the entire session:
| Value | Description |
|---|---|
| Project ID | id field from gh project view (node ID format: PVT_...) |
| Field ID | id field per field from gh project field-list |
| Option ID | id per option within single-select fields |
For field type specifics and ID resolution procedures, see references/field-operations.md.
Workflow: Create a Task
Use this workflow when the user wants to create a new issue and add it to the project.
Step 1: Create the Issue
Use the github-issue-creator skill to create the issue. This applies issue templates, title guidelines, and language settings.
Note the issue URL from the output (e.g., https://github.com/OWNER/REPO/issues/123).
Step 2: Add the Issue to the Project
gh project item-add <PROJECT_NUMBER> --owner "@me" --url <ISSUE_URL>
Note the item ID from the output (PVTI_...).
Step 3: Set Field Values
Set Status, Priority, Size, Sprint, and other fields as needed.
gh project item-edit \
--project-id <PROJECT_ID> \
--id <ITEM_ID> \
--field-id <FIELD_ID> \
--single-select-option-id <OPTION_ID>
For the full flag reference by field type, see references/field-operations.md.
Workflow: Create a Sub-task
Use the github-issue-creator skill with the parent issue number to create and link the sub-issue, then add it to the project following the same steps as above.
Workflow: Add Existing Issue or PR to Project
gh project item-add <PROJECT_NUMBER> --owner "@me" --url <ISSUE_OR_PR_URL>
Workflow: Create a Draft Issue
Draft issues exist only within the project and have no associated repository issue.
gh project item-create <PROJECT_NUMBER> --owner "@me" \
--title "<title>" \
--body "<body>"
After creation, set field values using gh project item-edit as needed.
Workflow: Update Field Values
When updating fields on an existing project item:
- Resolve the item ID if not already known:
gh project item-list <PROJECT_NUMBER> --owner "@me" --format json | \
jq '.items[] | select(.content.number == <ISSUE_NUMBER>)'
- Update the field:
gh project item-edit \
--project-id <PROJECT_ID> \
--id <ITEM_ID> \
--field-id <FIELD_ID> \
--single-select-option-id <OPTION_ID> # for single-select fields
For other field types (number, date, text, iteration), see references/field-operations.md.
Workflow: Create a Field
gh project field-create <PROJECT_NUMBER> --owner "@me" \
--name "<Field Name>" \
--data-type <TYPE>
Supported --data-type values: TEXT, NUMBER, DATE, SINGLE_SELECT, ITERATION.
For SINGLE_SELECT, options must be added via the GitHub web UI or GraphQL API after creation.
Workflow: Archive an Item
gh project item-archive <PROJECT_NUMBER> --owner "@me" --id <ITEM_ID>
Notes
- Always resolve Project ID, Field ID, and Option ID before making edits. These IDs are node IDs (e.g.,
PVT_...,PVTF_...,62c28424), not human-readable names. - Project numbers (integers) are used with
gh project item-add,gh project item-list, andgh project field-list. Project IDs (node IDs) are used withgh project item-edit. - When the user does not specify field values, omit them rather than guessing defaults.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
project-plan-creator
Creates project management plans in Markdown. Use when creating project plans, defining how to manage scope/schedule/risk/communication, or detailing project execution strategy. Primarily for internal projects that build systems, processes, or organizational capabilities.
github-issue-creator
Create GitHub issues with gh CLI, including standard issues and sub-issues linked to a parent issue. Use when creating a new issue, breaking down a larger issue into child issues, or establishing a parent-child relationship between issues. Detect repository issue templates, apply title and body conventions, and create the issue with gh CLI.
github-issue-pr-commenter
Post structured comments to GitHub Issues and Pull Requests with gh CLI. Use when reporting completed work, sharing progress, summarizing investigation results, recording design decisions, proposing implementation plans, asking for feedback, or adding supplementary context to a pull request conversation. Do not use for inline pull request review comments on specific files or lines.
github-pr-creator
Submit changes as a GitHub Pull Request with gh CLI. Covers the full workflow: issue confirmation, branch naming, ghq-based git worktree creation or reuse, commit and push, PR template detection, and PR creation with gh pr create. Use when creating a pull request, opening a PR, starting work on an issue, or cutting a working branch.
project-charter-creator
Use this skill whenever the user wants to create, draft, or improve a Project Charter. Triggers include: any mention of 'project charter', 'charter', 'プロジェクト憲章', 'プロジェクトチャーター', 'プロジェクト企画書', or requests to formally authorize a project, define project scope and objectives, align stakeholders, or establish project governance. Also use when the user says 'プロジェクトの立ち上げ', 'プロジェクトの認可', 'キックオフ文書', or mentions needing to get sponsor approval for a project. This skill covers project charters for any methodology (Waterfall, Agile, Lean Six Sigma) and any domain (IT, construction, marketing, organizational change, product development, etc.). Use this skill even if the user just says 'help me start a project' or 'I need to get alignment on my project'.
github-project-reporter
Reads and analyzes GitHub Projects v2 data using gh CLI. Use when listing items by status, extracting high-priority tasks, generating sprint progress summaries, detecting blockers or health issues (unassigned items, overdue items, WIP excess), or producing progress reports.
Didn't find tool you were looking for?