[FEATURE] Add optional status parameter to TaskCreate

Resolved 💬 2 comments Opened Feb 1, 2026 by deafsquad Closed Mar 2, 2026

Summary

TaskCreate always creates tasks as pending, requiring a separate TaskUpdate call to set in_progress. This adds latency and friction for common single-task workflows.

Current Behavior

Step 1: TaskCreate({ subject: "Implement feature" })  // → pending
Step 2: TaskUpdate({ taskId: "1", status: "in_progress" })  // → in_progress

Two tool calls required just to start working on a task.

Proposed Change

Add optional status parameter to TaskCreate (default: pending):

TaskCreate({
  subject: "Implement feature",
  description: "...",
  status: "in_progress"  // optional - skip the TaskUpdate call
})

Rationale

  • Reduces latency - One API call instead of two for common workflows
  • Backward compatible - Default remains pending, existing code unaffected
  • Multi-agent still works - Create as pending when orchestrating, claim later with TaskUpdate
  • Single-user optimization - Most individual sessions just want to create and start immediately

Use Cases

  1. Quick task tracking: User says "fix the bug" → create task and start immediately
  2. Plan mode exit: Approved plan creates tasks that can start in one step
  3. Hook enforcement: Reduces friction when hooks require active tasks before tool use

Alternative Considered

Changing enforcement to treat pending as "active enough" - but this loses the semantic distinction between planned vs actively-working-on, which has value for multi-task orchestration.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗