بنقرة واحدة
speckit-tasks
Generate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Generate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Base identity for the SciStudio embedded agent. Lists the 6 task skills available and when to invoke each. Loaded once at session start; task skills load on demand when the user turn matches their trigger description.
Drive a live end-to-end SciStudio session — start the backend (and Vite if needed), open Chrome via Chrome MCP, walk the scenario file the user points at, capture screenshots/console/network as evidence, and write a pass/fail verdict back into that file. Trigger whenever the user says "跑 e2e", "do an e2e", "run e2e on PR
Use when the user wants to design a new workflow, choose block types, wire edges between blocks, or convert a verbal pipeline description into a valid workflow YAML. NOT for debugging existing runs (use scistudio-debug-run) or for writing custom blocks (use scistudio-write-block).
Use when the user wants to look at intermediate or output data — preview a slice of an image, peek at the first rows of a DataFrame, check the shape/dtype of an array, or trace where a data ref came from. NOT for debugging failed runs (use scistudio-debug-run).
Use when the user wants to author a NEW BLOCK FILE — Python source code (a class subclassing Block / ProcessBlock / IOBlock / AppBlock / CodeBlock with typed ports and a config_schema) that goes in ``<project>/blocks/<name>.py``. ALWAYS check if an existing block satisfies the contract first (call list_blocks first and reuse a match). NOT for ADDING AN EXISTING BLOCK TYPE AS A NODE in a workflow YAML — that's scistudio-build-workflow ("add an imaging.threshold node to my workflow"). NOT for editing an existing block's config (update_block_config). NOT for writing the workflow YAML itself (scistudio-build-workflow).
Use when a workflow run has failed, is stuck, or produced unexpected output, and you need to diagnose the cause. Covers run-status inspection, block-log retrieval, lineage navigation, common error signatures, and the finish_ai_block contract for AI block PTYs. NOT for designing new workflows (use scistudio-build-workflow).
| name | speckit-tasks |
| description | Generate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts. |
| compatibility | Requires spec-kit project structure with .specify/ directory |
| metadata | {"author":"github-spec-kit","source":"templates/commands/tasks.md"} |
| disable-model-invocation | true |
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty).
Check for extension hooks (before tasks generation):
.specify/extensions.yml exists in the project root.hooks.before_tasks keyenabled is explicitly false. Treat hooks without an enabled field as enabled by default.condition expressions:
condition field, or it is null/empty, treat the hook as executablecondition, skip the hook and leave condition evaluation to the HookExecutor implementationoptional flag:
optional: true):
## Extension Hooks
**Optional Pre-Hook**: {extension}
Command: `/{command}`
Description: {description}
Prompt: {prompt}
To execute: `/{command}`
optional: false):
## Extension Hooks
**Automatic Pre-Hook**: {extension}
Executing: `/{command}`
EXECUTE_COMMAND: {command}
Wait for the result of the hook command before proceeding to the Outline.
.specify/extensions.yml does not exist, skip silentlySetup: Run .specify/scripts/powershell/check-prerequisites.ps1 -Json from repo root and parse FEATURE_DIR and AVAILABLE_DOCS list. All paths must be absolute. For single quotes in args like "I'm Groot", use escape syntax: e.g 'I'''m Groot' (or double-quote if possible: "I'm Groot").
Load design documents: Read from FEATURE_DIR:
Execute task generation workflow:
Generate tasks.md: Use .specify/templates/tasks-template.md as structure, fill with:
Report: Output path to generated tasks.md and summary:
Check for extension hooks: After tasks.md is generated, check if .specify/extensions.yml exists in the project root.
hooks.after_tasks keyenabled is explicitly false. Treat hooks without an enabled field as enabled by default.condition expressions:
condition field, or it is null/empty, treat the hook as executablecondition, skip the hook and leave condition evaluation to the HookExecutor implementationoptional flag:
optional: true):
## Extension Hooks
**Optional Hook**: {extension}
Command: `/{command}`
Description: {description}
Prompt: {prompt}
To execute: `/{command}`
optional: false):
## Extension Hooks
**Automatic Hook**: {extension}
Executing: `/{command}`
EXECUTE_COMMAND: {command}
.specify/extensions.yml does not exist, skip silentlyContext for task generation: $ARGUMENTS
The tasks.md should be immediately executable - each task must be specific enough that an LLM can complete it without additional context.
CRITICAL: Tasks MUST be organized by user story to enable independent implementation and testing.
Tests are OPTIONAL: Only generate test tasks if explicitly requested in the feature specification or if user requests TDD approach.
Every task MUST strictly follow this format:
- [ ] [TaskID] [P?] [Story?] Description with file path
Format Components:
- [ ] (markdown checkbox)Examples:
- [ ] T001 Create project structure per implementation plan- [ ] T005 [P] Implement authentication middleware in src/middleware/auth.py- [ ] T012 [P] [US1] Create User model in src/models/user.py- [ ] T014 [US1] Implement UserService in src/services/user_service.py- [ ] Create User model (missing ID and Story label)T001 [US1] Create model (missing checkbox)- [ ] [US1] Create User model (missing Task ID)- [ ] T001 [US1] Create model (missing file path)From User Stories (spec.md) - PRIMARY ORGANIZATION:
From Contracts:
From Data Model:
From Setup/Infrastructure: