diff --git a/.claude/skills/make-closed-issue/SKILL.md b/.claude/skills/make-closed-issue/SKILL.md index 53000ab0..563f8f29 100644 --- a/.claude/skills/make-closed-issue/SKILL.md +++ b/.claude/skills/make-closed-issue/SKILL.md @@ -149,32 +149,7 @@ If the user later explicitly asks to merge after reviews pass, a separate merge gh pr merge --squash --delete-branch ``` -### 9. Add to project board - -Use **gh CLI** for project operations (never GitHub MCP). - -Add the issue to the project when the PR is opened, but do **not** force it to `Done` yet. - -```bash -ITEM_JSON=$(gh project item-add 1 --owner bitsocialnet --url "https://github.com/bitsocialnet/seedit/issues/ISSUE_NUMBER" --format json) -ITEM_ID=$(echo "$ITEM_JSON" | jq -r '.id') -``` - -If the user later explicitly asks to merge the reviewed PR in the same run, reuse `ITEM_ID` and then set the project item to `Done`: - -```bash -# Get Status field ID and Done option ID from project -FIELD_JSON=$(gh project field-list 1 --owner bitsocialnet --format json) -STATUS_FIELD_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .id') -DONE_OPTION_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .options[] | select(.name=="Done") | .id') - -# Set status to Done -gh project item-edit --id "$ITEM_ID" --project-id PVT_kwDODohK7M4BM4wg --field-id "$STATUS_FIELD_ID" --single-select-option-id "$DONE_OPTION_ID" -``` - -Assignees and labels are inherited from the issue (set in step 6) — no separate project update needed. - -### 10. Report summary +### 9. Report summary Print a summary to the user: @@ -184,7 +159,6 @@ Issue #NUMBER created, committed, pushed, and linked to a PR into master. Commit: HASH Labels: label1, label2 PR: PR_URL - Project: seedit URL: https://github.com/bitsocialnet/seedit/issues/NUMBER ``` diff --git a/.claude/skills/review-and-merge-pr/SKILL.md b/.claude/skills/review-and-merge-pr/SKILL.md index cfb6b6ef..ae4cbf7c 100644 --- a/.claude/skills/review-and-merge-pr/SKILL.md +++ b/.claude/skills/review-and-merge-pr/SKILL.md @@ -127,8 +127,6 @@ For every linked issue, bring it into the same final state expected from `make-c - closed - assigned to the current GitHub user -- added to the `seedit` project if missing -- project status `Done` Before editing issue assignees, determine the current contributor's GitHub username from the authenticated `gh` session. If `gh` is not signed in or cannot resolve the login, stop and ask the contributor for their GitHub username before proceeding. @@ -147,10 +145,6 @@ fi ISSUE_NUMBERS=$(gh pr view --repo bitsocialnet/seedit --json closingIssuesReferences --jq '.closingIssuesReferences[].number') if [ -n "$ISSUE_NUMBERS" ]; then - FIELD_JSON=$(gh project field-list 1 --owner bitsocialnet --format json) - STATUS_FIELD_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .id') - DONE_OPTION_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .options[] | select(.name=="Done") | .id') - for ISSUE_NUMBER in $ISSUE_NUMBERS; do ISSUE_STATE=$(gh issue view "$ISSUE_NUMBER" --repo bitsocialnet/seedit --json state --jq '.state') if [ "$ISSUE_STATE" != "CLOSED" ]; then @@ -160,14 +154,6 @@ if [ -n "$ISSUE_NUMBERS" ]; then if ! gh issue view "$ISSUE_NUMBER" --repo bitsocialnet/seedit --json assignees --jq '.assignees[].login' | grep -qx "$GH_LOGIN"; then gh issue edit "$ISSUE_NUMBER" --repo bitsocialnet/seedit --add-assignee "$GH_LOGIN" fi - - ITEM_ID=$(gh project item-list 1 --owner bitsocialnet --limit 1000 --format json --jq ".items[] | select(.content.number == $ISSUE_NUMBER) | .id" | head -n1) - if [ -z "$ITEM_ID" ]; then - ITEM_JSON=$(gh project item-add 1 --owner bitsocialnet --url "https://github.com/bitsocialnet/seedit/issues/$ISSUE_NUMBER" --format json) - ITEM_ID=$(echo "$ITEM_JSON" | jq -r '.id') - fi - - gh project item-edit --id "$ITEM_ID" --project-id PVT_kwDODohK7M4BM4wg --field-id "$STATUS_FIELD_ID" --single-select-option-id "$DONE_OPTION_ID" done fi ``` @@ -206,6 +192,5 @@ Tell the user: - whether the PR was merged - whether linked issues were confirmed closed - whether linked issues were assigned to the current GitHub user -- whether linked project items were confirmed `Done` - whether stale remote-tracking refs were pruned - whether the feature branch, local `pr/` alias, and any worktree were cleaned up diff --git a/.codex/skills/make-closed-issue/SKILL.md b/.codex/skills/make-closed-issue/SKILL.md index 53000ab0..563f8f29 100644 --- a/.codex/skills/make-closed-issue/SKILL.md +++ b/.codex/skills/make-closed-issue/SKILL.md @@ -149,32 +149,7 @@ If the user later explicitly asks to merge after reviews pass, a separate merge gh pr merge --squash --delete-branch ``` -### 9. Add to project board - -Use **gh CLI** for project operations (never GitHub MCP). - -Add the issue to the project when the PR is opened, but do **not** force it to `Done` yet. - -```bash -ITEM_JSON=$(gh project item-add 1 --owner bitsocialnet --url "https://github.com/bitsocialnet/seedit/issues/ISSUE_NUMBER" --format json) -ITEM_ID=$(echo "$ITEM_JSON" | jq -r '.id') -``` - -If the user later explicitly asks to merge the reviewed PR in the same run, reuse `ITEM_ID` and then set the project item to `Done`: - -```bash -# Get Status field ID and Done option ID from project -FIELD_JSON=$(gh project field-list 1 --owner bitsocialnet --format json) -STATUS_FIELD_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .id') -DONE_OPTION_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .options[] | select(.name=="Done") | .id') - -# Set status to Done -gh project item-edit --id "$ITEM_ID" --project-id PVT_kwDODohK7M4BM4wg --field-id "$STATUS_FIELD_ID" --single-select-option-id "$DONE_OPTION_ID" -``` - -Assignees and labels are inherited from the issue (set in step 6) — no separate project update needed. - -### 10. Report summary +### 9. Report summary Print a summary to the user: @@ -184,7 +159,6 @@ Issue #NUMBER created, committed, pushed, and linked to a PR into master. Commit: HASH Labels: label1, label2 PR: PR_URL - Project: seedit URL: https://github.com/bitsocialnet/seedit/issues/NUMBER ``` diff --git a/.codex/skills/review-and-merge-pr/SKILL.md b/.codex/skills/review-and-merge-pr/SKILL.md index cfb6b6ef..ae4cbf7c 100644 --- a/.codex/skills/review-and-merge-pr/SKILL.md +++ b/.codex/skills/review-and-merge-pr/SKILL.md @@ -127,8 +127,6 @@ For every linked issue, bring it into the same final state expected from `make-c - closed - assigned to the current GitHub user -- added to the `seedit` project if missing -- project status `Done` Before editing issue assignees, determine the current contributor's GitHub username from the authenticated `gh` session. If `gh` is not signed in or cannot resolve the login, stop and ask the contributor for their GitHub username before proceeding. @@ -147,10 +145,6 @@ fi ISSUE_NUMBERS=$(gh pr view --repo bitsocialnet/seedit --json closingIssuesReferences --jq '.closingIssuesReferences[].number') if [ -n "$ISSUE_NUMBERS" ]; then - FIELD_JSON=$(gh project field-list 1 --owner bitsocialnet --format json) - STATUS_FIELD_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .id') - DONE_OPTION_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .options[] | select(.name=="Done") | .id') - for ISSUE_NUMBER in $ISSUE_NUMBERS; do ISSUE_STATE=$(gh issue view "$ISSUE_NUMBER" --repo bitsocialnet/seedit --json state --jq '.state') if [ "$ISSUE_STATE" != "CLOSED" ]; then @@ -160,14 +154,6 @@ if [ -n "$ISSUE_NUMBERS" ]; then if ! gh issue view "$ISSUE_NUMBER" --repo bitsocialnet/seedit --json assignees --jq '.assignees[].login' | grep -qx "$GH_LOGIN"; then gh issue edit "$ISSUE_NUMBER" --repo bitsocialnet/seedit --add-assignee "$GH_LOGIN" fi - - ITEM_ID=$(gh project item-list 1 --owner bitsocialnet --limit 1000 --format json --jq ".items[] | select(.content.number == $ISSUE_NUMBER) | .id" | head -n1) - if [ -z "$ITEM_ID" ]; then - ITEM_JSON=$(gh project item-add 1 --owner bitsocialnet --url "https://github.com/bitsocialnet/seedit/issues/$ISSUE_NUMBER" --format json) - ITEM_ID=$(echo "$ITEM_JSON" | jq -r '.id') - fi - - gh project item-edit --id "$ITEM_ID" --project-id PVT_kwDODohK7M4BM4wg --field-id "$STATUS_FIELD_ID" --single-select-option-id "$DONE_OPTION_ID" done fi ``` @@ -206,6 +192,5 @@ Tell the user: - whether the PR was merged - whether linked issues were confirmed closed - whether linked issues were assigned to the current GitHub user -- whether linked project items were confirmed `Done` - whether stale remote-tracking refs were pruned - whether the feature branch, local `pr/` alias, and any worktree were cleaned up diff --git a/.cursor/skills/make-closed-issue/SKILL.md b/.cursor/skills/make-closed-issue/SKILL.md index 53000ab0..563f8f29 100644 --- a/.cursor/skills/make-closed-issue/SKILL.md +++ b/.cursor/skills/make-closed-issue/SKILL.md @@ -149,32 +149,7 @@ If the user later explicitly asks to merge after reviews pass, a separate merge gh pr merge --squash --delete-branch ``` -### 9. Add to project board - -Use **gh CLI** for project operations (never GitHub MCP). - -Add the issue to the project when the PR is opened, but do **not** force it to `Done` yet. - -```bash -ITEM_JSON=$(gh project item-add 1 --owner bitsocialnet --url "https://github.com/bitsocialnet/seedit/issues/ISSUE_NUMBER" --format json) -ITEM_ID=$(echo "$ITEM_JSON" | jq -r '.id') -``` - -If the user later explicitly asks to merge the reviewed PR in the same run, reuse `ITEM_ID` and then set the project item to `Done`: - -```bash -# Get Status field ID and Done option ID from project -FIELD_JSON=$(gh project field-list 1 --owner bitsocialnet --format json) -STATUS_FIELD_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .id') -DONE_OPTION_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .options[] | select(.name=="Done") | .id') - -# Set status to Done -gh project item-edit --id "$ITEM_ID" --project-id PVT_kwDODohK7M4BM4wg --field-id "$STATUS_FIELD_ID" --single-select-option-id "$DONE_OPTION_ID" -``` - -Assignees and labels are inherited from the issue (set in step 6) — no separate project update needed. - -### 10. Report summary +### 9. Report summary Print a summary to the user: @@ -184,7 +159,6 @@ Issue #NUMBER created, committed, pushed, and linked to a PR into master. Commit: HASH Labels: label1, label2 PR: PR_URL - Project: seedit URL: https://github.com/bitsocialnet/seedit/issues/NUMBER ``` diff --git a/.cursor/skills/review-and-merge-pr/SKILL.md b/.cursor/skills/review-and-merge-pr/SKILL.md index cfb6b6ef..ae4cbf7c 100644 --- a/.cursor/skills/review-and-merge-pr/SKILL.md +++ b/.cursor/skills/review-and-merge-pr/SKILL.md @@ -127,8 +127,6 @@ For every linked issue, bring it into the same final state expected from `make-c - closed - assigned to the current GitHub user -- added to the `seedit` project if missing -- project status `Done` Before editing issue assignees, determine the current contributor's GitHub username from the authenticated `gh` session. If `gh` is not signed in or cannot resolve the login, stop and ask the contributor for their GitHub username before proceeding. @@ -147,10 +145,6 @@ fi ISSUE_NUMBERS=$(gh pr view --repo bitsocialnet/seedit --json closingIssuesReferences --jq '.closingIssuesReferences[].number') if [ -n "$ISSUE_NUMBERS" ]; then - FIELD_JSON=$(gh project field-list 1 --owner bitsocialnet --format json) - STATUS_FIELD_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .id') - DONE_OPTION_ID=$(echo "$FIELD_JSON" | jq -r '.fields[] | select(.name=="Status") | .options[] | select(.name=="Done") | .id') - for ISSUE_NUMBER in $ISSUE_NUMBERS; do ISSUE_STATE=$(gh issue view "$ISSUE_NUMBER" --repo bitsocialnet/seedit --json state --jq '.state') if [ "$ISSUE_STATE" != "CLOSED" ]; then @@ -160,14 +154,6 @@ if [ -n "$ISSUE_NUMBERS" ]; then if ! gh issue view "$ISSUE_NUMBER" --repo bitsocialnet/seedit --json assignees --jq '.assignees[].login' | grep -qx "$GH_LOGIN"; then gh issue edit "$ISSUE_NUMBER" --repo bitsocialnet/seedit --add-assignee "$GH_LOGIN" fi - - ITEM_ID=$(gh project item-list 1 --owner bitsocialnet --limit 1000 --format json --jq ".items[] | select(.content.number == $ISSUE_NUMBER) | .id" | head -n1) - if [ -z "$ITEM_ID" ]; then - ITEM_JSON=$(gh project item-add 1 --owner bitsocialnet --url "https://github.com/bitsocialnet/seedit/issues/$ISSUE_NUMBER" --format json) - ITEM_ID=$(echo "$ITEM_JSON" | jq -r '.id') - fi - - gh project item-edit --id "$ITEM_ID" --project-id PVT_kwDODohK7M4BM4wg --field-id "$STATUS_FIELD_ID" --single-select-option-id "$DONE_OPTION_ID" done fi ``` @@ -206,6 +192,5 @@ Tell the user: - whether the PR was merged - whether linked issues were confirmed closed - whether linked issues were assigned to the current GitHub user -- whether linked project items were confirmed `Done` - whether stale remote-tracking refs were pruned - whether the feature branch, local `pr/` alias, and any worktree were cleaned up