# Workflow Definitions This directory contains workflow definitions for automated tasks. ## Status **These are design documents, not executable automation.** Claude Code does not natively execute YAML workflow files. These definitions serve as: 1. **Design documentation** - Specify what steps a workflow should perform 2. **Reference for skills** - Skills can reference workflow steps 3. **Future automation** - Can be executed via external tools (cron + headless claude) ## Workflow Categories ### Health Checks (`health/`) | Workflow | Purpose | |----------|---------| | `cluster-health-check.yaml` | Kubernetes cluster health | | `cluster-daily-summary.yaml` | Daily cluster summary | ### Deployments (`deploy/`) | Workflow | Purpose | |----------|---------| | `deploy-app.yaml` | Deploy application to Kubernetes | ### Incident Response (`incidents/`) | Workflow | Purpose | |----------|---------| | `pod-crashloop.yaml` | Handle pod crash loops | | `node-issue-response.yaml` | Respond to node issues | | `resource-pressure-response.yaml` | Handle resource pressure | | `argocd-sync-failure.yaml` | Handle ArgoCD sync failures | ### System Admin (`sysadmin/`) | Workflow | Purpose | |----------|---------| | `health-check.yaml` | Workstation health check | | `system-update.yaml` | System package updates | ## Executing Workflows ### Option 1: Manual via Claude Ask Claude to perform the workflow steps: ``` Run the sysadmin health check workflow ``` Claude reads the workflow file and executes steps manually. ### Option 2: Headless Execution ```bash claude --print "Execute ~/.claude/workflows/sysadmin/health-check.yaml" | claude ``` ### Option 3: External Automation (Future) Could integrate with: - Cron jobs calling headless Claude - n8n workflows - GitHub Actions ## Workflow Format ```yaml name: workflow-name description: What this workflow does version: "1.0.0" trigger: schedule: cron: "0 9 * * *" manual: true agent: agent-name model: sonnet|haiku steps: - name: step-name description: What this step does commands: - command1 - command2 output: file: path/to/output notify: on_warning: true ```