Skip to content
Development
Skill

/add-task

creates draft task file in .specs/tasks/draft/ with original user intent

From plugin
context-engineering-kit
1.8k68 skills21 agents1 command

Claude Code

$ npx -y skills add NeoLabHQ/context-engineering-kit --skill add-task --agent claude-code

SKILL.md

add-task.SKILL.md
name: add-task
description: creates draft task file in .specs/tasks/draft/ with original user intent

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 ${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)
  • `.specs/analysis/` - Analysis of the task
  • `.specs/reports/` - Reports of the task

Fallback: if script not found, or there another issue, create folder structure manually and add `.specs/scratchpad/` to .gitignore

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`:

---
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-validation-login-form.feature.md`) 2. **Generated title**: The action-oriented title created 3. **Issue type**: `task`, `bug`, or `feature`

Format:

Created task file: .specs/tasks/draft/<name>.<type>.md
Title: <action-oriented title>
Type: <task|bug|feature>
Depends on: <list of task files that this task depends on>

Success Criteria

  • [ ] Directories `.specs/tasks/draft/`, `.specs/tasks/todo/`, `.specs/tasks/in-progress/`, `.specs/tasks/done/` exist
  • [ ] Task file created in `.specs/tasks/draft/` with correct naming convention (`<name>.<type>.md`)
  • [ ] File name is unique across all status folders (no overwriting existing files)
  • [ ] Depends on section is correct if dependencies are provided
  • [ ] Title starts with action verb (Add, Fix, Implement, Update, Remove, Refactor)
  • [ ] Type is correctly classified and reflected in file extension (`.feature.md`, `.bug.md`, `.refactor.md`, `.test.md`, `.docs.md`, `.chore.md`, `.ci.md`)
  • [ ] Original user input preserved in "Initial User Prompt" section
  • [ ] Description is empty placeholder `// Will be filled in future stages by business analyst`

Examples

**Test task** (`.specs/tasks/draft/add-unit-tests-auth.test.md`):

---
title: Add unit tests for auth module
---

## Initial User Prompt

add tests for auth

## Description

// Will be filled in future stages by business analyst

**Bug with context** (`.specs/tasks/draft/fix-login-timeout.bug.md`):

---
title: Fix login timeout on slow connections
---

## Initial User Prompt

users getting 504 errors on slow wifi

## Description

// Will be filled in future stages by business analyst

**Feature request** (`.specs/tasks/draft/implement-dark-mode.feature.md`):

---
title: Implement dark mode toggle
---

## Initial User Prompt

add dark mode to settings page

## Description

// Will be filled in future stages by business analys
Read more
@neolabhq
Ships withcontext-engineering-kit

A hand-crafted collection of advanced context engineering techniques and patterns with minimal token footprint, focused on improving agent result quality and predictability.

1.8k68 skills21 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
1.8k
Star history of NeoLabHQ/context-engineering-kit on GitHub, a chart by star-history.com

Other skills on context-engineering-kit.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills10d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc12d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react1d252k
@facebook@facebookInstall Skill

Questions about add-task.

Which coding agents can use add-task?
add-task installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.