Skip to main content

task-next

Pull the highest-priority ready task from the tasks store and run it autonomously via tasks:start. The intent contract is already on the task row (set at creation time); no human pause needed before the executor starts.

Source facts

Repository
blakesims/stores
Last source activity
April 26, 2026 at 17:24
Detected SKILL.md language
English
Stars
0
Forks
0

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
task:next
description
Pull the highest-priority ready task from the tasks store and run it autonomously via tasks:start. The intent contract is already on the task row (set at creation time); no human pause needed before the executor starts.
requires_stores
["tasks","observations","gate"]
default_invoker
ai_autonomous
user_invocable
true
# Run the next queued task The point of capturing the intent contract at creation time is that downstream work needs no further human input to start. This skill drains the queue: pick the highest-priority `ready` task, then hand it off to `tasks:start` to run the full phase loop. No `/task:open` ritual; the contract is already on the row. ## Discover ```bash stores tasks list --status ready --limit 5 stores tasks show <id> ``` ## Pick Find the next ready task: ```bash stores tasks list --status ready --limit 1 --sort updated_at ``` If the output is empty, no tasks are ready: ```bash # Check for blocked tasks that may need human attention: stores tasks list --status blocked ``` Surface "no ready tasks" to the user and stop. Do not invent work. ## Run For a task with an existing row in `ready` status, spawn `tasks:start` with the task ID: ```bash stores tasks show <id> ``` Then invoke the orchestrator: * `Task(subagent_type="tasks:start", prompt="<id>: <title> — run to completion")` Or if running interactively, invoke: ``` /tasks:start <id> ``` The `tasks:start` orchestrator owns the full phase loop from that point. ## On BLOCKED If the task transitions to `blocked` during `tasks:start` execution, `tasks:start` will surface the blocker. This skill's job is only to find and hand off — not to own the loop. To check blocked tasks awaiting human input: ```bash stores tasks list --status blocked ``` ## Rules - This skill is `ai_autonomous` — runs without human in loop. Never call `ask_user`-style synchronous prompts. - Honor the contract verbatim. The executor's writes must trace back to the task's `done_when` — that is the alignment check. - One task per invocation. The next call picks up the next. - If the task's `done_when` is missing, fail loud — do not invent one. - If no ready tasks exist, report clearly and stop.
View on GitHub