SuperAPI AI Directory

project-update-items

Office & productivity

View repository

Updated 10-15 14:59

About this skill

project-update-items

Bulk update project item field values. Supports status changes, priority changes, size settings, etc.

Prerequisites

  • Items must exist in the target GitHub Project
  • gh The CLI must be installed and authenticated (project with scope)

Flow

Step 1: Confirm the update targets and update contents

Confirm the following with the user:

  • Target specification method:
    • Query filter (e.g. status:Todo, label:bug, assignee:@me)
    • Direct specification of item numbers
    • All items
  • Field(s) to update: Status, Priority, Size, or custom fields
  • New value(s): Example: Status → "In Progress", Priority → "High"

Step 2: Retrieve field metadata

# プロジェクト ID を取得
gh project view <number> --owner <owner> --format json -q '.id'

# フィールド ID とオプション ID を取得
gh project field-list <number> --owner <owner> --format json

jq Resolve the ID of the target field and the option ID corresponding to the value to be set.

Step 3: Search for target items

gh project item-list <number> \
  --owner <owner> \
  --format json \
  --limit 999

Filter items by user-specified conditions.--query If the parameter can be used, prefer it:

gh project item-list <number> \
  --owner <owner> \
  --query "status:Todo" \
  --format json

Step 4: Confirm the update contents with the user

Display a list of update targets and changes:

以下の N 件のアイテムを更新します:
- #1: ソーシャルログイン — Status: Todo → In Progress
- #2: パスワードリセット — Status: Todo → In Progress

実行しますか?

Step 5: Bulk update field values

Update field values for each item:

gh project item-edit \
  --id <item-id> \
  --field-id <field-id> \
  --project-id <project-id> \
  --single-select-option-id <option-id>

Use the appropriate flag depending on the field type:

  • SINGLE_SELECT: --single-select-option-id
  • TEXT: --text
  • NUMBER: --number
  • DATE: --date(YYYY-MM-DD format)

Step 6: Report the update results

Display the list of updated items:

# Title Field Old value New value
1 Social login Status Todo In Progress
2 Password reset Status Todo In Progress

Notes

  • Always obtain user confirmation before batch updating
  • If an option value does not exist in the project's field definitions, report an error
  • When updating multiple fields at the same time, run item-edit for each field
  • Be mindful of GitHub API rate limits, and adjust the batch size when updating in large quantities
  • Requires network (mainly via the API. See the "Running in a sandbox environment" section below)

Verification

After completing Step 6, verify the updates with the following:

gh project item-list <number> --owner <owner> --format json --limit 999

Complete if the target items' field values have changed to the new values.

Running in a sandbox environment

This skill requires GitHub operations over the network (gh project item-edit). Run the relevant commands with the sandbox disabled on a per-command basis. It cannot be run in an environment where network isolation cannot be lifted.