一键导入
complete-subtask
Complete a sub-issue of an umbrella issue - close it, check parent checkbox, update design doc
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Complete a sub-issue of an umbrella issue - close it, check parent checkbox, update design doc
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Run regression benchmarks, track results, and generate trend reports
Complete work on a GitHub issue - close issue, update artifacts, prompt for doc updates
Run code coverage analysis, track class-level results, and generate trend reports
Create a GitHub issue and add it to the Typhon org project
Implement a GitHub issue end-to-end — scope it (whole issue or specific phases), build an acceptance-criteria plan from its design doc, get the plan approved, then develop autonomously with tests and a mandatory code review.
Start design for a GitHub issue - creates design doc from research/ideas, updates status to Todo
| name | complete-subtask |
| description | Complete a sub-issue of an umbrella issue - close it, check parent checkbox, update design doc |
| argument-hint | [sub-issue number] |
Mark a sub-issue as done within an umbrella issue workflow. This is the lightweight counterpart to /complete-task — it handles subtask completion without branch cleanup, PR checks, or ADR prompts.
Typical workflow:
/start-task #36 <- umbrella issue, creates branch
... implement #37 ...
/complete-subtask #37 <- this skill
... implement #38 ...
/complete-subtask #38 <- this skill
... implement #39, #40 ...
/complete-subtask #39
/complete-subtask #40
/complete-task #36 <- closes umbrella, merges PR, cleans up
$ARGUMENTS should contain the sub-issue number (e.g., 37 or #37).
If no argument provided, use AskUserQuestion to ask which sub-issue to complete.
If $ARGUMENTS contains --help or -h, display the following and stop — do not execute the workflow.
/complete-subtask [#N]
Complete a sub-issue — close it, check parent checkbox, update project status.
Arguments:
#N Sub-issue number (e.g., 37 or #37)
--help, -h Show this help
What it does:
1. Fetches sub-issue and detects parent issue
2. Closes the sub-issue
3. Updates project status to Done
4. Checks the checkbox in the parent issue body
5. Updates design doc status (if exists)
Examples:
/complete-subtask #37
/complete-subtask 38
Use mcp__GitHub__get_issue with:
"log2n-io""Typhon"<number>Confirm the issue is open (state = "open"). If already closed, report and exit.
From the sub-issue body (returned in step 1), search for a parent reference. Common patterns:
**GitHub Issue:** #NN (umbrella) or Sub-issues: #37, #38, ...Parent: #NNPart of #NN#NN reference where NN is a different issueLook for patterns like:
If multiple candidates are found, or none are found, ask:
Question: "Which issue is the parent/umbrella for #<number>?"
Header: "Parent"
Options:
- #<candidate1> - <title> (if candidates found)
- Enter manually (description: "I'll type the parent issue number")
Use mcp__GitHub__update_issue with:
"log2n-io""Typhon"<number>"closed"Project item lookup: Read .claude/skills/_helpers.md Section 2 for the robust patterns.
# Step 1: Find the item ID by piping directly to Python (no temp files)
gh project item-list 1 --owner Log2n-io --limit 200 --format json 2>&1 | python3 -c "
import json, sys
items = json.load(sys.stdin)['items']
for item in items:
if item.get('content', {}).get('number') == int(sys.argv[1]):
print(item['id'])
sys.exit(0)
print('NOT_FOUND')
" <sub_issue_number>
# Step 1b: If NOT_FOUND, add the sub-issue to the project board first
# gh project item-add 1 --owner Log2n-io --url https://github.com/Log2n-io/Typhon/issues/<sub_issue_number>
# Then re-run step 1
# Step 2: Update status to Done (using the item ID from step 1)
gh project item-edit --project-id PVT_kwDOEcGj5M4Bb-8P --id <item_id> \
--field-id PVTSSF_lADOEcGj5M4Bb-8PzhWrH1A \
--single-select-option-id 98236657 # "Done"
Step 5a: Fetch the parent issue to get its current body.
Use mcp__GitHub__get_issue with:
"log2n-io""Typhon"<parent_number>Step 5b: In the returned body, find a line matching the pattern - [ ] that contains #<sub_number> (the sub-issue number). Replace - [ ] with - [x] on that line.
Checkbox detection patterns (match any):
- [ ] ... #37 ... (explicit issue reference)- [ ] ... #37: ... (reference with colon)- [ ] **#37** ... (bold reference)- [ ] ... Sub-issue #37 ... (text reference)If the checkbox line also contains a description, preserve it. Only change [ ] to [x].
Step 5c: Update the parent issue body with the modified content.
Use mcp__GitHub__update_issue with:
"log2n-io""Typhon"<parent_number>"<modified body with checkbox checked>"This replaces the old temp file + Python + gh issue edit --body-file pattern. The body is passed directly — no temp files, no encoding issues.
If no matching checkbox is found, report it but don't fail — the parent may use a different format.
Look for a design doc reference in the sub-issue body (links to claude/design/).
If found, read the design doc and update its status line:
# BEFORE:
**Status:** Ready for implementation
# AFTER:
**Status:** Implemented
Only update the **Status:** line in the YAML-like header at the top of the doc. Don't modify anything else.
If no design doc is found or referenced, skip this step silently.
Completed sub-issue #<number>: <title>
Issue: #<number> closed
Project: Status -> Done
Parent: #<parent> checkbox checked
Design: claude/design/<path> -> Status: Implemented (or "no design doc")
Parent #<parent> progress: X/Y sub-issues complete
For the progress line, count checked vs total checkboxes in the parent body that reference sub-issues.
If no parent can be detected and the user doesn't provide one:
If the parent issue body doesn't have checkboxes:
If the design doc doesn't have a **Status:** line:
For reference:
f75ad84647fc9ee498236657PVTSSF_lADOEcGj5M4Bb-8PzhWrH1APVT_kwDOEcGj5M4Bb-8P