project-add-items

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

project-add-items

project-add-items

要件定義書・タスクリスト・ロードマップなどのソースからプロジェクトアイテムを一括作成します。
从需求规格说明书、任务列表、路线图等来源批量创建GitHub Project条目。

前提条件

前提条件

  • 対象の GitHub Project が存在すること
  • gh
    CLI がインストールされ、認証済みであること(
    project
    スコープ付き)
  • 目标GitHub Project已存在
  • 已安装
    gh
    CLI并完成认证(需包含
    project
    权限范围)

フロー

流程

Step 1: ソースを特定する

Step 1: 指定来源

ユーザーからアイテムのソースを取得:
  • ファイルパス(Markdown、YAML 等)
  • URL(GitHub Issue 一覧、Wiki ページ等)
  • インラインテキスト(ユーザーが直接入力)
从用户处获取条目来源:
  • 文件路径(Markdown、YAML等)
  • URL(GitHub Issue列表、Wiki页面等)
  • 内联文本(用户直接输入)

Step 2: ソースを解析してアイテムを抽出する

Step 2: 解析来源并提取条目

ソース形式に応じて解析し、以下の情報を抽出:
  • タイトル
  • 本文・説明
  • 優先度(High / Medium / Low)
  • サイズ(XS / S / M / L / XL)
  • カテゴリ(セクション見出し等から)
対応ソース形式の例:
Markdown チェックリスト:
markdown
undefined
根据来源格式进行解析,提取以下信息:
  • 标题
  • 正文/描述
  • 优先级(High / Medium / Low)
  • 规模(XS / S / M / L / XL)
  • 分类(从章节标题等提取)
支持的来源格式示例:
Markdown 复选列表:
markdown
undefined

認証機能

认证功能

  • ソーシャルログイン実装 (Priority: High, Size: L)
  • パスワードリセット (Priority: Medium, Size: M)
  • 实现社交登录 (Priority: High, Size: L)
  • 密码重置 (Priority: Medium, Size: M)

ダッシュボード

仪表盘

  • 利用統計グラフ (Priority: Low, Size: S)

YAML タスクリスト:
```yaml
tasks:
  - title: "ソーシャルログイン実装"
    priority: High
    size: L
    description: "OAuth2 を使用した Google/GitHub ログイン"
  • 使用统计图表 (Priority: Low, Size: S)

YAML 任务列表:
```yaml
tasks:
  - title: "实现社交登录"
    priority: High
    size: L
    description: "使用OAuth2实现Google/GitHub登录"

Step 3: フィールドメタデータを取得する

Step 3: 获取字段元数据

bash
undefined
bash
undefined

プロジェクト ID を取得

获取项目ID

gh project view <number> --owner <owner> --format json -q '.id'
gh project view <number> --owner <owner> --format json -q '.id'

フィールド ID とオプション ID を取得

获取字段ID和选项ID

gh project field-list <number> --owner <owner> --format json

`jq` でフィールド名→フィールド ID、オプション名→オプション ID を解決する。
gh project field-list <number> --owner <owner> --format json

使用`jq`将字段名映射为字段ID,选项名映射为选项ID。

Step 4: アイテムを一括作成する

Step 4: 批量创建条目

抽出した各アイテムに対して:
bash
gh project item-create <number> \
  --owner <owner> \
  --title "<タイトル>" \
  --body "<本文>" \
  --format json
出力からアイテム ID を取得する。
针对每个提取出的条目执行:
bash
gh project item-create <number> \
  --owner <owner> \
  --title "<标题>" \
  --body "<正文>" \
  --format json
从输出结果中获取条目ID。

Step 5: フィールド値を設定する

Step 5: 设置字段值

各アイテムに対してフィールド値を設定:
bash
undefined
为每个条目设置字段值:
bash
undefined

Priority を設定

设置Priority

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

Size を設定

设置Size

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

Status を設定(デフォルト: Todo)

设置Status(默认: Todo)

gh project item-edit
--id <item-id>
--field-id <status-field-id>
--project-id <project-id>
--single-select-option-id <todo-option-id>
undefined
gh project item-edit
--id <item-id>
--field-id <status-field-id>
--project-id <project-id>
--single-select-option-id <todo-option-id>
undefined

Step 6: 作成結果を一覧表示する

Step 6: 显示创建结果

作成されたアイテムの一覧を表示:
#タイトルPrioritySizeStatus
1ソーシャルログイン実装HighLTodo
2パスワードリセットMediumMTodo
显示已创建的条目列表:
#标题PrioritySizeStatus
1实现社交登录HighLTodo
2密码重置MediumMTodo

注意事項

注意事项

  • 大量のアイテム(20件以上)を作成する場合は、ユーザーに確認してからバッチ実行する
  • ソースの形式が不明な場合はユーザーに確認する
  • フィールド値がプロジェクトのオプションに一致しない場合はスキップして警告する
  • GitHub API レート制限に注意し、必要に応じてバッチサイズを調整する
  • sandbox 環境での
    GIT_SSL_NO_VERIFY=1
    併用
    :詳細は後述の「sandbox 環境での実行」節を参照
  • 创建大量条目(20条以上)时,需先征得用户确认再执行批量操作
  • 若来源格式不明确,需向用户确认
  • 若字段值与项目选项不匹配,则跳过并发出警告
  • 注意GitHub API的速率限制,必要时调整批量操作的规模
  • 在sandbox环境中需配合使用
    GIT_SSL_NO_VERIFY=1
    :详情请参考后文的「sandbox环境执行」章节

sandbox 環境での実行

sandbox环境执行

sandbox で本スキルを実行する場合、ネットワーク越しの GitHub 操作には
GIT_SSL_NO_VERIFY=1
の併用を検討してください。本スキルの主なリモート操作は
gh project item-add
で、「リモート書き込み」判定は 要(本スキルは主に API 経由) です。コマンド分類の詳細と TLS 検証無効化の注意事項は
docs/sandbox-tls.md
を参照してください。
在sandbox环境中执行本技能时,针对跨网络的GitHub操作建议配合使用
GIT_SSL_NO_VERIFY=1
。本技能的主要远程操作为
gh project item-add
,「远程写入」判定为需要(本技能主要通过API实现)。命令分类详情及TLS验证禁用的注意事项请参考
docs/sandbox-tls.md