원클릭으로
team-sprint
Run a full development sprint cycle from planning to PR. Use when advancing project with automated skill orchestration.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Run a full development sprint cycle from planning to PR. Use when advancing project with automated skill orchestration.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Root installer anchor for the jaan.to Codex skill pack. Use when installing jaan.to skills in Codex.
Audit AI history and existing workflow, then plan a reliable, evaluated, safe AI system. Use when maturing AI workflows.
Report bugs, feature requests, or skill issues to the jaan-to GitHub repo or save locally. Use when reporting plugin issues.
Detect repeated workflow patterns from AI sessions and suggest skills to automate them. Use when optimizing workflows.
Assemble role-based AI teammates to ship ideas from concept to production via agent teams. Use when orchestrating multi-role delivery.
Orchestrate RED/GREEN/REFACTOR TDD cycle with context-isolated agents. Use when implementing features test-first.
| name | team-sprint |
| description | Run a full development sprint cycle from planning to PR. Use when advancing project with automated skill orchestration. |
| allowed-tools | Read, Glob, Grep, Write($JAAN_OUTPUTS_DIR/**), Bash(git checkout:*), Bash(git pull:*), Bash(git branch:*), Bash(git add:*), Bash(git commit:*), Bash(git push:*), Bash(git log:*), Bash(git diff:*), Bash(gh pr create:*), Bash(gh pr view:*), Bash(cp:*), Skill(pm-sprint-plan), Skill(team-ship), Skill(release-iterate-changelog), Edit(ROADMAP.md), Edit(jaan-to/config/settings.yaml) |
| argument-hint | [cycle-number] [--focus spec|scaffold|code|test|audit] [--tasks 'task1,task2'] |
| disable-model-invocation | true |
| user-invocable | true |
| license | PROPRIETARY |
Full development sprint cycle — plan, execute, verify, and ship via PR.
$JAAN_CONTEXT_DIR/config.md - Project configuration$JAAN_CONTEXT_DIR/boundaries.md - Trust rules$JAAN_TEMPLATES_DIR/jaan-to-team-sprint.template.md - Cycle report template$JAAN_LEARN_DIR/jaan-to-team-sprint.learn.md - Past lessons (loaded in Pre-Execution)$JAAN_CONTEXT_DIR/tech.md - Tech context (if exists)${CLAUDE_PLUGIN_ROOT}/docs/extending/language-protocol.md - Language resolution protocolArguments: $ARGUMENTS
Parse from arguments:
5). If omitted, auto-detect by counting gap-reports/*-cycle/ directories + 1. If no gap-reports exist, default to 1.spec, scaffold, code, test, audit. Passed through to pm-sprint-plan.MANDATORY — Read and execute ALL steps in: ${CLAUDE_PLUGIN_ROOT}/docs/extending/pre-execution-protocol.md
Skill name: team-sprint
Execute: Step 0 (Init Guard) → A (Load Lessons) → B (Resolve Template) → C (Offer Template Seeding)
Also read context files if available:
$JAAN_CONTEXT_DIR/tech.md — Tech stack context$JAAN_CONTEXT_DIR/config.md — Project configurationIf the file does not exist, continue without it.
Read and apply language protocol: ${CLAUDE_PLUGIN_ROOT}/docs/extending/language-protocol.md
Override field for this skill: language_team-sprint
Language exception: Git operations, skill names, YAML, and technical terms remain in English.
ultrathink
Use extended reasoning for:
dev or a cycle branch. If not, ask user to switch.${CLAUDE_PLUGIN_ROOT} resolves and contains skills/. If not → "jaan-to plugin not found. Install or update the plugin."If cycle number provided in arguments, use it.
If not:
# Count existing cycle gap reports
CYCLE_COUNT=$(ls -d gap-reports/*-cycle 2>/dev/null | wc -l | tr -d ' ')
CYCLE_NUMBER=$((CYCLE_COUNT + 1))
If no gap-reports directory exists, default to cycle 1.
CYCLE_BRANCH="cycle/$(printf '%02d' "$CYCLE_NUMBER")"
git checkout dev
git pull origin dev
if git show-ref --verify --quiet "refs/heads/$CYCLE_BRANCH"; then
git checkout "$CYCLE_BRANCH"
else
git checkout -b "$CYCLE_BRANCH"
fi
If the branch already exists (retry after failure), switch to it. Otherwise create it.
Confirm: "On branch $CYCLE_BRANCH (from dev)."
Verify no secrets in tracked files before any commits:
git diff --name-only HEAD 2>/dev/null | tr '\n' '\0' | xargs -0 grep -liE '(sk-|ghp_|token=|password=|api_key=|secret=)' 2>/dev/null || true
If matches found → STOP: "Security risk detected. Remove secrets before proceeding."
Pass through user arguments to pm-sprint-plan:
/pm-sprint-plan [--focus {focus}] [--tasks {tasks}]
Forward --focus and --tasks from the user's original /team-sprint arguments. Omit flags the user did not provide.
This invokes the full pm-sprint-plan workflow:
Wait for pm-sprint-plan to complete. The approved sprint plan artifact will be at $JAAN_OUTPUTS_DIR/pm/sprint-plan/.
After pm-sprint-plan completes, read the sprint plan artifact:
SPRINT_PLAN=$(find "$JAAN_OUTPUTS_DIR/pm/sprint-plan" -name '*.md' -not -name 'README.md' -type f 2>/dev/null | sort -r | head -1)
Verify it contains:
type: sprint-planqueue array with at least 1 itemclosing_skills arrayIf verification fails → "Sprint plan artifact is invalid. Re-run /pm-sprint-plan."
cycle/XX remains. User can re-run /team-sprint to re-plan on the same branch./pm-sprint-plan manually to regenerate, then re-run /team-sprint.Pass the sprint plan to team-ship:
/team-ship --track sprint
team-ship reads the sprint plan artifact and:
Wait for team-ship to complete. This is the autonomous execution phase.
After team-ship completes, stage and commit:
git add -A
git commit -m "$(cat <<'EOF'
feat(cycle): complete cycle {CYCLE_NUMBER} execution
Sprint plan executed via team-sprint.
Skills completed: {completed_count}/{total_count}
EOF
)"
For each successfully completed queue item:
roadmap_ref from the sprint plan- [ ] line in ROADMAP.md- [x] and append commit hash# Example: mark item complete
# - [ ] Implement OAuth login → - [x] Implement OAuth login (abc1234)
Commit ROADMAP changes:
git add ROADMAP.md
git commit -m "docs(roadmap): mark cycle ${CYCLE_NUMBER} items complete"
Create gap report for this cycle at gap-reports/${CYCLE_NUMBER}-cycle/gap-report.md:
# Cycle {CYCLE_NUMBER} Gap Report
## Summary
- Sprint focus: {focus}
- Queue items: {completed}/{total} completed
- Skills executed: {skill_list}
## Completed
{list of completed items with skill and output paths}
## Incomplete
{list of items that failed or were skipped, with reasons}
## New Gaps Discovered
{gaps found during execution that weren't in the original plan}
## Recommendations for Next Cycle
{suggested focus and priority items for cycle N+1}
Commit:
git add gap-reports/
git commit -m "docs(gaps): add cycle ${CYCLE_NUMBER} gap report"
Invoke:
/release-iterate-changelog
Commit changelog updates separately.
git push -u origin "$CYCLE_BRANCH"
gh pr create \
--base dev \
--title "feat(cycle): cycle ${CYCLE_NUMBER} — {focus_summary}" \
--body "$(cat <<'EOF'
## Cycle {CYCLE_NUMBER} Summary
### Sprint Focus
{focus_area} — {bottleneck_stage}
### Execution Queue
{completed_count}/{total_count} items completed
### Skills Used
{skill_list_with_status}
### Changes
{file_change_summary}
### Gap Report
See gap-reports/{CYCLE_NUMBER}-cycle/gap-report.md
---
Sprint plan: $JAAN_OUTPUTS_DIR/pm/sprint-plan/{id}/
Executed via: /team-sprint
EOF
)"
Present PR URL to user.
CYCLE {CYCLE_NUMBER} — COMPLETE
────────────────────────────────
Branch: {CYCLE_BRANCH}
PR: #{pr_number} ({pr_url})
EXECUTION RESULTS
─────────────────
Completed: {completed_count}/{total_count}
Skills: {skill_names}
Focus: {focus_area}
PROGRESS DELTA (if available)
─────────────────────────────
Specification: {before}% → {after}%
Scaffold: {before}% → {after}%
Code: {before}% → {after}%
Tests: {before}% → {after}%
Infra: {before}% → {after}%
NEXT STEPS
──────────
Bottleneck: {next_bottleneck}
Suggested: /team-sprint {CYCLE_NUMBER + 1} --focus {suggested_focus}
"Any feedback on this sprint cycle? [y/n]"
If yes:
/jaan-to:learn-add team-sprint "{feedback}"If no: Cycle complete.