Claim a taskwarrior task as in-flight (+ACTIVE) and write a coworker marker. Use when picking up a task from task-coordinate output before starting implementation.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Um comando direto ignora o prompt de revisão. Verifique a origem antes de executá-lo.
Claim a taskwarrior task as in-flight (+ACTIVE) and write a coworker marker. Use when picking up a task from task-coordinate output before starting implementation.
Take ownership of a pending task. Stamps the task with this agent's identity and marks it +ACTIVE so concurrent agents see it is in flight and /taskwarrior:task-coordinate skips it on the next wave.
When to Use This Skill
Use this skill when...
Use a sibling skill instead when...
Starting work on a task surfaced by /taskwarrior:task-coordinate
Filing a brand-new task — use /taskwarrior:task-add
Resuming a task after a context break (re-stamps started time)
Pausing for handoff without closing — use /taskwarrior:task-release
Forcing a stale claim onto yourself with --force
The task is done and ready to land — use /taskwarrior:task-done
Git probes (git rev-parse --show-toplevel, git branch --show-current)
write to stderr in a no-git cwd, and stderr from a Context backtick
aborts the skill before its body runs. Git toplevel and current-branch
resolution are done in the body via the Bash tool (where
2>/dev/null and exit-code handling are tolerated).
Parameters
Parse $ARGUMENTS:
$0 — task ID (required).
--no-coworker-marker — skip the /git:coworker-check --claim step (use when the repo is intentionally shared and another agent will claim its own scope).
--force — claim even when the task is already +ACTIVE (the previous claim is overwritten with an annotation noting the takeover).
Execution
Execute this claim workflow:
Step 1: Ensure identity UDAs exist
The identity UDAs (agent / pid / host / branch / worktree) are part of
the canonical set in the shared script. Check for missing UDAs:
If it reports UDAS_MISSING greater than 0, confirm with the user (declarations
persist in ~/.taskrc) and install — the script is idempotent and installs the
full linkage + identity set in one pass:
Use export | jq — never task <id> info or task <id> list (both exit 1 on empty / closed tasks and cancel parallel siblings; see .claude/rules/parallel-safe-queries.md).
Capture the uuid field as $TASK_UUID — every mutating call from Step 3
onward addresses the task by $TASK_UUID, never $TASKID. $TASKID may be a
numeric ID that renumbers if another agent closes an unrelated task during the
coworker-check pause in Step 3; $TASK_UUID does not (see
.claude/rules/task-id-stability.md).
Read the JSON. Decide:
Condition
Action
status is not pending
Abort. Tasks must be pending to claim.
start is set and --force not passed
Abort. Report current agent / pid / host / branch so the user can either --force or pick another task.
start is set and --force passed
Annotate with takeover notice (Step 6) and proceed.
start is unset
Proceed cleanly.
Step 3: Coworker-check claim (default on)
Unless --no-coworker-marker was passed, write the session marker so destructive git ops in this clone (stash, reset, checkout --) trigger the cross-agent guard:
Use SlashCommand to invoke `/git:coworker-check --claim`.
The git-side marker (<git-dir>/.claude-session-<pid>) and the taskwarrior +ACTIVE claim are independent signals. Together they reinforce: a stash hook can read either one, and either is enough to pause a destructive op.
If the SlashCommand tool is unavailable in the current session, fall back to running the script directly: