tasker-ctl
Command-line interface for the Tasker orchestration system. Manage tasks, monitor workers, inspect configuration, investigate DLQ entries, generate documentation, and scaffold projects from plugin templates.
Overview
tasker-ctl is the primary developer and operator interface for Tasker. Built on tasker-client, it supports REST and gRPC transports with profile-based configuration, and includes an extensible plugin system for discovering and generating code from community templates.
Installation
Or build from source:
Commands
Task Management
| Command | Description |
|---|---|
task create |
Create a new task with namespace, context, and priority |
task get <UUID> |
Get task details including health and progress |
task list |
List tasks with status/namespace filters |
task cancel <UUID> |
Cancel a running task |
task steps <UUID> |
List workflow steps for a task |
task step <TASK> <STEP> |
Get individual step details |
task reset-step |
Reset a step for automatic retry |
task resolve-step |
Mark a step as manually resolved |
task complete-step |
Complete a step with execution results |
task step-audit |
View step audit trail (SOC2 compliance) |
Worker & System
| Command | Description |
|---|---|
worker list |
List worker templates and capabilities |
worker status |
Detailed worker health and system info |
worker health |
Full health check with component status |
system health |
System health across orchestration and workers |
system info |
System information summary |
Configuration
| Command | Description |
|---|---|
config generate |
Generate merged config from base + environment |
config validate |
Validate a configuration file |
config validate-sources |
Validate source files without generating output |
config explain |
Explain configuration parameters with documentation |
config analyze-usage |
Analyze configuration usage across the codebase |
config dump |
Export configuration as JSON/YAML/TOML |
config show |
Show current CLI configuration and profiles |
Dead Letter Queue
| Command | Description |
|---|---|
dlq list |
List DLQ entries with status filtering |
dlq get <UUID> |
Get DLQ entry with task snapshot |
dlq update |
Update DLQ investigation status |
dlq stats |
DLQ statistics by reason |
Authentication
| Command | Description |
|---|---|
auth generate-keys |
Generate RSA key pair for JWT signing |
auth generate-token |
Generate JWT with specified permissions |
auth show-permissions |
List all known API permissions |
auth validate-token |
Validate a JWT token |
Documentation Generation
| Command | Description |
|---|---|
docs reference |
Generate configuration reference documentation |
docs annotated |
Generate annotated configuration example |
docs section |
Document a specific configuration section |
docs coverage |
Show documentation coverage statistics |
docs explain |
Template-rendered parameter explanation |
docs index |
Generate documentation index with coverage |
Plugins & Templates
| Command | Description |
|---|---|
plugin list |
Discover and list plugins from configured paths |
plugin validate <PATH> |
Validate a plugin directory |
template list |
List available templates (filterable by language/framework) |
template info <NAME> |
Show template parameters and output files |
template generate <NAME> |
Generate files from a plugin template |
Usage
# Create a task
# Monitor system health
# Investigate DLQ
# Generate config documentation
# Use a specific profile
# Discover plugins and generate from templates
Configuration
Client Profiles
The CLI loads client configuration (server URLs, transport, auth) with this precedence:
--config <path>— explicit config file--profile <name>— named profile from.config/tasker-client.tomlTASKER_CLIENT_PROFILEenv var- Default config discovery
# .config/tasker-client.toml
[]
= "rest"
= "http://localhost:8080"
[]
= "grpc"
= "https://tasker.example.com:9190"
= "TASKER_API_KEY"
Plugin Configuration
Plugin discovery paths are configured in .tasker-ctl.toml:
# .tasker-ctl.toml
= [
"./tasker-cli-plugins",
"~/projects/tasker-systems/tasker-contrib",
]
= "ruby"
= "./app/handlers"
Discovery checks: ./.tasker-ctl.toml then ~/.config/tasker-ctl.toml.
Terminal Output
tasker-ctl uses styled terminal output with automatic detection of TTY capabilities. Colors and formatting degrade gracefully when output is piped or redirected, so commands like tasker-ctl config dump and tasker-ctl auth generate-token remain safe for scripting.
License
MIT License — see LICENSE for details.
Contributing
See the Tasker Core contributing guide and Code of Conduct.