From dagu
Guides Dagu REST API for programmatic workflow control: start/stop/retry DAGs, query status/history/logs, integrate with CI/CD pipelines and monitoring tools.
npx claudepluginhub vinnie357/claude-skills --plugin daguThis skill uses the workspace's default tool permissions.
Use this skill when integrating Dagu with external systems, automating workflow operations, or programmatically managing workflows through the API.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Use this skill when integrating Dagu with external systems, automating workflow operations, or programmatically managing workflows through the API.
Activate when:
The Dagu REST API provides endpoints for:
Default API base URL: http://localhost:8080/api/v1
Configure in Dagu settings if using a different host/port.
Consult references/authentication.md for details on:
POST /dags/{dagName}/start
Basic example:
curl -X POST http://localhost:8080/api/v1/dags/my_workflow/start
For parameter passing and advanced options, see references/workflow-operations.md.
GET /dags/{dagName}/status
Returns current status, running steps, and execution details.
POST /dags/{dagName}/stop
Stops currently running execution.
references/api-endpoints.mdreferences/workflow-operations.mdreferences/status-queries.mdreferences/authentication.mdreferences/integration-examples.mdreferences/error-handling.mdTrigger Dagu workflows from your CI/CD pipeline:
# In GitHub Actions, GitLab CI, etc.
curl -X POST http://dagu-server:8080/api/v1/dags/deploy_production/start \
-H "Content-Type: application/json" \
-d '{"params": "VERSION=1.2.3 ENVIRONMENT=production"}'
For complete CI/CD integration patterns, see references/integration-examples.md.
Query workflow status for external monitoring:
# Check if workflow is running
curl http://localhost:8080/api/v1/dags/critical_job/status
Build custom alerts based on status responses. See references/status-queries.md for response format details.
Trigger workflows based on external events:
import requests
def trigger_workflow(dag_name, params=None):
url = f"http://localhost:8080/api/v1/dags/{dag_name}/start"
data = {"params": params} if params else {}
response = requests.post(url, json=data)
return response.json()
For comprehensive examples in multiple languages, see references/integration-examples.md.
All API responses are JSON. Common response structure:
{
"status": "success",
"data": { ... }
}
Error responses:
{
"status": "error",
"message": "Error description"
}
For complete response schemas, consult references/api-endpoints.md.