
Add Task
Capture a new work item as a draft spec task file with type, dependencies, and preserved user intent under .specs/tasks/draft/.
Overview
Add-task is an agent skill most often used in Build (also Validate) that creates draft task files in .specs/tasks/draft/ with typed titles, dependencies, and user intent preserved.
Install
npx skills add https://github.com/neolabhq/context-engineering-kit --skill add-taskWhat is this skill?
- Bootstraps .specs/tasks/{draft,todo,in-progress,done} and scratchpad via create-folders.sh
- Classifies work as feature, bug, refactor, test, docs, chore, or ci from user wording
- Writes action-oriented titles and filenames that preserve original intent
- Records explicit dependencies on other task files when provided
- Keeps draft tasks separate from todo until analysis promotes them
- 4 task lifecycle folders plus gitignored scratchpad
- 7 task type labels: feature, bug, refactor, test, docs, chore, ci
Adoption & trust: 536 installs on skills.sh; 1.1k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You described work in chat but have no structured task file your agent pipeline can pick up from draft → todo → in-progress.
Who is it for?
Solo builders using .specs task boards who want zero-friction capture from a one-line agent prompt.
Skip if: Teams that only track work in external issue trackers with no local .specs convention, or when the spec is already fully written as an implementation plan.
When should I use this skill?
User provides a task title or description (and optional dependent task files) to capture as a draft .specs task.
What do I get? / Deliverables
A correctly named draft task markdown file lands in .specs/tasks/draft/ with type and dependencies, ready for analysis or plan writing.
- Draft task markdown in .specs/tasks/draft/
- Ensured task directory structure and scratchpad gitignore
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Task files are the backbone of spec-driven implementation, so the primary shelf is Build PM where backlog items become agent-ready artifacts. PM subphase covers drafting, prioritizing, and structuring work before or during implementation—not just high-level idea research.
Where it fits
User says add OAuth login—skill drafts a feature task with scope-friendly title before you prototype.
Mid-sprint you capture a refactor task that depends on an earlier API task file.
File a test chore task linked to a feature task so CI work is tracked in the same .specs board.
How it compares
Use instead of dropping notes in scratch markdown when you need typed tasks in a governed folder lifecycle.
Common Questions / FAQ
Who is add-task for?
Indie developers and small teams using the context-engineering-kit .specs task workflow with AI agents.
When should I use add-task?
When scoping in Validate, when backlogging during Build PM, or whenever you have a new feature, bug, or chore to capture before implementation planning.
Is add-task safe to install?
It creates local folders and task files and may run a bundled shell script; review the Security Audits panel on this page before pointing it at sensitive repos.
Workflow Chain
Then invoke: executing plans
SKILL.md
READMESKILL.md - Add Task
# Create Draft Task File ## Role Your role is to create a draft task file that exactly matches the user's request. ## Goal Create a task file in `.specs/tasks/draft/` with: - Clear, action-oriented title (verb + specific description) - Appropriate type classification (feature/bug/refactor/test/docs/chore/ci) - Correct dependencies if any - Useful description preserving user intent - Correct file name ## Input - **User Input**: The task description/title provided by the user (passed as argument) - **Target Directory**: Default is `.specs/tasks/draft/` ## Instructions ### 1. Ensure Directory Structure Run the folder creation script to create task directories and configure gitignore: ```bash bash ${CLAUDE_PLUGIN_ROOT}/scripts/create-folders.sh ``` This creates: - `.specs/tasks/draft/` - New tasks awaiting analysis - `.specs/tasks/todo/` - Tasks ready to implement - `.specs/tasks/in-progress/` - Currently being worked on - `.specs/tasks/done/` - Completed tasks - `.specs/scratchpad/` - Temporary working files (gitignored) ### 2. Analyze Input 1. **Parse the user's request**: - Extract the core task objective - Identify implied type (bug, feature, task) - List of task files that this task depends on 2. **Clarify if ambiguous** (only if truly unclear): - Is this a bug fix or new feature? - Any related tasks or dependencies? (if not proided, then assume none) ### 3. Structure the Task 1. **Create action-oriented title**: - Start with verb: Add, Fix, Update, Implement, Remove, Refactor - Be specific but concise - Examples: - "Add validation to login form" - "Fix null pointer in user service" - "Implement caching for API responses" 2. **Determine type**: | Type | Use When | |------|----------| | `feature` | New functionality or capability | | `bug` | Something is broken or not working correctly | | `refactor` | Code restructuring without changing behavior | | `test` | Adding or updating tests | | `docs` | Documentation changes only | | `chore` | Maintenance tasks, dependency updates | | `ci` | CI/CD configuration changes | ### 4. Generate File Name 1. **Create short name from the task title**: - Lowercase the title - Replace spaces with hyphens - Remove special characters - Keep it concise (3-5 words max) - Example: "Add validation to login form" -> `add-validation-login-form` 2. **Form file name**: `<short-name>.<issue-type>.md` - Examples: - `add-validation-login-form.feature.md` - `fix-null-pointer-user-service.bug.md` - `restructure-auth-module.refactor.md` - `add-unit-tests-api.test.md` - `update-readme.docs.md` - `upgrade-dependencies.chore.md` - `add-github-actions.ci.md` 3. **Verify uniqueness**: Check `.specs/tasks/draft/`, `.specs/tasks/todo/`, `.specs/tasks/in-progress/`, and `.specs/tasks/done/` for existing files with same name ### 5. Create Task File **Use Write tool** to create `.specs/tasks/todo/<short-name>.<issue-type>.md`: ```markdown --- title: <ACTION-ORIENTED TITLE> depends_on: <list of task files that this task depends on> --- ## Initial User Prompt {EXACT user input as provided} ## Description // Will be filled in future stages by business analyst ``` ## Constraints - **Do NOT** invoke the plan skill - the workflow handles subsequent phases - **Do NOT** create files outside `.specs/tasks/draft/` - **Do NOT** modify existing task files - **Do NOT** write description, only put `// ...` placeholder as specified in the task file. - **Do NOT** write depends_on section if no dependencies are provided. ## Expected Output Return to the orchestrator: 1. **Task file path**: Full path to created file (e.g., `.specs/tasks/todo/add-validat