design-task skill (crewAIInc): write and configure CrewAI tasks
crewAI's own skill that guides a coding agent on writing and configuring CrewAI tasks, structured output and guardrails.
- Installs
- 8.4K
- on skills.sh
- Stars
- 48
- on GitHub
- Files
- 1
- besides SKILL.md
- Updated
- Oct 2026
- last repo commit
design-task makes your coding agent follow CrewAI's rules for writing tasks: a clear description, a concrete expected_output, one purpose per task, and the right context between tasks. It also covers structured output, guardrails, async tasks and human review.
It loads when you create, configure or debug a CrewAI task. It edits your task code and YAML. SKILL.md says check-crewai-api is the reference for exact API forms and wins when they disagree.
Good for
- Python developers building agents or crews with the CrewAI framework
- Developers who need a task to return a validated Pydantic object
- People debugging tasks that loop, return vague text or ignore earlier results
Install design-task
Claude Code
- 1
Copy this prompt.
Install the design-task skill in Claude Code. Run this command: /plugin marketplace add crewAIInc/skills /plugin install crewai-skills@crewai-plugins Then check that it loaded and tell me how to use it.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Pick one route, not both, or you get every skill twice. The README documents the plugin route for Claude Code. The plugin installs all 10 skills in the crewai-skills plugin; the skills CLI route installs design-task, check-crewai-api. design-task says to follow check-crewai-api where they disagree. The other CrewAI skills are optional hand-offs.
From the project README. Source.
What's in the skill
When it loads
CrewAI task design and configuration. Use when creating, configuring, or debugging crewAI tasks — writing descriptions and expected_output, setting up task dependencies with context, configuring output formats (output_pydantic, output_json, output_file), using guardrails for validation, enabling human_input, async execution, markdown formatting, or debugging task execution issues.
Sections in SKILL.md
- 1. Anatomy of an Effective Task
- Description — The Instructions
- Expected Output — The Success Criteria
- 2. The Single Purpose Principle
- 3. Task Configuration Reference
- Essential Parameters
- Task Dependencies with context
- Structured Output
- File Output
- Async Execution
- Human Review
- Markdown Formatting
- Callbacks
- 4. Task Guardrails — Quality Control
- Function-Based Guardrails
- LLM-Based Guardrails
Key facts
- Installs on skills.sh
- 8,376 as of 2026-11-02
- Last change to this skill
- 2026-10-06
- Checked against
- crewai 1.15.23 on 2026-10-01, per the SKILL.md
What it includes
Description for the instructions, expected_output for the result
Both are required: Task(description=...) alone raises a validation error on expected_output.
Write ·
Anatomy of a taskSplit god tasks into focused ones
Shows a task with four objectives and the same work split into separate tasks.
Write ·
Single purpose principleParameters, context, structured output, files, async, human review
Covers context=[...] rules, output_pydantic, output_json and output_file, async_execution rules and Task(human_input=True).
Write ·
Configuration referenceFunction-based and LLM-based checks, chainable
Explains guardrails that validate and retry a task's output, and how to chain several.
Write ·
Task guardrailsDefine tasks in tasks.yaml and wire them in crew.py
The recommended setup, with method names matching YAML keys.
Write ·
YAML configurationDiamond dependencies and ConditionalTask
Shows context flow between tasks and when a ConditionalTask runs.
Write ·
Dependencies and conditional tasksCommon task design errors and a closing review list
Sections 9 and 10.
Read ·
Mistakes and checklistStructured output at LLM, Agent, Task and Crew level
Shows which keyword each level takes, such as response_model on LLM.call() and response_format on Agent.kickoff().
Read ·
references/structured-output.md
From the official docs
Permissions
Low risk
The agent edits your CrewAI task code and config, and can run tasks that call your model provider with your own API key. Review the diff and cap provider spending before you run what it writes.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It edits your project files
It changes task definitions and config. Work in a git branch and read the diff. github.com
human_input=True fails where there is no terminal
SKILL.md says it raises EOFError in CI or a server after the agent's retries, so you pay for the extra LLM calls. Use Flow @human_feedback there. github.com
The plugin route installs all 10 skills
The crewai-skills plugin manifest lists 10 skills and holds no hooks, agents or MCP config in the git tree. Use the skills CLI route if you want only the skills this page names. github.com
Security advisories
No published security advisories as of Nov 2, 2026.
Technical details
| Talks to | Your model provider |
|---|---|
| Sign-in and keys | Provider keys come from your environment. |
| Scopes |
|
Questions
What does the design-task skill do?
It guides your coding agent on writing CrewAI tasks: description and expected_output, one purpose per task, context between tasks, structured output, guardrails, async tasks and human review.
How do I install design-task?
Use the install box at the top of this page. The README documents a Claude Code plugin with all 10 CrewAI skills. The skills CLI route in the box adds check-crewai-api, which design-task says is the reference where the two disagree.
Does it need other skills?
It names check-crewai-api as the reference for exact API forms and says it wins on disagreements, so the skills CLI route installs it. build-flow, named for the Flow @human_feedback alternative, is an optional hand-off.
Does design-task need an API key?
The skill itself does not. Running crews and tasks needs a model provider key, such as OPENAI_API_KEY for the default model.
Is design-task safe?
It edits your project files and may run tasks that call your model provider. Use a branch, read the diff and cap your provider spending.
How do I get a task to return a Pydantic object?
SKILL.md says to set output_pydantic in Python, not in tasks.yaml. Task(response_format=...) is silently ignored and Task(response_model=...) leaves .pydantic as None.
Is this the official CrewAI skill?
Yes, it is in the crewAIInc organisation's own repo, and the plugin manifest names crewAI as author.
Does it work in the Claude app or Codex?
The README documents Claude Code only. The skill edits project files, so there is no Claude app upload option here. The box lists the Codex skills folder as a generic route.
Information
updated Nov 2, 2026
- Repository
- crewaiinc/skills
- Folder
skills/design-task
Sources
Docs, issue trackers and discussions this page is built from.
Show all 4Hide
- README.md · github.com
- marketplace.json · github.com
- plugin.json · github.com
- SKILL.md · github.com