task
Installation
SKILL.md
task
Unified task runner skill dispatcher. Auto-detects the project's task runner and provides a consistent interface for listing, detecting, and running tasks. All detection, listing, and running is done by one shipped script (scripts/task.sh) invoked in a single Bash call — never by reading multiple markdown files.
Critical Rules
- Do the work in one Bash call — dispatch every verb to
scripts/task.sh; never transcribe its logic into chat or re-read the workflow docs to run bash. - Step 0 always runs first — no exceptions.
- Unknown verb is a run query — a first token that is not
detect/list/run(or an alias) is treated as a task to run. - Pass all remaining args through — everything after the task name is forwarded to the runner unchanged.
- Before running raw build/test/lint/format commands (
tsc,vitest,eslint,prettier, etc.) in any other workflow, first call/task listto check whether a task wraps the command. If a task exists, use it. Never bypass the task runner. - Markdown output: soft-wrap prose, never hard-wrap — when writing markdown, write each paragraph as one continuous line; do not insert manual newlines to wrap prose at a fixed column width. Newlines still separate paragraphs, list items, headings, and code fences.
Step 0: Parse Arguments
The raw invocation args (filled by Claude Code / OpenCode slash commands): $ARGUMENTS. If this line is not filled in, read the verb and remaining args from the user's current message.