From dev-workflow
Expert guidance for using Task (taskfile.dev) automation tool to discover and execute project development commands
npx claudepluginhub seabbs/skills --plugin dev-workflowThis skill uses the workspace's default tool permissions.
Use this skill when working with projects that use [Task](https://taskfile.dev) to provide easy-to-discover automation commands for development workflows.
Verifies tests pass on completed feature branch, presents options to merge locally, create GitHub PR, keep as-is or discard; executes choice and cleans up worktree.
Guides root cause investigation for bugs, test failures, unexpected behavior, performance issues, and build failures before proposing fixes.
Writes implementation plans from specs for multi-step tasks, mapping files and breaking into TDD bite-sized steps before coding.
Use this skill when working with projects that use Task to provide easy-to-discover automation commands for development workflows.
IMPORTANT: Always prefer task commands over direct shell/language commands when a Taskfile is present.
Task provides:
task --list shows all available taskstask dev combines testing and docs)# List all available tasks with descriptions
task --list
# Show common workflows and usage patterns
task help
# Get detailed help for specific task
task <taskname> --help
Always start with discovery when entering a new project with a Taskfile.
Projects typically provide these standard tasks:
# Fast development cycle (common iteration loop)
task dev # Usually runs fast tests + fast docs
# Pre-commit workflow
task precommit # Runs pre-commit hooks + fast tests
# Full CI simulation locally
task ci # Complete CI pipeline locally
# Full test suite including quality checks
task test
# Fast tests (skip quality checks for rapid development)
task test-fast
task test:fast # Alternative naming
# Quality checks only (Aqua, formatting, linting)
task test-quality
task test:quality
# Quick docs build (recommended for development)
task docs-fast
task docs:fast
# Full documentation including slow components (notebooks, etc.)
task docs
# Interactive documentation server
task docs-pluto # For Julia projects with Pluto notebooks
task docs:serve # For live-reload documentation server
# Set up development environment from scratch
task setup
# Show package/dependency status
task pkg:status
task status
# Project overview and environment information
task info
# Linting
task lint
# Formatting
task format
# Combined quality checks
task quality
Use task commands when:
Tasks are typically thin wrappers around language-specific commands:
Example - Julia:
# Task command
task test
# Underlying command it runs
julia --project=. -e 'using Pkg; Pkg.test()'
Example - R:
# Task command
task docs
# Underlying command it runs
Rscript -e "devtools::document()"
Use direct language commands when:
# 1. Discover what's available
task --list
# 2. Run fast iteration cycle
task dev # Fast tests + fast docs
# 3. Before committing
task precommit # Pre-commit checks + tests
# 4. Before pushing (optional)
task ci # Full CI simulation
# 1. See what setup tasks exist
task --list | grep setup
# 2. Run setup
task setup # Install dependencies, configure environment
# 3. Verify setup
task info # Show project and environment status
# 4. Test everything works
task test
Common patterns in task names:
Prefixes:
test:* - Testing-related tasksdocs:* - Documentation taskspkg:* - Package management tasksci:* - CI/CD related tasksSuffixes:
*-fast - Quick version of the task*-full - Complete version including optional stepsSpecial names:
dev - Fast development iteration cycleprecommit - Pre-commit validationci - Full CI pipelinesetup - Initial project setupclean - Clean build artifactshelp - Show usage information# Instead of: julia --project=. -e 'using Pkg; Pkg.test()'
task test
# Instead of: julia --project=docs docs/make.jl --skip-notebooks
task docs-fast
# Instead of: julia --project=. -e 'using Pkg; Pkg.update()'
task pkg:update
# Instead of: Rscript -e "devtools::test()"
task test
# Instead of: Rscript -e "devtools::document()"
task docs
# Instead of: Rscript -e "devtools::check()"
task check
# Instead of: pytest
task test
# Instead of: sphinx-build docs docs/_build
task docs
# Instead of: pip install -e .
task install
Look for:
Taskfile.yml in project rootTaskfile.yaml in project rootWhen reading a Taskfile:
cmds: - Commands executed by the taskdeps: - Dependencies run before this taskdesc: - Description shown in task --listsummary: - Extended description for task <name> --helptask --list when entering a projecttask help for project-specific guidanceActivate this skill when:
task instead of direct commandsThis skill helps you leverage Task automation rather than manually running underlying commands. Project-specific task definitions and workflows remain in project documentation.