AgentStack
SKILL verified MIT Self-run

Sprint Task

skill-alon21034-claude-scrum-skills-sprint-task · by alon21034

Pick a sprint task, implement it, and verify acceptance criteria before marking review.

No reviews yet
0 installs
0 views
view→install

Install

$ agentstack add skill-alon21034-claude-scrum-skills-sprint-task

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Are you the author of Sprint Task? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Manual sprint task entrypoint.

Goal:

  1. Show available tasks and let the user pick one (or use a provided task ID).
  2. Show full task details including acceptance criteria.
  3. Ask user approval before implementing.
  4. After implementation, verify acceptance criteria before marking review.

Run this bash first:

set -euo pipefail
PATH="/opt/homebrew/bin:/usr/local/bin:$PATH"

ROOT="${CONDUCTOR_ROOT_PATH:-$(git rev-parse --show-toplevel)}"
SPRINT_FILE="$ROOT/.context/.sprint.json"

if [ ! -f "$SPRINT_FILE" ]; then
  echo "ERROR: No sprint file found at $SPRINT_FILE. Run /sprint first."
  exit 1
fi

STATUS="$(jq -r '.sprint.status' "$SPRINT_FILE")"
if [ "$STATUS" != "active" ]; then
  echo "ERROR: Sprint is not active (status=$STATUS)."
  exit 1
fi

echo "SPRINT_TOPIC=$(jq -r '.sprint.topic' "$SPRINT_FILE")"
echo "PENDING_TASKS:"
jq -r '.tasks[] | select(.status == "pending") | "  \(.id). \(.title)"' "$SPRINT_FILE"
echo "IN_PROGRESS_TASKS:"
jq -r '.tasks[] | select(.status == "in-progress") | "  \(.id). \(.title)"' "$SPRINT_FILE"

Then:

  1. If a task ID was provided, use that task. Otherwise, show pending tasks and ask the user to pick one.
  2. Read the selected task's full description:

jq -r --argjson id '.tasks[] | select(.id == $id) | .description' "$SPRINT_FILE"

  1. Show the user:
  • Sprint topic
  • Task id and title
  • Full task description (including acceptance criteria)
  • Current git branch
  1. Ask:

"Approve start implementation for this task? (yes/no)"

  1. Do not start implementation until user explicitly approves.
  2. If approved, mark task as in-progress:

jq --argjson id '(.tasks[] | select(.id == $id)).status = "in-progress" | (.tasks[] | select(.id == $id)).started_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"' "$ROOT/.context/.sprint.json" > "$ROOT/.context/.sprint.json.tmp" && mv "$ROOT/.context/.sprint.json.tmp" "$ROOT/.context/.sprint.json"

  1. Implement only this task's scope.
  2. When implementation is complete, verify acceptance criteria before marking review:
  • Parse the ## Acceptance Criteria section from the task description
  • Check each criterion against the actual implementation
  • Report results in this format:

`` Acceptance Criteria Check: [PASS] {criterion 1} [PASS] {criterion 2} [FAIL] {criterion 3} — {reason} Result: X/Y passed ``

  • If ALL criteria pass: proceed to mark as "review"
  • If any criteria FAIL: show the report and ask user:

"Some acceptance criteria failed. Options: A) Fix the failing criteria B) Mark as review anyway C) Backlog this task"

  1. When all criteria pass (or user approves despite failures), set task to review:

jq --argjson id '(.tasks[] | select(.id == $id)).status = "review"' "$ROOT/.context/.sprint.json" > "$ROOT/.context/.sprint.json.tmp" && mv "$ROOT/.context/.sprint.json.tmp" "$ROOT/.context/.sprint.json" && (sprint-board "$ROOT/.context/.sprint.json" >/dev/null 2>&1 || "$ROOT/bin/sprint-board" "$ROOT/.context/.sprint.json" >/dev/null 2>&1)

  1. Summarize what was implemented and the acceptance criteria results.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.