원클릭으로
start-task
Start working on a task (claim, gather context, define acceptance criteria)
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Start working on a task (claim, gather context, define acceptance criteria)
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Iterative review-fix loop for accumulated milestone/branch changes. Runs parallel reviewers, fixes findings autonomously, repeats until clean. Use after multiple tasks merge to a milestone branch, or before merging to main. Invoke with /milestone-review --base-branch main. Supports --dry-run and --max-iterations.
This skill should be used when the user wants a comprehensive code review using multiple specialized reviewers in parallel. Invoked with /multi-review or when user asks for 'thorough review', 'full code review', or 'review from multiple perspectives'. Use --plan <path> to review an implementation plan pre-coding.
Use when facing a bug, test failure, or unexpected behavior that isn't immediately obvious
Use when starting a new feature or idea that needs thorough pre-execution planning. Use instead of calling /product-review, /spec, and review skills individually.
Use when you have an idea, goal, or feature description and need to turn it into an actionable plan with tasks
Use when you need measured performance evidence by running a repeatable command on the current branch and a baseline ref
| name | start-task |
| description | Start working on a task (claim, gather context, define acceptance criteria) |
| allowed-tools | Read, Bash, Glob, Grep, Edit, Write, AskUserQuestion |
You are starting work on a task. Follow this checklist precisely.
The command format is: /start-task <task-id> [--handoff "<context>"]
Parse $ARGUMENTS to extract:
task_id: The task ID, e.g. INT-14 (everything before any flags)handoff_context: Optional inline handoff text (content in quotes after --handoff flag)Examples:
/start-task INT-14 → task_id = INT-14/start-task INT-14 --handoff "Use 3% tolerance" → with handoff contextCRITICAL: Claim the task immediately to prevent race conditions with parallel workers.
If Linear MCP is available, call get_issue(id=<task_id>, includeRelations=true) to validate the task exists and get its details.
If the task doesn't exist, stop and report the error.
If the task is already In Progress or Done, warn the user:
In Progress: "This task is already claimed. Another worker may be on it. Proceed anyway?"Done: "This task is already closed. Did you mean a different task?"Claim it immediately (if Linear MCP available):
Call save_issue(id=<task_id>, state="In Progress", assignee="me")
This must happen BEFORE any other setup (branch creation, context gathering, etc.) to minimize the window where two workers might claim the same task.
If handoff context was provided, display it prominently:
==============================================
HANDOFF CONTEXT FROM PREVIOUS SESSION
==============================================
<handoff_context>
==============================================
Note: This is supplementary guidance from an orchestrating session. Still gather full project context and read the task directly — the handoff supplements but doesn't replace normal setup.
Rename this conversation to the task ID and title for easy reference later:
/rename <task_id>: <task title>
For example: /rename frq: Implement backtest engine
Read these files to understand the project:
CLAUDE.md - Development guidelinesPROJECT_SPEC.md - Project specification (if exists)AGENTS.md - Agent workflow documentation (if exists)README.md - Project overviewIf Linear MCP is available, call list_issues(state="In Progress") and list_issues(state=Done, limit=10) to see recent work.
git log --oneline -10
Understand what's been done recently and what state the project is in.
If Linear MCP is available, the get_issue call from Step 1 already includes relations. Check the blockedBy array. If this task has unmet dependencies, warn the user and ask if they want to proceed anyway.
If Linear MCP is available, call list_issues(state="In Progress") to see what other tasks are currently being worked on.
If other tasks are in progress, note them for awareness — avoid modifying files that are likely being changed by other workers. If you discover a shared interface concern during implementation, document it in your session summary for the orchestrator.
Research is recommended when the task involves:
framework-docs-researcher
~/.claude/agents/research/framework-docs-researcher.mdbest-practices-researcher
~/.claude/agents/research/best-practices-researcher.mdUse Task tool with subagent_type=general-purpose:
Task: [appropriate-researcher]
- Read agent definition from ~/.claude/agents/research/
- Provide task context and requirements
- Return: Relevant findings, recommendations, warnings
If research was conducted and Linear MCP is available, post findings as a comment:
Call save_comment(issueId=<task_id>, body="Research: <brief summary of findings>")
Ensure you are on a task-specific branch, not main or master. Workers must isolate their changes on dedicated branches.
CURRENT_BRANCH=$(git branch --show-current)
if [ "$CURRENT_BRANCH" = "main" ] || [ "$CURRENT_BRANCH" = "master" ]; then
echo "WARNING: On main branch. Creating task branch..."
git checkout -b <task_id>
fi
echo "Running on branch $(git branch --show-current)"
Sequential/direct mode exception: If your dispatch prompt includes EXECUTION_MODE: sequential, you are running directly on the orchestrator's working branch (e.g., a milestone branch). In this case:
main in sequential mode, STOP and report the errorPhilosophy: Task-sized work — Tasks should fit comfortably in context.
Now that you can see the codebase, evaluate whether this task is appropriately sized:
Signs the task is too large:
If too large, present options to the user:
This task seems large for a single session. Options:
1. **Break it down** — I'll create subtasks and we pick one to start
2. **Proceed anyway** — Work on it knowing we may need a handoff
3. **Scope it down** — Redefine acceptance criteria to a smaller slice
Which approach?
If user chooses "Break it down" and Linear MCP is available:
Create subtasks under the parent, applying the quality gate — each subtask must have a structured description:
save_issue(
title="<descriptive subtask title>",
team=<team>,
parentId=<parent-task-id>,
priority=<same as parent>,
labels=<inherit from parent or assign>,
description="## Problem\n<what this subtask addresses>\n\n## Approach\n<how to implement>\n\n## Acceptance Criteria\n- [ ] ...\n\n## Target Files\n- ..."
)
After each creation, run post-write validation: get_issue(id=<id>) — check for formatting artifacts and rewrite if needed.
Unclaim the parent: save_issue(id=<parent-task-id>, state=Todo)
If subtasks have ordering (part 2 depends on part 1): save_issue(id=<part-2-id>, blockedBy=[<part-1-id>])
Then ask: "Which subtask should we work on? I'll switch to that task."
If they pick a subtask, start over from step 1 with the subtask ID.
If appropriately sized, continue to step 9.
Philosophy: Bounded autonomy — Define "done" before coding.
Work with the user to establish clear acceptance criteria. Use AskUserQuestion to confirm:
Before I start, let me confirm the acceptance criteria:
1. [ ] <functional requirement 1>
2. [ ] <functional requirement 2>
3. [ ] <edge case or constraint>
4. [ ] Tests pass
5. [ ] /finish-task run (creates PR, session summary, closes task)
Is this complete? Anything to add or change?
Verification discipline (from
/verify): Each criterion must be independently verifiable. For every acceptance criterion, you should be able to name the command that proves it. If you can't, the criterion is too vague — rewrite it.
IMPORTANT: Items 4 and 5 are ALWAYS required and non-negotiable:
/finish-task run — The session is not complete without this. It creates the PR, generates a session summary for the orchestrator, and closes the task. Skipping this breaks the coordination workflow.Good acceptance criteria are:
If Linear MCP is available, record the agreed criteria as a comment:
Call save_comment(issueId=<task_id>, body="Acceptance Criteria:\n<criteria list>")
CRITICAL: Before writing any code, use AskUserQuestion to resolve any remaining ambiguities:
Keep asking until you have a clear picture. Do NOT proceed with assumptions.
Example questions:
Once:
Ask: "Ready to begin implementation?"
Only start coding after the user confirms.
YOUR WORK IS NOT DONE UNTIL YOU RUN /finish-task <task-id>
When implementation is complete (tests pass, code works), you MUST run:
/finish-task <task-id>
This command handles everything required to properly close out:
DO NOT:
/finish-task/finish-task/finish-task (notify the team lead if work is incomplete)The orchestrator depends on your session summary to coordinate parallel work. A task without a session summary is invisible to coordination.